The 6502 CPU (Central Processing Unit) (or MPU (Micro Processing Unit?)) is an 8-bit processor for the VIC-20, and many of the Commodore floppy drives.
Pin(s) | Signal | Dir | Description |
---|---|---|---|
1 | GND | - | GrouND. (0V) |
2 | RDY | in | ReaDY. When going LOW, the CPU waits after next read cycle for this line going HIGH again. |
3 | ø1 out* | out | Phi1 out. [Help! Why does the 6502 have TWO system clock ouputs? ] |
4 | /IRQ | in | Interrupt ReQuest. When going LOW, the CPU loads the PC with the value stored in $fffe/$ffff after processing the current command. This procedure will be executed only when interrupts have been enabled (bit 2 in flag register = 0). |
5 | NC | - | Not Connected. |
6 | /NMI | in | Non Maskable Interrupt. When going LOW, the CPU loads the PC with the value stored in $fffa/$fffb after processing the current command. |
7 | Sync | out | Synchronization. Becomes HIGH whenever the CPU fetches an opcode. Together with pin 2 (RDY), you can build a single step mode hardwarewise [2]. |
8 | Vcc | - | Supply voltage. This pin is connected to +5V DC. |
9-20 | A0-A11 | in / out | Address bus. The CPU applies the address of the next datum to be read or written. |
21 | GND | - | GrouND. (0V) |
22-25 | A12-A15 | in / out | Address bus. The CPU applies the address of the next datum to be read or written. |
26-33 | D7-D0 | in / out | Data bus. |
34 | R/-W | out | Read/-Write. With this line, the CPU controls whether the next DRAM access will be a read or write cycle. LOW=write, HIGH=read. |
35 | NC | - | Not Connected. |
36 | NC | - | Not Connected. |
37 | ø 0 in* | in | Phi 0 in. The system clock signal is applied to this input. In the VIC-20 and the 1541, it is about 1 MHz. |
38 | /s o | in | Set Overflow. Pulling this pin to LOW sets the overflow flag in the status register [1]. |
39 | ø2 out* | out | Phi2 out. The CPU outputs the system clock for the rest of the chips for synchronization. Don't know why there are TWO system clock outputs (see pin 3). |
40 | /RES | in | RESet. When going LOW, the CPU resets and waits for a LOW-HIGH transistion to load the PC with the value stored in $fffc/$fffd. |