Difference between revisions of "RETRO-65C816 Rev 1"
Jump to navigation
Jump to search
Blwikiadmin (talk | contribs) |
Blwikiadmin (talk | contribs) |
||
Line 1,318: | Line 1,318: | ||
set_location_assignment PIN_AA19 -to CPU_VPB | set_location_assignment PIN_AA19 -to CPU_VPB | ||
set_location_assignment PIN_AB13 -to n_CPU_Res | set_location_assignment PIN_AB13 -to n_CPU_Res | ||
+ | </pre> | ||
+ | |||
+ | === EP4CE15F23C8 Pin List === | ||
+ | |||
+ | <pre> | ||
+ | set_global_assignment -name FAMILY "Cyclone 10 LP" | ||
+ | set_global_assignment -name DEVICE 10CL006YU256C8G | ||
+ | set_global_assignment -name TOP_LEVEL_ENTITY M6502_VGA | ||
+ | set_global_assignment -name ORIGINAL_QUARTUS_VERSION "13.0 SP1" | ||
+ | set_global_assignment -name PROJECT_CREATION_TIME_DATE "18:01:55 MARCH 31, 2019" | ||
+ | set_global_assignment -name LAST_QUARTUS_VERSION "21.1.0 Lite Edition" | ||
+ | set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files | ||
+ | set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 | ||
+ | set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 | ||
+ | set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 1 | ||
+ | set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top | ||
+ | set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top | ||
+ | set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top | ||
+ | set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW" | ||
+ | set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)" | ||
+ | set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" | ||
+ | set_global_assignment -name USE_CONFIGURATION_DEVICE OFF | ||
+ | set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF | ||
+ | set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -rise | ||
+ | set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -fall | ||
+ | set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -rise | ||
+ | set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -fall | ||
+ | set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO" | ||
+ | # Clock, reset switch | ||
+ | set_location_assignment PIN_E1 -to i_clk_50 | ||
+ | set_location_assignment PIN_J6 -to i_n_reset | ||
+ | set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n_reset | ||
+ | # PS/2 keyboard | ||
+ | set_location_assignment PIN_G1 -to io_ps2Clk | ||
+ | set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_ps2Clk | ||
+ | set_location_assignment PIN_G2 -to io_ps2Data | ||
+ | set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_ps2Data | ||
+ | # Serial port with RTS/CTS | ||
+ | set_location_assignment PIN_D11 -to i_n_cts | ||
+ | set_location_assignment PIN_D12 -to i_rxd | ||
+ | set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_rxd | ||
+ | set_location_assignment PIN_B10 -to o_n_rts | ||
+ | set_location_assignment PIN_A10 -to o_txd | ||
+ | # Video | ||
+ | set_location_assignment PIN_B12 -to o_vid_red[0] | ||
+ | set_location_assignment PIN_A12 -to o_vid_red[1] | ||
+ | set_location_assignment PIN_B13 -to o_vid_grn[0] | ||
+ | set_location_assignment PIN_A13 -to o_vid_grn[1] | ||
+ | set_location_assignment PIN_B14 -to o_vid_blu[0] | ||
+ | set_location_assignment PIN_A14 -to o_vid_blu[1] | ||
+ | set_location_assignment PIN_D14 -to o_vid_hSync | ||
+ | set_location_assignment PIN_C14 -to o_vid_vSync | ||
+ | # SRAM | ||
+ | set_location_assignment PIN_E5 -to o_n_sRamCS | ||
+ | set_location_assignment PIN_A3 -to o_n_sRamOE | ||
+ | set_location_assignment PIN_B7 -to o_n_sRamWE | ||
+ | set_location_assignment PIN_D4 -to io_sramData[0] | ||
+ | set_location_assignment PIN_C6 -to io_sramData[1] | ||
+ | set_location_assignment PIN_B5 -to io_sramData[2] | ||
+ | set_location_assignment PIN_B6 -to io_sramData[3] | ||
+ | set_location_assignment PIN_A5 -to io_sramData[4] | ||
+ | set_location_assignment PIN_D6 -to io_sramData[5] | ||
+ | set_location_assignment PIN_E6 -to io_sramData[6] | ||
+ | set_location_assignment PIN_A2 -to io_sramData[7] | ||
+ | set_location_assignment PIN_B4 -to o_sramAddress[0] | ||
+ | set_location_assignment PIN_B3 -to o_sramAddress[1] | ||
+ | set_location_assignment PIN_D3 -to o_sramAddress[2] | ||
+ | set_location_assignment PIN_B1 -to o_sramAddress[3] | ||
+ | set_location_assignment PIN_D1 -to o_sramAddress[4] | ||
+ | set_location_assignment PIN_C2 -to o_sramAddress[5] | ||
+ | set_location_assignment PIN_F5 -to o_sramAddress[6] | ||
+ | set_location_assignment PIN_C3 -to o_sramAddress[7] | ||
+ | set_location_assignment PIN_A4 -to o_sramAddress[8] | ||
+ | set_location_assignment PIN_A6 -to o_sramAddress[9] | ||
+ | set_location_assignment PIN_A7 -to o_sramAddress[10] | ||
+ | set_location_assignment PIN_C8 -to o_sramAddress[11] | ||
+ | set_location_assignment PIN_C9 -to o_sramAddress[12] | ||
+ | set_location_assignment PIN_A8 -to o_sramAddress[13] | ||
+ | set_location_assignment PIN_A9 -to o_sramAddress[14] | ||
+ | set_location_assignment PIN_E8 -to o_sramAddress[15] | ||
+ | set_location_assignment PIN_B9 -to o_sramAddress[16] | ||
+ | set_location_assignment PIN_B8 -to o_sramAddress[17] | ||
+ | set_location_assignment PIN_D9 -to o_sramAddress[18] | ||
+ | set_location_assignment PIN_D8 -to o_sramAddress[19] | ||
+ | # SD Card | ||
+ | set_location_assignment PIN_B16 -to sdCS | ||
+ | set_location_assignment PIN_C15 -to sdMISO | ||
+ | set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to sdMISO | ||
+ | set_location_assignment PIN_A15 -to sdMOSI | ||
+ | set_location_assignment PIN_C16 -to sdClock | ||
+ | # SDRAM | ||
+ | set_location_assignment PIN_P2 -to sdRamClk | ||
+ | set_location_assignment PIN_R1 -to sdRamClkEn | ||
+ | set_location_assignment PIN_M7 -to n_sdRamCas | ||
+ | set_location_assignment PIN_P8 -to n_sdRamCe | ||
+ | set_location_assignment PIN_M8 -to n_sdRamRas | ||
+ | set_location_assignment PIN_P6 -to n_sdRamWe | ||
+ | set_location_assignment PIN_R7 -to sdRamAddr[0] | ||
+ | set_location_assignment PIN_T7 -to sdRamAddr[1] | ||
+ | set_location_assignment PIN_R8 -to sdRamAddr[2] | ||
+ | set_location_assignment PIN_T8 -to sdRamAddr[3] | ||
+ | set_location_assignment PIN_R6 -to sdRamAddr[4] | ||
+ | set_location_assignment PIN_T5 -to sdRamAddr[5] | ||
+ | set_location_assignment PIN_R5 -to sdRamAddr[6] | ||
+ | set_location_assignment PIN_T4 -to sdRamAddr[7] | ||
+ | set_location_assignment PIN_R4 -to sdRamAddr[8] | ||
+ | set_location_assignment PIN_T3 -to sdRamAddr[9] | ||
+ | set_location_assignment PIN_T6 -to sdRamAddr[10] | ||
+ | set_location_assignment PIN_R3 -to sdRamAddr[11] | ||
+ | set_location_assignment PIN_T2 -to sdRamAddr[12] | ||
+ | set_location_assignment PIN_N8 -to sdRamAddr[13] | ||
+ | set_location_assignment PIN_L8 -to sdRamAddr[14] | ||
+ | set_location_assignment PIN_K5 -to sdRamData[0] | ||
+ | set_location_assignment PIN_L3 -to sdRamData[1] | ||
+ | set_location_assignment PIN_L4 -to sdRamData[2] | ||
+ | set_location_assignment PIN_K6 -to sdRamData[3] | ||
+ | set_location_assignment PIN_N3 -to sdRamData[4] | ||
+ | set_location_assignment PIN_M6 -to sdRamData[5] | ||
+ | set_location_assignment PIN_P3 -to sdRamData[6] | ||
+ | set_location_assignment PIN_N5 -to sdRamData[7] | ||
+ | set_location_assignment PIN_N2 -to sdRamData[8] | ||
+ | set_location_assignment PIN_N1 -to sdRamData[9] | ||
+ | set_location_assignment PIN_L1 -to sdRamData[10] | ||
+ | set_location_assignment PIN_L2 -to sdRamData[11] | ||
+ | set_location_assignment PIN_K1 -to sdRamData[12] | ||
+ | set_location_assignment PIN_K2 -to sdRamData[13] | ||
+ | set_location_assignment PIN_J1 -to sdRamData[14] | ||
+ | set_location_assignment PIN_J2 -to sdRamData[15] | ||
+ | # | ||
+ | set_location_assignment PIN_N13 -to IO_PIN[21] | ||
+ | set_location_assignment PIN_R14 -to IO_PIN[22] | ||
+ | set_location_assignment PIN_P14 -to IO_PIN[23] | ||
+ | set_location_assignment PIN_N14 -to IO_PIN[24] | ||
+ | set_location_assignment PIN_R16 -to IO_PIN[25] | ||
+ | set_location_assignment PIN_P16 -to IO_PIN[26] | ||
+ | set_location_assignment PIN_N15 -to IO_PIN[27] | ||
+ | set_location_assignment PIN_N16 -to IO_PIN[28] | ||
+ | set_location_assignment PIN_L15 -to IO_PIN[31] | ||
+ | set_location_assignment PIN_L16 -to IO_PIN[32] | ||
+ | set_location_assignment PIN_M12 -to IO_PIN[33] | ||
+ | set_location_assignment PIN_P15 -to IO_PIN[34] | ||
+ | set_location_assignment PIN_L13 -to IO_PIN[35] | ||
+ | set_location_assignment PIN_L14 -to IO_PIN[36] | ||
+ | set_location_assignment PIN_K15 -to IO_PIN[37] | ||
+ | set_location_assignment PIN_K16 -to IO_PIN[38] | ||
+ | set_location_assignment PIN_J12 -to IO_PIN[39] | ||
+ | set_location_assignment PIN_K12 -to IO_PIN[40] | ||
+ | set_location_assignment PIN_J13 -to IO_PIN[41] | ||
+ | set_location_assignment PIN_J14 -to IO_PIN[42] | ||
+ | set_location_assignment PIN_J11 -to IO_PIN[43] | ||
+ | set_location_assignment PIN_K11 -to IO_PIN[44] | ||
+ | set_location_assignment PIN_F11 -to IO_PIN[45] | ||
+ | set_location_assignment PIN_G11 -to IO_PIN[46] | ||
+ | set_location_assignment PIN_F14 -to IO_PIN[47] | ||
+ | set_location_assignment PIN_F13 -to IO_PIN[48] | ||
+ | # | ||
+ | set_location_assignment PIN_R9 -to CPU_E | ||
+ | set_location_assignment PIN_T9 -to n_CPU_Res | ||
+ | set_location_assignment PIN_R10 -to CPU_MX | ||
+ | set_location_assignment PIN_T10 -to CPU_CLK | ||
+ | set_location_assignment PIN_R11 -to CPU_BusEnable | ||
+ | set_location_assignment PIN_T11 -to CPU_NMIB | ||
+ | set_location_assignment PIN_R12 -to CPU_RWB | ||
+ | set_location_assignment PIN_T12 -to CPU_IRQB | ||
+ | set_location_assignment PIN_N9 -to CPU_VDA | ||
+ | set_location_assignment PIN_M9 -to CPU_ABORTB | ||
+ | set_location_assignment PIN_M10 -to CPU_VPA | ||
+ | set_location_assignment PIN_P9 -to CPU_RDY | ||
+ | set_location_assignment PIN_P11 -to CPU_VPB | ||
+ | set_location_assignment PIN_N11 -to CPU_MLB | ||
+ | set_location_assignment PIN_L9 -to driveLED | ||
</pre> | </pre> | ||
Latest revision as of 13:17, 29 August 2022
Contents
- 1 Features
- 2 65C816 CPU
- 3 Connectors
- 4 Mechanicals
- 5 MultiComp On RETRO-65C816 VHDL Code
- 6 References/Notes
- 7 Pin List
- 8 Revision History
- 9 Videos
- 10 Assembly Sheet
Features
- Design based on RETRO-EP4CE15 card
- Adds 65C816 CPU
- 5V level translator for keyboard
- 5V header moved to board edge
- 65C816 CPU
- 3.3V
- 8 MHz
- All pins are brought to FPGA
- Address A0-A15 and Data lines also go directly to the SRAM
- FPGA can have the ROM internally or download it to the SRAM
- 1MB SRAM
- 45nS access time
- USB B
- FTDI USB to TTL
- Tx/Rx LEDs
- VGA
- 2:2:2 R:G:B
- PS/2 keyboard
- 5V KEYBOARD
- Level translator to 3.3V for FPGA
- SD card socket
- Full-sized SD
- QMTECH FPGA card mounts on top
- 95x95mm card
- ODAS form factor
- (4) 6-32 Mounting holes
65C816 CPU
Block Diagram
Timing
Connectors
H1 - 5V
- Install jumper to power card from USB
H2 - VREG I/O Conn
- Power to J1
J1 - I/O Connector
- 50-pin I/O Connector
J2 - Keyboard
- 1x4 header
J3 - 6 FPGA pins
J4 - USB B Serial/Power
- Serial to/from FTDI
- Can power the card
J5 - 5V/GND
- 5V/ground for external 5V logic
J7 Pin Mapping Card to FPGA pins - Right connector
U7 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | CYC 10 | FUNCTION | U7 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | CYC 10 | FUNCTION | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | GND | GND | GND | GND | GND | 2 | GND | GND | GND | GND | GND | |
3 | 3.3V | 3.3V | 3.3V | 3.3V | 3.3V | 4 | 3.3V | 3.3V | 3.3V | 3.3V | 3.3V | |
5 | GND | GND | GND | GND | GND | 6 | GND | GND | GND | GND | GND | |
7 | PIN_R1 | PIN_R1 | PIN_AA2 | PIN_G1 | PS2CLK | 8 | PIN_R2 | PIN_R2 | PIN_AA1 | PIN_G2 | PS2DAT | |
9 | PIN_P1 | PIN_P1 | PIN_Y3 | PIN_D1 | SRAMA4 | 10 | PIN_P2 | PIN_P2 | PIN_W2 | PIN_C2 | SRAMA5 | |
11 | PIN_N1 | PIN_N1 | PIN_U1 | PIN_B1 | SRAMA3 | 12 | PIN_N2 | PIN_N2 | PIN_U2 | PIN_F5 | SRAMA6 | |
13 | PIN_M1 | PIN_M1 | PIN_N1 | PIN_D3 | SRAMA2 | 14 | PIN_M2 | PIN_M2 | PIN_N2 | PIN_C3 | SRAMA7 | |
15 | PIN_J1 | PIN_J1 | PIN_L1 | PIN_B3 | SRAMA1 | 16 | PIN_J2 | PIN_J2 | PIN_L2 | PIN_A3 | SRAM0E_N | |
17 | PIN_H1 | PIN_H1 | PIN_G1 | PIN_B4 | SRAMA0 | 18 | PIN_H2 | PIN_H2 | PIN_G2 | PIN_A4 | SRAMA8 | |
19 | PIN_F1 | PIN_F1 | PIN_E2 | PIN_E5 | SRAMCS_N | 20 | PIN_F2 | PIN_F2 | PIN_D3 | PIN_A2 | SRAMD7 | |
21 | PIN_E1 | PIN_E1 | PIN_C1 | PIN_D4 | SRAMD0 | 22 | PIN_D2 | PIN_D2 | PIN_C2 | PIN_E6 | SRAMD6 | |
23 | PIN_C1 | PIN_C1 | PIN_G6 | PIN_C6 | SRAMD1 | 24 | PIN_C2 | PIN_C2 | PIN_H6 | PIN_D6 | SRAMD5 | |
25 | PIN_B1 | PIN_B1 | PIN_G8 | PIN_B5 | SRAMD2 | 26 | PIN_B2 | PIN_B2 | PIN_H8 | PIN_A5 | SRAMD4 | |
27 | PIN_B3 | PIN_B3 | PIN_F7 | PIN_B6 | SRAMD3 | 28 | PIN_A3 | PIN_A3 | PIN_E7 | PIN_A6 | SRAMA9 | |
29 | PIN_B4 | PIN_B4 | PIN_D6 | PIN_B7 | SRAMWE_N | 30 | PIN_A4 | PIN_A4 | PIN_C6 | PIN_A7 | SRAMA10 | |
31 | PIN_C4 | PIN_C4 | PIN_E9 | PIN_D8 | SRAMA19 | 32 | PIN_C3 | PIN_C3 | PIN_D9 | PIN_C8 | SRAMA11 | |
33 | PIN_B5 | PIN_B5 | PIN_B5 | PIN_D9 | SRAMA18 | 34 | PIN_A5 | PIN_A5 | PIN_A5 | PIN_C9 | SRAMA12 | |
35 | PIN_B6 | PIN_B6 | PIN_B6 | PIN_B8 | SRAMA17 | 36 | PIN_A6 | PIN_A6 | PIN_B7 | PIN_A8 | SRAMA13 | |
37 | PIN_B7 | PIN_B7 | PIN_A7 | PIN_B9 | SRAMA16 | 38 | PIN_A7 | PIN_A7 | PIN_A8 | PIN_A9 | SRAMA14 | |
39 | PIN_B8 | PIN_B8 | PIN_A9 | PIN_E9 | N/C | 40 | PIN_A8 | PIN_A8 | PIN_A10 | PIN_E8 | SRAMA15 | |
41 | PIN_B9 | PIN_B9 | PIN_B10 | PIN_E11 | N/C | 42 | PIN_A9 | PIN_A9 | PIN_C9 | PIN_E10 | N/C | |
43 | PIN_B10 | PIN_B10 | PIN_G10 | PIN_A10 | USBRX/FPGATX | 44 | PIN_A10 | PIN_A10 | PIN_F10 | PIN_B10 | USBCTS/FPGARTS | |
45 | PIN_B13 | PIN_B13 | PIN_C11 | PIN_D12 | USBTX/FPGARX | 46 | PIN_A13 | PIN_A13 | PIN_B11 | PIN_D11 | UBSRTS/FPGACTS | |
47 | PIN_B14 | PIN_B14 | PIN_B12 | PIN_B11 | CD_DET | 48 | PIN_A14 | PIN_A14 | PIN_A12 | PIN_A11 | N/C | |
49 | PIN_B15 | PIN_B15 | PIN_E12 | PIN_B12 | REDLO | 50 | PIN_A15 | PIN_A15 | PIN_D12 | PIN_A12 | REDHI | |
51 | PIN_B16 | PIN_B16 | PIN_D13 | PIN_B13 | GRNLO | 52 | PIN_A16 | PIN_A16 | PIN_C13 | PIN_A13 | GRNHI | |
53 | PIN_B17 | PIN_B17 | PIN_B13 | PIN_B14 | BLULO | 54 | PIN_A17 | PIN_A17 | PIN_A13 | PIN_A14 | BLUHI | |
55 | PIN_B18 | PIN_B18 | PIN_A15 | PIN_D14 | HSYNC | 56 | PIN_A18 | PIN_A18 | PIN_A14 | PIN_C14 | VSYNC | |
57 | PIN_B19 | PIN_B19 | PIN_B15 | PIN_B16 | SDCS_N | 58 | PIN_A19 | PIN_A19 | PIN_C15 | PIN_A15 | SD_MOSI | |
59 | PIN_B20 | PIN_B20 | PIN_C16 | PIN_C16 | SD_SCK | 60 | PIN_A20 | PIN_A20 | PIN_B16 | PIN_C15 | SD_MISO | |
61 | GND | GND | GND | GND | GND | 62 | GND | GND | GND | GND | GND | |
63 | VIN | VIN | VIN | VIN | VIN | 64 | VIN | VIN | VIN | VIN | VIN |
J8 Pin Mapping Card to FPGA pins - Left connector
- Cyclone 10 FPGA notes
- Cannot place output or bidirectional pin J8IO[35] in input pin location M16
- Cannot place output or bidirectional pin J8IO[36] in input pin location M15
- Cannot place output or bidirectional pin J8IO[57] in input pin location E16
- Cannot place output or bidirectional pin J8IO[58] in input pin location E15
U8 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | 10C1006 | J1 | Function | U8 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | 10C1006 | J1 | Function | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | GND | GND | GND | GND | N/C | 2 | GND | GND | GND | GND | N/C | |||
3 | 3.3V | 3.3V | 3.3V | 3.3V | J1-1 | 4 | 3.3V | 3.3V | 3.3V | 3.3V | J1-2 | |||
5 | GND | GND | GND | GND | N/C | 6 | GND | GND | GND | GND | N/C | |||
7 | PIN_AA13 | PIN_AA13 | PIN_AA14 | PIN_R9 | N/C | CPUE | 8 | PIN_AB13 | PIN_AB13 | PIN_AA13 | PIN_T9 | N/C | CPURES* | |
9 | PIN_AA14 | PIN_AA14 | PIN_AA15 | PIN_R10 | J1-4 | CPUMX | 10 | PIN_AB14 | PIN_AB14 | PIN_AB15 | PIN_T10 | J1-3 | CPUCLK | |
11 | PIN_AA15 | PIN_AA15 | PIN_Y15 | PIN_R11 | J1-6 | CPUBE | 12 | PIN_AB15 | PIN_AB15 | PIN_Y13 | PIN_T11 | J1-5 | CPUNMIB | |
13 | PIN_AA16 | PIN_AA16 | PIN_AB18 | PIN_R12 | J1-8 | CPURWB | 14 | PIN_AB16 | PIN_AB16 | PIN_AB17 | PIN_T12 | J1-7 | CPUIRQB | |
15 | PIN_AA17 | PIN_AA17 | PIN_Y7 | PIN_N9 | J1-10 | CPUVDA | 16 | PIN_AB17 | PIN_AB17 | PIN_Y16 | PIN_M9 | J1-9 | CPUABORTB | |
17 | PIN_AA18 | PIN_AA18 | PIN_AA18 | PIN_M10 | J1-12 | CPUVPA | 18 | PIN_AB18 | PIN_AB18 | PIN_AA17 | PIN_P9 | J1-11 | CPURDY | |
19 | PIN_AA19 | PIN_AA19 | PIN_AA20 | PIN_P11 | J1-14 | CPUVPB | 20 | PIN_AB19 | PIN_AB19 | PIN_AA19 | PIN_N11 | J1-13 | CPUMLB | |
21 | PIN_AA20 | PIN_AA20 | PIN_Y20 | PIN_R13 | I1-16 | 22 | PIN_AB20 | PIN_AB20 | PIN_Y19 | PIN_T13 | J1-15 | |||
23 | PIN_Y22 | PIN_Y22 | PIN_AB21 | PIN_T15 | J1-18 | 24 | PIN_Y21 | PIN_Y21 | PIN_AB20 | PIN_T14 | J1-17 | |||
25 | PIN_W22 | PIN_W22 | PIN_AA22 | PIN_N12 | J1-20 | 26 | PIN_W21 | PIN_W21 | PIN_AB22 | PIN_M11 | J1-19 | |||
27 | PIN_V22 | PIN_V22 | PIN_W22 | PIN_R14 | J1-22 | 28 | PIN_V21 | PIN_V21 | PIN_Y22 | PIN_N13 | J1-21 | |||
29 | PIN_U22 | PIN_U22 | PIN_Y21 | PIN_N14 | J1-24 | 30 | PIN_U21 | PIN_U21 | PIN_W21 | PIN_P14 | J1-23 | |||
31 | PIN_R22 | PIN_R22 | PIN_U22 | PIN_P16 | J1-26 | 32 | PIN_R21 | PIN_R21 | PIN_V21 | PIN_R16 | J1-25 | |||
33 | PIN_P22 | PIN_P22 | PIN_V20 | PIN_N16 | J1-28 | 34 | PIN_P21 | PIN_P21 | PIN_W19 | PIN_N15 | J1-27 | |||
35 | PIN_N22 | PIN_N22 | PIN_U21 | PIN_M16 (Note) | J3-3 | 36 | PIN_N21 | PIN_N21 | PIN_U20 | PIN_M15 (Note) | J3-1 | |||
37 | PIN_M22 | PIN_M22 | PIN_R22 | PIN_L16 | J1-30 | 38 | PIN_M21 | PIN_M21 | PIN_T22 | PIN_L15 | J1-29 | |||
39 | PIN_L22 | PIN_L22 | PIN_P22 | PIN_P15 | J1-32 | 40 | PIN_L21 | PIN_L21 | PIN_R21 | PIN_M12 | J1-31 | |||
41 | PIN_K22 | PIN_K22 | PIN_T20 | PIN_L14 | J1-34 | 42 | PIN_K21 | PIN_K21 | PIN_T19 | PIN_L13 | J1-33 | |||
43 | PIN_J22 | PIN_J22 | PIN_P16 | PIN_K16 | J1-36 | 44 | PIN_J21 | PIN_J21 | PIN_P17 | PIN_K15 | J1-35 | |||
45 | PIN_H22 | PIN_H22 | PIN_N20 | PIN_K12 | J1-38 | 46 | PIN_H21 | PIN_H21 | PIN_N21 | PIN_J12 | J1-37 | |||
47 | PIN_F22 | PIN_F22 | PIN_M21 | PIN_J14 | J1-40 | 48 | PIN_F21 | PIN_F21 | PIN_M20 | PIN_J13 | J1-39 | |||
49 | PIN_E22 | PIN_E22 | PIN_M18 | PIN_K11 | J1-42 | 50 | PIN_E21 | PIN_E21 | PIN_N19 | PIN_J11 | J1-41 | |||
51 | PIN_D22 | PIN_D22 | PIN_L18 | PIN_G11 | J1-44 | 52 | PIN_D21 | PIN_D21 | PIN_L19 | PIN_F11 | J1-43 | |||
53 | PIN_C22 | PIN_C22 | PIN_M22 | PIN_F13 | J1-46 | 54 | PIN_C21 | PIN_C21 | PIN_L22 | PIN_F14 | J1-45 | |||
55 | PIN_B22 | PIN_B22 | PIN_L17 | PIN_F10 | J1-48 | 56 | PIN_B21 | PIN_B21 | PIN_K17 | PIN_F9 | J1-47 | |||
57 | PIN_N20 | PIN_N20 | PIN_K22 | PIN_E16 (Note) | J3-5 | 58 | PIN_N19 | PIN_N19 | PIN_K21 | PIN_E15 (Note) | J3-7 | |||
59 | PIN_M20 | PIN_M20 | PIN_M16 | PIN_D16 | J3-8 | 60 | PIN_M19 | PIN_M19 | PIN_N16 | PIN_D15 | J3-11 | |||
61 | GND | GND | GND | GND | J1-50 | 62 | GND | GND | GND | GND | J1-49 | |||
63 | +5V | +5V | +5V | +5V | J1-50 | 64 | +5V | +5V | +5V | +5V | J1-50 |
P1 - VGA
- DB-15HD connector
- 2:2:2 R:G:B
P2 - PS/2 Keyboard
- Purple DIN-6 for PS/2 keyboard
P4 - SD Card
Mechanicals
MultiComp On RETRO-65C816 VHDL Code
References/Notes
- On the usefulness of 65816 as a 65C02 alternative
- Helpful timing information
...potential for data bus contention during Ø2 low. My solution was two-fold: use VDA and VPA to qualify chip selects, and qualify read-accesses with Ø2. The former assures that an addressed device will not respond to selection until the address bus is truly valid—invalid bus states may occur during the execution of some instructions. The latter assures that a selected device will not drive the data bus when the '816 is presenting A16-A23 on it. This solution doesn't totally eliminate the risk of contention but greatly narrows the window of opportunity for it. The need for more stringent qualifying of D0-D7 would depend on the peripheral silicon on the bus. In the case of POC and the Ø2 rate I'm using (12.5 MHz maximum), everything gets off the data bus before the '816 starts to drive it with the bank address. That would not be the case if I were to increase Ø2 to 20 MHz, however. Floating the buses with BE creates the odd situation where no valid address exists on A0-A15, which I daresay could cause a device to be selected solely because of a residual charge in bus capacitance. Also, BE floats the RWB signal*, which may trip up other logic that is dependent on RWB always being driven to one state or the other. The most fool-proof solution is the use of a data bus transceiver as you suggested, which is a straightforward method (74AC245 or 74AHC245 recommended if Ø2 will exceed 8 MHz).
Pin List
EP4CE15F23C8 Pin List
set_global_assignment -name FAMILY "Cyclone IV E" set_global_assignment -name DEVICE EP4CE15F23C8 set_global_assignment -name TOP_LEVEL_ENTITY M6502_VGA set_global_assignment -name ORIGINAL_QUARTUS_VERSION "13.0 SP1" set_global_assignment -name PROJECT_CREATION_TIME_DATE "18:01:55 MARCH 31, 2019" set_global_assignment -name LAST_QUARTUS_VERSION "21.1.0 Lite Edition" set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 1 set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW" set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)" set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" set_global_assignment -name USE_CONFIGURATION_DEVICE OFF set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -rise set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -fall set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -rise set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -fall set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO" # Clock, reset switch set_location_assignment PIN_T2 -to i_clk_50 set_location_assignment PIN_W13 -to i_n_reset set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n_reset # PS/2 keyboard set_location_assignment PIN_R1 -to io_ps2Clk set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_ps2Clk set_location_assignment PIN_R2 -to io_ps2Data set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_ps2Data # Serial port with RTS/CTS set_location_assignment PIN_A13 -to i_n_cts set_location_assignment PIN_B13 -to i_rxd set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_rxd set_location_assignment PIN_A10 -to o_n_rts set_location_assignment PIN_B10 -to o_txd # Video set_location_assignment PIN_A17 -to o_vid_blu[1] set_location_assignment PIN_B17 -to o_vid_blu[0] set_location_assignment PIN_A16 -to o_vid_grn[1] set_location_assignment PIN_B16 -to o_vid_grn[0] set_location_assignment PIN_B18 -to o_vid_hSync set_location_assignment PIN_A18 -to o_vid_vSync set_location_assignment PIN_A15 -to o_vid_red[1] set_location_assignment PIN_B15 -to o_vid_red[0] # SRAM set_location_assignment PIN_F1 -to o_n_sRamCS set_location_assignment O_N_SRAMWE -to n_sRamWE set_location_assignment PIN_J2 -to o_n_sRamOE set_location_assignment PIN_E1 -to io_sramData[0] set_location_assignment PIN_C1 -to io_sramData[1] set_location_assignment PIN_B1 -to io_sramData[2] set_location_assignment PIN_B3 -to io_sramData[3] set_location_assignment PIN_B2 -to io_sramData[4] set_location_assignment PIN_C2 -to io_sramData[5] set_location_assignment PIN_D2 -to io_sramData[6] set_location_assignment PIN_F2 -to io_sramData[7] set_location_assignment PIN_H1 -to o_sramAddress[0] set_location_assignment PIN_J1 -to o_sramAddress[1] set_location_assignment PIN_M1 -to o_sramAddress[2] set_location_assignment PIN_N1 -to o_sramAddress[3] set_location_assignment PIN_P1 -to o_sramAddress[4] set_location_assignment PIN_P2 -to o_sramAddress[5] set_location_assignment PIN_N2 -to o_sramAddress[6] set_location_assignment PIN_M2 -to o_sramAddress[7] set_location_assignment PIN_H2 -to o_sramAddress[8] set_location_assignment PIN_A3 -to o_sramAddress[9] set_location_assignment PIN_A4 -to o_sramAddress[10] set_location_assignment PIN_C3 -to o_sramAddress[11] set_location_assignment PIN_A5 -to o_sramAddress[12] set_location_assignment PIN_A6 -to o_sramAddress[13] set_location_assignment PIN_A7 -to o_sramAddress[14] set_location_assignment PIN_A8 -to o_sramAddress[15] set_location_assignment PIN_B7 -to o_sramAddress[16] set_location_assignment PIN_B6 -to o_sramAddress[17] set_location_assignment PIN_B5 -to o_sramAddress[18] set_location_assignment PIN_C4 -to o_sramAddress[19] # SD Card set_location_assignment PIN_B20 -to sdClock set_location_assignment PIN_B19 -to sdCS set_location_assignment PIN_A19 -to sdMOSI set_location_assignment PIN_A20 -to sdMISO set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to sdMISO set_location_assignment PIN_E4 -to driveLED # SDRAM set_location_assignment PIN_Y6 -to sdRamClk set_location_assignment PIN_W6 -to sdRamClkEn set_location_assignment PIN_AA4 -to n_sdRamCas set_location_assignment PIN_AA3 -to n_sdRamCe set_location_assignment PIN_AB3 -to n_sdRamRas set_location_assignment PIN_AB4 -to n_sdRamWe set_location_assignment PIN_V2 -to sdRamAddr[0] set_location_assignment PIN_V1 -to sdRamAddr[1] set_location_assignment PIN_U2 -to sdRamAddr[2] set_location_assignment PIN_U1 -to sdRamAddr[3] set_location_assignment PIN_V3 -to sdRamAddr[4] set_location_assignment PIN_V4 -to sdRamAddr[5] set_location_assignment PIN_Y2 -to sdRamAddr[6] set_location_assignment PIN_AA1 -to sdRamAddr[7] set_location_assignment PIN_Y3 -to sdRamAddr[8] set_location_assignment PIN_V5 -to sdRamAddr[9] set_location_assignment PIN_W1 -to sdRamAddr[10] set_location_assignment PIN_Y4 -to sdRamAddr[11] set_location_assignment PIN_V6 -to sdRamAddr[12] set_location_assignment PIN_Y1 -to sdRamAddr[13] set_location_assignment PIN_W2 -to sdRamAddr[14] set_location_assignment PIN_AA10 -to sdRamData[0] set_location_assignment PIN_AB9 -to sdRamData[1] set_location_assignment PIN_AA9 -to sdRamData[2] set_location_assignment PIN_AB8 -to sdRamData[3] set_location_assignment PIN_AA8 -to sdRamData[4] set_location_assignment PIN_AB7 -to sdRamData[5] set_location_assignment PIN_AA7 -to sdRamData[6] set_location_assignment PIN_AB5 -to sdRamData[7] set_location_assignment PIN_Y7 -to sdRamData[8] set_location_assignment PIN_W8 -to sdRamData[9] set_location_assignment PIN_Y8 -to sdRamData[10] set_location_assignment PIN_V9 -to sdRamData[11] set_location_assignment PIN_V10 -to sdRamData[12] set_location_assignment PIN_Y10 -to sdRamData[13] set_location_assignment PIN_W10 -to sdRamData[14] set_location_assignment PIN_V11 -to sdRamData[15] # set_location_assignment PIN_V21 -to IO_PIN[21] set_location_assignment PIN_V22 -to IO_PIN[22] set_location_assignment PIN_U21 -to IO_PIN[23] set_location_assignment PIN_U22 -to IO_PIN[24] set_location_assignment PIN_R21 -to IO_PIN[25] set_location_assignment PIN_R22 -to IO_PIN[26] set_location_assignment PIN_P21 -to IO_PIN[27] set_location_assignment PIN_P22 -to IO_PIN[28] set_location_assignment PIN_N21 -to IO_PIN[29] set_location_assignment PIN_N22 -to IO_PIN[30] set_location_assignment PIN_M21 -to IO_PIN[31] set_location_assignment PIN_M22 -to IO_PIN[32] set_location_assignment PIN_L21 -to IO_PIN[33] set_location_assignment PIN_L22 -to IO_PIN[34] set_location_assignment PIN_K21 -to IO_PIN[35] set_location_assignment PIN_K22 -to IO_PIN[36] set_location_assignment PIN_J21 -to IO_PIN[37] set_location_assignment PIN_J22 -to IO_PIN[38] set_location_assignment PIN_H21 -to IO_PIN[39] set_location_assignment PIN_H22 -to IO_PIN[40] set_location_assignment PIN_F21 -to IO_PIN[41] set_location_assignment PIN_F22 -to IO_PIN[42] set_location_assignment PIN_E21 -to IO_PIN[43] set_location_assignment PIN_E22 -to IO_PIN[44] set_location_assignment PIN_D21 -to IO_PIN[45] set_location_assignment PIN_D22 -to IO_PIN[46] set_location_assignment PIN_C21 -to IO_PIN[47] set_location_assignment PIN_C22 -to IO_PIN[48] # 65C816 set_location_assignment PIN_AB17 -to CPU_ABORTB set_location_assignment PIN_AA15 -to CPU_BusEnable set_location_assignment PIN_AB14 -to CPU_CLK set_location_assignment PIN_AA13 -to CPU_E set_location_assignment PIN_AB16 -to CPU_IRQB set_location_assignment PIN_AB19 -to CPU_MLB set_location_assignment PIN_AA14 -to CPU_MX set_location_assignment PIN_AB15 -to CPU_NMIB set_location_assignment PIN_AB18 -to CPU_RDY set_location_assignment PIN_AA16 -to CPU_RWB set_location_assignment PIN_AA17 -to CPU_VDA set_location_assignment PIN_AA18 -to CPU_VPA set_location_assignment PIN_AA19 -to CPU_VPB set_location_assignment PIN_AB13 -to n_CPU_Res
EP4CE15F23C8 Pin List
set_global_assignment -name FAMILY "Cyclone 10 LP" set_global_assignment -name DEVICE 10CL006YU256C8G set_global_assignment -name TOP_LEVEL_ENTITY M6502_VGA set_global_assignment -name ORIGINAL_QUARTUS_VERSION "13.0 SP1" set_global_assignment -name PROJECT_CREATION_TIME_DATE "18:01:55 MARCH 31, 2019" set_global_assignment -name LAST_QUARTUS_VERSION "21.1.0 Lite Edition" set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 1 set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW" set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)" set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" set_global_assignment -name USE_CONFIGURATION_DEVICE OFF set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -rise set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -fall set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -rise set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -fall set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO" # Clock, reset switch set_location_assignment PIN_E1 -to i_clk_50 set_location_assignment PIN_J6 -to i_n_reset set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n_reset # PS/2 keyboard set_location_assignment PIN_G1 -to io_ps2Clk set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_ps2Clk set_location_assignment PIN_G2 -to io_ps2Data set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_ps2Data # Serial port with RTS/CTS set_location_assignment PIN_D11 -to i_n_cts set_location_assignment PIN_D12 -to i_rxd set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_rxd set_location_assignment PIN_B10 -to o_n_rts set_location_assignment PIN_A10 -to o_txd # Video set_location_assignment PIN_B12 -to o_vid_red[0] set_location_assignment PIN_A12 -to o_vid_red[1] set_location_assignment PIN_B13 -to o_vid_grn[0] set_location_assignment PIN_A13 -to o_vid_grn[1] set_location_assignment PIN_B14 -to o_vid_blu[0] set_location_assignment PIN_A14 -to o_vid_blu[1] set_location_assignment PIN_D14 -to o_vid_hSync set_location_assignment PIN_C14 -to o_vid_vSync # SRAM set_location_assignment PIN_E5 -to o_n_sRamCS set_location_assignment PIN_A3 -to o_n_sRamOE set_location_assignment PIN_B7 -to o_n_sRamWE set_location_assignment PIN_D4 -to io_sramData[0] set_location_assignment PIN_C6 -to io_sramData[1] set_location_assignment PIN_B5 -to io_sramData[2] set_location_assignment PIN_B6 -to io_sramData[3] set_location_assignment PIN_A5 -to io_sramData[4] set_location_assignment PIN_D6 -to io_sramData[5] set_location_assignment PIN_E6 -to io_sramData[6] set_location_assignment PIN_A2 -to io_sramData[7] set_location_assignment PIN_B4 -to o_sramAddress[0] set_location_assignment PIN_B3 -to o_sramAddress[1] set_location_assignment PIN_D3 -to o_sramAddress[2] set_location_assignment PIN_B1 -to o_sramAddress[3] set_location_assignment PIN_D1 -to o_sramAddress[4] set_location_assignment PIN_C2 -to o_sramAddress[5] set_location_assignment PIN_F5 -to o_sramAddress[6] set_location_assignment PIN_C3 -to o_sramAddress[7] set_location_assignment PIN_A4 -to o_sramAddress[8] set_location_assignment PIN_A6 -to o_sramAddress[9] set_location_assignment PIN_A7 -to o_sramAddress[10] set_location_assignment PIN_C8 -to o_sramAddress[11] set_location_assignment PIN_C9 -to o_sramAddress[12] set_location_assignment PIN_A8 -to o_sramAddress[13] set_location_assignment PIN_A9 -to o_sramAddress[14] set_location_assignment PIN_E8 -to o_sramAddress[15] set_location_assignment PIN_B9 -to o_sramAddress[16] set_location_assignment PIN_B8 -to o_sramAddress[17] set_location_assignment PIN_D9 -to o_sramAddress[18] set_location_assignment PIN_D8 -to o_sramAddress[19] # SD Card set_location_assignment PIN_B16 -to sdCS set_location_assignment PIN_C15 -to sdMISO set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to sdMISO set_location_assignment PIN_A15 -to sdMOSI set_location_assignment PIN_C16 -to sdClock # SDRAM set_location_assignment PIN_P2 -to sdRamClk set_location_assignment PIN_R1 -to sdRamClkEn set_location_assignment PIN_M7 -to n_sdRamCas set_location_assignment PIN_P8 -to n_sdRamCe set_location_assignment PIN_M8 -to n_sdRamRas set_location_assignment PIN_P6 -to n_sdRamWe set_location_assignment PIN_R7 -to sdRamAddr[0] set_location_assignment PIN_T7 -to sdRamAddr[1] set_location_assignment PIN_R8 -to sdRamAddr[2] set_location_assignment PIN_T8 -to sdRamAddr[3] set_location_assignment PIN_R6 -to sdRamAddr[4] set_location_assignment PIN_T5 -to sdRamAddr[5] set_location_assignment PIN_R5 -to sdRamAddr[6] set_location_assignment PIN_T4 -to sdRamAddr[7] set_location_assignment PIN_R4 -to sdRamAddr[8] set_location_assignment PIN_T3 -to sdRamAddr[9] set_location_assignment PIN_T6 -to sdRamAddr[10] set_location_assignment PIN_R3 -to sdRamAddr[11] set_location_assignment PIN_T2 -to sdRamAddr[12] set_location_assignment PIN_N8 -to sdRamAddr[13] set_location_assignment PIN_L8 -to sdRamAddr[14] set_location_assignment PIN_K5 -to sdRamData[0] set_location_assignment PIN_L3 -to sdRamData[1] set_location_assignment PIN_L4 -to sdRamData[2] set_location_assignment PIN_K6 -to sdRamData[3] set_location_assignment PIN_N3 -to sdRamData[4] set_location_assignment PIN_M6 -to sdRamData[5] set_location_assignment PIN_P3 -to sdRamData[6] set_location_assignment PIN_N5 -to sdRamData[7] set_location_assignment PIN_N2 -to sdRamData[8] set_location_assignment PIN_N1 -to sdRamData[9] set_location_assignment PIN_L1 -to sdRamData[10] set_location_assignment PIN_L2 -to sdRamData[11] set_location_assignment PIN_K1 -to sdRamData[12] set_location_assignment PIN_K2 -to sdRamData[13] set_location_assignment PIN_J1 -to sdRamData[14] set_location_assignment PIN_J2 -to sdRamData[15] # set_location_assignment PIN_N13 -to IO_PIN[21] set_location_assignment PIN_R14 -to IO_PIN[22] set_location_assignment PIN_P14 -to IO_PIN[23] set_location_assignment PIN_N14 -to IO_PIN[24] set_location_assignment PIN_R16 -to IO_PIN[25] set_location_assignment PIN_P16 -to IO_PIN[26] set_location_assignment PIN_N15 -to IO_PIN[27] set_location_assignment PIN_N16 -to IO_PIN[28] set_location_assignment PIN_L15 -to IO_PIN[31] set_location_assignment PIN_L16 -to IO_PIN[32] set_location_assignment PIN_M12 -to IO_PIN[33] set_location_assignment PIN_P15 -to IO_PIN[34] set_location_assignment PIN_L13 -to IO_PIN[35] set_location_assignment PIN_L14 -to IO_PIN[36] set_location_assignment PIN_K15 -to IO_PIN[37] set_location_assignment PIN_K16 -to IO_PIN[38] set_location_assignment PIN_J12 -to IO_PIN[39] set_location_assignment PIN_K12 -to IO_PIN[40] set_location_assignment PIN_J13 -to IO_PIN[41] set_location_assignment PIN_J14 -to IO_PIN[42] set_location_assignment PIN_J11 -to IO_PIN[43] set_location_assignment PIN_K11 -to IO_PIN[44] set_location_assignment PIN_F11 -to IO_PIN[45] set_location_assignment PIN_G11 -to IO_PIN[46] set_location_assignment PIN_F14 -to IO_PIN[47] set_location_assignment PIN_F13 -to IO_PIN[48] # set_location_assignment PIN_R9 -to CPU_E set_location_assignment PIN_T9 -to n_CPU_Res set_location_assignment PIN_R10 -to CPU_MX set_location_assignment PIN_T10 -to CPU_CLK set_location_assignment PIN_R11 -to CPU_BusEnable set_location_assignment PIN_T11 -to CPU_NMIB set_location_assignment PIN_R12 -to CPU_RWB set_location_assignment PIN_T12 -to CPU_IRQB set_location_assignment PIN_N9 -to CPU_VDA set_location_assignment PIN_M9 -to CPU_ABORTB set_location_assignment PIN_M10 -to CPU_VPA set_location_assignment PIN_P9 -to CPU_RDY set_location_assignment PIN_P11 -to CPU_VPB set_location_assignment PIN_N11 -to CPU_MLB set_location_assignment PIN_L9 -to driveLED
Revision History
Rev 2+
Rev 1
- W65C816 footprint is too small for part
- Used TQFP footprint but part is clearly too big
- Datasheet does not indicate package detail
- 0.8mm pitch was OK
- Works well as RETRO-EP4CE15 replacement
- PS/2 @5V is good
Videos
- 65C816 Computer 27 Videos Series - Adrien Kohlbecker
- Lot of detail on 65C816 hardware