Stephen Ruddy NES driver on VERA PSG
Posted: Sat Feb 10, 2024 11:47 pm
I don't know if anyone's done this yet for X16, but at this link:
https://mega.nz/folder/Xs4gTCjQ#iUDu1UmSJWvXky8Gnz-skA
PRG file and reverse-engineered NES source using Tim Follin's Treasure Master as an example. The conversion routines are sloppy unoptimized code, and not what I'd take home to meet Mother, but it's mainly proof of concept. I didn't try this on real hardware: I only have the emulator but wanted to see how X16 would do.
I've done about two dozen such conversions for C64 posted as 2SIDs on DeepSID, mainly to get past the three voice limitation without burning rastertime on stores to $D418.
Not having to fight ADSR makes this a bit easier on X16, VERA can hit higher notes, and the noise LFSR on VERA is more in line with an NES-like sound. This is similar to what Mr. SID did back in 2010 using SID as an output device running original, relocated code. Call NES driver, parse the 2A03 register block at $4000, and convert to the machine's sound chip.
If anyone knows how to make a convincing sounding bass without filters on VERA (I'd like to avoid OPL) let me know, and when I have the time I'll take a shot at porting Journey to Silius over as I know what the digi-frequency mappings are and liked how the SID conversion turned out.
I can do a sourcecode dump as well for the 20 or so reverse engineered drivers (with command sets) I have for anyone interested because the software controlled per-voice volume for NES is completely in line with VERA so NES code archaeology might prove applicable for someone developing players. EDIT: I'll just post a link to them now, so have at it: https://mega.nz/folder/T0YH3LSY#pEacVDT-QlegVNJXXz1adw
https://mega.nz/folder/Xs4gTCjQ#iUDu1UmSJWvXky8Gnz-skA
PRG file and reverse-engineered NES source using Tim Follin's Treasure Master as an example. The conversion routines are sloppy unoptimized code, and not what I'd take home to meet Mother, but it's mainly proof of concept. I didn't try this on real hardware: I only have the emulator but wanted to see how X16 would do.
I've done about two dozen such conversions for C64 posted as 2SIDs on DeepSID, mainly to get past the three voice limitation without burning rastertime on stores to $D418.
Not having to fight ADSR makes this a bit easier on X16, VERA can hit higher notes, and the noise LFSR on VERA is more in line with an NES-like sound. This is similar to what Mr. SID did back in 2010 using SID as an output device running original, relocated code. Call NES driver, parse the 2A03 register block at $4000, and convert to the machine's sound chip.
If anyone knows how to make a convincing sounding bass without filters on VERA (I'd like to avoid OPL) let me know, and when I have the time I'll take a shot at porting Journey to Silius over as I know what the digi-frequency mappings are and liked how the SID conversion turned out.
I can do a sourcecode dump as well for the 20 or so reverse engineered drivers (with command sets) I have for anyone interested because the software controlled per-voice volume for NES is completely in line with VERA so NES code archaeology might prove applicable for someone developing players. EDIT: I'll just post a link to them now, so have at it: https://mega.nz/folder/T0YH3LSY#pEacVDT-QlegVNJXXz1adw