dinoboards / yellow-msx-series-for-rc2014

V9958 Video Board Designed for RC2014
MIT License
37 stars 7 forks source link

V9958: Will not work if Interrupt Mode 2 is enabled #2

Closed vipoo closed 3 months ago

vipoo commented 3 years ago

This module is not compatible with interrupt mode 2. For stock RC2014, and stock RomWBW, the interrupt mode is typically set to mode 1.

If you have other modules, such as the CTC, and have them configured with a RomWBW build with mode 2 enabled - then please note this module will not work as currently configured.

Basically the board ignores the M1 control signal. This will need to processed for the chip selection, such that it does not activate during IM2 interrupt acknowledge cycles.

MSX did/does not use IM2.

It may be possible to bodge the module to fix this. I don't have any hardware that operates with IM2 so it's a little difficult for me to confirm what's required.

eluancm commented 2 years ago

Interrupt acknowledge cycles should not assert /RD, only /IORQ and /M1, so I think the older version should be fine? I have tested the v1.4 board in an IM2 system (with pull-ups in the data bus for the interrupt ack cycle) and it works.