mirror of
https://github.com/PDP-10/PCC20.git
synced 2026-01-13 23:26:39 +00:00
145 lines
3.6 KiB
Plaintext
145 lines
3.6 KiB
Plaintext
TITLE pr60th
|
||
RADIX 10.
|
||
.INSRT <C>NC
|
||
|
||
.CODE
|
||
ENTRY Zpr60t
|
||
ENTRY Zxput2
|
||
EXTERN Zcprin
|
||
EXTERN Zcputc
|
||
.CODE
|
||
.PDATA
|
||
S0: 37
|
||
51
|
||
100
|
||
58
|
||
0
|
||
S5: 32
|
||
32
|
||
32
|
||
32
|
||
0
|
||
.CODE
|
||
|
||
%A==2
|
||
%A,,[ASCIZ/pr60th/]
|
||
Zpr60t: ADDI P,FS1
|
||
|
||
; LINE 16
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P) ; get the first argument
|
||
JUMPGE A,L5000
|
||
MOVN A,<0-FS1-%A-%P>(P)
|
||
MOVEM A,<0-FS1-%A-%P>(P)
|
||
L5000:
|
||
|
||
; LINE 17
|
||
|
||
MOVEI A,1
|
||
MOVEM A,<5-FS1-%P>(P)
|
||
|
||
; LINE 18
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P)
|
||
IDIVI A,60
|
||
MOVEM B,<1-FS1-%P>(P)
|
||
|
||
; LINE 19
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P)
|
||
IDIVI A,60
|
||
MOVEM A,<0-FS1-%A-%P>(P)
|
||
|
||
; LINE 20
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P)
|
||
IDIVI A,60
|
||
MOVEM B,<2-FS1-%P>(P)
|
||
|
||
; LINE 21
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P)
|
||
IDIVI A,60
|
||
MOVEM A,<0-FS1-%A-%P>(P)
|
||
|
||
; LINE 22
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P)
|
||
IDIVI A,60
|
||
MOVEM B,<3-FS1-%P>(P)
|
||
|
||
; LINE 23
|
||
|
||
MOVE A,<0-FS1-%A-%P>(P)
|
||
IDIVI A,60
|
||
MOVEM A,<4-FS1-%P>(P)
|
||
|
||
; LINE 24
|
||
|
||
MOVE A,<4-FS1-%P>(P)
|
||
JUMPE A,L5001
|
||
|
||
; LINE 25
|
||
|
||
PPUSH <1-FS1-%A-%P>(P) ; push second arg
|
||
MOVEI A,S0
|
||
PPUSH A ; push string constant
|
||
PPUSH <4-FS1-%P>(P) ; push local (on stack) variable
|
||
CCALL 3,Zcprin ; and call the cprint routine
|
||
|
||
; LINE 26
|
||
|
||
MOVEI A,0
|
||
MOVEM A,<5-FS1-%P>(P)
|
||
GO L5002
|
||
L5001:
|
||
|
||
; LINE 28
|
||
|
||
PPUSH <1-FS1-%A-%P>(P)
|
||
MOVEI A,S5
|
||
PPUSH A
|
||
CCALL 2,Zcprin
|
||
L5002:
|
||
|
||
; LINE 29
|
||
|
||
PPUSH <3-FS1-%P>(P)
|
||
PPUSH <1-FS1-%A-%P>(P)
|
||
PPUSH <5-FS1-%P>(P)
|
||
CCALL 3,Zxput2
|
||
|
||
; LINE 30
|
||
|
||
MOVE A,<5-FS1-%P>(P)
|
||
JUMPE A,L5003
|
||
MOVE A,<3-FS1-%P>(P)
|
||
JUMPN A,L5003
|
||
PPUSH [32]
|
||
PPUSH <1-FS1-%A-%P>(P)
|
||
CCALL 2,Zcputc
|
||
GO L5004
|
||
L5003:
|
||
|
||
; LINE 32
|
||
|
||
PPUSH [58]
|
||
PPUSH <1-FS1-%A-%P>(P)
|
||
CCALL 2,Zcputc
|
||
|
||
; LINE 33
|
||
|
||
MOVEI A,0
|
||
MOVEM A,<5-FS1-%P>(P)
|
||
L5004:
|
||
|
||
; LINE 35
|
||
|
||
MOVE A,<5-FS1-%P>(P)
|
||
JUMPE A,L5005
|
||
MOVE A,<2-FS1-%P>(P)
|
||
JUMPN A,L5005
|
||
|
||
; LINE 36
|
||
|
||
PPú©ÈmLe:%!!+' xb[&bZKð–¥ ù! R%ö²YkîakiF4vô¦I<C2A6> |