1
0
mirror of https://github.com/aap/pdp6.git synced 2026-01-14 15:46:27 +00:00
aap.pdp6/code/main.s
2016-11-08 00:09:55 +01:00

79 lines
812 B
ArmAsm

AC0==0
AC1==1
AC2==2
PDP==17
CPA==0
PRS==4
PTP==100
EXTERNAL PUTC,PUTS
EXTERNAL GETCH,GETC
ENTRY: JRST START
PDL: BLOCK 100
SP: XWD -100,PDL-1
START: MOVE PDP,SP
UUO1 123
CONO CPA,2001
CONO PRS,2300
JRST .
MOVSI AC2,440700
HRRI AC2,MSG
PUSHJ PDP,PUTS
PUSHJ PDP,GETC
; CONO PTP,20
PUSHJ PDP,PTPUT
JRST .-2
HALT
PTPUT: CONSZ PTP,20
JRST .-1
DATAO PTP,AC1
POPJ PDP,
MSG: ASCIZ /Hello, world!
yo! > /
; UUO HANDLER
UUO: 0
MOVSI AC2,440700
HRRI AC2,UUOMSG
PUSHJ PDP,PUTS
JRSTF @UUO
UUOMSG: ASCIZ /(UUO)/
CLK: ^D60
; CHANNEL 1 HANDLER
CH1: 0
SOSLE CLK
JRST CH1X
MOVEI AC2,^D60
MOVEM AC2,CLK
MOVSI AC2,440700
HRRI AC2,CH1MSG
PUSHJ PDP,PUTS
CH1X: CONO CPA,1001
JEN @CH1
CH1MSG: ASCIZ /*TICK*/
; UUO AND PI VECTORS
LOC 40
LOC40: 0
JSR UUO
JSR CH1
HALT 1
RELOC
END ENTRY