PurrFX project update 8
Project status overview as of August 25, 2020.
Commits: August 25, 2020.After collecting the data, the next logical step is to use it. To do this, I created a class that reads frame data from a file and prepares it for use. This class, like any other implementation of CFrameDataProducer, interacts with the emulation code object by attaching to it.
What happens inside the emulation code for playing frame data based sound resembles (as I think) the operation of a device called the “Game Genie”. As soon as it comes to the play function from the NSF file, the code is intercepted and redirected to the play function at $6000 address.
I cannot say that it is beautiful, but most likely there simply does not exist a more suitable way to use an arbitrary set of audio related instructions (in any required quantity, even in gigabytes).
This is what the log file looks like, demonstrating the operation of the play function at the $6000 address:
I cannot say that it is beautiful, but most likely there simply does not exist a more suitable way to use an arbitrary set of audio related instructions (in any required quantity, even in gigabytes).
This is what the log file looks like, demonstrating the operation of the play function at the $6000 address:
Did you notice it? There is something wrong with the playback of DPCM samples. Fortunately, the solution is very simple. It is enough to look into the log of the untouched "Contra Force.nsf" file:
And everything would be fine, but I am not satisfied with the fact that you still need existing NSF file, and preferably the original one...
Related information:
Project page: https://github.com/TheCatNose/PurrFX
Comments
Post a Comment