mirror of
https://github.com/V2RetroComputing/analog.git
synced 2025-08-05 11:24:41 +00:00
PicoPal logic fixes
Simulation revealed errors in the CUPL logic regarding the $C800 window selection.
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
CUPL(WM) 5.0a Serial# MW-10400000
|
CUPL(WM) 5.0a Serial# MW-10400000
|
||||||
Device g16v8ma Library DLIB-h-40-8
|
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
|
Name PicoPal
|
||||||
Partno U5
|
Partno U5
|
||||||
Revision 01
|
Revision 01
|
||||||
@@ -16,7 +16,7 @@ Location None
|
|||||||
*F0
|
*F0
|
||||||
*L00256 11111111111111111111111111111111
|
*L00256 11111111111111111111111111111111
|
||||||
*L00288 11111111110111111111111111111111
|
*L00288 11111111110111111111111111111111
|
||||||
*L00320 11111111111111111111101111111111
|
*L00320 11111111111111111111111110111111
|
||||||
*L00512 11111111111111111111111111111111
|
*L00512 11111111111111111111111111111111
|
||||||
*L00544 11111101111111111111111111111111
|
*L00544 11111101111111111111111111111111
|
||||||
*L00576 10111111111111111111111111111111
|
*L00576 10111111111111111111111111111111
|
||||||
@@ -25,7 +25,7 @@ Location None
|
|||||||
*L00768 11111111111111111111111111111111
|
*L00768 11111111111111111111111111111111
|
||||||
*L00800 11111111110111111111111111111011
|
*L00800 11111111110111111111111111111011
|
||||||
*L01024 11111111111111111111111111111111
|
*L01024 11111111111111111111111111111111
|
||||||
*L01056 11111111111111111111111011101010
|
*L01056 11111111111111111111110111011001
|
||||||
*L01792 11111111111111111111111111111111
|
*L01792 11111111111111111111111111111111
|
||||||
*L01824 11111111111111111111101111111111
|
*L01824 11111111111111111111101111111111
|
||||||
*L01856 11111111111111111111111110111111
|
*L01856 11111111111111111111111110111111
|
||||||
@@ -34,5 +34,5 @@ Location None
|
|||||||
*L02112 00000000111111111111111111111111
|
*L02112 00000000111111111111111111111111
|
||||||
*L02144 11111111111111111111111111111111
|
*L02144 11111111111111111111111111111111
|
||||||
*L02176 111111111111111111
|
*L02176 111111111111111111
|
||||||
*C47DE
|
*C4880
|
||||||
*EEF5
|
*EEDB
|
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
CUPL(WM) 5.0a Serial# MW-10400000
|
CUPL(WM) 5.0a Serial# MW-10400000
|
||||||
Device g16v8ma Library DLIB-h-40-8
|
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
|
Name PicoPal
|
||||||
Partno U5
|
Partno U5
|
||||||
Revision 01
|
Revision 01
|
||||||
@@ -26,7 +26,7 @@ CARDSELECT =>
|
|||||||
|
|
||||||
EXTDISABLE =>
|
EXTDISABLE =>
|
||||||
EXTENABLE
|
EXTENABLE
|
||||||
# DEVSELECT
|
# IOSELECT
|
||||||
|
|
||||||
EXTENABLE =>
|
EXTENABLE =>
|
||||||
EXTDISABLE
|
EXTDISABLE
|
||||||
@@ -35,15 +35,15 @@ EXTENABLE =>
|
|||||||
# BSEL0 & BSEL1 & BSEL2 & !BSEL3
|
# BSEL0 & BSEL1 & BSEL2 & !BSEL3
|
||||||
|
|
||||||
EXTOFF =>
|
EXTOFF =>
|
||||||
!A8 & !A9 & !A10 & IOSTROBE
|
A0 & A1 & A2 & IOSTROBE
|
||||||
|
|
||||||
EXTSELECT =>
|
EXTSELECT =>
|
||||||
EXTENABLE & IOSTROBE
|
EXTENABLE & IOSTROBE
|
||||||
|
|
||||||
A8.oe =>
|
A0.oe =>
|
||||||
0
|
0
|
||||||
|
|
||||||
A9.oe =>
|
A1.oe =>
|
||||||
0
|
0
|
||||||
|
|
||||||
CARDSELECT.oe =>
|
CARDSELECT.oe =>
|
||||||
@@ -70,14 +70,15 @@ Pin Variable Pterms Max Min
|
|||||||
Pol Name Ext Pin Type Used Pterms Level
|
Pol Name Ext Pin Type Used Pterms Level
|
||||||
--- -------- --- --- ---- ------ ------ -----
|
--- -------- --- --- ---- ------ ------ -----
|
||||||
|
|
||||||
A8 14 V - - -
|
A0 14 V - - -
|
||||||
A9 13 V - - -
|
A1 13 V - - -
|
||||||
A10 11 V - - -
|
A2 11 V - - -
|
||||||
BSEL0 6 V - - -
|
BSEL0 6 V - - -
|
||||||
BSEL1 5 V - - -
|
BSEL1 5 V - - -
|
||||||
BSEL2 4 V - - -
|
BSEL2 4 V - - -
|
||||||
BSEL3 3 V - - -
|
BSEL3 3 V - - -
|
||||||
! CARDSELECT 12 V 3 7 1
|
! CARDSELECT 12 V 3 7 1
|
||||||
|
CLOCK 1 V - - -
|
||||||
! DEVSELECT 7 V - - -
|
! DEVSELECT 7 V - - -
|
||||||
EXTDISABLE 18 V 2 7 1
|
EXTDISABLE 18 V 2 7 1
|
||||||
EXTENABLE 17 V 4 7 1
|
EXTENABLE 17 V 4 7 1
|
||||||
@@ -86,9 +87,8 @@ Pol Name Ext Pin Type Used Pterms Level
|
|||||||
! IOSELECT 8 V - - -
|
! IOSELECT 8 V - - -
|
||||||
! IOSTROBE 9 V - - -
|
! IOSTROBE 9 V - - -
|
||||||
! RESET 2 V - - -
|
! RESET 2 V - - -
|
||||||
clock 1 V - - -
|
A0 oe 14 D 1 1 0
|
||||||
A8 oe 14 D 1 1 0
|
A1 oe 13 D 1 1 0
|
||||||
A9 oe 13 D 1 1 0
|
|
||||||
CARDSELECT oe 12 D 1 1 0
|
CARDSELECT oe 12 D 1 1 0
|
||||||
EXTDISABLE oe 18 D 1 1 0
|
EXTDISABLE oe 18 D 1 1 0
|
||||||
EXTENABLE oe 17 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 -
|
Pin #18 02049 Pol x 02121 Ac1 -
|
||||||
00256 --------------------------------
|
00256 --------------------------------
|
||||||
00288 ----------x---------------------
|
00288 ----------x---------------------
|
||||||
00320 ---------------------x----------
|
00320 -------------------------x------
|
||||||
00352 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
00352 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
00384 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
00384 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
00416 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
00416 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
@@ -146,7 +146,7 @@ Pin #16 02051 Pol - 02123 Ac1 -
|
|||||||
00992 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
00992 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
Pin #15 02052 Pol - 02124 Ac1 -
|
Pin #15 02052 Pol - 02124 Ac1 -
|
||||||
01024 --------------------------------
|
01024 --------------------------------
|
||||||
01056 -----------------------x---x-x-x
|
01056 ----------------------x---x--xx-
|
||||||
01088 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
01088 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
01120 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
01120 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
01152 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
01152 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||||
@@ -191,15 +191,15 @@ LEGEND X : fuse not blown
|
|||||||
|
|
||||||
______________
|
______________
|
||||||
| PicoPal |
|
| PicoPal |
|
||||||
clock x---|1 20|---x Vcc
|
CLOCK x---|1 20|---x Vcc
|
||||||
!RESET x---|2 19|---x
|
!RESET x---|2 19|---x
|
||||||
BSEL3 x---|3 18|---x EXTDISABLE
|
BSEL3 x---|3 18|---x EXTDISABLE
|
||||||
BSEL2 x---|4 17|---x EXTENABLE
|
BSEL2 x---|4 17|---x EXTENABLE
|
||||||
BSEL1 x---|5 16|---x EXTSELECT
|
BSEL1 x---|5 16|---x EXTSELECT
|
||||||
BSEL0 x---|6 15|---x EXTOFF
|
BSEL0 x---|6 15|---x EXTOFF
|
||||||
!DEVSELECT x---|7 14|---x A8
|
!DEVSELECT x---|7 14|---x A0
|
||||||
!IOSELECT x---|8 13|---x A9
|
!IOSELECT x---|8 13|---x A1
|
||||||
!IOSTROBE x---|9 12|---x !CARDSELECT
|
!IOSTROBE x---|9 12|---x !CARDSELECT
|
||||||
GND x---|10 11|---x A10
|
GND x---|10 11|---x A2
|
||||||
|______________|
|
|______________|
|
||||||
|
|
||||||
|
@@ -18,15 +18,16 @@ Device g16V8;
|
|||||||
|
|
||||||
/** Inputs **/
|
/** Inputs **/
|
||||||
|
|
||||||
PIN 1 = clock; /* Register Clock */
|
PIN 1 = CLOCK; /* Unused Register Clock */
|
||||||
PIN 2 = !RESET; /* System Reset */
|
PIN 2 = !RESET; /* System Reset */
|
||||||
PIN [3..6] = [BSEL3..0]; /* Buffer Mode Select */
|
PIN [3..6] = [BSEL3..0]; /* Buffer Mode Select */
|
||||||
|
|
||||||
PIN 7 = !DEVSELECT; /* $C0nX Selected -> 16B I/O */
|
PIN 7 = !DEVSELECT; /* $C0nX Selected -> 16B I/O */
|
||||||
PIN 8 = !IOSELECT; /* $CnXX Selected -> Base ROM */
|
PIN 8 = !IOSELECT; /* $CnXX Selected -> Base ROM */
|
||||||
PIN 9 = !IOSTROBE; /* $C8XX Selected -> Extd ROM */
|
PIN 9 = !IOSTROBE; /* $C8XX Selected -> Extd ROM */
|
||||||
PIN 11 = A10;
|
PIN 11 = A2;
|
||||||
PIN [13..14] = [A9..8];
|
PIN 13 = A1;
|
||||||
|
PIN 14 = A0;
|
||||||
|
|
||||||
/** Outputs **/
|
/** Outputs **/
|
||||||
|
|
||||||
@@ -41,10 +42,10 @@ PIN 18 = EXTDISABLE; /* Combinatorial */
|
|||||||
/** Logic Equations **/
|
/** Logic Equations **/
|
||||||
|
|
||||||
/* $CFxx disables */
|
/* $CFxx disables */
|
||||||
EXTOFF = IOSTROBE & [A10..8]:'b'111;
|
EXTOFF = IOSTROBE & [A2..0]:'b'111;
|
||||||
|
|
||||||
/* Implement an SR Latch */
|
/* Implement an SR Latch */
|
||||||
EXTDISABLE = !(EXTENABLE # DEVSELECT);
|
EXTDISABLE = !(EXTENABLE # IOSELECT);
|
||||||
EXTENABLE = !(EXTDISABLE # RESET # EXTOFF # [BSEL3..0]:'b'0111);
|
EXTENABLE = !(EXTDISABLE # RESET # EXTOFF # [BSEL3..0]:'b'0111);
|
||||||
|
|
||||||
/* $C8XX and extended rom is enabled */
|
/* $C8XX and extended rom is enabled */
|
||||||
|
31
CUPL/picopal.si
Normal file
31
CUPL/picopal.si
Normal file
@@ -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
|
67
CUPL/picopal.sim
Normal file
67
CUPL/picopal.sim
Normal file
@@ -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
|
51
CUPL/picopal.so
Normal file
51
CUPL/picopal.so
Normal file
@@ -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
|
31
CUPL/picopal.wo
Normal file
31
CUPL/picopal.wo
Normal file
@@ -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
|
Reference in New Issue
Block a user