File LIFE.PA (PAL assembler source file)

Directory of image this file is from
This file as a plain text file

/LIFE/
MQL=7421
MQA=7501
F0=00
F1=10
 FIELD 0
F0AIR0=10
F0AIR1=11
OLDPTS=1600
NEWPTS=3600
OLDNUM=1000
NEWNUM=2000
*0020
CTR0, 0
PTRA0, 0
MASKA0, 0
PTRB0, 0
MASKB0, 0
PTRC0, 0
MASKC0, 0
NCNT, 0
*0200
LIFEXX, CLA CLL
GXCLR, TAD (GXBUF-20-1)
 DCA F0AIR0
 TAD (-6240)
 DCA CTR0
 CDF F1
GXCLR1, DCA I F0AIR0
 ISZ CTR0
 JMP GXCLR1
 CDF F0
OLDCLR, DCA I (OLDPTS)
GXDIS, TAD (GXBUF)
 6150
 NOP 
 NOP
 TAD (F1+0002)
 6151
DONEXT, JMS I (NEXGEN)
 KSF 100
 JMP NOINT
 6152
 CDF CIF 10
 JMP I (401)
NOINT, DCA CTR0
DELAY, 6156
 JMP .-1
 ISZ CTR0
 LAS
 CIA
 TAD CTR0
 SPA CLA
 JMP DELAY
 JMP DONEXT
*0260  /CALLED FROM GEDIT/
 CLA IAC
 MQL
 TAD I (7746)
 MQA
 DCA I (7746)
 CIF 10
 JMS I (7700)
 10
 CIF 10
 JMS I (200)
 1
DEVNUM, DEVICE DTA0
 OLDPTS+1
 JMP CHERR1
 TAD DEVNUM+1
 CIF 10
 JMS I (200)
 2
BLKNUM, CHNAME
 0
 JMP CHERR2
 TAD BLKNUM
 DCA BLKN2
 CIF 10
 JMS I (200)
 6
BLKN2,0
CHNAME, FILENAME ROTATR.SV
CHERR1, CIF 10
 JMS I (200)
 7
 3
CHERR2, CIF 10
 JMS I (200)
 7
 4
*0400
NEXGEN, 0
 CDF CIF F1
 JMP I (ERSOLD)
COMNEW, TAD (NEWPTS-1)
 DCA F0AIR0
 TAD (OLDPTS-1)
 DCA F0AIR1
 TAD (-NEWNUM)
 DCA CTR0
COMNL1, TAD I F0AIR1
 SNA
 JMP COMDUN
 DCA PTRA0
 TAD I F0AIR1
 DCA MASKA0
 CDF F1
 TAD PTRA0
 DCA PTRB0
 TAD MASKA0
 DCA MASKB0
 JMS I (COUNEI)
 TAD (-3)
 SNA
 JMP SURVIV
 IAC
 SZA CLA
 JMP NEIGHS
SURVIV, ISZ CTR0
 JMP ENUFA0
 CLA CLL CMA RAL  /7776/
 HLT
 CLA
 JMP TRUNC0
ENUFA0, CDF F0
 TAD PTRA0
 DCA I F0AIR0
 TAD MASKA0
 DCA I F0AIR0
 CDF F1
NEIGHS, JMS SHLAB
 JMS CHKBIR
 TAD PTRB0
 TAD (-20)
 DCA PTRB0
 JMS CHKBIR
 TAD PTRB0
 TAD (40)
 DCA PTRB0
 JMS CHKBIR
 JMS SHRAB
 JMS CHKBIR
 TAD PTRB0
 TAD (-20)
 DCA PTRB0
 JMS CHKBIR
 TAD PTRB0
 TAD (40)
 DCA PTRB0
 JMS CHKBIR
 CDF F0
 JMP COMNL1
TRUNC0, CDF F0
COMDUN, DCA I F0AIR0
 JMP I NEXGEN
CHKBIR, 0
 TAD MASKB0
 AND I PTRB0
 SZA CLA
 JMP I CHKBIR
 JMS I (COUNEI)
 TAD (-3)
 SZA CLA
 JMP I CHKBIR
 ISZ CTR0
 JMP ENUFB0
 CLA CLL CMA RTL  /7775/
 HLT
 CLA
 JMP TRUNC0
ENUFB0, CDF F0
 TAD PTRB0
 DCA I F0AIR0
 TAD MASKB0
 DCA I F0AIR0
 CDF F1
 JMP I CHKBIR
SHLAB, 0
 TAD MASKA0
 CLL RAL
 DCA MASKB0
 SNL
 JMP SHLABX
 CLA CLL CML RAL  /0001/
 DCA MASKB0
 CLA CLL CMA  /-1/
SHLABX, TAD PTRA0
 DCA PTRB0
 JMP I SHLAB
SHRAB, 0
 TAD MASKA0
 CLL RAR
 DCA MASKB0
 SNL
 JMP SHRABX
 CLA CLL CML RAR  /4000/
 DCA MASKB0
 CLA CLL IAC  /+1/
SHRABX, TAD PTRA0
 DCA PTRB0
 JMP I SHRAB

 PAGE

COUNEI, 0
 DCA NCNT
 TAD PTRB0
 TAD (-20)
 DCA PTRC0
 TAD MASKB0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 TAD PTRC0
 TAD (40)
 DCA PTRC0
 TAD MASKB0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 JMS SHLBC
 TAD MASKC0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 TAD PTRC0
 TAD (-20)
 DCA PTRC0
 TAD MASKC0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 TAD PTRC0
 TAD (40)
 DCA PTRC0
 TAD MASKC0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 JMS SHRBC
 TAD MASKC0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 TAD PTRC0
 TAD (-20)
 DCA PTRC0
 TAD MASKC0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 TAD PTRC0
 TAD (40)
 DCA PTRC0
 TAD MASKC0
 AND I PTRC0
 SZA CLA
 ISZ NCNT
 TAD NCNT
 JMP I COUNEI
SHLBC, 0
 TAD MASKB0
 CLL RAL
 DCA MASKC0
 SNL
 JMP SHLBCX
 CLA CLL CML RAL  /0001/
 DCA MASKC0
 CLA CLL CMA  /-1/
SHLBCX, TAD PTRB0
 DCA PTRC0
 JMP I SHLBC
SHRBC, 0
 TAD MASKB0
 CLL RAR
 DCA MASKC0
 SNL
 JMP SHRBCX
 CLA CLL CML RAR  /4000/
 DCA MASKC0
 CLA CLL IAC  /+1/
SHRBCX, TAD PTRB0
 DCA PTRC0
 JMP I SHRBC

 FIELD 1

F1AIR0=10
F1AIR1=11
GXBUF=1360
*0020
PTR1, 0
CTR1, 0
*0200
ERSOLD, TAD (OLDPTS-1)
 DCA F1AIR0
ERSOLP, CDF F0
 TAD I F1AIR0
 SNA
 JMP ERSDUN
 DCA PTR1
 TAD I F1AIR0
 CMA
 CDF F1
 AND I PTR1
 DCA I PTR1
 JMP ERSOLP
ERSDUN, CDF F1
PLTBOR, TAD (GXBUF+17)
 DCA PTR1
 TAD (-310)
 DCA CTR1
 TAD (0007)
 MQL
PLTBL1, TAD I PTR1
 MQA
 DCA I PTR1
 TAD PTR1
 TAD (0020)
 DCA PTR1
 ISZ CTR1
 JMP PLTBL1
 TAD (GXBUF-20-1)
 DCA F1AIR0
 TAD (GXBUF+6200-1)
 DCA F1AIR1
 TAD (-20)
 DCA CTR1
PLTBL2, CLA CMA
 DCA I F1AIR0
 CLA CMA
 DCA I F1AIR1
 ISZ CTR1
 JMP PLTBL2
PLTNEW, TAD (NEWPTS-1)
 DCA F1AIR0
 TAD (OLDPTS-1)
 DCA F1AIR1
 TAD (-OLDNUM)
 DCA CTR1
PLTNLA, CDF F0
PLTNLB, TAD I F1AIR0
 SNA
 JMP PLTDUN
 DCA PTR1
 TAD I F1AIR0
 MQL
 CDF F1
 MQA
 AND I PTR1
 SZA CLA
 JMP PLTNLA
 ISZ CTR1
 JMP ENUF1
 CLA CLL CMA  /7777/
 HLT
 CLA
 JMP TRUNC1
ENUF1, TAD I PTR1
 MQA
 DCA I PTR1
 CDF F0
 TAD PTR1
 DCA I F1AIR1
 MQA
 DCA I F1AIR1
 JMP PLTNLB
TRUNC1, CDF F0
PLTDUN, DCA I F1AIR1
 CDF F1
ERSBOR, TAD (GXBUF+17)
 DCA PTR1
 TAD (-310)
 DCA CTR1
 TAD (7770)
 MQL
ERSBL1, MQA
 AND I PTR1
 DCA I PTR1
 TAD PTR1
 TAD (0020)
 DCA PTR1
 ISZ CTR1
 JMP ERSBL1
 TAD (GXBUF-20-1)
 DCA F1AIR0
 TAD (GXBUF+6200-1)
 DCA F1AIR1
 TAD (-20)
 DCA CTR1
ERSBL2, DCA I F1AIR0
 DCA I F1AIR1
 ISZ CTR1
 JMP ERSBL2
 CDF CIF F0
 JMP I (COMNEW)
$



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search