📄 reserved_space_readme.txt
字号:
-----------------------------
Reserved disk space features.
-----------------------------
This new release implements reserved disk space feature.
Reserved disk space allows to download/update data (like font, setup, ...)
inside on-board memory.
Reserved disk space can be read/write :
- by low-level function from on-board application, at any time
- by operating system (Windows) only when player is set in
a specific mode (update mode). In this mode, all disk space
can be scan.
If player is not in update mode, operating system will not be able to read/write
this reserved disk space (and so modify or erase it), even during a format command.
To download/update data in reserved disk space, player have to be set in update mode.
In this mode :
- From mass storage, all memory can be accessed.
- FAT have a specific initialization. (all clusters are used except reserved disk space cluster)
Then, you just have to download a file that contain data. (by using USB / drag & drop)
Use :
-----
1) Defines the reserved space size in config.h file :
Example :
if requested reserved space is 512Kbytes, place in config.h
#define MEM_RESERVED_SIZE 1024 /* Reserved disk space in sector */
Size sector is 512bytes.
2) Switch player in update mode. For this, set reserved_disk_space bit variable to TRUE,
and call format memory on-board function.
This operation will make a specific initialization for FAT, that will allows to download
data in the reserved disk space.
reserved_disk_space bit is declared in variables.c file.
3) Then, plug the board to PC (using USB) and download file(s) that contain datas.
4) Set reserved_disk_space bit to FALSE, and launch format on-board memory.
Format is mandatory and will not erase data.
Notes:
------
CHS definition.
format (fat_format(void)) needs to know the value of number of cylinder, head and sector.
Number of cylinder is different in normal mode / update mode.
Example :
If total memory CHS parameters are :
Cylinder number : 500
Head : 16
Sector : 32
and if reserved disk size is 1024 sectors (512Kbytes), in normal mode, the CHS parameters will be
Cylinder number : 500 - (1024 / (16 * 32)) = 498
Head : 16
Sector : 32
MEM_RESERVED_SIZE must be a multiple by 2 of (Nb_head x Nb_sector)
(refer to CHS definition)
Starting address of specific data can be calculated as follow :
xxx_reserved_space_start = xxx_mem_size + 1;
with
xxx_mem_size = total number of sector of memory minus the reserved disk space.
Reserved area is not erased after a call to format function (on-board), in both mode
(normal or update).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -