converted to ACK assembler format

This commit is contained in:
ceriel 1987-05-15 09:11:10 +00:00
parent 7abf78f452
commit 04dc83c149
74 changed files with 560 additions and 491 deletions

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.globl PRr2,PR2r2,PR4r2,PR6r2 .define PRr2,PR2r2,PR4r2,PR6r2
.globl PRr2r4,PR2r2r4,PR4r2r4,PR6r2r4 .define PRr2r4,PR2r2r4,PR4r2r4,PR6r2r4
.globl RT,RTr2,RTr2r4 .define RT,RTr2,RTr2r4
! $Header$
PR6r2: mov $6,r0;br PRr2 PR6r2: mov $6,r0;br PRr2
PR4r2: mov $4,r0;br PRr2 PR4r2: mov $4,r0;br PRr2

View file

@ -1,10 +1,11 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl aar~ .define aar~
! $Header$
/r0 : descriptor address !r0 : descriptor address
/r1 : element number !r1 : element number
/base address is on stack !base address is on stack
aar~: aar~:
sub (r0),r1 sub (r0),r1
mul 04(r0),r1 mul 04(r0),r1

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl adf~ .define adf~
.globl setfloat~ .extern setfloat~
! $Header$
/size in r0 !size in r0
adf~: adf~:
mov (sp)+,r1 mov (sp)+,r1
jsr pc,setfloat~ jsr pc,setfloat~

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl adi~ .define adi~
.globl unknown~ .extern unknown~
! $Header$
/size in r0 !size in r0
adi~: adi~:
mov (sp)+,r1 mov (sp)+,r1
cmp r0,$04 cmp r0,$04

View file

@ -1,8 +1,9 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl and~ .define and~
! $Header$
/ size in r0 ! size in r0
and~: and~:
mov (sp)+,r3 mov (sp)+,r3
mov sp,r1 mov sp,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cff~ .define cff~
.globl setfloat~ .extern setfloat~
! $Header$
cff~: cff~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cfi~ .define cfi~
.globl setfloat~,setint~ .extern setfloat~,setint~
! $Header$
cfi~: cfi~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cif~,cuf~ .define cif~,cuf~
.globl setint~,setfloat~ .extern setint~,setfloat~
! $Header$
cif~: cif~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cii~ .define cii~
! $Header$
/convert int to int !convert int to int
/ 1 byte -> ? : sign extension ! 1 byte -> ? : sign extension
cii~: cii~:
mov (sp)+,r3 mov (sp)+,r3
mov (sp)+,r0 mov (sp)+,r0
@ -18,5 +19,5 @@ cii~:
tst (sp) tst (sp)
4: sxt -(sp) 4: sxt -(sp)
sob r0,4b sob r0,4b
1: sub r0,sp / if out of sob loop r0==0 1: sub r0,sp ! if out of sob loop r0==0
3: jmp (r3) 3: jmp (r3)

View file

@ -1,6 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cuu~ .define cuu~
! $Header$
cuu~: cuu~:
mov (sp)+,r1 mov (sp)+,r1
mov (sp)+,r0 mov (sp)+,r0
@ -9,5 +11,5 @@ cuu~:
asr r0 asr r0
2: clr -(sp) 2: clr -(sp)
sob r0,2b sob r0,2b
1: sub r0,sp / if out of sob loop r0==0 1: sub r0,sp ! if out of sob loop r0==0
jmp (r1) jmp (r1)

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cmf~ .define cmf~
.globl setfloat~ .extern setfloat~
! $Header$
cmf~: cmf~:
jsr pc,setfloat~ jsr pc,setfloat~

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cmi~ .define cmi~
.globl cmi4~,unknown~ .extern cmi4~,unknown~
! $Header$
/ Size in r0 ! Size in r0
cmi~: cmi~:
cmp r0,$02 cmp r0,$02
bne 1f bne 1f

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cmi4~ .define cmi4~
! $Header$
cmi4~: cmi4~:
mov (sp)+,r1 mov (sp)+,r1
@ -17,5 +18,5 @@ cmi4~:
1: 1:
dec r0 dec r0
3: 3:
add $10,sp add $010,sp
jmp (r1) jmp (r1)

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cms~ .define cms~
.globl save~,retu~ .extern save~,retu~
! $Header$
cms~: cms~:
jsr pc,save~ jsr pc,save~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cmu~ .define cmu~
.globl unknown~,cmu4~ .extern unknown~,cmu4~
! $Header$
cmu~: cmu~:
cmp r0,$02 cmp r0,$02

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl cmu4~ .define cmu4~
! $Header$
cmu4~: cmu4~:
mov (sp)+,r1 mov (sp)+,r1
clr r0 clr r0
@ -16,5 +17,5 @@ cmu4~:
1: 1:
dec r0 dec r0
3: 3:
add $10,sp add $010,sp
jmp (r1) jmp (r1)

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl csa~ .define csa~
.globl fat~ .extern fat~
! $Header$
ECASE = 20. ECASE = 024
csa~: csa~:
sub 02(r0),r1 sub 02(r0),r1

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl csb~ .define csb~
.globl fat~ .extern fat~
! $Header$
ECASE = 20. ECASE = 024
csb~: csb~:
mov (r0)+,-(sp) mov (r0)+,-(sp)

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dup~ .define dup~
! $Header$
dup~: dup~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dvf~ .define dvf~
.globl setfloat~ .extern setfloat~
! $Header$
dvf~: dvf~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dvi~ .define dvi~
.globl unknown~,dvi4~ .extern unknown~,dvi4~
! $Header$
dvi~: dvi~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dvi4~ .define dvi4~
.globl save~,retu~ .extern save~,retu~
! $Header$
dvi4~: dvi4~:
jsr pc,save~ jsr pc,save~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dvu~ .define dvu~
.globl unknown~,dvu4~,dvu2~ .extern unknown~,dvu4~,dvu2~
! $Header$
dvu~: dvu~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dvu2~ .define dvu2~
! $Header$
dvu2~: dvu2~:
clr r0 clr r0
mov 04(sp),r1 mov 04(sp),r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl dvu4~ .define dvu4~
.globl save~,retu~ .extern save~,retu~
! $Header$
dvu4~: dvu4~:
jsr pc,save~ jsr pc,save~

View file

@ -1,5 +1,6 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.globl eret .define eret
! $Header$
eret: eret:
mov r5,sp mov r5,sp

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .define exg~
.globl exg~ ! $Header$
exg~: jsr pc,save~ exg~: jsr pc,save~
mov sp,r4 mov sp,r4
sub r0,sp sub r0,sp

View file

@ -1,7 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .define fef~
.globl fef~ .extern setfloat~
.globl setfloat~ ! $Header$
fef~: fef~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .define fif~
.globl fif~ .extern setfloat~
.globl setfloat~ ! $Header$
fif~: fif~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,19 +1,20 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl gto~ .define gto~
! $Header$
gto~: gto~:
mov (sp)+,r4 mov (sp)+,r4
mov 4(r4),r5 mov 4(r4),r5
mov 2(r4),sp mov 2(r4),sp
mov (r4),pc mov (r4),pc
/ !
/ mov (sp)+,r3 ! mov (sp)+,r3
/1: cmp 4(r3),r5 !1: cmp 4(r3),r5
/ jeq 2f ! jeq 2f
/ mov 2(r5),r4 ! mov 2(r5),r4
/ mov 4(r5),r2 ! mov 4(r5),r2
/ mov (r5),r5 ! mov (r5),r5
/ br 1b ! br 1b
/2: mov 2(r3),sp !2: mov 2(r3),sp
/ jmp *(r3) ! jmp *(r3)

View file

@ -1,36 +1,34 @@
/ $Header$ #
.globl LINO_AD,FILN_AD .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.globl ERANGE,ESET,EHEAP,EILLINS,ECASE .define LINO_AD,FILN_AD
.globl hol0,trppc~,trpim~,reghp~ .define ERANGE,ESET,EHEAP,EILLINS,ECASE
.define hol0,trppc~,trpim~,reghp~
! $Header$
rti = 2 #define float 1
stst = 170300 ^ tst #define hardfp 1
.float = 1 / this should be parameterized somehow LINO_AD = 0
.hardfp = 1 / only relevant if .float on FILN_AD = 4
LINO_AD = 0. ERANGE = 1
FILN_AD = 4. ESET = 2
EFOVFL = 4
EFUNFL = 5
EFDIVZ = 7
EFUND = 011
ECONV = 012
EHEAP = 021
EILLINS = 022
ECASE = 024
ERANGE = 1. #ifdef float
ESET = 2. #ifndef hardfp
EFOVFL = 4. ! sys 060;.data2 4,fptrap / if not commented it will appear as undefined
EFUNFL = 5. #endif
EFDIVZ = 7. sys 060;.data2 010,sig8
EFUND = 9. ldfps $07600
ECONV = 10. #endif
EHEAP = 17.
EILLINS = 18.
ECASE = 20.
.if .float
/ .globl fltused; fltused:
.if 1 - .hardfp
/ sys 48.;4.;fptrap / if not commented it will appear as undefined
.endif
sys 48.;8.;sig8
ldfps $7600
.endif
mov 2(sp),r0 mov 2(sp),r0
clr -2(r0) clr -2(r0)
mov sp,r0 mov sp,r0
@ -47,30 +45,30 @@ ECASE = 20.
1: 1:
mov r0,4(sp) mov r0,4(sp)
jsr pc,_m_a_i_n jsr pc,_m_a_i_n
/ next two lines for as long as tail needs printf ! next two lines for as long as tail needs printf
/ mov r0,-(sp) ! mov r0,-(sp)
/ jsr pc,*$_exit ! jsr pc,*$_exit
sys 1. sys 1
.data .sect .data
hol0: 0;0 / line no hol0: .data2 0,0 ! line no
0;0 / file .data2 0,0 ! file
trppc~: 0 trppc~: .data2 0
trpim~: 0 trpim~: .data2 0
reghp~: _end reghp~: .data2 _end
.text .sect .text
sig8: sig8:
.if .float #ifdef float
mov r0,-(sp) mov r0,-(sp)
stst r0 stst r0
mov 1f(r0),-(sp) mov 1f(r0),-(sp)
jsr pc,trp~ jsr pc,trp~
sys 48.;8.;sig8 sys 060;.data2 010,sig8
mov (sp)+,r0 mov (sp)+,r0
rti rti
.data .sect .data
1: EILLINS; EILLINS; EFDIVZ; ECONV; EFOVFL; EFUNFL; EFUND; EILLINS 1: .data2 EILLINS, EILLINS, EFDIVZ, ECONV, EFOVFL, EFUNFL, EFUND, EILLINS
.text .sect .text
.endif #endif

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl hlt~ .define hlt~
! $Header$
exit = 1 exit = 1
@ -8,4 +9,4 @@ hlt~:
mov (sp)+,r0 mov (sp)+,r0
bne 1f bne 1f
sys exit sys exit
1: 4 1: .data2 4

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl iaar~ .define iaar~
.globl aar~,trp~ .extern aar~,trp~
! $Header$
EILLINS = 18. EILLINS = 022
iaar~: iaar~:
mov (sp)+,r0 mov (sp)+,r0

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl ilar~ .define ilar~
.globl lar~,trp~ .extern lar~,trp~
! $Header$
EILLINS = 18. EILLINS = 022
ilar~: ilar~:
mov (sp)+,r0 mov (sp)+,r0

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl inn~ .define inn~
! $Header$
inn~: inn~:
mov r0,-(sp) mov r0,-(sp)
@ -18,5 +19,5 @@ inn~:
add (sp)+,sp add (sp)+,sp
tst (sp)+ tst (sp)+
jmp (r1) jmp (r1)
.data .sect .data
bits: .byte 1,2,4,10,20,40,100,200 bits: .data1 1,2,4,010,020,040,0100,0200

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl isar~ .define isar~
.globl sar~,trp~ .extern sar~,trp~
! $Header$
EILLINS = 18. EILLINS = 022
isar~: isar~:
mov (sp)+,r0 mov (sp)+,r0

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl lar~ .define lar~
! $Header$
lar~: lar~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl los2~ .define los2~
! $Header$
los2~: los2~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl mlf~ .define mlf~
.globl setfloat~ .extern setfloat~
! $Header$
mlf~: mlf~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl mli~ .define mli~
.globl unknown~,mli4~ .extern unknown~,mli4~
! $Header$
mli~: mli~:
cmp r0,$04 cmp r0,$04

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl mli4~ .define mli4~
.globl save~,retu~ .extern save~,retu~
! $Header$
mli4~: mli4~:
jsr pc,save~ jsr pc,save~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl mlu~ .define mlu~
.globl unknown~,mlu4~ .extern unknown~,mlu4~
! $Header$
mlu~: mlu~:
cmp r0,$04 cmp r0,$04

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl mlu4~ .define mlu4~
.globl save~,retu~ .extern save~,retu~
! $Header$
mlu4~: mlu4~:
jsr pc,save~ jsr pc,save~

View file

@ -1,25 +1,26 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text ! $Header$
.globl mon~ .sect .text
.globl sigtrp~,save~,retu~,save1~ .define mon~
.extern sigtrp~,save~,retu~,save1~
indir = 0 indir = 0
fork = 2 fork = 2
getpid = 20. getpid = 024
sigtrp = 48. sigtrp = 060
EBADMON = 25. EBADMON = 031
HBMASK = 0177400 HBMASK = 0177400
REG01M = 030 REG01M = 030
REG1M = 020 REG1M = 020
ERRMASK = 040 ERRMASK = 040
/ Associated with every monitor call is a descriptor. ! Associated with every monitor call is a descriptor.
/ The low order three bits describe how values are returned, ! The low order three bits describe how values are returned,
/ the next two bits specify if arguments are expected in ! the next two bits specify if arguments are expected in
/ r0 and/or r1, the next bit is not used, and the next ! r0 and/or r1, the next bit is not used, and the next
/ three bits specify the number of arguments disregarding ! three bits specify the number of arguments disregarding
/ arguments in registers. ! arguments in registers.
mon~: mon~:
cmp 02(sp),$sigtrp cmp 02(sp),$sigtrp
@ -37,7 +38,7 @@ mon~:
bne 2f bne 2f
jbr fork~ jbr fork~
2: bic $HBMASK,r2 2: bic $HBMASK,r2
bis $sys,r2 bis $0104400,r2 ! sys = 0104400
mov r2,9f mov r2,9f
bit $REG01M,r3 bit $REG01M,r3
beq 1f beq 1f
@ -50,7 +51,7 @@ mon~:
mov $[9f+2],r2 mov $[9f+2],r2
1: mov (sp)+,(r2)+ 1: mov (sp)+,(r2)+
sob r3,1b sob r3,1b
2: sys indir ; 9f 2: sys indir ; .data2 9f
bcs 2f bcs 2f
clr r3 clr r3
4: asr r4 4: asr r4
@ -79,68 +80,68 @@ err:
jsr pc,trp~ jsr pc,trp~
tst (sp)+ tst (sp)+
jmp retu~ jmp retu~
.data .sect .data
.even .align 1
9: .=.+12. 9: .space 12
args: ERRMASK / 0 : error args: .data2 ERRMASK ! 0 : error
010 / 1 : exit(st); --- .data2 010 ! 1 : exit(st); ---
07 / 2 : fork(); e10 .data2 07 ! 2 : fork(); e10
0215 / 3 : read(addr,nb,fild); e-0 .data2 0215 ! 3 : read(addr,nb,fild); e-0
0215 / 4 : write(addr,nb,fild); e-0 .data2 0215 ! 4 : write(addr,nb,fild); e-0
0205 / 5 : open(str,flag); e-0 .data2 0205 ! 5 : open(str,flag); e-0
014 / 6 : close(fild); e-- .data2 014 ! 6 : close(fild); e--
07 / 7 : wait(); e10 .data2 07 ! 7 : wait(); e10
0205 / 8 : creat(str,mode); e-0 .data2 0205 ! 8 : creat(str,mode); e-0
0204 / 9 : link(str1,str2); e-- .data2 0204 ! 9 : link(str1,str2); e--
0104 /10 : unlink(str); e-- .data2 0104 !10 : unlink(str); e--
ERRMASK /11 : error .data2 ERRMASK !11 : error
0104 /12 : chdir(str); e-- .data2 0104 !12 : chdir(str); e--
03 /13 : time(); -10 .data2 03 !13 : time(); -10
0304 /14 : mknod(str,mode,addr); e-- .data2 0304 !14 : mknod(str,mode,addr); e--
0204 /15 : chmod(str,mode); e-- .data2 0204 !15 : chmod(str,mode); e--
0304 /16 : chown(str,owner,grp); e-- .data2 0304 !16 : chown(str,owner,grp); e--
ERRMASK /17 : error .data2 ERRMASK !17 : error
0204 /18 : stat(str,buf); e-- .data2 0204 !18 : stat(str,buf); e--
0217 /19 : lseek(high,low,fild); e10 .data2 0217 !19 : lseek(high,low,fild); e10
01 /20 : getpid(); --0 .data2 01 !20 : getpid(); --0
0304 /21 : mount(str1,str2,fl); e-- .data2 0304 !21 : mount(str1,str2,fl); e--
0104 /22 : umount(str); e-- .data2 0104 !22 : umount(str); e--
014 /23 : setuid(uid); e-- .data2 014 !23 : setuid(uid); e--
03 /24 : getuid(); -01 .data2 03 !24 : getuid(); -01
024 /25 : stime(high,low); e-- .data2 024 !25 : stime(high,low); e--
0315 /26 : ptrace(pid,addr,req,d); e-0 .data2 0315 !26 : ptrace(pid,addr,req,d); e-0
011 /27 : alarm(sec); --0 .data2 011 !27 : alarm(sec); --0
0114 /28 : fstat(buf,fild); e-- .data2 0114 !28 : fstat(buf,fild); e--
0 /29 : pause(); --- .data2 0 !29 : pause(); ---
0204 /30 : utime(str,timep); e-- .data2 0204 !30 : utime(str,timep); e--
ERRMASK /31 : error .data2 ERRMASK !31 : error
ERRMASK /32 : error .data2 ERRMASK !32 : error
0204 /33 : access(str,mode): e-- .data2 0204 !33 : access(str,mode): e--
010 /34 : nice(incr); --- .data2 010 !34 : nice(incr); ---
0100 /35 : ftime(bufp); --- .data2 0100 !35 : ftime(bufp); ---
0 /36 : sync(); --- .data2 0 !36 : sync(); ---
0114 /37 : kill(sig,pid); e-- .data2 0114 !37 : kill(sig,pid); e--
ERRMASK /38 : error .data2 ERRMASK !38 : error
ERRMASK /39 : error .data2 ERRMASK !39 : error
ERRMASK /40 : error .data2 ERRMASK !40 : error
025 /41 : dup(fild,newfild); e-0 .data2 025 !41 : dup(fild,newfild); e-0
07 /42 : pipe(); e10 .data2 07 !42 : pipe(); e10
0100 /43 : times(buf); --- .data2 0100 !43 : times(buf); ---
0400 /44 : profil(buff,siz,off,sc); --- .data2 0400 !44 : profil(buff,siz,off,sc); ---
ERRMASK /45 : error .data2 ERRMASK !45 : error
014 /46 : setgid(gid); e-- .data2 014 !46 : setgid(gid); e--
03 /47 : getgid(); -01 .data2 03 !47 : getgid(); -01
0 /48 : sigtrp(trap,sig); e-0; SPECIAL TREATMENT .data2 0 !48 : sigtrp(trap,sig); e-0; SPECIAL TREATMENT
ERRMASK /49 : error .data2 ERRMASK !49 : error
ERRMASK /50 : error .data2 ERRMASK !50 : error
0104 /51 : acct(file); e-- .data2 0104 !51 : acct(file); e--
0304 /52 : phys(seg,siz,phaddr); e-- .data2 0304 !52 : phys(seg,siz,phaddr); e--
0104 /53 : lock(flag); e-- .data2 0104 !53 : lock(flag); e--
0304 /54 : ioctl(fild,req,argp); e-- .data2 0304 !54 : ioctl(fild,req,argp); e--
ERRMASK /55 : error .data2 ERRMASK !55 : error
0204 /56 : mpxcall(cmd,vec); e-- .data2 0204 !56 : mpxcall(cmd,vec); e--
ERRMASK /57 : error .data2 ERRMASK !57 : error
ERRMASK /58 : error .data2 ERRMASK !58 : error
0304 /59 : exece(name,argv,envp); e-- .data2 0304 !59 : exece(name,argv,envp); e--
0104 /60 : umask(complmode); e-- .data2 0104 !60 : umask(complmode); e--
0104 /61 : chroot(str); e-- .data2 0104 !61 : chroot(str); e--

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl ngf~ .define ngf~
.globl setfloat~ .extern setfloat~
! $Header$
ngf~: ngf~:
jsr pc,setfloat~ jsr pc,setfloat~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl ngi~ .define ngi~
.globl unknown~ .extern unknown~
! $Header$
ngi~: ngi~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl nop~ .define nop~
.globl hol0,prf~ .extern hol0,prf~
! $Header$
nop~: nop~:
mov hol0,-(sp) mov hol0,-(sp)
@ -9,5 +10,5 @@ nop~:
jsr pc,prf~ jsr pc,prf~
add $04,sp add $04,sp
rts pc rts pc
.data .sect .data
fmt: <test %d\n\0> fmt: .asciz "test %d\n"

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl prf~ .define prf~
.globl save~,retu~,hol0,_printf .extern save~,retu~,hol0,_printf
! $Header$
prf~: prf~:
jsr pc,save~ jsr pc,save~
@ -9,7 +10,7 @@ prf~:
mov hol0+4,r0 mov hol0+4,r0
beq 1f beq 1f
mov r0,r2 mov r0,r2
mov $40.,r1 mov $050,r1
3: movb (r2)+,r3 3: movb (r2)+,r3
beq 2f beq 2f
cmpb r3,$0177 cmpb r3,$0177
@ -29,6 +30,6 @@ prf~:
1: mov $name,r0 1: mov $name,r0
br 2b br 2b
.data .sect .data
fmt: <"%s", sp = %d, line %d: \0> fmt: .asciz "\"%s\", sp = %d, line %d: "
name: <_unknown file_\0> name: .asciz "_unknown file_"

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl _printf .define _printf
! $Header$
write = 4 write = 4
@ -54,10 +55,10 @@ ready:
mov $buff,9f mov $buff,9f
mov r4,9f+2 mov r4,9f+2
sys write sys write
9: 0; 0 9: .data2 0, 0
mov (sp)+,r4 mov (sp)+,r4
mov (sp)+,r3 mov (sp)+,r3
mov (sp)+,r2 mov (sp)+,r2
rts pc rts pc
.data .sect .bss
buff: .=.+256. buff: .space 256

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rck~ .define rck~
.globl trp~ .extern trp~
! $Header$
ERANGE = 1 ERANGE = 1

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl ret~,lfr~,retar .define ret~,lfr~
.globl unknown~ .extern unknown~, retar
! $Header$
/ Size in r0 ! Size in r0
ret~: ret~:
mov r0,r1 mov r0,r1
beq 1f beq 1f

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rmi~ .define rmi~
.globl unknown~,rmi4~ .extern unknown~,rmi4~
! $Header$
rmi~: rmi~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rmi4~ .define rmi4~
.globl save~,retu~ .extern save~,retu~
! $Header$
rmi4~: rmi4~:
jsr pc,save~ jsr pc,save~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rmu~ .define rmu~
.globl rmu2~,rmu4~,unknown~ .extern rmu2~,rmu4~,unknown~
! $Header$
rmu~: rmu~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rmu2~ .define rmu2~
! $Header$
rmu2~: rmu2~:
mov 04(sp),r1 mov 04(sp),r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rmu4~ .define rmu4~
.globl save~,retu~ .extern save~,retu~
! $Header$
rmu4~: rmu4~:
jsr pc,save~ jsr pc,save~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl rol~ .define rol~
.globl save~,retu~ .extern save~,retu~
! $Header$
rol~: rol~:
jsr pc,save~ jsr pc,save~

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl ror~ .define ror~
.globl save~,retu~ .extern save~,retu~
! $Header$
ror~: ror~:
asr r0 asr r0

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sar~ .define sar~
! $Header$
sar~: sar~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl save~,retu~,savearea .define save~,retu~,savearea
! $Header$
save~: save~:
mov r5,savearea mov r5,savearea
@ -19,7 +20,6 @@ retu~:
mov -(r5),r5 mov -(r5),r5
rts pc rts pc
.data .sect .bss
.even
savearea: savearea:
.=.+12. .space 12

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sbf~ .define sbf~
.globl setfloat~ .extern setfloat~
! $Header$
sbf~: sbf~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sbi~ .define sbi~
.globl unknown~ .extern unknown~
! $Header$
sbi~: sbi~:
mov (sp)+,r1 mov (sp)+,r1

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl set~ .define set~
.globl save~,retu~,trp~ .extern save~,retu~,trp~
! $Header$
ESET = 2 ESET = 2
@ -11,7 +12,7 @@ set~:
asr r0 asr r0
1: clr -(sp) 1: clr -(sp)
sob r0,1b sob r0,1b
div $8.,r0 div $010,r0
cmp r0,r2 cmp r0,r2
blo 2f blo 2f
mov $ESET,-(sp) mov $ESET,-(sp)
@ -21,5 +22,5 @@ set~:
bisb bits(r1),(r0) bisb bits(r1),(r0)
jmp retu~ jmp retu~
.data .sect .data
bits: .byte 1,2,4,10,20,40,100,200 bits: .data1 1,2,4,010,020,040,0100,0200

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl setfloat~,setint~ .define setfloat~,setint~
.globl unknown~ .extern unknown~
! $Header$
setfloat~: setfloat~:
cmp r0,$8. cmp r0,$8.

View file

@ -1,40 +1,39 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sigtrp~ .define sigtrp~
.globl trp~,save~,retu~ .define trp~,save~,retu~
! $Header$
indir = 0 indir = 0
signal = 48. signal = 060
rti = 2 sig1: mov sig.trp+0,-(sp)
sig1: mov sig.trp+0.,-(sp)
br 1f br 1f
sig2: mov sig.trp+2.,-(sp) sig2: mov sig.trp+2,-(sp)
br 1f br 1f
sig3: mov sig.trp+4.,-(sp) sig3: mov sig.trp+4,-(sp)
br 1f br 1f
sig4: mov sig.trp+6.,-(sp) sig4: mov sig.trp+6,-(sp)
br 1f br 1f
sig5: mov sig.trp+8.,-(sp) sig5: mov sig.trp+010,-(sp)
br 1f br 1f
sig6: mov sig.trp+10.,-(sp) sig6: mov sig.trp+012,-(sp)
br 1f br 1f
sig7: mov sig.trp+12.,-(sp) sig7: mov sig.trp+014,-(sp)
br 1f br 1f
sig10: mov sig.trp+18.,-(sp) sig10: mov sig.trp+022,-(sp)
br 1f br 1f
sig11: mov sig.trp+20.,-(sp) sig11: mov sig.trp+024,-(sp)
br 1f br 1f
sig12: mov sig.trp+22.,-(sp) sig12: mov sig.trp+026,-(sp)
br 1f br 1f
sig13: mov sig.trp+24.,-(sp) sig13: mov sig.trp+030,-(sp)
br 1f br 1f
sig14: mov sig.trp+026.,-(sp) sig14: mov sig.trp+032,-(sp)
br 1f br 1f
sig15: mov sig.trp+028.,-(sp) sig15: mov sig.trp+034,-(sp)
br 1f br 1f
sig16: mov sig.trp+030.,-(sp) sig16: mov sig.trp+036,-(sp)
br 1f br 1f
1: 1:
jsr pc,trp~ jsr pc,trp~
@ -46,12 +45,12 @@ sigtrp~:
mov (sp)+,r1 mov (sp)+,r1
mov (sp)+,r0 mov (sp)+,r0
ble sig.bad ble sig.bad
cmp r0,$16. cmp r0,$020
bhi sig.bad bhi sig.bad
mov r0,call+02 mov r0,call+02
asl r0 asl r0
mov sig.trp-2(r0),r3 mov sig.trp-2(r0),r3
cmp r1,$256. cmp r1,$0400
bhis 1f bhis 1f
mov sig.adr-2(r0),r2 mov sig.adr-2(r0),r2
bne 2f bne 2f
@ -68,7 +67,7 @@ sigbad:
inc r2 inc r2
2: mov r1,sig.trp-2(r0) 2: mov r1,sig.trp-2(r0)
mov r2,call+04 mov r2,call+04
sys indir ; call sys indir ; .data2 call
bcs sigbad bcs sigbad
asr r0 asr r0
bcc 1f bcc 1f
@ -79,15 +78,16 @@ sigbad:
clr -(sp) clr -(sp)
jmp retu~ jmp retu~
.data .sect .data
call: sys signal; 0; 0 call: sys signal
.data2 0, 0
sig.trp: sig.trp:
-2; -2; -2; -2 .data2 -2, -2, -2, -2
-2; -2; -2; -2 .data2 -2, -2, -2, -2
-2; -2; -2; -2 .data2 -2, -2, -2, -2
-2; -2; -2; -2 .data2 -2, -2, -2, -2
sig.adr: sig.adr:
sig1; sig2; sig3; sig4 .data2 sig1, sig2, sig3, sig
sig5; sig6; sig7; 0 .data2 sig5, sig6, sig7, 0
0; sig10; sig11; sig12 .data2 0, sig10, sig11, sig12
sig13; sig14; sig15; sig16 .data2 sig13, sig14, sig15, sig16

View file

@ -1,15 +1,17 @@
/ $Header$ #
.text .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.globl sim~ .sect .text
.globl trpim~ .define sim~
.extern trpim~
! $Header$
.float = 1 #define float
sim~: sim~:
mov (sp)+,r3 mov (sp)+,r3
mov (sp)+,r0 mov (sp)+,r0
mov r0,trpim~ mov r0,trpim~
.if .float #ifdef float
stfps r1 stfps r1
bis $07400,r1 bis $07400,r1
bit $020,r0 bit $020,r0
@ -25,5 +27,5 @@ sim~:
beq 0f beq 0f
bic $0400,r1 bic $0400,r1
0: ldfps r1 0: ldfps r1
.endif #endif
jmp (r3) jmp (r3)

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sli~ .define sli~
.globl unknown~ .extern unknown~
! $Header$
sli~: sli~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sri~ .define sri~
.globl unknown~ .extern unknown~
! $Header$
/ Size in r0 ! Size in r0
sri~: sri~:
mov (sp)+,r3~ mov (sp)+,r3~
cmp r0,$02 cmp r0,$02

View file

@ -1,7 +1,8 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sru~ .define sru~
.globl unknown~ .extern unknown~
! $Header$
sru~: sru~:
neg 2(sp) neg 2(sp)

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl sto2~ .define sto2~
! $Header$
sto2~: sto2~:
mov (sp)+,r3 mov (sp)+,r3

View file

@ -1,11 +1,12 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl strhp~ .define strhp~
.globl fat~,reghp~,_end .extern fat~,reghp~,_end
! $Header$
indir = 0 indir = 0
break = 17. break = 021
EHEAP = 17. EHEAP = 021
strhp~: strhp~:
mov (sp)+,r0 mov (sp)+,r0
@ -16,10 +17,10 @@ strhp~:
add $01777,r1 add $01777,r1
bic $01777,r1 bic $01777,r1
mov r1,2f+2 mov r1,2f+2
sys indir ; 2f sys indir ; .data2 2f
bcs 3f bcs 3f
1: jmp (r0) 1: jmp (r0)
3: mov $EHEAP,-(sp) 3: mov $EHEAP,-(sp)
jmp fat~ jmp fat~
.data .sect .data
2: sys break; _end 2: sys break; .data2 _end

View file

@ -1,12 +1,13 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl trp~,fat~ .define trp~,fat~
.globl trppc~,trpim~,savearea,retar .extern trppc~,trpim~,savearea,retar
write=4. ! $Header$
write=4
fat~: fat~:
jsr pc,trp~ jsr pc,trp~
4 .data2 4
trp~: trp~:
mov r0,-(sp) mov r0,-(sp)
@ -14,7 +15,7 @@ trp~:
mov 02(sp),04(sp) mov 02(sp),04(sp)
mov (sp),02(sp) mov (sp),02(sp)
mov r1,(sp) mov r1,(sp)
cmp r0,$16. cmp r0,$020
jhis 0f jhis 0f
mov $01,r1 mov $01,r1
ashc r0,r1 ashc r0,r1
@ -50,7 +51,7 @@ trp~:
clr trppc~ clr trppc~
jsr pc,(r0) jsr pc,(r0)
tst (sp)+ tst (sp)+
mov $retar+16.,r2 mov $retar+020,r2
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov (sp)+,-(r2) mov (sp)+,-(r2)
@ -59,7 +60,7 @@ trp~:
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov $savearea+12.,r2 mov $savearea+014,r2
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov (sp)+,-(r2) mov (sp)+,-(r2)
mov (sp)+,-(r2) mov (sp)+,-(r2)
@ -78,18 +79,18 @@ trp~:
mov (sp)+,r0 mov (sp)+,r0
rts pc rts pc
9: mov (sp)+,r0 9: mov (sp)+,r0
mov $buf+11,r1 mov $buf+011,r1
mov $4,r2 mov $4,r2
1: mov r0,r3 1: mov r0,r3
bic $177770,r3 bic $0177770,r3
bisb r3,-(r1) bisb r3,-(r1)
ash $-3,r0 ash $-3,r0
sob r2,1b sob r2,1b
mov $2,r0 mov $2,r0
sys write;buf;11. sys write;.data2 buf, 013
4 .data2 4
.data .sect .data
retar: .=.+16. retar: .space 16
retend: retend:
buf: <err 00000\n> buf: .ascii "err 00000\n"

View file

@ -1,9 +1,10 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.text .sect .text
.globl unknown~ .define unknown~
.globl fat~ ! $Header$
.extern fat~
EILLSIZ = 19. EILLSIZ = 023
unknown~: unknown~:
mov $EILLSIZ,-(sp) mov $EILLSIZ,-(sp)

View file

@ -1,6 +1,7 @@
/ $Header$ .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.globl xor~ .define xor~
.globl save~,retu~ .extern save~,retu~
! $Header$
xor~: xor~:
jsr pc,save~ jsr pc,save~