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 - GB Video: Fix LYC regression
- Qt: Fix translation initialization (fixes mgba.io/i/776) - Qt: Fix translation initialization (fixes mgba.io/i/776)
- PSP2: Use custom localtime_r since newlib version is broken (fixes mgba.io/i/560) - 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: Misc:
- Qt: Add language selector - Qt: Add language selector
- GBA Timer: Improve accuracy of timers - 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_8:
case SIO_NORMAL_32: case SIO_NORMAL_32:
value |= 0x0004; value |= 0x0004;
if ((value & 0x4080) == 0x4080) { if ((value & 0x0081) == 0x0081) {
if (value & 0x4000) {
// TODO: Test this on hardware to see if this is correct // TODO: Test this on hardware to see if this is correct
GBARaiseIRQ(sio->p, IRQ_SIO); GBARaiseIRQ(sio->p, IRQ_SIO);
} }
value &= ~0x0080; value &= ~0x0080;
}
break; break;
default: default:
// TODO // TODO