Adapted for use of ACK VAX assembler
This commit is contained in:
parent
2eacdccc5d
commit
de564c09b2
|
@ -16,8 +16,7 @@ head_em.o: head_em.s
|
|||
vax4 -I../../../h -c head_em.s
|
||||
|
||||
libmon_o.a: libmon_s.a
|
||||
ASAR=ar ; export ASAR ;\
|
||||
RANLIB=ranlib ; export RANLIB ;\
|
||||
ASAR=aal ; export ASAR ;\
|
||||
march . libmon_o.a
|
||||
|
||||
clean:
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl __exit
|
||||
.set exit,1
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define __exit
|
||||
exit = 1
|
||||
|
||||
.align 1
|
||||
__exit:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $exit
|
||||
halt
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _access
|
||||
.set access,33
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _access
|
||||
access = 33
|
||||
|
||||
.align 1
|
||||
_access:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $access
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _acct
|
||||
.set acct,51
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _acct
|
||||
acct = 51
|
||||
|
||||
.align 1
|
||||
_acct:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $acct
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _alarm
|
||||
.set alarm,27
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _alarm
|
||||
alarm = 27
|
||||
|
||||
.align 1
|
||||
_alarm:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $alarm
|
||||
ret
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _chdir
|
||||
.set chdir,12
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _chdir
|
||||
chdir = 12
|
||||
|
||||
.align 1
|
||||
_chdir:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chdir
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _chmod
|
||||
.set chmod,15
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _chmod
|
||||
chmod = 15
|
||||
|
||||
.align 1
|
||||
_chmod:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chmod
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _chown
|
||||
.set chown,16
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _chown
|
||||
chown = 16
|
||||
|
||||
.align 1
|
||||
_chown:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chown
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _chroot
|
||||
.set chroot,61
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _chroot
|
||||
chroot = 61
|
||||
|
||||
.globl errmon
|
||||
.define errmon
|
||||
_chroot:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chroot
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _close
|
||||
.set close,6
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _close
|
||||
close = 6
|
||||
|
||||
.align 1
|
||||
_close:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $close
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _creat
|
||||
.set creat,8
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _creat
|
||||
creat = 8
|
||||
|
||||
.align 1
|
||||
_creat:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $creat
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,15 +1,17 @@
|
|||
.globl _dup
|
||||
.globl _dup2
|
||||
.set dup,41
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _dup
|
||||
.define _dup2
|
||||
dup = 41
|
||||
|
||||
.align 1
|
||||
_dup:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
brb 1f
|
||||
|
||||
.align 1
|
||||
_dup2:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
bisb2 $0100,4(ap)
|
||||
1:
|
||||
chmk $dup
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
.globl errmon
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define errmon
|
||||
.comm _errno,4
|
||||
|
||||
.align 1
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _execl
|
||||
.globl _environ
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execl
|
||||
.define _environ
|
||||
|
||||
.align 1
|
||||
_execl:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
pushl _environ
|
||||
pushab 8(ap)
|
||||
pushl 4(ap)
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _execle
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execle
|
||||
|
||||
.align 1
|
||||
_execle:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
movl (ap),r0
|
||||
pushl (ap)[r0]
|
||||
pushab 8(ap)
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _execv
|
||||
.globl _environ
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execv
|
||||
.define _environ
|
||||
|
||||
.align 1
|
||||
_execv:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
pushl _environ
|
||||
pushl 8(ap)
|
||||
pushl 4(ap)
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _execve
|
||||
.set exec,59
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execve
|
||||
exec = 59
|
||||
|
||||
.align 1
|
||||
_execve:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $exec
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _fork
|
||||
.set fork,2
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _fork
|
||||
fork = 2
|
||||
|
||||
.align 1
|
||||
_fork:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $fork
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _fstat
|
||||
.set fstat,28
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _fstat
|
||||
fstat = 28
|
||||
|
||||
.align 1
|
||||
_fstat:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $fstat
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _ftime
|
||||
.set ftime,35
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _ftime
|
||||
ftime = 35
|
||||
|
||||
.align 1
|
||||
_ftime:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $ftime
|
||||
ret
|
||||
|
|
|
@ -1,16 +1,18 @@
|
|||
.globl _getgid
|
||||
.globl _getegid
|
||||
.set getgid,47
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _getgid
|
||||
.define _getegid
|
||||
getgid = 47
|
||||
|
||||
.align 1
|
||||
_getgid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getgid
|
||||
ret
|
||||
|
||||
.align 1
|
||||
_getegid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getgid
|
||||
movl r1,r0
|
||||
ret
|
||||
|
|
|
@ -1,16 +1,18 @@
|
|||
.globl _getpid
|
||||
.globl _getppid
|
||||
.set getpid,20
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _getpid
|
||||
.define _getppid
|
||||
getpid = 20
|
||||
|
||||
.align 1
|
||||
_getpid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getpid
|
||||
ret
|
||||
|
||||
.align 1
|
||||
_getppid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getpid
|
||||
movl r1,r0
|
||||
ret
|
||||
|
|
|
@ -1,16 +1,18 @@
|
|||
.globl _getuid
|
||||
.globl _geteuid
|
||||
.set getuid,24
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _getuid
|
||||
.define _geteuid
|
||||
getuid = 24
|
||||
|
||||
.align 1
|
||||
_getuid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getuid
|
||||
ret
|
||||
|
||||
.align 1
|
||||
_geteuid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getuid
|
||||
movl r1,r0
|
||||
ret
|
||||
|
|
|
@ -1,76 +1,81 @@
|
|||
#include "em_abs.h"
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
|
||||
# $Header$
|
||||
! $Header$
|
||||
|
||||
.globl hol0
|
||||
.globl .reghp
|
||||
.globl .trppc
|
||||
.globl .trpim
|
||||
.define hol0
|
||||
.define .reghp
|
||||
.define .trppc
|
||||
.define .trpim
|
||||
|
||||
# run time startoff
|
||||
.word 0
|
||||
bispsw $0100 # set FU(0100)
|
||||
! run time startoff
|
||||
.data2 0
|
||||
bispsw $0100 ! set FU(0100)
|
||||
movl 4(sp),r0
|
||||
clrl -4(r0)
|
||||
movl sp,r0
|
||||
movl (r0)+,r1
|
||||
movl r0,r2
|
||||
a1:
|
||||
1:
|
||||
tstl (r0)+
|
||||
bneq a1
|
||||
bneq 1b
|
||||
cmpl r0,(r2)
|
||||
blssu a2
|
||||
blssu 2f
|
||||
tstl -(r0)
|
||||
a2:
|
||||
2:
|
||||
pushl r0
|
||||
pushl r2
|
||||
pushl r1
|
||||
movl $m1,ap
|
||||
chmk (ap)+ # catch floating point exception
|
||||
movl $Im1,ap
|
||||
chmk (ap)+ ! catch floating point exception
|
||||
calls $3,_m_a_i_n
|
||||
movl $m2,ap
|
||||
movl $Im2,ap
|
||||
movl r0,6(ap)
|
||||
chmk (ap)+
|
||||
halt
|
||||
|
||||
.align 1
|
||||
sig8:
|
||||
.word 0x0000
|
||||
Isig8:
|
||||
.data2 0x0000
|
||||
pushl 8(ap)
|
||||
movl (sp)+,ap
|
||||
pushl tab [ap]
|
||||
pushl Itab [ap]
|
||||
jsb .trp
|
||||
movl $m1,ap
|
||||
movl $Im1,ap
|
||||
chmk (ap)+
|
||||
ret
|
||||
|
||||
.data
|
||||
m1:
|
||||
.word 48
|
||||
.long 2
|
||||
.long 8
|
||||
.long sig8
|
||||
m2:
|
||||
.word 1
|
||||
.long 1
|
||||
.long 0
|
||||
.sect .rom
|
||||
Im1:
|
||||
.data2 48
|
||||
.data4 2
|
||||
.data4 8
|
||||
.data4 Isig8
|
||||
|
||||
Itab:
|
||||
.data4 0
|
||||
.data4 EIOVFL
|
||||
.data4 EIDIVZ
|
||||
.data4 EFOVFL
|
||||
.data4 EFDIVZ
|
||||
.data4 EFUNFL
|
||||
.data4 EILLINS
|
||||
.data4 EARRAY
|
||||
.data4 EFOVFL
|
||||
.data4 EFDIVZ
|
||||
.data4 EFUNFL
|
||||
|
||||
.sect .data
|
||||
Im2:
|
||||
.data2 1
|
||||
.data4 1
|
||||
.data4 0
|
||||
.reghp:
|
||||
.long _end
|
||||
.data4 _end
|
||||
hol0:
|
||||
.space 8
|
||||
.trppc:
|
||||
.space 4
|
||||
.trpim:
|
||||
.long 0
|
||||
tab:
|
||||
.long 0
|
||||
.long EIOVFL
|
||||
.long EIDIVZ
|
||||
.long EFOVFL
|
||||
.long EFDIVZ
|
||||
.long EFUNFL
|
||||
.long EILLINS
|
||||
.long EARRAY
|
||||
.long EFOVFL
|
||||
.long EFDIVZ
|
||||
.long EFUNFL
|
||||
.data4 0
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _ioctl
|
||||
.set ioctl,54
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _ioctl
|
||||
ioctl = 54
|
||||
|
||||
.align 1
|
||||
_ioctl:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $ioctl
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _kill
|
||||
.set kill,37
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _kill
|
||||
kill = 37
|
||||
|
||||
.align 1
|
||||
_kill:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $kill
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _link
|
||||
.set link,9
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _link
|
||||
link = 9
|
||||
|
||||
.align 1
|
||||
_link:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $link
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _lseek
|
||||
.set lseek,19
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _lseek
|
||||
lseek = 19
|
||||
|
||||
.align 1
|
||||
_lseek:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $lseek
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _mknod
|
||||
.set mknod,14
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _mknod
|
||||
mknod = 14
|
||||
|
||||
.align 1
|
||||
_mknod:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $mknod
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _mount
|
||||
.set mount,21
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _mount
|
||||
mount = 21
|
||||
|
||||
.align 1
|
||||
_mount:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $mount
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.set mpxcall,56
|
||||
.globl _mpxcall
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
mpxcall = 56
|
||||
.define _mpxcall
|
||||
|
||||
.align 1
|
||||
_mpxcall:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $mpxcall
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _nice
|
||||
.set nice,34
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _nice
|
||||
nice = 34
|
||||
|
||||
.align 1
|
||||
_nice:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $nice
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _open
|
||||
.set open,5
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _open
|
||||
open = 5
|
||||
|
||||
.align 1
|
||||
_open:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $open
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _pause
|
||||
.set pause,29
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _pause
|
||||
pause = 29
|
||||
|
||||
.align 1
|
||||
_pause:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $pause
|
||||
ret
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _pipe
|
||||
.set pipe,42
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _pipe
|
||||
pipe = 42
|
||||
|
||||
.align 1
|
||||
_pipe:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $pipe
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _profil
|
||||
.set profil,44
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _profil
|
||||
profil = 44
|
||||
|
||||
.align 1
|
||||
_profil:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $profil
|
||||
ret
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _ptrace
|
||||
.set ptrace,26
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _ptrace
|
||||
ptrace = 26
|
||||
|
||||
.align 1
|
||||
_ptrace:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
clrl _errno
|
||||
chmk $ptrace
|
||||
bcc 1f
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _read
|
||||
.set read,3
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _read
|
||||
read = 3
|
||||
|
||||
.align 1
|
||||
_read:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $read
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,16 +1,18 @@
|
|||
.set break,17
|
||||
.globl _sbrk
|
||||
.globl _brk
|
||||
.globl _end
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
break = 17
|
||||
.define _sbrk
|
||||
.define _brk
|
||||
.define _end
|
||||
|
||||
.align 1
|
||||
_sbrk:
|
||||
.word 0x0000
|
||||
addl3 brk,4(ap),-(sp)
|
||||
.data2 0x0000
|
||||
addl3 Ibrk,4(ap),-(sp)
|
||||
bcc 1f
|
||||
movl $0xFFFFFFFF,(sp) # will cause an error (I hope)
|
||||
movl $0xFFFFFFFF,(sp) ! will cause an error (I hope)
|
||||
1:
|
||||
movl brk,r3
|
||||
movl Ibrk,r3
|
||||
calls $1,_brk
|
||||
tstl r0
|
||||
blss 1f
|
||||
|
@ -20,14 +22,14 @@ _sbrk:
|
|||
|
||||
.align 1
|
||||
_brk:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $break
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
1:
|
||||
movl 4(ap),brk
|
||||
movl 4(ap),Ibrk
|
||||
clrl r0
|
||||
ret
|
||||
|
||||
.data
|
||||
brk: .long _end
|
||||
.sect .data
|
||||
Ibrk: .data4 _end
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _setgid
|
||||
.set setgid,46
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _setgid
|
||||
setgid = 46
|
||||
|
||||
.align 1
|
||||
_setgid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $setgid
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _setuid
|
||||
.set setuid,23
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _setuid
|
||||
setuid = 23
|
||||
|
||||
.align 1
|
||||
_setuid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $setuid
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _signal
|
||||
.set signal,48
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _signal
|
||||
signal = 48
|
||||
|
||||
.align 1
|
||||
_signal:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $signal
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _stat
|
||||
.set stat,18
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _stat
|
||||
stat = 18
|
||||
|
||||
.align 1
|
||||
_stat:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $stat
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _stime
|
||||
.set stime,25
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _stime
|
||||
stime = 25
|
||||
|
||||
.align 1
|
||||
_stime:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
movl *4(ap),4(ap)
|
||||
chmk $stime
|
||||
bcc 1f
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _sync
|
||||
.set sync,36
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _sync
|
||||
sync = 36
|
||||
|
||||
.align 1
|
||||
_sync:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $sync
|
||||
ret
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _syscall
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _syscall
|
||||
|
||||
.align 1
|
||||
_syscall:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
movl 4(ap),r0
|
||||
subl3 $1,(ap)+,(ap)
|
||||
chmk r0
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _time
|
||||
.set time,13
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _time
|
||||
time = 13
|
||||
|
||||
.align 1
|
||||
_time:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $time
|
||||
movl 4(ap),r1
|
||||
beql 1f
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _times
|
||||
.set times,43
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _times
|
||||
times = 43
|
||||
|
||||
.align 1
|
||||
_times:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $times
|
||||
ret
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _umask
|
||||
.set umask,60
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _umask
|
||||
umask = 60
|
||||
|
||||
.align 1
|
||||
_umask:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $umask
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _umount
|
||||
.set umount,22
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _umount
|
||||
umount = 22
|
||||
|
||||
.align 1
|
||||
_umount:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $umount
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _unlink
|
||||
.set unlink,10
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _unlink
|
||||
unlink = 10
|
||||
|
||||
.align 1
|
||||
_unlink:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $unlink
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _utime
|
||||
.set utime,30
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _utime
|
||||
utime = 30
|
||||
|
||||
.align 1
|
||||
_utime:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $utime
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.set vadvise,72
|
||||
.globl _vadvise
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
vadvise = 72
|
||||
.define _vadvise
|
||||
|
||||
.align 1
|
||||
_vadvise:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vadvise
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,12 +1,14 @@
|
|||
.globl _vfork
|
||||
.set vfork,66
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vfork
|
||||
vfork = 66
|
||||
|
||||
.align 1
|
||||
_vfork:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
movl 16(fp),r2
|
||||
movab 1f,16(fp) # dirty. Only one process can do return,
|
||||
# so do it before forking
|
||||
movab 1f,16(fp) ! dirty. Only one process can do return,
|
||||
! so do it before forking
|
||||
ret
|
||||
1:
|
||||
chmk $vfork
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _vhangup
|
||||
.set vhangup,76
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vhangup
|
||||
vhangup = 76
|
||||
|
||||
.align 1
|
||||
_vhangup:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vhangup
|
||||
ret
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _vlimit
|
||||
.set vlimit,77
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vlimit
|
||||
vlimit = 77
|
||||
|
||||
.align 1
|
||||
_vlimit:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vlimit
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _vread
|
||||
.set vread,67
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vread
|
||||
vread = 67
|
||||
|
||||
.align 1
|
||||
_vread:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vread
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.globl _vtimes
|
||||
.set vtimes,107
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vtimes
|
||||
vtimes = 107
|
||||
|
||||
.align 1
|
||||
_vtimes:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vtimes
|
||||
ret
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _vwait
|
||||
.set vwait,71
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vwait
|
||||
vwait = 71
|
||||
|
||||
.align 1
|
||||
_vwait:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vwait
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _vwrite
|
||||
.set vwrite,68
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _vwrite
|
||||
vwrite = 68
|
||||
|
||||
.align 1
|
||||
_vwrite:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $vwrite
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.set wait,7
|
||||
.globl _wait
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
wait = 7
|
||||
.define _wait
|
||||
|
||||
.align 1
|
||||
_wait:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $wait
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.globl _write
|
||||
.set write,4
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _write
|
||||
write = 4
|
||||
|
||||
.align 1
|
||||
_write:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $write
|
||||
bcc 1f
|
||||
jmp errmon
|
||||
|
|
|
@ -17,8 +17,7 @@ head_em: head_em.s
|
|||
vax4 -I../../../h -c head_em.s ; mv head_em.o head_em
|
||||
|
||||
tail_mon:
|
||||
ASAR=ar ; export ASAR ;\
|
||||
RANLIB=ranlib ; export RANLIB ;\
|
||||
ASAR=aal ; export ASAR ;\
|
||||
march . tail_mon
|
||||
|
||||
clean:
|
||||
|
|
|
@ -1,29 +1,29 @@
|
|||
#include "syscall.h"
|
||||
.globl _end
|
||||
.extern _end
|
||||
DEFINE(_brk)
|
||||
cmpl 4(ap),min
|
||||
bgeq ok
|
||||
movl min,4(ap)
|
||||
ok:
|
||||
cmpl 4(ap),Imin
|
||||
bgeq Iok
|
||||
movl Imin,4(ap)
|
||||
Iok:
|
||||
chmk $17
|
||||
bcs err
|
||||
movl 4(ap),cur
|
||||
bcs Ierr
|
||||
movl 4(ap),Icur
|
||||
clrl r0
|
||||
ret
|
||||
err:
|
||||
Ierr:
|
||||
jmp cerror
|
||||
|
||||
DEFINE(_sbrk)
|
||||
addl3 cur,4(ap),-(sp)
|
||||
bcs err
|
||||
bcs Ierr
|
||||
pushl $1
|
||||
movl ap,r3
|
||||
movl sp,ap
|
||||
chmk $17
|
||||
bcs err
|
||||
movl cur,r0
|
||||
addl2 4(r3),cur
|
||||
bcs Ierr
|
||||
movl Icur,r0
|
||||
addl2 4(r3),Icur
|
||||
ret
|
||||
.data
|
||||
min: .long _end
|
||||
cur: .long _end
|
||||
.sect .data
|
||||
Imin: .data4 _end
|
||||
Icur: .data4 _end
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
.globl _errno
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _errno
|
||||
.define cerror
|
||||
.comm _errno, 4
|
||||
cerror:
|
||||
movl r0,_errno
|
||||
mnegl $1,r0
|
||||
ret
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#include "syscall.h"
|
||||
.globl _environ
|
||||
.extern _environ
|
||||
DEFINE(_execl)
|
||||
pushl _environ
|
||||
pushab 8(ap)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#include "syscall.h"
|
||||
.globl _environ
|
||||
.extern _environ
|
||||
DEFINE(_execv)
|
||||
pushl _environ
|
||||
pushl 8(ap)
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#include "syscall.h"
|
||||
DEFINE(_fork)
|
||||
chmk $SYS_fork
|
||||
bcs err
|
||||
jlbc r1,parent
|
||||
bcs Ierr
|
||||
blbc r1,Iparent
|
||||
clrl r0
|
||||
parent:
|
||||
Iparent:
|
||||
ret
|
||||
err:
|
||||
Ierr:
|
||||
jmp cerror
|
||||
|
|
|
@ -1,103 +1,104 @@
|
|||
#include "em_abs.h"
|
||||
#include "syscall.h"
|
||||
|
||||
# $Header$
|
||||
! $Header$
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define hol0
|
||||
.define .reghp
|
||||
.define .trppc
|
||||
.define .trpim
|
||||
|
||||
.globl hol0
|
||||
.globl .reghp
|
||||
.globl .trppc
|
||||
.globl .trpim
|
||||
|
||||
# run time startoff
|
||||
.word 0
|
||||
bispsw $0100 # set FU(0100)
|
||||
! run time startoff
|
||||
.data2 0
|
||||
bispsw $0100 ! set FU(0100)
|
||||
movl 4(sp),r0
|
||||
clrl -4(r0)
|
||||
movl sp,r0
|
||||
movl (r0)+,r1
|
||||
movl r0,r2
|
||||
a1:
|
||||
1:
|
||||
tstl (r0)+
|
||||
bneq a1
|
||||
bneq 1b
|
||||
cmpl r0,(r2)
|
||||
blssu a2
|
||||
blssu 2f
|
||||
tstl -(r0)
|
||||
a2:
|
||||
2:
|
||||
pushl r0
|
||||
pushl r2
|
||||
pushl r1
|
||||
movl $m1,ap
|
||||
chmk (ap)+ # catch floating point exception
|
||||
movl $Im1,ap
|
||||
chmk (ap)+ ! catch floating point exception
|
||||
calls $3,_m_a_i_n
|
||||
movl $m2,ap
|
||||
movl $Im2,ap
|
||||
movl r0,6(ap)
|
||||
chmk (ap)+
|
||||
halt
|
||||
|
||||
.align 1
|
||||
sig8:
|
||||
.word 0x0000
|
||||
Isig8:
|
||||
.data2 0x0000
|
||||
pushl 8(ap)
|
||||
movl $m3,ap
|
||||
chmk (ap)+ # restore default handler
|
||||
movl $m5,ap
|
||||
chmk (ap)+ # get current signal mask
|
||||
bicl3 $0x80,r0,m4+6 # and remove the 8th bit
|
||||
movl $m4,ap
|
||||
chmk (ap)+ # and
|
||||
movl $Im3,ap
|
||||
chmk (ap)+ ! restore default handler
|
||||
movl $Im5,ap
|
||||
chmk (ap)+ ! get current signal mask
|
||||
bicl3 $0x80,r0,Im4+6 ! and remove the 8th bit
|
||||
movl $Im4,ap
|
||||
chmk (ap)+ ! and
|
||||
movl (sp)+,ap
|
||||
pushl tab [ap]
|
||||
pushl Itab [ap]
|
||||
jsb .trp
|
||||
movl $m1,ap
|
||||
movl $Im1,ap
|
||||
chmk (ap)+
|
||||
ret
|
||||
|
||||
.data
|
||||
m1:
|
||||
.word SYS_sigvec
|
||||
.long 3
|
||||
.long 8
|
||||
.long m1a
|
||||
.long 0
|
||||
m3:
|
||||
.word SYS_sigvec
|
||||
.long 3
|
||||
.long 8
|
||||
.long 0
|
||||
.long 0
|
||||
m4:
|
||||
.word SYS_sigsetmask
|
||||
.long 1
|
||||
.long 0
|
||||
m5:
|
||||
.word SYS_sigblock
|
||||
.long 1
|
||||
.long 0
|
||||
m1a:
|
||||
.long sig8
|
||||
.long 0
|
||||
.long 0
|
||||
m2:
|
||||
.word 1
|
||||
.long 1
|
||||
.long 0
|
||||
.sect .data
|
||||
Im1:
|
||||
.data2 SYS_sigvec
|
||||
.data4 3
|
||||
.data4 8
|
||||
.data4 Im1a
|
||||
.data4 0
|
||||
Im3:
|
||||
.data2 SYS_sigvec
|
||||
.data4 3
|
||||
.data4 8
|
||||
.data4 0
|
||||
.data4 0
|
||||
Im4:
|
||||
.data2 SYS_sigsetmask
|
||||
.data4 1
|
||||
.data4 0
|
||||
Im5:
|
||||
.data2 SYS_sigblock
|
||||
.data4 1
|
||||
.data4 0
|
||||
Im1a:
|
||||
.data4 Isig8
|
||||
.data4 0
|
||||
.data4 0
|
||||
Im2:
|
||||
.data2 1
|
||||
.data4 1
|
||||
.data4 0
|
||||
.reghp:
|
||||
.long _end
|
||||
.data4 _end
|
||||
hol0:
|
||||
.space 8
|
||||
.trppc:
|
||||
.space 4
|
||||
.trpim:
|
||||
.long 0
|
||||
tab:
|
||||
.long 0
|
||||
.long EIOVFL
|
||||
.long EIDIVZ
|
||||
.long EFOVFL
|
||||
.long EFDIVZ
|
||||
.long EFUNFL
|
||||
.long EILLINS
|
||||
.long EARRAY
|
||||
.long EFOVFL
|
||||
.long EFDIVZ
|
||||
.long EFUNFL
|
||||
.data4 0
|
||||
Itab:
|
||||
.data4 0
|
||||
.data4 EIOVFL
|
||||
.data4 EIDIVZ
|
||||
.data4 EFOVFL
|
||||
.data4 EFDIVZ
|
||||
.data4 EFUNFL
|
||||
.data4 EILLINS
|
||||
.data4 EARRAY
|
||||
.data4 EFOVFL
|
||||
.data4 EFDIVZ
|
||||
.data4 EFUNFL
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
||||
* See the copyright notice in the ACK home directory, in the file "Copyright".
|
||||
*/
|
||||
#define DEFINE(sysn) .globl sysn; .align 1; sysn: .word 0
|
||||
#define SYSTEM(sys) chmk $sys; bcs err; ret; err: jmp cerror
|
||||
#define SYSNORET(sys) chmk $sys; bcc ok; jmp cerror; ok:
|
||||
#define DEFINE(sysn) .define sysn; .align 1; sysn: .data2 0
|
||||
#define SYSTEM(sys) chmk $sys; bcs Ierr; ret; Ierr: jmp cerror
|
||||
#define SYSNORET(sys) chmk $sys; bcc Iok; jmp cerror; Iok:
|
||||
#define SYS_exit 1
|
||||
#define SYS_fork 2
|
||||
#define SYS_read 3
|
||||
|
@ -122,3 +122,6 @@
|
|||
#define SYS_quota 149
|
||||
#define SYS_getsockname 150
|
||||
#define SYS_getdirentries 156
|
||||
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
|
|
|
@ -3,7 +3,7 @@ DEFINE(_syscall)
|
|||
movl 4(ap),r0
|
||||
subl3 $1,(ap)+,(ap)
|
||||
chmk r0
|
||||
bcs err
|
||||
bcs Ierr
|
||||
ret
|
||||
err:
|
||||
Ierr:
|
||||
jmp cerror
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
#include "syscall.h"
|
||||
DEFINE(_vfork)
|
||||
movl 16(fp),r2
|
||||
movab newret,16(fp)
|
||||
ret # cleans stack
|
||||
newret:
|
||||
movab Inewret,16(fp)
|
||||
ret ! cleans stack
|
||||
Inewret:
|
||||
chmk $SYS_vfork
|
||||
bcs err
|
||||
bcs Ierr
|
||||
tstl r1
|
||||
beql parent
|
||||
beql Iparent
|
||||
clrl r0
|
||||
parent:
|
||||
Iparent:
|
||||
jmp (r2)
|
||||
err:
|
||||
Ierr:
|
||||
movl r0,_errno
|
||||
mnegl $1,r0
|
||||
jmp (r2)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
DEFINE(_wait)
|
||||
SYSNORET(SYS_wait)
|
||||
tstl 4(ap)
|
||||
beql out
|
||||
beql Iout
|
||||
movl r1,*4(ap)
|
||||
out:
|
||||
Iout:
|
||||
ret
|
||||
|
|
|
@ -4,11 +4,11 @@ DEFINE(_wait3)
|
|||
movl 12(ap),r1
|
||||
bispsw $0xf
|
||||
chmk $SYS_wait
|
||||
bcs err
|
||||
bcs Ierr
|
||||
tstl 4(ap)
|
||||
beql out
|
||||
beql Iout
|
||||
movl r1,*4(ap)
|
||||
out:
|
||||
Iout:
|
||||
ret
|
||||
err:
|
||||
Ierr:
|
||||
jmp cerror
|
||||
|
|
|
@ -16,8 +16,7 @@ head_em.o: head_em.s
|
|||
vax4 -I../../../h -c head_em.s
|
||||
|
||||
libmon_o.a: libmon_s.a
|
||||
ASAR=ar ; export ASAR ;\
|
||||
RANLIB=ranlib ; export RANLIB ;\
|
||||
ASAR=aal ; export ASAR ;\
|
||||
march . libmon_o.a
|
||||
|
||||
clean:
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
.set exit,1
|
||||
.globl __exit
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
exit = 1
|
||||
.define __exit
|
||||
|
||||
__exit:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $exit
|
||||
halt
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
.set access,33
|
||||
.globl _access
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
access = 33
|
||||
.define _access
|
||||
.define cerror
|
||||
|
||||
_access:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $access
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
.set acct,51
|
||||
.globl _acct
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
acct = 51
|
||||
.define _acct
|
||||
.define cerror
|
||||
|
||||
_acct:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $acct
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
.set alarm,27
|
||||
.globl _alarm
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
alarm = 27
|
||||
.define _alarm
|
||||
|
||||
_alarm:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $alarm
|
||||
ret
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
.globl cerror
|
||||
.globl _errno
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define cerror
|
||||
.define _errno
|
||||
|
||||
.data
|
||||
_errno: .long 0
|
||||
.sect .bss
|
||||
.comm _errno, 4
|
||||
|
||||
.text
|
||||
.sect .text
|
||||
cerror:
|
||||
movl r0,_errno
|
||||
mnegl $1,r0
|
||||
|
|
|
@ -1,12 +1,14 @@
|
|||
.set chdir,12
|
||||
.globl _chdir
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
chdir = 12
|
||||
.define _chdir
|
||||
.define cerror
|
||||
|
||||
_chdir:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chdir
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
clrl r0
|
||||
ret
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
.set chmod,15
|
||||
.globl _chmod
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
chmod = 15
|
||||
.define _chmod
|
||||
|
||||
_chmod:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chmod
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
clrl r0
|
||||
ret
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
.set chown,16
|
||||
.globl _chown
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
chown = 16
|
||||
.define _chown
|
||||
|
||||
_chown:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chown
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
clrl r0
|
||||
ret
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
.set chroot,61
|
||||
.globl _chroot
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
chroot = 61
|
||||
.define _chroot
|
||||
|
||||
_chroot:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $chroot
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
.set close,6
|
||||
.globl _close
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
close = 6
|
||||
.define _close
|
||||
|
||||
_close:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $close
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
clrl r0
|
||||
ret
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
.set creat,8
|
||||
.globl _creat
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
creat = 8
|
||||
.define _creat
|
||||
|
||||
_creat:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $creat
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
.set dup,41
|
||||
.globl _dup
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
dup = 41
|
||||
.define _dup
|
||||
|
||||
_dup:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $dup
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
.globl _execl
|
||||
.globl _execv
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execl
|
||||
|
||||
_execl:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
pushab 8(ap)
|
||||
pushl 4(ap)
|
||||
calls $2,_execv
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
.globl _execle
|
||||
.globl _execve
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execle
|
||||
|
||||
_execle:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
movl (ap),r0
|
||||
pushl (ap)[r0]
|
||||
pushab 8(ap)
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
.globl _execv
|
||||
.globl _execve
|
||||
.globl _environ
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
.define _execv
|
||||
|
||||
_execv:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
pushl _environ
|
||||
pushl 8(ap)
|
||||
pushl 4(ap)
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
.set exece,59
|
||||
.globl _execve
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
exece = 59
|
||||
.define _execve
|
||||
|
||||
_execve:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $exece
|
||||
jmp cerror
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
.set fcntl,62
|
||||
.globl _fcntl
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
fcntl = 62
|
||||
.define _fcntl
|
||||
|
||||
_fcntl:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $fcntl
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
.set fork,2
|
||||
.globl _fork
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
fork = 2
|
||||
.define _fork
|
||||
|
||||
_fork:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $fork
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
blbc r1,out
|
||||
1:
|
||||
blbc r1,1f
|
||||
clrl r0
|
||||
out:
|
||||
1:
|
||||
ret
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
.set fstat,28
|
||||
.globl _fstat
|
||||
.globl cerror
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
fstat = 28
|
||||
.define _fstat
|
||||
|
||||
_fstat:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $fstat
|
||||
bcc ok
|
||||
bcc 1f
|
||||
jmp cerror
|
||||
ok:
|
||||
1:
|
||||
clrl r0
|
||||
ret
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.set getgid,47
|
||||
.globl _getegid
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
getgid = 47
|
||||
.define _getegid
|
||||
|
||||
_getegid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getgid
|
||||
movl r1,r0
|
||||
ret
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.set getuid,24
|
||||
.globl _geteuid
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
getuid = 24
|
||||
.define _geteuid
|
||||
|
||||
_geteuid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getuid
|
||||
movl r1,r0
|
||||
ret
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
.set getgid,47
|
||||
.globl _getgid
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
getgid = 47
|
||||
.define _getgid
|
||||
|
||||
_getgid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getgid
|
||||
ret
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
.set getpid,20
|
||||
.globl _getpid
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
getpid = 20
|
||||
.define _getpid
|
||||
|
||||
_getpid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getpid
|
||||
ret
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
.set getpid,20
|
||||
.globl _getppid
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
getpid = 20
|
||||
.define _getppid
|
||||
|
||||
_getppid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getpid
|
||||
movl r1,r0
|
||||
ret
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
.set getuid,24
|
||||
.globl _getuid
|
||||
.sect .text; .sect .rom; .sect .data; .sect .bss
|
||||
.sect .text
|
||||
getuid = 24
|
||||
.define _getuid
|
||||
|
||||
_getuid:
|
||||
.word 0x0000
|
||||
.data2 0x0000
|
||||
chmk $getuid
|
||||
ret
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue