Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
08916 Core Minor Always Sep 11, 2024, 23:53 Sep 13, 2024, 04:57
Tester pgimeno View Status Public Platform
Assigned To Resolution Open OS
Status [?] Confirmed Driver
Version 0.251 Fixed in Version Build
Fixed in Git Commit Github Pull Request #
Summary 08916: jupace: Incorrect Z80 data bus value during interrupt
Description It seems that the bus value during an interrupt servicing in the jupace driver is fixed to 255. This is incorrect; the real machine's hardware actually derives the value from both text RAM and character set RAM in a nontrivial way, associated with the video hardware. I've posted the details of the correct behaviour here: https://retrocomputing.stackexchange.com/questions/20350/what-would-be-the-value-on-the-data-bus-for-a-jupiter-ace-with-the-z80-interrupt#30578

This affects the game Valkyr in particular (marked as Not Working as of this writing); possibly more. This game assumes that the data bus value during an interrupt is 20h, which is not necessarily true in general but it is true if the machine was just booted and just a LOAD command was entered.
Steps To Reproduce - Configure the machine with at least 16K extra RAM.
- Load and try to play Valkyr (m_valkyr.zip).
- Observe that the machine resets or otherwise fails to work.
- Optionally, modify the driver to always return 32 instead of 255 as the bus value during interrupt servicing and try again; check that the game loads an runs.
Additional Information The value for an unused I/O port (e.g. port 255) is also derived from text RAM / character set RAM in the same way; the same fix could also provide accurate values for unused ports. I'm not aware of any program that expects a correct value though, but it would be nice to have it in the interest of accuracy.

I've written a test ROM that allows verifying whether the IM2 behaviour is correct in normal situations (it's not very thorough though). https://codeberg.org/pgimeno/jupace-testrom
Github Commit
Flags Verified with Original, Verified with Code
Regression Version
Affected Sets / Systems jupace
Attached Files
 
Relationships
There are no relationship linked to this issue.
Notes
0
There are no notes attached to this issue.