Keyboard
The CT Payphone uses a standard 4×3 telephone keypad with keys 0-9, *, and #. The keypad is matrix-scanned by the firmware via the ISR.
Keypad Matrix
OUT 5 bits [3:0] drive the columns; INP 4 bits [3:0] read the rows. The standard telephone layout:
| 1 | 2 | 3 |
| 4 | 5 | 6 |
| 7 | 8 | 9 |
| * | 0 | # |
Scanning
The keypad scan routine is located at address 3C9B (hexadecimal) in the V15 firmware. Scanning occurs in the ISR approximately once every eight interrupts - roughly every 64 ms. The firmware requires two to three consecutive scans detecting the same key before registering a valid press, providing hardware debouncing.
Maintenance Mode Keys
Certain key sequences activate maintenance and diagnostic functions when the phone is in the correct state:
- Test 20 (display test): Set FOC switch up for one second or more, then press and hold 2 for one second, followed by 0 for one second. All LCD segments light and the money display counts up digit by digit.
- Dialling: After inserting coins, keys 0-9 generate pulse-dialled digits. The LP Dial LED flashes during dialling.
- * and #: Used in certain maintenance and configuration sequences accessed via the Tester 297.
Upper Nibble Usage
The upper nibbles of OUT 5 and INP 4 are shared with other functions. OUT 5 bits [7:4] control BF RLY, CFG WE, SEIZE/BELL, and PHONE ON. INP 4 bits [7:4] provide FOC, TSTR SN, TSTR SP, and LD/MF inputs. Two of these upper bits control entry into maintenance mode.