+++ title = "IMC-2001 keyboard" +++ connector to machine (sort of a rubber version of a DB-9): The connector on the computer side has a 9-pin DSUB connector male: ``` +----------- white INTR | +--------- black GND | | +------- green DATA | | | +----- blue RESET | | | | +--- Yellow CLOCK ------------- \ O O O O O / \ O O O O / --------- | | | +---- red 5V | | +------ n.c. | +-------- n.c. +---------- n.c. ``` On the keyboard PCB there is a strange white connector with the following layout: ``` +------------- white INTR (active low, after last clock tick) | +----------- black GND | | +--------- blue RESET (active low) | | | +------- green DATA | | | | +----- yellow CLOCK | | | | | +--- red +5V +-----------+ |o o o o o o| +-----------+ | | ``` Keyboard layout: {{< figure src="/images/hardware/imc-2001/keyboard_front.jpg" alt="keyboard layout" >}} Keyboard has a 8039 CPU inside and a 2K EPROM: {{< figure src="/images/hardware/imc-2001/keyboard_pcb_controller_prom.jpg" alt="PCB and controller" >}} On the oscilloscope: {{< figure src="/images/hardware/imc-2001/oscilloscope_serial_keyboard.jpg" alt="serial keyboard signal" >}} The protocol is basically ASCII over 19200 baud serial, with an interesting end signal which IMHO triggers a latch on the motherboard or so (INTR white above). Broken keyboard cable (the black pins are just connectors added by me to test connectivity, both connector are female per default): {{< figure src="/images/hardware/imc-2001/keyboard_cable.jpg" alt="PCB and controller" >}}