ssc/gal/ssc_gal_wincupl.pld

62 lines
1.4 KiB
Plaintext
Executable File

Name Simple Serial Card;
Partno SSC0001;
Revision 01;
Date 3/9/23;
Designer Chris RYU;
Company RyuCats;
Location None;
Assembly None;
Device g22v10;
/* Inputs */
Pin 1 = reset;
Pin 2 = CTS;
Pin 3 = io_C800;
Pin 4 = slot_select;
Pin 5 = io_slot_access;
Pin 6 = RW;
Pin 7 = A11;
Pin 8 = A10;
Pin 9 = A9;
Pin 10 = A8;
Pin 11 = A3;
/* Outputs */
Pin 14 = rom_c800_enable;
Pin 15 = rom_latch;
Pin 16 = ls245_enable;
Pin 17 = eprom_a8;
Pin 18 = eprom_a9;
Pin 19 = eprom_a10;
Pin 20 = rom_enable;
Pin 21 = PHI2;
/* Latch (RS flip-flop) definition:
Q = (Q & RESET) # !SET;
*/
PHI2 = !slot_select; /* per schematic */
cf00_access = io_C800 # !(A8 & A9 & A10); /* CF00 access, pull low */
/*
if either reset or cf00 access is pulled low, then rom_latch = 1
if io_slot_access is 0, then rom_latch = 0
if io_slot_access is 1, then rom_latch = no change
*/
/* Q = ROM_LATCH RESET = io_slot_access SET = (reset & cf00_access) */
rom_latch = (rom_latch & io_slot_access) # !(reset & cf00_access);
rom_c800_enable = rom_latch # io_C800; /* enable if both pulled low */
ls245_enable = ( io_slot_access & rom_c800_enable & slot_select); /* c800 ? */
rom_enable = (io_slot_access & rom_c800_enable);
eprom_a8 = A8 # !A11;
eprom_a9 = A9 # !A11;
eprom_a10 = A10 # !A11;