It actually does (except for Send_FATbuffer). All you need to do is to replace Read_SD_sectors, Write_SD_sectors, SD_Enable, SD_Disable implementations with calls to _SCSD_readSectors_my, _SCSD_writeSectors_my, _SCSD_unlock, _SCSD_shutdown_my functions from SCFW codebase. You also need to call _SCSD_startUp_my at the start of the main() function. This change alone makes fatfs work just fine (no need to use devkitpro libfat).I had managed to get the EZ Flash Omega splash to show up but hangs due to fat init issues which seems to suggest I have to use libgba's libfat instead of the custom stuff EZ Flash is using since obviously none of that stuff would work as intended on a SuperCard.
Post automatically merged:
I was chainloading this with a regular SCFW kernel, making ROM flashing impossible (I think?), since the code would replace its own memory in the process. I was about to do the same mod to the SCFW firmware. Removed the kernel size limit, renamed the modified firmware .gba to .frm, flashed it and hoped for the best. This did not work and the cart is bricked. I guess the firmware .gba file is not something that should be directly flashed, wish that was pointed out in the repo README.How were you booting this by the way? Omega's kernel is pretty large so I had modified SCFW's firmware.frm to accept larger kernels. (for some reason it was limited to loading very small ones and would error if you tried to give it a larger one. The way it manages the file read and such seems to suggest it shouldn't have been limited to such a small size.)
Still, I think there might be a reason for why this this kernel size limit was introduced in the first place. It might be the only free space left in the memory, anything more would be replaced by game ROM loading. However I am not sure about that, it's just some guesswork.
Last edited by djmuted,