Great work Grauw ! I think the only limitation is that the whole file has to fit into memory ?
BTW, the "Powerpuff girls" soundtrack brings back good memories
Well, missing a few samples every once in a while is not a big problem (this happens when it switches mapper slots), however disk loads would introduce audible pops and clicks I think. I haven’t tried but at a minimum a 512-byte sector load would take 2.6 ms not considering overhead, and at 15.7 kHz that means 40 missed samples at the least, that’s quite a lot.
I guess if you would directly access the interface buffer (like I think EVA players do) then maybe you could stream directly. But then you’d have to write interface-specific drivers. And of course ROM does not have loading times. But that’s a bit beyond the scope of the project.
p.s. The current compilation flags support up to 16 MB RAM.
Great work! Amazing, a use case is buried in hardware for decades and is discovered now, very nice. It's like discovering a new room in a pyramid.