ReturnInfinity/BareMetal-OS-legacy

os_bmfs_file_read not loading more than 2MiB

Closed this issue · 2 comments

os_bmfs_block_read seems to be ok. It calls readsectors twice for a 4MB file (as it should).

bug fixed
and something to learn from this ^_^

the argument RDX = disk # of readsectors
should be setted by the function which calls readsectors
i.e. in every loop of os_bmfs_block_read

but should not be setted by the function which calls os_bmfs_block_read
i.e. os_bmfs_file_read

You are correct. RDX was not being preserved between the calls to readsectors. I'm taking a look at official changes to the code (mainly if we need to worry about multiple disks at the moment).