ack/mach/pdp/libem/trp.s

98 lines
1.6 KiB
ArmAsm
Raw Normal View History

1987-05-15 09:11:10 +00:00
.sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.sect .text
.define trp~,fat~
.extern trppc~,trpim~,savearea,retar
! $Header$
1984-07-19 12:51:00 +00:00
fat~:
jsr pc,trp~
1991-09-03 16:03:33 +00:00
jsr __exit
1984-07-19 12:51:00 +00:00
trp~:
mov r0,-(sp)
mov 04(sp),r0
mov 02(sp),04(sp)
mov (sp),02(sp)
mov r1,(sp)
1987-05-15 09:11:10 +00:00
cmp r0,$020
1984-07-19 12:51:00 +00:00
jhis 0f
mov $01,r1
ashc r0,r1
bit r1,trpim~
bne 8f
0: mov r2,-(sp)
mov r3,-(sp)
mov r4,-(sp)
movf r0,-(sp)
movf r1,-(sp)
movf r2,-(sp)
movf r3,-(sp)
stfps -(sp)
mov $savearea,r2
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov $retar,r2
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
mov (r2)+,-(sp)
1984-07-19 12:51:00 +00:00
mov r0,-(sp)
mov trppc~,r0
beq 9f
clr trppc~
jsr pc,(r0)
tst (sp)+
1987-05-15 09:11:10 +00:00
mov $retar+020,r2
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
1987-05-15 09:11:10 +00:00
mov $savearea+014,r2
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
mov (sp)+,-(r2)
1984-07-19 12:51:00 +00:00
ldfps (sp)+
movf (sp)+,r3
movf (sp)+,r2
movf (sp)+,r1
movf (sp)+,r0
mov (sp)+,r4
mov (sp)+,r3
mov (sp)+,r2
8: mov (sp)+,r1
mov (sp)+,r0
rts pc
9: mov (sp)+,r0
1987-05-15 09:11:10 +00:00
mov $buf+011,r1
1984-07-19 12:51:00 +00:00
mov $4,r2
1: mov r0,r3
1987-05-15 09:11:10 +00:00
bic $0177770,r3
1984-07-19 12:51:00 +00:00
bisb r3,-(r1)
ash $-3,r0
sob r2,1b
1991-09-03 16:03:33 +00:00
mov $013,-(sp)
mov $buf,-(sp)
mov $2,-(sp)
jsr __write
add $6,sp
jsr __exit
1987-05-15 09:11:10 +00:00
.sect .data
retar: .space 16
retend:
1987-05-15 09:11:10 +00:00
buf: .ascii "err 00000\n"