sio: no DTR resets device
authornotaz <notasas@gmail.com>
Wed, 6 Jul 2011 17:16:51 +0000 (20:16 +0300)
committernotaz <notasas@gmail.com>
Tue, 12 Jul 2011 21:28:48 +0000 (00:28 +0300)
tested on the real thing

libpcsxcore/sio.c

index df130e8..12fd0bd 100644 (file)
@@ -279,7 +279,7 @@ void sioWriteMode16(unsigned short value) {
 void sioWriteCtrl16(unsigned short value) {
        CtrlReg = value & ~RESET_ERR;
        if (value & RESET_ERR) StatReg &= ~IRQ;
-       if ((CtrlReg & SIO_RESET) || (!CtrlReg)) {
+       if ((CtrlReg & SIO_RESET) || !(CtrlReg & DTR)) {
                padst = 0; mcdst = 0; parp = 0;
                StatReg = TX_RDY | TX_EMPTY;
                psxRegs.interrupt &= ~(1 << PSXINT_SIO);