It makes no difference, the issue isn't GUI related.
What we know so far: fioOpen(), fioLSeek(), fioOpenDir(), fioReadDir() (and corresponding close functions) all work as expected.. we are able to detect the mx4sio device and list its contents.. we can open the file and seek it since we know its calculating the size of the file correctly in this printf just before trying to read() the file
Code:
fp=mass0:/intro.avi fs=2172928
.. when trying to stream the file from the device with fioRead() calls it shits the bed..why? I don't know and I don't have an mx4sio to be able to test (thanks to
@Ripto for testing so many versions I sent him).. Initially I had replaced fio calls with filexio and replaced the module but it later became evident that this was not necessary and simply loading the iomanx module fixes the dirent issues so I reverted the filexio stuff in order to retain SMS original code as much as possible.
What does work: BDM USB & exFat, saving and loading cfg should work also but I don't know about Exit?.. I've removed all the GUI nonsense from the test build just in case anyone is curious as is.. I removed the hack around devices auto loading 3 usbs BUT with the caveat we lose hot plugging so when you START USB you wanna make sure your devices are connected.. as El_Isra explained earlier the custom usb module in SMS sends sif cmds to the EE telling it when a device has been connected or disconnected.. sdk modules don't do this.. this could obviously be expanded on and we get hot plugging back but I went back to do some stuff on OPL and with mx4sio not streaming the video there is not a lot of point spending time on other aspects (at least in regards to the bounty).
Current changes can be found here:
https://github.com/KrahJohlito/SMS/commit/f716b3a5bde5a8e3c148cc14ce6d576cd0922b2a
Along with the binary in actions or I'll just upload the elf anyway for those without a github account.