mirror of
https://github.com/holub/mame
synced 2025-07-05 01:48:29 +03:00
started support for CPU-1 Centronics port on Port B
This commit is contained in:
parent
776915947d
commit
06f46524f9
@ -67,6 +67,7 @@ void pit68230_device::device_reset()
|
|||||||
m_pbcr = 0;
|
m_pbcr = 0;
|
||||||
m_padr = 0;
|
m_padr = 0;
|
||||||
m_pbdr = 0;
|
m_pbdr = 0;
|
||||||
|
m_psr = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER( pit68230_device::data_w )
|
WRITE8_MEMBER( pit68230_device::data_w )
|
||||||
@ -98,6 +99,14 @@ WRITE8_MEMBER( pit68230_device::data_w )
|
|||||||
printf("PBCR");
|
printf("PBCR");
|
||||||
m_pbcr = data;
|
m_pbcr = data;
|
||||||
break;
|
break;
|
||||||
|
case PIT_68230_PADR:
|
||||||
|
printf("PADR");
|
||||||
|
m_padr = data;
|
||||||
|
break;
|
||||||
|
case PIT_68230_PSR:
|
||||||
|
printf("PSR");
|
||||||
|
m_padr = data;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
printf("unhandled register %02x", offset);
|
printf("unhandled register %02x", offset);
|
||||||
}
|
}
|
||||||
@ -139,12 +148,24 @@ READ8_MEMBER( pit68230_device::data_r )
|
|||||||
printf("PADR");
|
printf("PADR");
|
||||||
data = m_padr;
|
data = m_padr;
|
||||||
break;
|
break;
|
||||||
case PIT_68230_PBDR:
|
case PIT_68230_PBDR:
|
||||||
|
/* 4.6.2. PORT B DATA REGISTER (PBDR). The port B data register is a holding register for moving data
|
||||||
|
to and from port B pins. The port B data direction register determines whether each pin is an input (zero)
|
||||||
|
or an output (one). This register is readable and writable at all times. Depending on the chosen mode/submode,
|
||||||
|
reading or writing may affect the double-buffered handshake mechanism. The port B data register is not affected
|
||||||
|
by the assertion of the RESET pin. PB0-PB7 sits on pins 17-24 on a 48 pin DIP package */
|
||||||
printf("PBDR");
|
printf("PBDR");
|
||||||
data = m_pbdr;
|
data = m_pbdr;
|
||||||
|
// data = (m_pbdr & 0xfc) | 1; // CPU-1 centronics interface expects to see 2 lowest bits equal 1 for printer
|
||||||
|
break;
|
||||||
|
case PIT_68230_PSR:
|
||||||
|
printf("PSR");
|
||||||
|
data = m_psr;
|
||||||
|
// data = m_psr | 1; // CPU-1 centronics interface expects status to be non zero
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
printf("unhandled register %02x", offset);
|
printf("unhandled register %02x", offset);
|
||||||
|
data = 0;
|
||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
|
|
||||||
|
@ -66,6 +66,7 @@ private:
|
|||||||
UINT8 m_pbcr; // Port B Control register
|
UINT8 m_pbcr; // Port B Control register
|
||||||
UINT8 m_padr; // Port A Data register
|
UINT8 m_padr; // Port A Data register
|
||||||
UINT8 m_pbdr; // Port B Data register
|
UINT8 m_pbdr; // Port B Data register
|
||||||
|
UINT8 m_psr; // Port Status Register
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user