-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FDS-N163 playback issues #330
Comments
the latter is caused by #331 |
the former is caused by the memory region in $8000-DFFF becoming read-writeable by FDS. in some NSF players where they do not make this region read-writeable, the NSF works as expected, but when exported as NSF and played in Mesen, which makes the region read-writeable, the program crashes through a cascade of expansion audio register writes overwriting driver code. example case using this NSF: computer.zip the NSF is exported with a "glob" multichip configuration, enabling all expansion audio code. ( VRC6 initialization writes $00 to $9003. Dn-FamiTracker/Source/drivers/asm/init.s Lines 98 to 101 in 12399c0
N163 writes to $0E $C000 due to 5B being enabled. this prevents conflicts with 5B registers. Dn-FamiTracker/Source/drivers/asm/n163.s Lines 66 to 71 in 12399c0
VRC7 init writes to $9010 and $9030, ending up with $3E and $00 in both registers respectively. Dn-FamiTracker/Source/drivers/asm/vrc7.s Lines 30 to 46 in 12399c0
the former write corrupts this line to Dn-FamiTracker/Source/drivers/asm/effects.s Lines 220 to 224 in 12399c0
there are also memory corruptions throughout the driver, though i am not sure where they are coming from. in any case, overwriting data/code results in nondeterministic behavior and may even cause the program to crash. |
NSF export of this module crashes in Mesen2 @ commit 30ece8ec6271f09cffa440828a1c96e35fef837a
When assembled with .asm export and driver source, FDS automodulation isn't working.
details:
attachments:
investigation is needed.
The text was updated successfully, but these errors were encountered: