From 78f7389a88e27ee801d792521e8a4600439eda4e Mon Sep 17 00:00:00 2001 From: David Kuder Date: Sun, 8 Jan 2023 03:47:59 -0500 Subject: [PATCH] PicoPal logic fixes Simulation revealed errors in the CUPL logic regarding the $C800 window selection. --- CUPL/PicoPal.jed | 10 ++++---- CUPL/picopal.doc | 34 ++++++++++++------------ CUPL/picopal.pld | 11 ++++---- CUPL/picopal.si | 31 ++++++++++++++++++++++ CUPL/picopal.sim | 67 ++++++++++++++++++++++++++++++++++++++++++++++++ CUPL/picopal.so | 51 ++++++++++++++++++++++++++++++++++++ CUPL/picopal.wo | 31 ++++++++++++++++++++++ 7 files changed, 208 insertions(+), 27 deletions(-) create mode 100644 CUPL/picopal.si create mode 100644 CUPL/picopal.sim create mode 100644 CUPL/picopal.so create mode 100644 CUPL/picopal.wo diff --git a/CUPL/PicoPal.jed b/CUPL/PicoPal.jed index f0baac4..3174e99 100644 --- a/CUPL/PicoPal.jed +++ b/CUPL/PicoPal.jed @@ -1,7 +1,7 @@  CUPL(WM) 5.0a Serial# MW-10400000 Device g16v8ma Library DLIB-h-40-8 -Created Sat Jan 07 23:18:58 2023 +Created Sun Jan 08 03:46:05 2023 Name PicoPal Partno U5 Revision 01 @@ -16,7 +16,7 @@ Location None *F0 *L00256 11111111111111111111111111111111 *L00288 11111111110111111111111111111111 -*L00320 11111111111111111111101111111111 +*L00320 11111111111111111111111110111111 *L00512 11111111111111111111111111111111 *L00544 11111101111111111111111111111111 *L00576 10111111111111111111111111111111 @@ -25,7 +25,7 @@ Location None *L00768 11111111111111111111111111111111 *L00800 11111111110111111111111111111011 *L01024 11111111111111111111111111111111 -*L01056 11111111111111111111111011101010 +*L01056 11111111111111111111110111011001 *L01792 11111111111111111111111111111111 *L01824 11111111111111111111101111111111 *L01856 11111111111111111111111110111111 @@ -34,5 +34,5 @@ Location None *L02112 00000000111111111111111111111111 *L02144 11111111111111111111111111111111 *L02176 111111111111111111 -*C47DE -*EEF5 \ No newline at end of file +*C4880 +*EEDB \ No newline at end of file diff --git a/CUPL/picopal.doc b/CUPL/picopal.doc index 7e48cd6..9e1b38e 100644 --- a/CUPL/picopal.doc +++ b/CUPL/picopal.doc @@ -5,7 +5,7 @@ CUPL(WM) 5.0a Serial# MW-10400000 Device g16v8ma Library DLIB-h-40-8 -Created Sat Jan 07 23:18:58 2023 +Created Sun Jan 08 03:46:05 2023 Name PicoPal Partno U5 Revision 01 @@ -26,7 +26,7 @@ CARDSELECT => EXTDISABLE => EXTENABLE - # DEVSELECT + # IOSELECT EXTENABLE => EXTDISABLE @@ -35,15 +35,15 @@ EXTENABLE => # BSEL0 & BSEL1 & BSEL2 & !BSEL3 EXTOFF => - !A8 & !A9 & !A10 & IOSTROBE + A0 & A1 & A2 & IOSTROBE EXTSELECT => EXTENABLE & IOSTROBE -A8.oe => +A0.oe => 0 -A9.oe => +A1.oe => 0 CARDSELECT.oe => @@ -70,14 +70,15 @@ Pin Variable Pterms Max Min Pol Name Ext Pin Type Used Pterms Level --- -------- --- --- ---- ------ ------ ----- - A8 14 V - - - - A9 13 V - - - - A10 11 V - - - + A0 14 V - - - + A1 13 V - - - + A2 11 V - - - BSEL0 6 V - - - BSEL1 5 V - - - BSEL2 4 V - - - BSEL3 3 V - - - ! CARDSELECT 12 V 3 7 1 + CLOCK 1 V - - - ! DEVSELECT 7 V - - - EXTDISABLE 18 V 2 7 1 EXTENABLE 17 V 4 7 1 @@ -86,9 +87,8 @@ Pol Name Ext Pin Type Used Pterms Level ! IOSELECT 8 V - - - ! IOSTROBE 9 V - - - ! RESET 2 V - - - - clock 1 V - - - - A8 oe 14 D 1 1 0 - A9 oe 13 D 1 1 0 + A0 oe 14 D 1 1 0 + A1 oe 13 D 1 1 0 CARDSELECT oe 12 D 1 1 0 EXTDISABLE oe 18 D 1 1 0 EXTENABLE oe 17 D 1 1 0 @@ -120,7 +120,7 @@ Pin #19 02048 Pol x 02120 Ac1 - Pin #18 02049 Pol x 02121 Ac1 - 00256 -------------------------------- 00288 ----------x--------------------- - 00320 ---------------------x---------- + 00320 -------------------------x------ 00352 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 00384 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 00416 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx @@ -146,7 +146,7 @@ Pin #16 02051 Pol - 02123 Ac1 - 00992 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Pin #15 02052 Pol - 02124 Ac1 - 01024 -------------------------------- - 01056 -----------------------x---x-x-x + 01056 ----------------------x---x--xx- 01088 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 01120 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 01152 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx @@ -191,15 +191,15 @@ LEGEND X : fuse not blown ______________ | PicoPal | - clock x---|1 20|---x Vcc + CLOCK x---|1 20|---x Vcc !RESET x---|2 19|---x BSEL3 x---|3 18|---x EXTDISABLE BSEL2 x---|4 17|---x EXTENABLE BSEL1 x---|5 16|---x EXTSELECT BSEL0 x---|6 15|---x EXTOFF - !DEVSELECT x---|7 14|---x A8 - !IOSELECT x---|8 13|---x A9 + !DEVSELECT x---|7 14|---x A0 + !IOSELECT x---|8 13|---x A1 !IOSTROBE x---|9 12|---x !CARDSELECT - GND x---|10 11|---x A10 + GND x---|10 11|---x A2 |______________| diff --git a/CUPL/picopal.pld b/CUPL/picopal.pld index 45949f1..269271f 100644 --- a/CUPL/picopal.pld +++ b/CUPL/picopal.pld @@ -18,15 +18,16 @@ Device g16V8; /** Inputs **/ -PIN 1 = clock; /* Register Clock */ +PIN 1 = CLOCK; /* Unused Register Clock */ PIN 2 = !RESET; /* System Reset */ PIN [3..6] = [BSEL3..0]; /* Buffer Mode Select */ PIN 7 = !DEVSELECT; /* $C0nX Selected -> 16B I/O */ PIN 8 = !IOSELECT; /* $CnXX Selected -> Base ROM */ PIN 9 = !IOSTROBE; /* $C8XX Selected -> Extd ROM */ -PIN 11 = A10; -PIN [13..14] = [A9..8]; +PIN 11 = A2; +PIN 13 = A1; +PIN 14 = A0; /** Outputs **/ @@ -41,10 +42,10 @@ PIN 18 = EXTDISABLE; /* Combinatorial */ /** Logic Equations **/ /* $CFxx disables */ -EXTOFF = IOSTROBE & [A10..8]:'b'111; +EXTOFF = IOSTROBE & [A2..0]:'b'111; /* Implement an SR Latch */ -EXTDISABLE = !(EXTENABLE # DEVSELECT); +EXTDISABLE = !(EXTENABLE # IOSELECT); EXTENABLE = !(EXTDISABLE # RESET # EXTOFF # [BSEL3..0]:'b'0111); /* $C8XX and extended rom is enabled */ diff --git a/CUPL/picopal.si b/CUPL/picopal.si new file mode 100644 index 0000000..d1e4efa --- /dev/null +++ b/CUPL/picopal.si @@ -0,0 +1,31 @@ +Name PicoPal; +PartNo U5; +Date 27/11/22; +Revision 01; +Designer David Kuder; +Company Grizzly Adams; +Assembly None; +Location None; +Device g16V8; + + +ORDER: A0, A1, A2, BSEL0, BSEL1, BSEL2, BSEL3, !CARDSELECT, EXTDISABLE, EXTENABLE, EXTOFF, EXTSELECT, !DEVSELECT, !IOSELECT, !IOSTROBE, !RESET, clock; + + +VECTORS: +0000110*****11101 +0000110*****11111 +0000110*****01111 +0000110*****11111 +0000110*****11011 +0000110*****11111 +0000110*****10111 +0000110*****11011 +0001110*****11111 +0000110*****11011 +0000110*****10111 +1100110*****11011 +1110110*****11011 +0000110*****11111 +0000110*****11111 +0000110*****11111 diff --git a/CUPL/picopal.sim b/CUPL/picopal.sim new file mode 100644 index 0000000..774eab5 --- /dev/null +++ b/CUPL/picopal.sim @@ -0,0 +1,67 @@ +%SIGNAL +PIN 14 = A0 +PIN 13 = A1 +PIN 11 = A2 +PIN 6 = BSEL0 +PIN 5 = BSEL1 +PIN 4 = BSEL2 +PIN 3 = BSEL3 +PIN 12 = !CARDSELECT +PIN 7 = !DEVSELECT +PIN 18 = EXTDISABLE +PIN 17 = EXTENABLE +PIN 15 = EXTOFF +PIN 16 = EXTSELECT +PIN 8 = !IOSELECT +PIN 9 = !IOSTROBE +PIN 2 = !RESET +PIN 1 = clock +%END + +%FIELD +%END + +%EQUATION +CARDSELECT => + !DEVSELECT + # !IOSELECT + # EXTSELECT + +EXTDISABLE => + EXTENABLE + # !IOSELECT + +EXTENABLE => + EXTDISABLE + # !RESET + # EXTOFF + # BSEL0 & BSEL1 & BSEL2 & !BSEL3 + +EXTOFF => + A0 & A1 & A2 & !IOSTROBE + +EXTSELECT => + EXTENABLE & !IOSTROBE + +A0.oe => + 0 + +A1.oe => + 0 + +CARDSELECT.oe => + 1 + +EXTDISABLE.oe => + 1 + +EXTENABLE.oe => + 1 + +EXTOFF.oe => + 1 + +EXTSELECT.oe => + 1 + +%END diff --git a/CUPL/picopal.so b/CUPL/picopal.so new file mode 100644 index 0000000..0078d24 --- /dev/null +++ b/CUPL/picopal.so @@ -0,0 +1,51 @@ +CSIM(WM): CUPL Simulation Program +Version 5.0a Serial# +Copyright (c) 1983, 1998 Logical Devices, Inc. +CREATED Sun Jan 08 03:46:14 2023 + +LISTING FOR SIMULATION FILE: picopal.si + + 1: Name PicoPal; + 2: PartNo U5; + 3: Date 27/11/22; + 4: Revision 01; + 5: Designer David Kuder; + 6: Company Grizzly Adams; + 7: Assembly None; + 8: Location None; + 9: Device g16V8; + 10: + 11: + 12: ORDER: A0, A1, A2, BSEL0, BSEL1, BSEL2, BSEL3, !CARDSELECT, EXTDISABLE, EXTENABLE, EXTOFF, EXTSELECT, !DEVSELECT, !IOSELECT, !IOSTROBE, !RESET, clock; + 13: + 14: + +========================== + ! + CE ! + AXE ED!! + RTX XEII + DDT TVOO + SIEESSSS! + BBBBESNXEEETRc + SSSSLAATLLLREl + EEEEEBBOEEEOSo + AAALLLLCLLFCCCBEc + 0120123TEEFTTTETk +========================== +0001: 0000110HHLLL11101 +0002: 0000110HHLLL11111 +0003: 0000110LHLLL01111 +0004: 0000110HHLLL11111 +0005: 0000110HHLLL11011 +0006: 0000110HHLLL11111 +0007: 0000110LLHLL10111 +0008: 0000110LLHLH11011 +0009: 0001110HHLLL11111 +0010: 0000110HHLLL11011 +0011: 0000110LLHLL10111 +0012: 1100110LLHLH11011 +0013: 1110110HHLHL11011 +0014: 0000110HHLLL11111 +0015: 0000110HHLLL11111 +0016: 0000110HHLLL11111 diff --git a/CUPL/picopal.wo b/CUPL/picopal.wo new file mode 100644 index 0000000..1cf78fc --- /dev/null +++ b/CUPL/picopal.wo @@ -0,0 +1,31 @@ +#WAVEFORM +#H Name PicoPal; +#H PartNo U5; +#H Date 27/11/22; +#H Revision 01; +#H Designer David Kuder; +#H Company Grizzly Adams; +#H Assembly None; +#H Location None; +#H Device g16V8; +#H +#H +#H ORDER: A0, A1, A2, BSEL0, BSEL1, BSEL2, BSEL3, !CARDSELECT, EXTDISABLE, EXTENABLE, EXTOFF, EXTSELECT, !DEVSELECT, !IOSELECT, !IOSTROBE, !RESET, clock; +#H +#H +#V 0001 0000110HHLLL11101 +#V 0002 0000110HHLLL11111 +#V 0003 0000110LHLLL01111 +#V 0004 0000110HHLLL11111 +#V 0005 0000110HHLLL11011 +#V 0006 0000110HHLLL11111 +#V 0007 0000110LLHLL10111 +#V 0008 0000110LLHLH11011 +#V 0009 0001110HHLLL11111 +#V 0010 0000110HHLLL11011 +#V 0011 0000110LLHLL10111 +#V 0012 1100110LLHLH11011 +#V 0013 1110110HHLHL11011 +#V 0014 0000110HHLLL11111 +#V 0015 0000110HHLLL11111 +#V 0016 0000110HHLLL11111