| version 1.2, 2003/10/21 11:22:05 | version 1.3, 2003/12/08 00:55:32 | 
| Line 7 | Line 7 | 
 |  |  | 
 | // ---- I/O | // ---- I/O | 
 |  |  | 
| static void IOOUTCALL upd4990_o20(UINT port, BYTE dat) { | static void IOOUTCALL upd4990_o20(UINT port, REG8 dat) { | 
 |  |  | 
| BYTE    mod; | REG8    mod; | 
| BYTE    cmd; | REG8    cmd; | 
 |  |  | 
 | mod = dat ^ uPD4990.last; | mod = dat ^ uPD4990.last; | 
| uPD4990.last = dat; | uPD4990.last = (UINT8)dat; | 
 |  |  | 
 | if (dat & 0x08) {                                                                               // STB | if (dat & 0x08) {                                                                               // STB | 
 | if (mod & 0x08) { | if (mod & 0x08) { | 
| Line 25  static void IOOUTCALL upd4990_o20(UINT p | Line 25  static void IOOUTCALL upd4990_o20(UINT p | 
 | case 0x00:                      // register hold | case 0x00:                      // register hold | 
 | uPD4990.regsft = 0; | uPD4990.regsft = 0; | 
 | break; | break; | 
 |  |  | 
 | case 0x01:                      // register shift | case 0x01:                      // register shift | 
 | uPD4990.regsft = 1; | uPD4990.regsft = 1; | 
 | uPD4990.pos = (UPD4990_REGLEN * 8) - 1; | uPD4990.pos = (UPD4990_REGLEN * 8) - 1; | 
 | break; | break; | 
 |  |  | 
 | case 0x02:                      // time set     / counter hold | case 0x02:                      // time set     / counter hold | 
 | uPD4990.regsft = 0; | uPD4990.regsft = 0; | 
 | break; | break; | 
 |  |  | 
 | case 0x03:                      // time read | case 0x03:                      // time read | 
 | uPD4990.regsft = 0; | uPD4990.regsft = 0; | 
 | ZeroMemory(uPD4990.reg, sizeof(uPD4990.reg)); | ZeroMemory(uPD4990.reg, sizeof(uPD4990.reg)); |