[comp.sys.nsc.32k] A Small System

culberts@hpccc.HP.COM (Bruce Culbertson) (11/12/88)

There has been much discussion about simple 32k systems.  I actually
built one and here it is.  I originally ran TDS on it.  I am now well
along porting Minix to it.  I wrote an assembler, linker, and library
archiver which run on generic C machines (UNIX, PC-DOS, etc.).  I
could post them if there is interest.  I also made small modifications
to GCC to make it compatible with my assembler.

Bruce Culbertson
culberts@hplabs.hp.com

#---------------------------------- cut here ----------------------------------
# This is a shell archive.  Remove anything before this line,
# then unpack it by saving it in a file and typing "sh file".
#
# Wrapped by Bruce Culbertson <culberts@hplwbc> on Fri Nov 11 16:48:07 1988
#
# This archive contains:
#	README		netlist		partlist	dramcpal	
#	memcspal	nmipal		rfshpal		
#

LANG=""; export LANG

echo x - README
cat >README <<'@EOF'
This is the hardware design for a simple computer based on the National
Semiconductor NS32016 microprocessor.  A wire-wrap prototype has been
built and tested running at 10MHz.  It consists of the basic National
chipset (CPU, TCU, MMU, FPU, ICU, DMA), memory (64K EPROM, 64K SRAM,
multiples of 2M DRAM), and I/O (2 UARTS, IBM-PC compatible floppy, SCSI).
The chip count is in the vicinity of 50 IC's.  It was designed to run in
a stand-alone configuration with a terminal attached via RS-232.

The design is specified by two files: a netlist and a parts list.  The
netlist consists of a number of triples.  A triple is a part name, a pin
number, and the net to which the part/pin is attached.  In some cases,
there is an exclamation mark and a comment following triple, before the
end of the line.

The parts list consists of pairs: a part name, matching a name used in the
netlist; and the type of that part, e.g. 74ALS00.  Some lines have comments
similar to those in the netlist.

There are a few special nets:

     gnd       ground plane
     +5v       5 volt power plane
     +tie_high logic one (up to about 8 of these may be tied together and
               connected to +5v through a resister between 1K and 5K ohms)
     n/c       no connection

Some nets must be pulled high with a resister, e.g. to create a wire-and.
This is indicated in the netlist by connecting the net to a part called
"pullup".  Ignore the pin numbers on the pullup pseudo-part.  SIP's can
be used here if convenient.

Of course, there are many details of good engineering practice which the
design files fail to convey.  A prototype board with effective low
inductance ground and power planes is recommended.  Bypass capacitors
should be used liberally.  In the DRAM region, in particular, I
recommend using .47uf monolithics.  Pay attention to recommendations
in the National manuals about power and grounding on particular pins.

In some cases the design reflects particular parts which were available
to me.  For example, two delay lines are indicated simply because I did
not have a single part with an appropriate delay.  The delay lines could
have been avoided all together had I had a DRAM controller capable of
driving one megabyte DRAM's.  The 20ns tap on the delay line has worked
well for me.  The delay lines could be replaced with a chain of buffers,
though this could introduce some temperature sensitivity.

I would be interested in hearing from people using this design.  Good
luck.

Bruce Culbertson
culberts@hplabs.hp.com
@EOF

chmod 666 README

echo x - netlist
cat >netlist <<'@EOF'
cpu		1	+cpu_a<22>
cpu		2	+cpu_a<21>
cpu		3	+cpu_a<20>
cpu		4	+cpu_a<19>
cpu		5	+cpu_a<18>
cpu		6	+cpu_a<17>
cpu		7	+cpu_a<16>
cpu		8	+cpu_ad<15>
cpu		9	+cpu_ad<14>
cpu		10	+cpu_ad<13>
cpu		11	+cpu_ad<12>
cpu		12	+cpu_ad<11>
cpu		13	+cpu_ad<10>
cpu		14	+cpu_ad<9>
cpu		15	+cpu_ad<8>
cpu		16	+cpu_ad<7>
cpu		17	+cpu_ad<6>
cpu		18	+cpu_ad<5>
cpu		19	+cpu_ad<4>
cpu		20	+cpu_ad<3>
cpu		21	+cpu_ad<2>
cpu		22	+cpu_ad<1>
cpu		23	+cpu_ad<0>
cpu		24	gnd	!connect to cpu.25 -- not gnd plane
cpu		25	gnd
cpu		26	+phi1	!short
cpu		27	+phi2	!short
cpu		28	+rdy
cpu		29	+bbg
cpu		30	-hold
cpu		31	-hlda_mmu
cpu		32	-hbe
cpu		33	-flt
cpu		34	-abt
cpu		35	-spc
cpu		36	-supervisor
cpu		37	-ads
cpu		38	-ddin
cpu		39	-pfs
cpu		40	+st3
cpu		41	+st2
cpu		42	+st1
cpu		43	+st0
cpu		44	n/c		!-ilo
cpu		45	-nmi
cpu		46	-int
cpu		47	+cpu_a<23>
cpu		48	+5v
bbg_cap1	1	+bbg
bbg_cap1	2	gnd
bbg_cap2	1	+bbg		!-pin
bbg_cap2	2	gnd		!+pin
mmu		1	+cpu_a<22>
mmu		2	+cpu_a<21>
mmu		3	+cpu_a<20>
mmu		4	+cpu_a<19>
mmu		5	+cpu_a<18>
mmu		6	+cpu_a<17>
mmu		7	+cpu_a<16>
mmu		8	+cpu_ad<15>
mmu		9	+cpu_ad<14>
mmu		10	+cpu_ad<13>
mmu		11	+cpu_ad<12>
mmu		12	+cpu_ad<11>
mmu		13	+cpu_ad<10>
mmu		14	+cpu_ad<9>
mmu		15	+cpu_ad<8>
mmu		16	+cpu_ad<7>
mmu		17	+cpu_ad<6>
mmu		18	+cpu_ad<5>
mmu		19	+cpu_ad<4>
mmu		20	+cpu_ad<3>
mmu		21	+cpu_ad<2>
mmu		22	+cpu_ad<1>
mmu		23	+cpu_ad<0>
mmu		24	gnd		!attach to pin 25 -- not gnd plane
mmu		25	gnd
mmu		26	+phi1
mmu		27	+phi2
mmu		28	+rdy
mmu		29	-system_reset
mmu		30	-hold
mmu		31	-hlda_mmu
mmu		32	-hlda
mmu		33	-flt
mmu		34	-abt
mmu		35	-spc
mmu		36	-supervisor
mmu		37	-ads
mmu		38	-ddin
mmu		39	-pfs
mmu		40	+st3
mmu		41	+st2
mmu		42	+st1
mmu		43	+st0
mmu		44	-pav
mmu		45	n/c		!-mmu_int
mmu		46	+mmu_a24
mmu		47	+cpu_a<23>
mmu		48	+5v
fpu		1	+cpu_ad<10>
fpu		2	+cpu_ad<9>
fpu		3	+cpu_ad<8>
fpu		4	+cpu_ad<7>
fpu		5	+cpu_ad<6>
fpu		6	+cpu_ad<5>
fpu		7	+cpu_ad<4>
fpu		8	+cpu_ad<3>
fpu		9	+cpu_ad<2>
fpu		10	+cpu_ad<1>
fpu		11	+cpu_ad<0>
fpu		12	gnd
fpu		13	gnd
fpu		14	+cttl
fpu		15	-system_reset
fpu		16	+cpu_ad<15>
fpu		17	+cpu_ad<14>
fpu		18	+cpu_ad<13>
fpu		19	+cpu_ad<12>
fpu		20	+cpu_ad<11>
fpu		21	-spc
fpu		22	+st1
fpu		23	+st0
fpu		24	+5v
icu		1	+uart1_ir	!ir15
icu		2	-int
icu		3	+st1		!better: (+st1)(-adr<6>)
icu		4	+uart2_ir	!ir14
icu		5	+fdc_ir		!ir12
icu		6	+scsi_ir	!ir10
icu		7	-dma_ir		!ir8
icu		8	n/c		!ir6
icu		9	n/c		!ir4
icu		10	n/c		!ir2
icu		11	n/c		!ir0
icu		12	+io_data<7>
icu		13	+io_data<6>
icu		14	+io_data<5>
icu		15	+io_data<4>
icu		16	+io_data<3>
icu		17	+io_data<2>
icu		18	+io_data<1>
icu		19	+io_data<0>
icu		20	gnd
icu		21	-io_cs_fffe
icu		22	+adr<1>
icu		23	+adr<2>
icu		24	+adr<3>
icu		25	+adr<4>
icu		26	+adr<5>
icu		27	-system_reset
icu		28	gnd		!-hbe
icu		29	n/c		!count output
icu		30	-rd
icu		31	-wr
icu		32	+cttl
icu		33	n/c		!ir1
icu		34	n/c		!ir3
icu		35	n/c		!ir5
icu		36	n/c		!ir7
icu		37	n/c		!ir9
icu		38	n/c		!ir11
icu		39	n/c		!ir13
icu		40	+5v
tcu		1	-dbe
tcu		2	gnd
tcu		3	-rd
tcu		4	-wr
tcu		5	-ddin
tcu		6	-pav
tcu		7	-rst_sw
tcu		8	-system_reset
tcu		9	+rdy
tcu		10	+phi2
tcu		11	+phi1
tcu		12	gnd
tcu		13	+tcu_clk_in	!+xin
tcu		14	n/c		!+xout
tcu		15	+fclk
tcu		16	+cttl
tcu		17	-tso
tcu		18	+tie_high	!-wait8
tcu		19	+tie_high	!-wait4
tcu		20	-eprom_cs	!-wait2
tcu		21	+tie_high	!-wait1
tcu		22	-cwait
tcu		23	-io_cs_fff0	!-per (-uart_cs)
tcu		24	+5v
rst_sw		1	gnd
rst_sw		2	-rst_sw
rst_cap		1	gnd
rst_cap		2	-rst_sw
rst_diode	1	+5v
rst_diode	2	-rst_sw
rst_res		1	+5v
rst_res		2	-rst_sw
tcu_osc		1	n/c
tcu_osc		7	gnd
tcu_osc		8	+tcu_clk_in	!actually pin1 on HP clock
tcu_osc		14	+5v
ph1_cap		1	gnd
ph1_cap		2	+phi1
ph2_cap		1	gnd
ph2_cap		2	+phi2
eprom_e		1	+5v		!vpp
eprom_e		2	+adr<13>
eprom_e		3	+adr<8>
eprom_e		4	+adr<7>
eprom_e		5	+adr<6>
eprom_e		6	+adr<5>
eprom_e		7	+adr<4>
eprom_e		8	+adr<3>
eprom_e		9	+adr<2>
eprom_e		10	+adr<1>
eprom_e		11	+mem_data<0>
eprom_e		12	+mem_data<1>
eprom_e		13	+mem_data<2>
eprom_e		14	gnd
eprom_e		15	+mem_data<3>
eprom_e		16	+mem_data<4>
eprom_e		17	+mem_data<5>
eprom_e		18	+mem_data<6>
eprom_e		19	+mem_data<7>
eprom_e		20	-eprom_cs
eprom_e		21	+adr<11>
eprom_e		22	-rd		!-oe
eprom_e		23	+adr<12>
eprom_e		24	+adr<10>
eprom_e		25	+adr<9>
eprom_e		26	+adr<14>
eprom_e		27	+eprom_a15
eprom_e		28	+5v
eprom_o		1	+5v		!vpp
eprom_o		2	+adr<13>
eprom_o		3	+adr<8>
eprom_o		4	+adr<7>
eprom_o		5	+adr<6>
eprom_o		6	+adr<5>
eprom_o		7	+adr<4>
eprom_o		8	+adr<3>
eprom_o		9	+adr<2>
eprom_o		10	+adr<1>
eprom_o		11	+mem_data<8>
eprom_o		12	+mem_data<9>
eprom_o		13	+mem_data<10>
eprom_o		14	gnd
eprom_o		15	+mem_data<11>
eprom_o		16	+mem_data<12>
eprom_o		17	+mem_data<13>
eprom_o		18	+mem_data<14>
eprom_o		19	+mem_data<15>
eprom_o		20	-eprom_cs
eprom_o		21	+adr<11>
eprom_o		22	-rd		!-oe
eprom_o		23	+adr<12>
eprom_o		24	+adr<10>
eprom_o		25	+adr<9>
eprom_o		26	+adr<14>
eprom_o		27	+eprom_a15
eprom_o		28	+5v
sram_e		1	+adr<15>
sram_e		2	+adr<13>
sram_e		3	+adr<8>
sram_e		4	+adr<7>
sram_e		5	+adr<6>
sram_e		6	+adr<5>
sram_e		7	+adr<4>
sram_e		8	+adr<3>
sram_e		9	+adr<2>
sram_e		10	+adr<1>
sram_e		11	+mem_data<0>
sram_e		12	+mem_data<1>
sram_e		13	+mem_data<2>
sram_e		14	gnd
sram_e		15	+mem_data<3>
sram_e		16	+mem_data<4>
sram_e		17	+mem_data<5>
sram_e		18	+mem_data<6>
sram_e		19	+mem_data<7>
sram_e		20	-sram_cs
sram_e		21	+adr<11>
sram_e		22	-rd		!-oe
sram_e		23	+adr<12>
sram_e		24	+adr<10>
sram_e		25	+adr<9>
sram_e		26	+adr<14>
sram_e		27	-wr_e		!(-wr)+(+adr<0>)
sram_e		28	+5v
sram_o		1	+adr<15>
sram_o		2	+adr<13>
sram_o		3	+adr<8>
sram_o		4	+adr<7>
sram_o		5	+adr<6>
sram_o		6	+adr<5>
sram_o		7	+adr<4>
sram_o		8	+adr<3>
sram_o		9	+adr<2>
sram_o		10	+adr<1>
sram_o		11	+mem_data<8>
sram_o		12	+mem_data<9>
sram_o		13	+mem_data<10>
sram_o		14	gnd
sram_o		15	+mem_data<11>
sram_o		16	+mem_data<12>
sram_o		17	+mem_data<13>
sram_o		18	+mem_data<14>
sram_o		19	+mem_data<15>
sram_o		20	-sram_cs
sram_o		21	+adr<11>
sram_o		22	-rd		!-oe
sram_o		23	+adr<12>
sram_o		24	+adr<10>
sram_o		25	+adr<9>
sram_o		26	+adr<14>
sram_o		27	-wr_o		!(-wr)+(-hbe)
sram_o		28	+5v
mem_data_xcv_e	1	-ddin_buf	!+mem_data_out
mem_data_xcv_e	2	+cpu_ad<0>
mem_data_xcv_e	3	+cpu_ad<1>
mem_data_xcv_e	4	+cpu_ad<2>
mem_data_xcv_e	5	+cpu_ad<3>
mem_data_xcv_e	6	+cpu_ad<4>
mem_data_xcv_e	7	+cpu_ad<5>
mem_data_xcv_e	8	+cpu_ad<6>
mem_data_xcv_e	9	+cpu_ad<7>
mem_data_xcv_e	10	gnd
mem_data_xcv_e	11	+mem_data<7>
mem_data_xcv_e	12	+mem_data<6>
mem_data_xcv_e	13	+mem_data<5>
mem_data_xcv_e	14	+mem_data<4>
mem_data_xcv_e	15	+mem_data<3>
mem_data_xcv_e	16	+mem_data<2>
mem_data_xcv_e	17	+mem_data<1>
mem_data_xcv_e	18	+mem_data<0>
mem_data_xcv_e	19	-mem_data_oe
mem_data_xcv_e	20	+5v
mem_data_xcv_o	1	-ddin_buf	!+mem_data_out
mem_data_xcv_o	2	+cpu_ad<8>
mem_data_xcv_o	3	+cpu_ad<9>
mem_data_xcv_o	4	+cpu_ad<10>
mem_data_xcv_o	5	+cpu_ad<11>
mem_data_xcv_o	6	+cpu_ad<12>
mem_data_xcv_o	7	+cpu_ad<13>
mem_data_xcv_o	8	+cpu_ad<14>
mem_data_xcv_o	9	+cpu_ad<15>
mem_data_xcv_o	10	gnd
mem_data_xcv_o	11	+mem_data<15>
mem_data_xcv_o	12	+mem_data<14>
mem_data_xcv_o	13	+mem_data<13>
mem_data_xcv_o	14	+mem_data<12>
mem_data_xcv_o	15	+mem_data<11>
mem_data_xcv_o	16	+mem_data<10>
mem_data_xcv_o	17	+mem_data<9>
mem_data_xcv_o	18	+mem_data<8>
mem_data_xcv_o	19	-mem_data_oe
mem_data_xcv_o	20	+5v
io_data_xcv_e	1	-ddin_buf	!+io_data_out
io_data_xcv_e	2	+cpu_ad<0>
io_data_xcv_e	3	+cpu_ad<1>
io_data_xcv_e	4	+cpu_ad<2>
io_data_xcv_e	5	+cpu_ad<3>
io_data_xcv_e	6	+cpu_ad<4>
io_data_xcv_e	7	+cpu_ad<5>
io_data_xcv_e	8	+cpu_ad<6>
io_data_xcv_e	9	+cpu_ad<7>
io_data_xcv_e	10	gnd
io_data_xcv_e	11	+io_data<7>
io_data_xcv_e	12	+io_data<6>
io_data_xcv_e	13	+io_data<5>
io_data_xcv_e	14	+io_data<4>
io_data_xcv_e	15	+io_data<3>
io_data_xcv_e	16	+io_data<2>
io_data_xcv_e	17	+io_data<1>
io_data_xcv_e	18	+io_data<0>
io_data_xcv_e	19	-io_edata_oe
io_data_xcv_e	20	+5v
io_data_xcv_o	1	-ddin_buf	!+io_data_out
io_data_xcv_o	2	+cpu_ad<8>
io_data_xcv_o	3	+cpu_ad<9>
io_data_xcv_o	4	+cpu_ad<10>
io_data_xcv_o	5	+cpu_ad<11>
io_data_xcv_o	6	+cpu_ad<12>
io_data_xcv_o	7	+cpu_ad<13>
io_data_xcv_o	8	+cpu_ad<14>
io_data_xcv_o	9	+cpu_ad<15>
io_data_xcv_o	10	gnd
io_data_xcv_o	11	+io_data<7>
io_data_xcv_o	12	+io_data<6>
io_data_xcv_o	13	+io_data<5>
io_data_xcv_o	14	+io_data<4>
io_data_xcv_o	15	+io_data<3>
io_data_xcv_o	16	+io_data<2>
io_data_xcv_o	17	+io_data<1>
io_data_xcv_o	18	+io_data<0>
io_data_xcv_o	19	+tie_high	!-io_odata_oe
io_data_xcv_o	20	+5v
adr_latch_l	1	gnd		!-oe, maybe +hlda later
adr_latch_l	2	+adr<0>
adr_latch_l	3	+cpu_ad<0>
adr_latch_l	4	+cpu_ad<2>
adr_latch_l	5	+adr<2>
adr_latch_l	6	+adr<4>
adr_latch_l	7	+cpu_ad<4>
adr_latch_l	8	+cpu_ad<6>
adr_latch_l	9	+adr<6>
adr_latch_l	10	gnd
adr_latch_l	11	+pav		!transparent hi
adr_latch_l	12	+adr<7>
adr_latch_l	13	+cpu_ad<7>
adr_latch_l	14	+cpu_ad<5>
adr_latch_l	15	+adr<5>
adr_latch_l	16	+adr<3>
adr_latch_l	17	+cpu_ad<3>
adr_latch_l	18	+cpu_ad<1>
adr_latch_l	19	+adr<1>
adr_latch_l	20	+5v
adr_latch_m	1	gnd		!-oe, maybe +hlda later
adr_latch_m	2	+adr<8>
adr_latch_m	3	+cpu_ad<8>
adr_latch_m	4	+cpu_ad<10>
adr_latch_m	5	+adr<10>
adr_latch_m	6	+adr<12>
adr_latch_m	7	+cpu_ad<12>
adr_latch_m	8	+cpu_ad<14>
adr_latch_m	9	+adr<14>
adr_latch_m	10	gnd
adr_latch_m	11	+pav		!transparent hi
adr_latch_m	12	+adr<15>
adr_latch_m	13	+cpu_ad<15>
adr_latch_m	14	+cpu_ad<13>
adr_latch_m	15	+adr<13>
adr_latch_m	16	+adr<11>
adr_latch_m	17	+cpu_ad<11>
adr_latch_m	18	+cpu_ad<9>
adr_latch_m	19	+adr<9>
adr_latch_m	20	+5v
adr_buf_h	1	gnd		!-oe, maybe +hlda later
adr_buf_h	2	+cpu_a<16>
adr_buf_h	3	+adr<17>
adr_buf_h	4	+cpu_a<18>
adr_buf_h	5	+adr<19>
adr_buf_h	6	+cpu_a<20>
adr_buf_h	7	+adr<21>
adr_buf_h	8	+cpu_a<22>
adr_buf_h	9	+adr<23>
adr_buf_h	10	gnd
adr_buf_h	11	+cpu_a<23>
adr_buf_h	12	+adr<22>
adr_buf_h	13	+cpu_a<21>
adr_buf_h	14	+adr<20>
adr_buf_h	15	+cpu_a<19>
adr_buf_h	16	+adr<18>
adr_buf_h	17	+cpu_a<17>
adr_buf_h	18	+adr<16>
adr_buf_h	19	gnd		!-oe, maybe +hlda later
adr_buf_h	20	+5v
uart1		1	+io_data<0>
uart1		2	+io_data<1>
uart1		3	+io_data<2>
uart1		4	+io_data<3>
uart1		5	+io_data<4>
uart1		6	+io_data<5>
uart1		7	+io_data<6>
uart1		8	+io_data<7>
uart1		9	+uart1_clk_out
uart1		10	-rxd1
uart1		11	-txd1
uart1		12	-adr<6>		!+cs, cs = 0xfff08x
uart1		13	+adr<7>		!+cs
uart1		14	-io_cs_fff0	!-cs
uart1		15	+uart1_clk_out
uart1		16	+uart_xtal1
uart1		17	+uart_xtal2
uart1		18	-wr		!-dostr (data out strobe)
uart1		19	gnd		!+dostr (or'd with -dostr)
uart1		20	gnd
uart1		21	-rd		!-distr
uart1		22	gnd		!+distr (or'd with -distr)
uart1		23	n/c		!out: driver disable
uart1		24	n/c		!out: cs
uart1		25	gnd		!-adr strobe
uart1		26	+adr<3>
uart1		27	+adr<2>
uart1		28	+adr<1>
uart1		29	n/c
uart1		30	+uart1_ir
uart1		31	n/c		!-out2
uart1		32	-rts1
uart1		33	n/c		!-dtr
uart1		34	n/c		!-out1
uart1		35	+system_reset
uart1		36	-cts1
uart1		37	gnd		!-dsr
uart1		38	gnd		!-dcd
uart1		39	gnd		!-ri
uart1		40	+5v
uart2		1	+io_data<0>
uart2		2	+io_data<1>
uart2		3	+io_data<2>
uart2		4	+io_data<3>
uart2		5	+io_data<4>
uart2		6	+io_data<5>
uart2		7	+io_data<6>
uart2		8	+io_data<7>
uart2		9	+uart2_clk_out
uart2		10	-rxd2
uart2		11	-txd2
uart2		12	+adr<6>		!cs = 0xfff0cx
uart2		13	+adr<7>
uart2		14	-io_cs_fff0
uart2		15	+uart2_clk_out
uart2		16	+uart_xtal1
uart2		17	+uart_xtal2
uart2		18	-wr
uart2		19	gnd
uart2		20	gnd
uart2		21	-rd
uart2		22	gnd
uart2		23	n/c
uart2		24	n/c
uart2		25	gnd
uart2		26	+adr<3>
uart2		27	+adr<2>
uart2		28	+adr<1>
uart2		29	n/c
uart2		30	+uart2_ir
uart2		31	n/c
uart2		32	-rts2
uart2		33	n/c		!-dtr
uart2		34	n/c
uart2		35	+system_reset
uart2		36	-cts2
uart2		37	gnd		!-dsr
uart2		38	gnd		!-dcd
uart2		39	gnd		!-ri
uart2		40	+5v
uart_xtal	1	+uart_xtal1	
uart_xtal	2	+uart_xtal3
uart_s_res	1	+uart_xtal2
uart_s_res	2	+uart_xtal3
uart_p_res	1	+uart_xtal1
uart_p_res	2	+uart_xtal3
uart_cap1	1	+uart_xtal1
uart_cap1	2	gnd
uart_cap2	1	+uart_xtal3
uart_cap2	2	gnd
rs232_rcv	1	+rxd1_rs232
rs232_rcv	2	n/c
rs232_rcv	3	-rxd1
rs232_rcv	4	+cts1_rs232
rs232_rcv	5	n/c
rs232_rcv	6	-cts1
rs232_rcv	7	gnd
rs232_rcv	8	-cts2
rs232_rcv	9	n/c
rs232_rcv	10	+cts2_rs232
rs232_rcv	11	-rxd2
rs232_rcv	12	n/c
rs232_rcv	13	+rxd2_rs232
rs232_rcv	14	+5v
rs232_drv	1	-12v
rs232_drv	2	-txd1
rs232_drv	3	+txd1_rs232
rs232_drv	4	-rts1
rs232_drv	5	-rts1
rs232_drv	6	+rts1_rs232
rs232_drv	7	gnd
rs232_drv	8	+rts2_rs232
rs232_drv	9	-rts2
rs232_drv	10	-rts2
rs232_drv	11	+txd2_rs232
rs232_drv	12	-txd2
rs232_drv	13	-txd2
rs232_drv	14	+12v
io_decode1	1	+adr<23>
io_decode1	2	+adr<22>
io_decode1	3	+adr<21>
io_decode1	4	+adr<20>
io_decode1	5	+adr<19>
io_decode1	6	+adr<18>
io_decode1	7	+adr<17>
io_decode1	8	gnd
io_decode1	9	-io_cs		!low for adr=0xfffxxx
io_decode1	10	+adr<16>
io_decode1	11	+adr<15>
io_decode1	12	+adr<14>
io_decode1	13	+adr<13>
io_decode1	14	+adr<12>
io_decode1	15	+tie_high
io_decode1	16	+5v
dma_decode	1	+adr<23>
dma_decode	2	+adr<22>
dma_decode	3	+adr<21>
dma_decode	4	+adr<20>
dma_decode	5	+adr<19>
dma_decode	6	+adr<18>
dma_decode	7	+adr<17>
dma_decode	8	gnd
dma_decode	9	-dma_cs1	!low for adr=0xffecxx
dma_decode	10	+adr<16>
dma_decode	11	+adr<15>
dma_decode	12	+adr<14>
dma_decode	13	+adr<13>
dma_decode	14	+adr<11>
dma_decode	15	+adr<10>
dma_decode	16	+5v
io_decode2	1	+adr<9>
io_decode2	2	+adr<10>
io_decode2	3	+adr<11>
io_decode2	4	-io_cs		!-enable
io_decode2	5	+adr<8>		!-enable
io_decode2	6	+tie_high	!+enable
io_decode2	7	-io_cs_fffe	!icu
io_decode2	8	gnd
io_decode2	9	n/c		!-io_cs_fffc
io_decode2	10	n/c		!-io_cs_fffa formerly dma controller
io_decode2	11	-io_cs_fff8	!scsi -dack
io_decode2	12	-io_cs_fff6	!scsi -cs
io_decode2	13	-io_cs_fff4	!floppy controller
io_decode2	14	n/c		!-io_cs_fff2
io_decode2	15	-io_cs_fff0	!uart's
io_decode2	16	+5v
or_1		1	-wr
or_1		2	+adr<0>
or_1		3	-wr_e		!write even byte
or_1		4	-dbe		!change later for DMA
or_1		5	-io_cs		!change later for DMA
or_1		6	-io_edata_oe	!change later for DMA
or_1		7	gnd
or_1		8	-mem_data_oe
or_1		9	+adr<23>	!change for ram beyond 8meg
or_1		10	-dbe
or_1		11	-wr_o		!write odd byte
or_1		12	-hbe_buf
or_1		13	-wr
or_1		14	+5v
invert_1	1	+adr<6>
invert_1	2	-adr<6>		!for uarts
invert_1	3	-pav
invert_1	4	+pav		!for adr latches
invert_1	5	-system_reset
invert_1	6	+system_reset	!for uarts
invert_1	7	gnd
invert_1	8	+ddin_buf
invert_1	9	-ddin		!was -ddin_buf
invert_1	10	-dma_req1
invert_1	11	+dma_req1
invert_1	12	-dma_req0
invert_1	13	+dma_req0
invert_1	14	+5v
3st_buf1	1	-hlda
3st_buf1	2	-hbe
3st_buf1	3	-hbe_buf
3st_buf1	4	+tie_high
3st_buf1	5	-ddin
3st_buf1	6	-ddin_buf
3st_buf1	7	gnd
3st_buf1	8	n/c
3st_buf1	9	gnd
3st_buf1	10	gnd
3st_buf1	11	n/c
3st_buf1	12	gnd
3st_buf1	13	gnd
3st_buf1	14	+5v
memcspal	1	+adr<15>
memcspal	2	+adr<16>
memcspal	3	+adr<17>
memcspal	4	+adr<18>
memcspal	5	+adr<19>
memcspal	6	+adr<20>
memcspal	7	+adr<21>
memcspal	8	+adr<22>
memcspal	9	+adr<23>
memcspal	10	gnd
memcspal	11	+swap_jumper
memcspal	12	-eprom_cs
memcspal	13	+eprom_a15
memcspal	14	-sram_cs
memcspal	15	-dram_cs
memcspal	16	n/c
memcspal	17	n/c
memcspal	18	n/c
memcspal	19	n/c
memcspal	20	+5v
nmipal		1	+cttl
nmipal		2	-nmi_up
nmipal		3	-nmi_down
nmipal		4	-tso
nmipal		5	n/c
nmipal		6	n/c
nmipal		7	n/c
nmipal		8	n/c
nmipal		9	n/c
nmipal		10	gnd
nmipal		11	gnd		!-oe
nmipal		12	-nmi
nmipal		13	n/c
nmipal		14	n/c
nmipal		15	n/c
nmipal		16	n/c
nmipal		17	n/c
nmipal		18	n/c
nmipal		19	n/c
nmipal		20	+5v
nmi_sw		1	-nmi_up
nmi_sw		2	gnd
nmi_sw		3	-nmi_down
pullup		1	-spc
pullup		2	-int
pullup		3	-hold
pullup		4	+mmu_a24
pullup		5	-nmi_up
pullup		6	-nmi_down
pullup		7	+swap_jumper
pullup		8	-pav
pullup		9	-cwait
uart_header	1	+uart_xtal2
uart_header	2	+uart_xtal1
uart_header	3	n/c
uart_header	4	gnd
uart_header	5	+txd1_rs232
uart_header	6	+rts1_rs232
uart_header	7	+cts1_rs232
uart_header	8	+rxd1_rs232
uart_header	9	+rxd2_rs232
uart_header	10	+cts2_rs232
uart_header	11	+rts2_rs232
uart_header	12	+txd2_rs232
uart_header	13	gnd	
uart_header	14	n/c
uart_header	15	gnd
uart_header	16	+uart_xtal3
sw_header	1	-nmi_up
sw_header	2	-nmi_down
sw_header	3	-rst_sw
sw_header	4	gnd
sw_header	5	n/c
sw_header	6	n/c
sw_header	7	gnd
sw_header	8	+swap_jumper
sw_header	9	n/c
sw_header	10	n/c
sw_header	11	n/c
sw_header	12	n/c
sw_header	13	n/c
sw_header	14	+5v
or_2		1	-dma_cs1
or_2		2	+adr<12>
or_2		3	-dma_cs		!low for adr=0xffecxx
or_2		4	gnd		!unused gate
or_2		5	gnd
or_2		6	
or_2		7	gnd
or_2		8	-we_h0
or_2		9	+ddin_buf
or_2		10	-hbe_buf
or_2		11	-we_l0
or_2		12	+ddin_buf
or_2		13	+adr<0>
or_2		14	+5v
scsi_ctl	1	+io_data<0>
scsi_ctl	2	-sc_db<7>
scsi_ctl	3	-sc_db<6>
scsi_ctl	4	-sc_db<5>
scsi_ctl	5	-sc_db<4>
scsi_ctl	6	-sc_db<3>
scsi_ctl	7	-sc_db<2>
scsi_ctl	8	-sc_db<1>
scsi_ctl	9	-sc_db<0>
scsi_ctl	10	-sc_dbp
scsi_ctl	11	gnd
scsi_ctl	12	-sc_sel
scsi_ctl	13	-sc_bsy
scsi_ctl	14	-sc_ack
scsi_ctl	15	-sc_atn
scsi_ctl	16	-sc_rst
scsi_ctl	17	-sc_io
scsi_ctl	18	-sc_cd
scsi_ctl	19	-sc_msg
scsi_ctl	20	-sc_req
scsi_ctl	21	-io_cs_fff6	!-cs
scsi_ctl	22	+dma_req1
scsi_ctl	23	+scsi_ir	!int req
scsi_ctl	24	-rd
scsi_ctl	25	n/c		!ready
scsi_ctl	26	-io_cs_fff8	!-dack
scsi_ctl	27	+tie_high	!-eop
scsi_ctl	28	-system_reset
scsi_ctl	29	-wr
scsi_ctl	30	+adr<1>
scsi_ctl	31	+5v
scsi_ctl	32	+adr<2>
scsi_ctl	33	+adr<3>
scsi_ctl	34	+io_data<7>
scsi_ctl	35	+io_data<6>
scsi_ctl	36	+io_data<5>
scsi_ctl	37	+io_data<4>
scsi_ctl	38	+io_data<3>
scsi_ctl	39	+io_data<2>
scsi_ctl	40	+io_data<1>
sc_pullup1	1	-sc_db<7>
sc_pullup1	2	-sc_db<6>
sc_pullup1	3	-sc_db<5>
sc_pullup1	4	-sc_db<4>
sc_pullup1	5	-sc_db<3>
sc_pullup1	6	-sc_db<2>
sc_pullup1	7	-sc_db<1>
sc_pullup1	8	-sc_db<0>
sc_pullup1	9	-sc_dbp
sc_pullup1	10	+5v
sc_pullup2	1	-sc_sel
sc_pullup2	2	-sc_bsy
sc_pullup2	3	-sc_ack
sc_pullup2	4	-sc_atn
sc_pullup2	5	-sc_rst
sc_pullup2	6	-sc_io
sc_pullup2	7	-sc_cd
sc_pullup2	8	-sc_msg
sc_pullup2	9	-sc_req
sc_pullup2	10	+5v
sc_pulldown1	1	-sc_db<7>
sc_pulldown1	2	-sc_db<6>
sc_pulldown1	3	-sc_db<5>
sc_pulldown1	4	-sc_db<4>
sc_pulldown1	5	-sc_db<3>
sc_pulldown1	6	-sc_db<2>
sc_pulldown1	7	-sc_db<1>
sc_pulldown1	8	-sc_db<0>
sc_pulldown1	9	-sc_dbp
sc_pulldown1	10	gnd
sc_pulldown2	1	-sc_sel
sc_pulldown2	2	-sc_bsy
sc_pulldown2	3	-sc_ack
sc_pulldown2	4	-sc_atn
sc_pulldown2	5	-sc_rst
sc_pulldown2	6	-sc_io
sc_pulldown2	7	-sc_cd
sc_pulldown2	8	-sc_msg
sc_pulldown2	9	-sc_req
sc_pulldown2	10	gnd
sc_conn		1	gnd
sc_conn		2	-sc_db<0>
sc_conn		3	gnd
sc_conn		4	-sc_db<1>
sc_conn		5	gnd
sc_conn		6	-sc_db<2>
sc_conn		7	gnd
sc_conn		8	-sc_db<3>
sc_conn		9	gnd
sc_conn		10	-sc_db<4>
sc_conn		11	gnd
sc_conn		12	-sc_db<5>
sc_conn		13	gnd
sc_conn		14	-sc_db<6>
sc_conn		15	gnd
sc_conn		16	-sc_db<7>
sc_conn		17	gnd
sc_conn		18	-sc_dbp
sc_conn		19	gnd
sc_conn		20	gnd
sc_conn		21	gnd
sc_conn		22	gnd
sc_conn		23	gnd
sc_conn		24	gnd
sc_conn		25	n/c
sc_conn		26	+sc_term
sc_conn		27	gnd
sc_conn		28	gnd
sc_conn		29	gnd
sc_conn		30	gnd
sc_conn		31	gnd
sc_conn		32	-sc_atn
sc_conn		33	gnd
sc_conn		34	gnd
sc_conn		35	gnd
sc_conn		36	-sc_bsy
sc_conn		37	gnd
sc_conn		38	-sc_ack
sc_conn		39	gnd
sc_conn		40	-sc_rst
sc_conn		41	gnd
sc_conn		42	-sc_msg
sc_conn		43	gnd
sc_conn		44	-sc_sel
sc_conn		45	gnd
sc_conn		46	-sc_cd
sc_conn		47	gnd
sc_conn		48	-sc_req
sc_conn		49	gnd
sc_conn		50	-sc_io
sc_diode	1	+5v		!anode
sc_diode	2	+sc_term
dma_ctl		1	+cpu_a<22>
dma_ctl		2	+cpu_a<21>
dma_ctl		3	+cpu_a<20>
dma_ctl		4	+cpu_a<19>
dma_ctl		5	+cpu_a<18>
dma_ctl		6	+cpu_a<17>
dma_ctl		7	+cpu_a<16>
dma_ctl		8	+cpu_ad<15>
dma_ctl		9	+cpu_ad<14>
dma_ctl		10	+cpu_ad<13>
dma_ctl		11	+cpu_ad<12>
dma_ctl		12	+cpu_ad<11>
dma_ctl		13	+cpu_ad<10>
dma_ctl		14	+cpu_ad<9>
dma_ctl		15	+cpu_ad<8>
dma_ctl		16	+cpu_ad<7>
dma_ctl		17	+cpu_ad<6>
dma_ctl		18	+cpu_ad<5>
dma_ctl		19	+cpu_ad<4>
dma_ctl		20	+cpu_ad<3>
dma_ctl		21	+cpu_ad<2>
dma_ctl		22	+cpu_ad<1>
dma_ctl		23	+cpu_ad<0>
dma_ctl		24	gnd
dma_ctl		25	+cttl
dma_ctl		26	+rdy
dma_ctl		27	-pav		!needs pullup
dma_ctl		28	n/c		!-iowr
dma_ctl		29	n/c		!-iord
dma_ctl		30	-ddin
dma_ctl		31	-hbe_buf
dma_ctl		32	-dma_ack0	!fdc channel
dma_ctl		33	-dma_req0
dma_ctl		34	n/c		!-dma_ack1
dma_ctl		35	-dma_req1	!scsi channel
dma_ctl		36	n/c		!-dma_ack2
dma_ctl		37	+tie_high	!-dma_req2
dma_ctl		38	n/c		!-dma_ack3
dma_ctl		39	+tie_high	!-dma_req3
dma_ctl		40	-hlda
dma_ctl		41	-hold
dma_ctl		42	-dma_ir		!int
dma_ctl		43	-system_reset
dma_ctl		44	n/c		!-bgrt
dma_ctl		45	+tie_high	!-breq
dma_ctl		46	-dma_cs		!cs = 0xffecxx
dma_ctl		47	+cpu_a<23>
dma_ctl		48	+5v
dramc		1	+rfshclk
dramc		2	+cttl
dramc		3	+tie_high	!m0
dramc		4	+tie_high	!15ns ras hold
dramc		5	-mode		!m2
dramc		6	+tie_high	!-ads
dramc		7	+adr<1>
dramc		8	+adr<2>
dramc		9	+adr<3>
dramc		10	+adr<4>
dramc		11	+adr<5>
dramc		12	+adr<6>
dramc		13	gnd
dramc		14	+adr<7>
dramc		15	+adr<8>
dramc		16	+adr<9>
dramc		17	+adr<10>
dramc		18	+adr<11>
dramc		19	+adr<12>
dramc		20	+adr<13>
dramc		21	+adr<14>
dramc		22	+adr<15>
dramc		23	+adr<16>
dramc		24	+adr<17>	!dram change was +tie_high
dramc		25	+adr<18>	!dram change was gnd
dramc		26	+adr<22>	!b1
dramc		27	+adr<21>	!b0
dramc		28	-ras01
dramc		29	-ras11		!200000-3fffff
dramc		30	-ras21		!400000-5fffff
dramc		31	-ras31		!600000-7fffff
dramc		32	-cas1
dramc		33	+dram_adr1<8>	!dram change was +dram_mux_sel
dramc		34	+dram_adr1<7>
dramc		35	+dram_adr1<6>
dramc		36	+5v
dramc		37	+dram_adr1<5>
dramc		38	gnd
dramc		39	+dram_adr1<4>
dramc		40	+dram_adr1<3>
dramc		41	+dram_adr1<2>
dramc		42	+dram_adr1<1>
dramc		43	+dram_adr1<0>
dramc		44	n/c		!-we
dramc		45	+tie_high	!-win
dramc		46	+rfio
dramc		47	-dram_cs
dramc		48	-rasin
dramc_cap1	1	gnd		!close to dramc pin 38
dramc_cap1	2	+5v		!close to dramc pin 36
dramc_cap2	1	gnd		!close to dramc pin 38
dramc_cap2	2	+5v		!close to dramc pin 36
dram_delay0	1	-rasin
dram_delay0	2	n/c
dram_delay0	3	n/c		!20%
dram_delay0	4	n/c		!40%
dram_delay0	5	n/c		!60%
dram_delay0	6	n/c		!80%
dram_delay0	7	gnd
dram_delay0	8	+ras_dly100	!100% this tap seems to work
dram_delay0	9	n/c		!90%
dram_delay0	10	n/c		!70%
dram_delay0	11	n/c		!50%
dram_delay0	12	n/c		!30%
dram_delay0	13	n/c		!10%
dram_delay0	14	+5v
dram_delay1	1	+ras_dly100	!more delay if needed
dram_delay1	2	n/c
dram_delay1	3	n/c		!120%
dram_delay1	4	n/c		!140%
dram_delay1	5	n/c		!160%
dram_delay1	6	n/c		!180%
dram_delay1	7	gnd
dram_delay1	8	n/c		!200%
dram_delay1	9	n/c		!190%
dram_delay1	10	n/c		!170%
dram_delay1	11	n/c		!150%
dram_delay1	12	n/c		!130%
dram_delay1	13	n/c		!110%
dram_delay1	14	+5v
rfshpal		1	+cttl
rfshpal		2	gnd
rfshpal		3	gnd
rfshpal		4	gnd
rfshpal		5	gnd
rfshpal		6	gnd
rfshpal		7	gnd
rfshpal		8	gnd
rfshpal		9	gnd
rfshpal		10	gnd
rfshpal		11	gnd
rfshpal		12	n/c
rfshpal		13	n/c
rfshpal		14	n/c
rfshpal		15	n/c
rfshpal		16	n/c
rfshpal		17	n/c
rfshpal		18	n/c
rfshpal		19	+rfshclk
rfshpal		20	+5v
dramcpal	1	+fclk
dramcpal	2	-tso
dramcpal	3	+rfio
dramcpal	4	-pav
dramcpal	5	-ddin_buf
dramcpal	6	+tie_high	!-waitwr
dramcpal	7	+cttl
dramcpal	8	-dram_cs
dramcpal	9	+tie_high	!-waitrd
dramcpal	10	gnd
dramcpal	11	gnd		!-oe
dramcpal	12	-cwait
dramcpal	13	n/c		!4dly
dramcpal	14	n/c		!3dly
dramcpal	15	n/c		!2dly
dramcpal	16	-mode
dramcpal	17	-rasin
dramcpal	18	n/c		!-cycled
dramcpal	19	n/c		!-incy
dramcpal	20	+5v
dram_mux	1	+ras_dly100	!dram change was +dram_mux_sel
dram_mux	2	gnd		!dram change was +adr<17>
dram_mux	3	gnd		!dram change was +adr<18>
dram_mux	4	n/c		!dram change was +dram_adr0<8>
dram_mux	5	+adr<19>
dram_mux	6	+adr<20>
dram_mux	7	+dram_adr0<9>
dram_mux	8	gnd
dram_mux	9	n/c
dram_mux	10	gnd
dram_mux	11	gnd
dram_mux	12	n/c
dram_mux	13	gnd
dram_mux	14	gnd
dram_mux	15	gnd		!enable
dram_mux	16	+5v
dram_drv	1	gnd
dram_drv	2	-we_l0
dram_drv	3	n/c		!dram change was +dram_adr1<8>
dram_drv	4	-we_h0
dram_drv	5	+dram_adr1<9>
dram_drv	6	gnd		!dram change was -cas1
dram_drv	7	n/c 		!dram change was -cas3
dram_drv	8	gnd		!dram change was -cas3
dram_drv	9	n/c 		!dram change was -cas5
dram_drv	10	gnd
dram_drv	11	gnd		!dram change was -cas4
dram_drv	12	n/c		!dram change was -cas4
dram_drv	13	gnd		!dram change was -cas2
dram_drv	14	n/c		!dram change was -cas2
dram_drv	15	+dram_adr0<9>
dram_drv	16	-we_h1
dram_drv	17	gnd		!dram change was +dram_adr0<8>
dram_drv	18	-we_l1
dram_drv	19	gnd
dram_drv	20	+5v
dram_term1	1	+dram_adr1<0>
dram_term1	2	+dram_adr1<1>
dram_term1	3	+dram_adr1<2>
dram_term1	4	+dram_adr1<3>
dram_term1	5	+dram_adr1<4>
dram_term1	6	+dram_adr1<5>
dram_term1	7	+dram_adr1<6>
dram_term1	8	+dram_adr1<7>
dram_term1	9	+dram_adr2<7>
dram_term1	10	+dram_adr2<6>
dram_term1	11	+dram_adr2<5>
dram_term1	12	+dram_adr2<4>
dram_term1	13	+dram_adr2<3>
dram_term1	14	+dram_adr2<2>
dram_term1	15	+dram_adr2<1>
dram_term1	16	+dram_adr2<0>
dram_term2	1	n/c		!WBC has pullup here
dram_term2	2	-ras31
dram_term2	3	-ras21
dram_term2	4	-ras11
dram_term2	5	-ras01
dram_term2	6	-cas1
dram_term2	7	+dram_adr1<8>
dram_term2	8	n/c
dram_term2	9	n/c
dram_term2	10	+dram_adr2<8>
dram_term2	11	-cas2
dram_term2	12	n/c		!-ras02
dram_term2	13	-ras12
dram_term2	14	n/c		!-ras22
dram_term2	15	n/c		!-ras32
dram_term2	16	n/c		!WBC has pullup here
dram_term3	1	n/c
dram_term3	2	n/c
dram_term3	3	n/c
dram_term3	4	n/c
dram_term3	5	+dram_adr2<9>
dram_term3	6	-we_l2
dram_term3	7	-we_h2
dram_term3	8	n/c
dram_term3	9	n/c
dram_term3	10	-we_h1
dram_term3	11	-we_l1
dram_term3	12	+dram_adr1<9>
dram_term3	13	n/c
dram_term3	14	n/c
dram_term3	15	n/c
dram_term3	16	n/c
dram0		1	+mem_data<0>
dram0		2	-we_l2
dram0		3	-ras12
dram0		4	n/c
dram0		5	+dram_adr2<0>
dram0		6	+dram_adr2<1>
dram0		7	+dram_adr2<2>
dram0		8	+dram_adr2<3>
dram0		9	+5v
dram0		10	+dram_adr2<4>
dram0		11	+dram_adr2<5>
dram0		12	+dram_adr2<6>
dram0		13	+dram_adr2<7>
dram0		14	+dram_adr2<8>
dram0		15	+dram_adr2<9>
dram0		16	-cas2		!dram change was -cas6
dram0		17	+mem_data<0>
dram0		18	gnd
dram1		1	+mem_data<1>
dram1		2	-we_l2
dram1		3	-ras12
dram1		4	n/c
dram1		5	+dram_adr2<0>
dram1		6	+dram_adr2<1>
dram1		7	+dram_adr2<2>
dram1		8	+dram_adr2<3>
dram1		9	+5v
dram1		10	+dram_adr2<4>
dram1		11	+dram_adr2<5>
dram1		12	+dram_adr2<6>
dram1		13	+dram_adr2<7>
dram1		14	+dram_adr2<8>
dram1		15	+dram_adr2<9>
dram1		16	-cas2		!dram change was -cas6
dram1		17	+mem_data<1>
dram1		18	gnd
dram2		1	+mem_data<2>
dram2		2	-we_l2
dram2		3	-ras12
dram2		4	n/c
dram2		5	+dram_adr2<0>
dram2		6	+dram_adr2<1>
dram2		7	+dram_adr2<2>
dram2		8	+dram_adr2<3>
dram2		9	+5v
dram2		10	+dram_adr2<4>
dram2		11	+dram_adr2<5>
dram2		12	+dram_adr2<6>
dram2		13	+dram_adr2<7>
dram2		14	+dram_adr2<8>
dram2		15	+dram_adr2<9>
dram2		16	-cas2		!dram change was -cas6
dram2		17	+mem_data<2>
dram2		18	gnd
dram3		1	+mem_data<3>
dram3		2	-we_l2
dram3		3	-ras12
dram3		4	n/c
dram3		5	+dram_adr2<0>
dram3		6	+dram_adr2<1>
dram3		7	+dram_adr2<2>
dram3		8	+dram_adr2<3>
dram3		9	+5v
dram3		10	+dram_adr2<4>
dram3		11	+dram_adr2<5>
dram3		12	+dram_adr2<6>
dram3		13	+dram_adr2<7>
dram3		14	+dram_adr2<8>
dram3		15	+dram_adr2<9>
dram3		16	-cas2		!dram change was -cas6
dram3		17	+mem_data<3>
dram3		18	gnd
dram4		1	+mem_data<4>
dram4		2	-we_l2
dram4		3	-ras12
dram4		4	n/c
dram4		5	+dram_adr2<0>
dram4		6	+dram_adr2<1>
dram4		7	+dram_adr2<2>
dram4		8	+dram_adr2<3>
dram4		9	+5v
dram4		10	+dram_adr2<4>
dram4		11	+dram_adr2<5>
dram4		12	+dram_adr2<6>
dram4		13	+dram_adr2<7>
dram4		14	+dram_adr2<8>
dram4		15	+dram_adr2<9>
dram4		16	-cas2		!dram change was -cas6
dram4		17	+mem_data<4>
dram4		18	gnd
dram5		1	+mem_data<5>
dram5		2	-we_l2
dram5		3	-ras12
dram5		4	n/c
dram5		5	+dram_adr2<0>
dram5		6	+dram_adr2<1>
dram5		7	+dram_adr2<2>
dram5		8	+dram_adr2<3>
dram5		9	+5v
dram5		10	+dram_adr2<4>
dram5		11	+dram_adr2<5>
dram5		12	+dram_adr2<6>
dram5		13	+dram_adr2<7>
dram5		14	+dram_adr2<8>
dram5		15	+dram_adr2<9>
dram5		16	-cas2		!dram change was -cas6
dram5		17	+mem_data<5>
dram5		18	gnd
dram6		1	+mem_data<6>
dram6		2	-we_l2
dram6		3	-ras12
dram6		4	n/c
dram6		5	+dram_adr2<0>
dram6		6	+dram_adr2<1>
dram6		7	+dram_adr2<2>
dram6		8	+dram_adr2<3>
dram6		9	+5v
dram6		10	+dram_adr2<4>
dram6		11	+dram_adr2<5>
dram6		12	+dram_adr2<6>
dram6		13	+dram_adr2<7>
dram6		14	+dram_adr2<8>
dram6		15	+dram_adr2<9>
dram6		16	-cas2		!dram change was -cas6
dram6		17	+mem_data<6>
dram6		18	gnd
dram7		1	+mem_data<7>
dram7		2	-we_l2
dram7		3	-ras12
dram7		4	n/c
dram7		5	+dram_adr2<0>
dram7		6	+dram_adr2<1>
dram7		7	+dram_adr2<2>
dram7		8	+dram_adr2<3>
dram7		9	+5v
dram7		10	+dram_adr2<4>
dram7		11	+dram_adr2<5>
dram7		12	+dram_adr2<6>
dram7		13	+dram_adr2<7>
dram7		14	+dram_adr2<8>
dram7		15	+dram_adr2<9>
dram7		16	-cas2		!dram change was -cas6
dram7		17	+mem_data<7>
dram7		18	gnd
dram8		1	+mem_data<8>
dram8		2	-we_h2
dram8		3	-ras12
dram8		4	n/c
dram8		5	+dram_adr2<0>
dram8		6	+dram_adr2<1>
dram8		7	+dram_adr2<2>
dram8		8	+dram_adr2<3>
dram8		9	+5v
dram8		10	+dram_adr2<4>
dram8		11	+dram_adr2<5>
dram8		12	+dram_adr2<6>
dram8		13	+dram_adr2<7>
dram8		14	+dram_adr2<8>
dram8		15	+dram_adr2<9>
dram8		16	-cas2		!dram change was -cas6
dram8		17	+mem_data<8>
dram8		18	gnd
dram9		1	+mem_data<9>
dram9		2	-we_h2
dram9		3	-ras12
dram9		4	n/c
dram9		5	+dram_adr2<0>
dram9		6	+dram_adr2<1>
dram9		7	+dram_adr2<2>
dram9		8	+dram_adr2<3>
dram9		9	+5v
dram9		10	+dram_adr2<4>
dram9		11	+dram_adr2<5>
dram9		12	+dram_adr2<6>
dram9		13	+dram_adr2<7>
dram9		14	+dram_adr2<8>
dram9		15	+dram_adr2<9>
dram9		16	-cas2		!dram change was -cas6
dram9		17	+mem_data<9>
dram9		18	gnd
dram10		1	+mem_data<10>
dram10		2	-we_h2
dram10		3	-ras12
dram10		4	n/c
dram10		5	+dram_adr2<0>
dram10		6	+dram_adr2<1>
dram10		7	+dram_adr2<2>
dram10		8	+dram_adr2<3>
dram10		9	+5v
dram10		10	+dram_adr2<4>
dram10		11	+dram_adr2<5>
dram10		12	+dram_adr2<6>
dram10		13	+dram_adr2<7>
dram10		14	+dram_adr2<8>
dram10		15	+dram_adr2<9>
dram10		16	-cas2		!dram change was -cas6
dram10		17	+mem_data<10>
dram10		18	gnd
dram11		1	+mem_data<11>
dram11		2	-we_h2
dram11		3	-ras12
dram11		4	n/c
dram11		5	+dram_adr2<0>
dram11		6	+dram_adr2<1>
dram11		7	+dram_adr2<2>
dram11		8	+dram_adr2<3>
dram11		9	+5v
dram11		10	+dram_adr2<4>
dram11		11	+dram_adr2<5>
dram11		12	+dram_adr2<6>
dram11		13	+dram_adr2<7>
dram11		14	+dram_adr2<8>
dram11		15	+dram_adr2<9>
dram11		16	-cas2		!dram change was -cas6
dram11		17	+mem_data<11>
dram11		18	gnd
dram12		1	+mem_data<12>
dram12		2	-we_h2
dram12		3	-ras12
dram12		4	n/c
dram12		5	+dram_adr2<0>
dram12		6	+dram_adr2<1>
dram12		7	+dram_adr2<2>
dram12		8	+dram_adr2<3>
dram12		9	+5v
dram12		10	+dram_adr2<4>
dram12		11	+dram_adr2<5>
dram12		12	+dram_adr2<6>
dram12		13	+dram_adr2<7>
dram12		14	+dram_adr2<8>
dram12		15	+dram_adr2<9>
dram12		16	-cas2		!dram change was -cas6
dram12		17	+mem_data<12>
dram12		18	gnd
dram13		1	+mem_data<13>
dram13		2	-we_h2
dram13		3	-ras12
dram13		4	n/c
dram13		5	+dram_adr2<0>
dram13		6	+dram_adr2<1>
dram13		7	+dram_adr2<2>
dram13		8	+dram_adr2<3>
dram13		9	+5v
dram13		10	+dram_adr2<4>
dram13		11	+dram_adr2<5>
dram13		12	+dram_adr2<6>
dram13		13	+dram_adr2<7>
dram13		14	+dram_adr2<8>
dram13		15	+dram_adr2<9>
dram13		16	-cas2		!dram change was -cas6
dram13		17	+mem_data<13>
dram13		18	gnd
dram14		1	+mem_data<14>
dram14		2	-we_h2
dram14		3	-ras12
dram14		4	n/c
dram14		5	+dram_adr2<0>
dram14		6	+dram_adr2<1>
dram14		7	+dram_adr2<2>
dram14		8	+dram_adr2<3>
dram14		9	+5v
dram14		10	+dram_adr2<4>
dram14		11	+dram_adr2<5>
dram14		12	+dram_adr2<6>
dram14		13	+dram_adr2<7>
dram14		14	+dram_adr2<8>
dram14		15	+dram_adr2<9>
dram14		16	-cas2		!dram change was -cas6
dram14		17	+mem_data<14>
dram14		18	gnd
dram15		1	+mem_data<15>
dram15		2	-we_h2
dram15		3	-ras12
dram15		4	n/c
dram15		5	+dram_adr2<0>
dram15		6	+dram_adr2<1>
dram15		7	+dram_adr2<2>
dram15		8	+dram_adr2<3>
dram15		9	+5v
dram15		10	+dram_adr2<4>
dram15		11	+dram_adr2<5>
dram15		12	+dram_adr2<6>
dram15		13	+dram_adr2<7>
dram15		14	+dram_adr2<8>
dram15		15	+dram_adr2<9>
dram15		16	-cas2		!dram change was -cas6
dram15		17	+mem_data<15>
dram15		18	gnd
fdc		1	-dma_ack0
fdc		2	-rd
fdc		3	-wr
fdc		4	-io_cs_fff4
fdc		5	+adr<1>
fdc		6	+io_data<0>
fdc		7	+io_data<1>
fdc		8	+io_data<2>
fdc		9	+io_data<3>
fdc		10	+io_data<4>
fdc		11	+io_data<5>
fdc		12	+io_data<6>
fdc		13	+io_data<7>
fdc		14	+dma_req0
fdc		15	gnd		!terminal count
fdc		16	+fdb_idx
fdc		17	+fdc_ir
fdc		18	+system_reset
fdc		19	+fdc_clk
fdc		20	n/c		!crystal
fdc		21	gnd
fdc		22	gnd		!retain values on reset
fdc		23	+fdb_rddata
fdc		24	+fdb_ld		!low density
fdc		25	gnd
fdc		26	gnd		!separate connection to plane
fdc		27	+fdb_we
fdc		28	n/c		!mfm if external pll
fdc		29	+motor
fdc		30	+fdb_hdsel
fdc		31	n/c		!drive sel 1
fdc		32	+drv_sel0
fdc		33	+fdb_wrdata
fdc		34	+fdb_trk0
fdc		35	+fdb_wp
fdc		36	+tie_high	!+fdb_rdy
fdc		37	n/c		!+fdb_hld 8" drives only
fdc		38	+fdb_stp
fdc		39	+fdb_dir
fdc		40	+5v
fd_drv1		1	+drv_sel0
fd_drv1		2	+drv_sel0
fd_drv1		3	-fdb_ds1
fd_drv1		4	-drv_sel0
fd_drv1		5	-drv_sel0
fd_drv1		6	-fdb_ds0
fd_drv1		7	gnd
fd_drv1		8	-fdb_motor0
fd_drv1		9	+motor
fd_drv1		10	-drv_sel0
fd_drv1		11	-fdb_motor1
fd_drv1		12	+motor
fd_drv1		13	+drv_sel0
fd_drv1		14	+5v
fd_drv2		1	+fdb_dir
fd_drv2		2	-fdb_dir
fd_drv2		3	+fdb_stp
fd_drv2		4	-fdb_stp
fd_drv2		5	+fdb_hdsel
fd_drv2		6	-fdb_hdsel
fd_drv2		7	gnd
fd_drv2		8	-fdb_we
fd_drv2		9	+fdb_we
fd_drv2		10	-fdb_wrdata
fd_drv2		11	+fdb_wrdata
fd_drv2		12	-fdb_ld
fd_drv2		13	+fdb_ld
fd_drv2		14	+5v
fd_rcv		1	+drv_sel0
fd_rcv		2	-drv_sel0
fd_rcv		3	gnd
fd_rcv		4	n/c
fd_rcv		5	-fdb_rddata
fd_rcv		6	+fdb_rddata
fd_rcv		7	gnd
fd_rcv		8	+fdb_idx
fd_rcv		9	-fdb_idx
fd_rcv		10	+fdb_wp
fd_rcv		11	-fdb_wp
fd_rcv		12	+fdb_trk0
fd_rcv		13	-fdb_trk0
fd_rcv		14	+5v
fd_osc		1	n/c
fd_osc		7	gnd
fd_osc		8	+fdc_clk
fd_osc		14	+5v
fd_conn		1	gnd
fd_conn		2	-fdb_ld
fd_conn		3	gnd
fd_conn		4	n/c		!not used
fd_conn		5	gnd
fd_conn		6	n/c		!not used
fd_conn		7	gnd
fd_conn		8	-fdb_idx
fd_conn		9	gnd
fd_conn		10	-fdb_motor0
fd_conn		11	gnd
fd_conn		12	-fdb_ds1
fd_conn		13	gnd
fd_conn		14	-fdb_ds0
fd_conn		15	gnd
fd_conn		16	-fdb_motor1
fd_conn		17	gnd
fd_conn		18	-fdb_dir
fd_conn		19	gnd
fd_conn		20	-fdb_stp	!low=toward spindle
fd_conn		21	gnd
fd_conn		22	-fdb_wrdata
fd_conn		23	gnd
fd_conn		24	-fdb_we
fd_conn		25	gnd
fd_conn		26	-fdb_trk0
fd_conn		27	gnd
fd_conn		28	-fdb_wp
fd_conn		29	gnd
fd_conn		30	-fdb_rddata
fd_conn		31	gnd
fd_conn		32	-fdb_hdsel	!low=head1, hi=head0
fd_conn		33	gnd
fd_conn		34	n/c		!door open
fd_pullup	1	+5v
fd_pullup	2	+fdc_clk	!fake MOS level
fd_pullup	3	-fdb_ld
fd_pullup	4	-fdb_trk0
fd_pullup	5	-fdb_wp
fd_pullup	6	-fdb_idx
fd_pullup	7	-fdb_rddata
fd_pullup	8	n/c
@EOF

chmod 644 netlist

echo x - partlist
cat >partlist <<'@EOF'
cpu		ns32016
bbg_cap1	capacitor	!1000 pf disc ceramic
bbg_cap2	capacitor	!1mf tantalum +=pin2
mmu		ns32082
fpu		ns32081
icu		ns32202
tcu		ns32201
rst_sw		switch		!spst normally open
rst_cap		capacitor	!10uf
rst_diode	diode		!anode = pin2
rst_res		resistor	!10k
tcu_osc		oscillator	!14 pin 16MHz or 20MHz
ph1_cap		capacitor	!25pf
ph2_cap		capacitor	!25pf
eprom_e		27256
eprom_o		27256
sram_e		43256
sram_o		43256
mem_data_xcv_e	74f245
mem_data_xcv_o	74f245
io_data_xcv_e	74als245	!less load than 74f245
io_data_xcv_o	74als245	!this part can be deleted with current I/O
adr_latch_l	74als373	!if available use 74als573
adr_latch_m	74als373	!if available use 74als573
adr_buf_h	74als244	!if available use 74als541
uart1		ns16450
uart2		ns16450
uart_xtal	crystal		!1.8433MHz
uart_s_res	resister	!1.5k
uart_p_res	resister	!1meg
uart_cap1	capacitor	!30pf
uart_cap2	capacitor	!60pf
rs232_rcv	1489
rs232_drv	1488
io_decode1	74als133
dma_decode	74als133
io_decode2	74als138
or_1		74als32
invert_1	74als04
3st_buf1	74ls126
memcspal	memcspal	!PAL16L8
nmipal		nmipal		!PAL16R8
nmi_sw		switch		!momentary spdt 1=up 2=common 3=down
sw_header	dip_header	!14 pin header for mounting discreet parts
uart_header	dip_header	!16 pin header for mounting uart osc parts
or_2		74ALS32
scsi_ctl	NCR5380		!NCR SCSI controller
sc_pullup1	resisters	!9x220 ohm resister SIP
sc_pullup2	resisters	!9x220 ohm resister SIP
sc_pulldown1	resisters	!9x330 ohm resister SIP
sc_pulldown2	resisters	!9x330 ohm resister SIP
sc_conn		connector	!50 pin for ribbon cable
sc_diode	diode		!safety diode for SCSI termination supply
dma_ctl		ns32203
dramc		DP8419
dramc_cap1	capacitor	!1uf ceramic
dramc_cap2	capacitor	!tantilum
dram_delay0	DDU-7-20	!20ns delay line
dram_delay1	DDU-7-20	!20ns delay line use if needed
rfshpal		pal16r8		!refresh counter
dramcpal	pal16r6		!fast pal, dramc interface
dram_mux	74as157
dram_drv	74as244
dram_term1	resister_pack	!8 resisters 50ohm
dram_term2	resister_pack	!8 resisters 50ohm
dram_term3	resister_pack	!8 resisters 50ohm
dram0		TC51100P-10	!megabit dram
dram1		TC51100P-10
dram2		TC51100P-10
dram3		TC51100P-10
dram4		TC51100P-10
dram5		TC51100P-10
dram6		TC51100P-10
dram7		TC51100P-10
dram8		TC51100P-10
dram9		TC51100P-10
dram10		TC51100P-10
dram11		TC51100P-10
dram12		TC51100P-10
dram13		TC51100P-10
dram14		TC51100P-10
dram15		TC51100P-10
fdc		82072		!Intel
fd_drv1		74ls38
fd_drv2		7406
fd_rcv		74ls14
fd_osc		oscillator	!24MHz with 2.2K pullup for CMOS levels
fd_conn		connector	!34 pin ribbon
fd_pullup	resister_pack	!300-2.2K 15 resister common rail
@EOF

chmod 644 partlist

echo x - dramcpal
cat >dramcpal <<'@EOF'
PAL16R6
BRUCE CULBERTSON  23 APRIL 1988
INTERFACE CONTROL PAL FOR USE WITH 8419 DRAM CONTROLLER.  DESIGN SAME AS
NSC DP84412.
FCLK	/TSO	RFIO	/ADS	/DDIN	/WAITWR	CTTL	/CS	/WAITRD	GND
/OE	/CWAIT	/4DLY	/3DLY	/2DLY	/MODE	/RASIN	/CYCLED	/INCY	VCC

RASIN :=	INCY*/CYCLED*/MODE*/CTTL*DDIN +
		INCY*/MODE*2DLY*/WAITWR +
		/CS*INCY*/MODE*2DLY +
		CS*INCY*/MODE*2DLY*WAITWR*/CTTL +
		RASIN*INCY*/MODE*2DLY

CYCLED :=	/MODE*2DLY*/WAITWR*/DDIN*/CTTL +
		/MODE*2DLY*/WAITRD*DDIN*/CTTL +
		/MODE*2DLY*/4DLY*WAITRD*DDIN*/CTTL +
		/MODE*2DLY*/4DLY*WAITWR*/DDIN*/CTTL +
		CYCLED*TSO*/MODE +
		CYCLED*/MODE*CTTL

MODE :=		/RFIO*/INCY*/2DLY*/CTTL +
		MODE*/3DLY +
		MODE*/4DLY +
		MODE*CTTL

2DLY :=		MODE*/4DLY*/CTTL +
		2DLY*CTTL +
		INCY*/CYCLED*/MODE*/3DLY*4DLY*/CTTL +
		CS*DDIN*WAITRD*INCY*/MODE*2DLY*/3DLY*/4DLY +
		CS*/DDIN*WAITWR*INCY*/MODE*2DLY*/3DLY*4DLY

3DLY :=		2DLY*/4DLY*/CTTL +
		3DLY*CTTL

4DLY :=		3DLY*/CTTL +
		4DLY*CTTL +
		/INCY*/MODE*/CTTL +
		INCY*/MODE*/2DLY*/CTTL

IF (VCC) INCY = ADS*/MODE +
		CS*TSO*/CYCLED*/MODE*/2DLY*4DLY +
		INCY*/CYCLED +
		INCY*2DLY

IF (CS) CWAIT = CS*TSO*/CYCLED*/MODE*/2DLY*4DLY +
		CS*TSO*MODE +
		CS*INCY*/CYCLED*DDIN*WAITRD*/MODE*2DLY*/3DLY*4DLY +
		CS*INCY*/CYCLED*/DDIN*WAITWR*/MODE*2DLY*/3DLY*4DLY
@EOF

chmod 644 dramcpal

echo x - memcspal
cat >memcspal <<'@EOF'
PAL16L8 PAL DESIGN SPECIFICATION
BRUCE CULBERTSON   4 OCT 1987
MEMORY CHIP SELECT PAL FOR NS32000 COMPUTER

A15	A16	A17	A18	A19	A20	A21	A22	A23	GND
SWAP	/PROM	PROMA15	/SRAM	/DRAM	NC	NC	NC	NC	VCC

             ; PROM CHIP SELECT: 0-7FFF AND 18000-1FFFF
PROM       = /A23 * /A22 * /A21 * /A20 * /A19 * /A18 * /A17 * /A16 * /A15 +
             /A23 * /A22 * /A21 * /A20 * /A19 * /A18 * /A17 * A16 * A15

             ; PROM MOST SIGNIFICANT ADDRESS BIT: A15 XOR SWAP
/PROMA15   = SWAP * A15 +
             /SWAP * /A15

             ; SRAM CHIP SELECT: 8000-17FFF
SRAM       = /A23 * /A22 * /A21 * /A20 * /A19 * /A18 * /A17 * /A16 * A15 +
             /A23 * /A22 * /A21 * /A20 * /A19 * /A18 * /A17 * A16 * /A15

	     ; DRAM CHIP SELECT
	     ; MEGABYTE 0 MINUS EPROM AND SRAM AREA
	     ; MEGABYTE 1-7
DRAM       = /A23 * /A22 * /A21 * /A20 * A19 +
             /A23 * /A22 * /A21 * /A20 * A18 +
             /A23 * /A22 * /A21 * /A20 * A17 +
             /A23 * /A22 * /A21 * A20 +
             /A23 * A21 +
             /A23 * A22

@EOF

chmod 444 memcspal

echo x - nmipal
cat >nmipal <<'@EOF'
PAL16R8
BRUCE CULBERTSON   4 OCT 1987
PAL TO GENERATE ONE CYCLE NMI PULSE WHEN SWITCH IS PRESSED.  IS THIS REALLY
NECESSARY?  DATA SHEET IS AMBIGUOUS: IS NMI LEVEL OR EDGE SENSITIVE?
CLK	/UP	/DOWN	/TSO	NC	NC	NC	NC	NC	GND
/OE	/NMI	/DUMMY	/DELTSO	NC	NC	NC	NC	NC	VCC

           ; ON IF SWITCH PRESSED, NOT ALREADY ON, AND DUMMY NOT ON
NMI	:= DOWN * /NMI * /DUMMY

DUMMY	:= NMI +              ; GOES ON ONE CYCLE AFTER NMI
           DUMMY * /UP        ; IF ON, STAYS ON UNTIL SWITCH OPEN

           ; DELTA TSO (DELAYED ONE CLOCK)
DELTSO  := TSO
@EOF

chmod 444 nmipal

echo x - rfshpal
cat >rfshpal <<'@EOF'
PAL16R8
BRUCE CULBERTSON   23 APRIL 1988
DOWN COUNTER, COUNTS 0 154 153...1 0 154... ETC.  USE MOST SIGNIFICANT BIT
(/Q7) AS REFRESH CLOCK FOR 8419 DRAM CONTROLLER.
CLK	NC	NC	NC	NC	NC	NC	NC	NC	GND
/OE	/Q0	/Q1	/Q2	/Q3	/Q4	/Q5	/Q6	/Q7	VCC


Q0	:= Q7*/Q0 +				;TURN ON
	   Q6*/Q0 +
	   Q5*/Q0 +
	   Q4*/Q0 +
	   Q3*/Q0 +
	   Q2*/Q0 +
	   Q1*/Q0

Q1	:= /Q0*/Q1*/Q2*/Q3*/Q4*/Q5*/Q6*/Q7 +	;INIT
	   Q7*/Q1*/Q0 +				;TURN ON
	   Q6*/Q1*/Q0 +
	   Q5*/Q1*/Q0 +
	   Q4*/Q1*/Q0 +
	   Q3*/Q1*/Q0 +
	   Q2*/Q1*/Q0 +
	   Q1*Q0				;STAY ON

Q2	:= Q7*/Q2*/Q1*/Q0 +			;TURN ON
	   Q6*/Q2*/Q1*/Q0 +
	   Q5*/Q2*/Q1*/Q0 +
	   Q4*/Q2*/Q1*/Q0 +
	   Q3*/Q2*/Q1*/Q0 +
	   Q2*Q1 +				;STAY ON
	   Q2*Q0

Q3	:= /Q0*/Q1*/Q2*/Q3*/Q4*/Q5*/Q6*/Q7 +	;INIT
	   Q7*/Q3*/Q2*/Q1*/Q0 +			;TURN ON
	   Q6*/Q3*/Q2*/Q1*/Q0 +
	   Q5*/Q3*/Q2*/Q1*/Q0 +
	   Q4*/Q3*/Q2*/Q1*/Q0 +
	   Q3*Q2 +			 	;STAY ON
	   Q3*Q1 +
	   Q3*Q0

Q4	:= /Q0*/Q1*/Q2*/Q3*/Q4*/Q5*/Q6*/Q7 +	;INIT
	   Q7*/Q4*/Q3*/Q2*/Q1*/Q0 +		;TURN ON
	   Q6*/Q4*/Q3*/Q2*/Q1*/Q0 +
	   Q5*/Q4*/Q3*/Q2*/Q1*/Q0 +
	   Q4*Q3 +				;STAY ON
	   Q4*Q2 +
	   Q4*Q1 +
	   Q4*Q0

Q5	:= Q7*/Q5*/Q4*/Q3*/Q2*/Q1*/Q0 +		;TURN ON
	   Q6*/Q5*/Q4*/Q3*/Q2*/Q1*/Q0 +
	   Q5*Q4 +				;STAY ON
	   Q5*Q3 +
	   Q5*Q2 +
	   Q5*Q1 +
	   Q5*Q0

Q6	:= Q7*/Q6*/Q5*/Q4*/Q3*/Q2*/Q1*/Q0 +	;TURN ON
	   Q6*Q5 +				;STAY ON
	   Q6*Q4 +
	   Q6*Q3 +
	   Q6*Q2 +
	   Q6*Q1 +
	   Q6*Q0

Q7	:= /Q0*/Q1*/Q2*/Q3*/Q4*/Q5*/Q6*/Q7 +	;INIT
	   Q7*Q6 +				;STAY ON
	   Q7*Q5 +
	   Q7*Q4 +
	   Q7*Q3 +
	   Q7*Q2 +
	   Q7*Q1 +
	   Q7*Q0
@EOF

chmod 644 rfshpal

exit 0