GBA SIO: Improve SIO Normal dummy driver (fixes #520)

This commit is contained in:
Vicki Pfau 2017-07-08 13:50:08 -07:00
parent e6593eb0d4
commit ed9fa2b118
2 changed files with 7 additions and 4 deletions

View File

@ -167,6 +167,7 @@ Bugfixes:
- GB Video: Fix LYC regression
- Qt: Fix translation initialization (fixes mgba.io/i/776)
- PSP2: Use custom localtime_r since newlib version is broken (fixes mgba.io/i/560)
- GBA SIO: Improve SIO Normal dummy driver (fixes mgba.io/i/520)
Misc:
- Qt: Add language selector
- GBA Timer: Improve accuracy of timers

View File

@ -155,11 +155,13 @@ void GBASIOWriteSIOCNT(struct GBASIO* sio, uint16_t value) {
case SIO_NORMAL_8:
case SIO_NORMAL_32:
value |= 0x0004;
if ((value & 0x4080) == 0x4080) {
// TODO: Test this on hardware to see if this is correct
GBARaiseIRQ(sio->p, IRQ_SIO);
if ((value & 0x0081) == 0x0081) {
if (value & 0x4000) {
// TODO: Test this on hardware to see if this is correct
GBARaiseIRQ(sio->p, IRQ_SIO);
}
value &= ~0x0080;
}
value &= ~0x0080;
break;
default:
// TODO