23128 Mask ROM 16K×8 pinout
DIP-28. BASIC and KERNAL ROMs (C16, Plus/4, C64C short board, C128)
28-pin 16K x 8 mask ROM with three chip selects: pin 20, pin 22 and pin 27. The sense of each select is set by the mask, so it differs by maker and part. Board wiring, by machine: C16: U3 BASIC ($8000-$BFFF, TED /CS0) and U4 KERNAL ($C000-$FFFF, TED /CS1); the C16 parts use 20 /CS (active LOW, C16 SM /CS2) from the TED ROM selects, 22 /CE and 27 CS (active HIGH, C16 SM CS3). Spectrum: Hitachi and NEC swap the jobs of pins 20 and 27 (NEC: 20 CE, 27 CS; Hitachi: 20 CS, 27 CE), and links H and N above IC5 must match the ROM fitted. Oric-1: pin 27 comes from /ROMDIS with a 3K3 pull-up (RP1). A 27128 EPROM has /CE on 20, /OE on 22 and /PGM on 27, and reads only with pins 1 and 27 HIGH. C64C 250469: one 23128 (251913-01) at U4 holds BASIC and KERNAL. C128: U32-U35 (parts list). How those two boards wire pins 20, 22 and 27 is not checked here.
Open the interactive 23128 pinoutPins
| Pin | Name | Type | Signal |
|---|---|---|---|
| 1 | NC | nc | No connection (VPP on a 27128 EPROM). UNVERIFIED |
| 2 | A12 | addr | Address bit 12. |
| 3 | A7 | addr | Address bit 7. |
| 4 | A6 | addr | Address bit 6. |
| 5 | A5 | addr | Address bit 5. |
| 6 | A4 | addr | Address bit 4. |
| 7 | A3 | addr | Address bit 3. |
| 8 | A2 | addr | Address bit 2. |
| 9 | A1 | addr | Address bit 1. |
| 10 | A0 | addr | Address bit 0. |
| 11 | D0 | data | Data out bit 0 (C16 SM label D1). |
| 12 | D1 | data | Data out bit 1 (D2). |
| 13 | D2 | data | Data out bit 2 (D3). |
| 14 | GND | ground | 0 V. |
| 15 | D3 | data | Data out bit 3 (D4). |
| 16 | D4 | data | Data out bit 4 (D5). |
| 17 | D5 | data | Data out bit 5 (D6). |
| 18 | D6 | data | Data out bit 6 (D7). |
| 19 | D7 | data | Data out bit 7 (D8). |
| 20 | /CS | ctrl | Chip select. Its polarity is set by the mask, so it depends on the maker and the part; check the board (summary) before probing for an active level. UNVERIFIED |
| 21 | A10 | addr | Address bit 10. |
| 22 | /CE | ctrl | Chip enable, active LOW (named /CS1 in the C16 manual). |
| 23 | A11 | addr | Address bit 11. |
| 24 | A9 | addr | Address bit 9. |
| 25 | A8 | addr | Address bit 8. |
| 26 | A13 | addr | Address bit 13. |
| 27 | CS | ctrl | Chip select. Its polarity is set by the mask, so it depends on the maker and the part (board wiring: see the summary). On a 27128 EPROM this pin is /PGM and must sit HIGH for the EPROM to read. UNVERIFIED |
| 28 | VCC | power | +5 V supply. |
Fitted in
- Commodore 16 U3 (BASIC 318006), U4 (KERNAL 318005)
- Commodore Plus/4 U23 (BASIC), U24 (KERNAL), U25, U26 (3-plus-1)
- Commodore 64 U4 (251913-01: BASIC and KERNAL in one ROM; 250469 boards only)
- Commodore 128 U32 (251913-01, 64 mode), U33 (318018), U34 (318019), U35 (318020) on early boards; later boards fit a 23256 at U32 and at U34
- ZX Spectrum 48K IC5
- Timex Sinclair 2068 U16 (Home ROM, NEC 23128, 250 ns)
- Amstrad CPC 664 IC204 (AMSDOS ROM, TMM23128P-1951, Amstrad 40015)
- Amstrad CPC 6128 IC204 (AMSDOS ROM, TMM23128P, Amstrad 40015)
- Oric-1 IC9 (23128, or 2764 pair IC9/IC10 with IC11 74LS00 on early boards)
- Oric Atmos IC9 (verify)
Sources
- C16 Service Manual, 23128 pin configuration (U3, U4), p. 11
- C16 Service Manual 314001-03, alternate scan (the zimmers.net PDF has a damaged page index), PDF p. 11
- TED System Hardware Manual, 11.4 23128 ROM pinout, p. 25
- Zimmers C16 & Plus/4 parts list (ROM part numbers and locations)
- C64/C64C Service Manual 314001-03, parts list 250469-01: U4 128K ROM 251913-01, PDF p. 50
- C128/C128D parts list (William Levak): U32-U35 ROMs, 23128 and 23256
- ZX Spectrum Service Manual 1.5.1 (links H and N: Hitachi and NEC use pins 20 and 27 differently), p. 10
- ZX Spectrum Service Manual 4.6 Hitachi vs NEC ROM (change the links with the ROM), p. 24
- ZX Spectrum Issue 3 circuit diagram, IC5 table (pin 20: NEC CE, Hitachi CS; pin 27: NEC CS, Hitachi CE)