This one is a bit unusual. Old and new versions of MCMAN seem to handle this differently. Some commands may check [4] for the terminator. Others may check [3]. Typically, older MCMAN revisions will exclusively check [4], and newer revisions will check both [3] and [4] for different values. In all cases, they expect to see a valid terminator value. Also worth noting old revisions of MCMAN will not
| 197 | // Also worth noting old revisions of MCMAN will not set anything other than 0x55 for the terminator, |
| 198 | // while newer revisions will set the terminator to another value (most commonly 0x5a). |
| 199 | void MemoryCardProtocol::GetTerminator() |
| 200 | { |
| 201 | MC_LOG.WriteLn("%s", __FUNCTION__); |
| 202 | PS1_FAIL(); |
| 203 | g_Sio2FifoOut.push_back(0x2b); |
| 204 | g_Sio2FifoOut.push_back(mcd->term); |
| 205 | g_Sio2FifoOut.push_back(mcd->term); |
| 206 | } |
| 207 | |
| 208 | void MemoryCardProtocol::WriteData() |
| 209 | { |