1
0
mirror of https://github.com/marqs85/ossc.git synced 2024-06-01 17:41:37 +00:00
ossc/software/sys_controller_bsp
Ari Sundholm 760be1738e Userdata export (FAT16): Optimize code size.
Reorganize the and optimize the code to avoid redundant code and thus
reduce code size, while making sure to zero-initialize the used areas
on the SD card. These are the "clean" part of this change.

The "dirty" part:
Optimize the FAT16 export code further by introducing small deviations
from the FAT16 specification. These deviations should not be harmful
at all, unless the SD card is used for something requiring the jump
instruction and/or boot code in the boot sector to be valid. This is
typically only required when booting off the filesystem.

After these changes, a considerable reduction in code size can be
observed for sys_controller.elf and sys_onchip_memory2_0.bin:

sys_controller.elf:
   text	   data	    bss	    dec	    hex	filename
  32392	   2936	   2652	  37980	   945c	sys_controller.elf

sys_onchip_memory2_0.bin:
size: 35328 bytes

This reduces the cost of the FAT16 export feature to 446 bytes.
2020-11-24 23:50:05 +02:00
..
drivers update epcq_controller_mod to epcq_controller2 2020-11-10 19:46:07 +02:00
HAL clean up and update README 2018-10-08 00:37:42 +03:00
alt_sys_init.c update epcq_controller_mod to epcq_controller2 2020-11-10 19:46:07 +02:00
create-this-bsp Initial public release (FW 0.64) 2016-02-23 01:03:50 +02:00
libhal_bsp.a Userdata export (FAT16): Optimize code size. 2020-11-24 23:50:05 +02:00
linker.h integrate zero-riscy 2018-10-06 13:19:12 +03:00
linker.x integrate zero-riscy 2018-10-06 13:19:12 +03:00
Makefile update epcq_controller_mod to epcq_controller2 2020-11-10 19:46:07 +02:00
mem_init.mk integrate zero-riscy 2018-10-06 13:19:12 +03:00
memory.gdb integrate zero-riscy 2018-10-06 13:19:12 +03:00
public.mk switch to RV32E 2018-10-30 01:31:40 +02:00
settings.bsp integrate zero-riscy 2018-10-06 13:19:12 +03:00
system.h update epcq_controller_mod to epcq_controller2 2020-11-10 19:46:07 +02:00