@@ -1,6 +1,5 @@
libmon_s.a
exit.s
-_exit.s
access.s
acct.s
alarm.s
@@ -62,3 +61,32 @@ syscall.s
call.s
cleanup.s
errno.s
+_alarm.s
+_brk.s
+_close.s
+_creat.s
+_dup.s
+_dup2.s
+_execl.s
+_execve.s
+_exit.s
+_fcntl.s
+_fork.s
+_fstat.s
+_ftime.s
+_getpid.s
+_gtty.s
+_ioctl.s
+_kill.s
+_link.s
+_lseek.s
+_open.s
+_pause.s
+_pipe.s
+_read.s
+_stty.s
+_time.s
+_times.s
+_unlink.s
+_wait.s
+_write.s
@@ -0,0 +1,12 @@
+.define __alarm
+.extern __alarm
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+__alarm:
+ move.l 4(sp),a0
+ move.l #0x1B,d0
+ trap #0
+ rts
@@ -0,0 +1,25 @@
+.define __brk
+.define __sbrk
+__sbrk: move.l .limhp,a0
+ add.l 4(sp),a0
+ move.l #0x11,d0
+ bcs Icerror
+ move.l .limhp,d0
+ move.l d0,a0
+ move.l a0,.limhp
+Icerror: jmp cerror
+__brk: move.l #0x11,d0
+ move.l 4(sp),.limhp
+ clr.l d0
@@ -0,0 +1,10 @@
+.define __close
+.extern __close
+__close: move.l #0x6,d0
+ jmp callc
@@ -0,0 +1,11 @@
+.define __creat
+.extern __creat
+__creat: move.l #0x8,d0
+ move.l 8(sp),d1
+ jmp call
+.define __dup
+.extern __dup
+__dup: move.l #0x29,d0
@@ -0,0 +1,17 @@
+.define __dup2
+.extern __dup2
+__dup2:
+tst.b -40(sp)
+link a6,#-0
+move.l 12(a6),-(sp)
+move.l #0,-(sp)
+move.l 8(a6),-(sp)
+jsr __fcntl
+add.l #12,sp
+unlk a6
+rts
@@ -0,0 +1,16 @@
+.define __execl
+.extern __execl
+__execl: link a6,#0
+ tst.b -132(sp)
+ move.l _environ,-(sp)
+ pea 12(a6)
+ move.l 8(a6),-(sp)
+ jsr __execve
+ add.l #0xC,sp
+ unlk a6
+.define __execve
+.extern __execve
+__execve: move.l #0x3B,d0
+ move.l 12(sp),a1
+ jmp calle
+.define __fcntl
+.extern __fcntl
+__fcntl: move.l #0x3E,d0
+.define __fork
+.extern __fork
+__fork: move.l #0x2,d0
+ bra 1f
+ bcc 2f
+ jmp cerror
+1:
+ !move.l d0,p_uid
+2:
+.define __fstat
+.extern __fstat
+__fstat: move.l #0x1C,d0
+.define __ftime
+.extern __ftime
+__ftime: clr.l -(sp)
+ jsr __time
+ lea 4(sp),sp
+ move.l d0,(a0)
+ clr.l 4(a0)
+ clr.w 8(a0)
+.define __getpid
+.extern __getpid
+__getpid: move.l #0x14,d0
+.define __gtty
+.extern __gtty
+__gtty:
+move.l #29704,-(sp)
+jsr __ioctl
+.define __ioctl
+.extern __ioctl
+__ioctl: move.l #0x36,d0
+.define __kill
+.extern __kill
+__kill: move.l #0x25,d0
+ move.l 6(sp),d1
+.define __link
+.extern __link
+__link: move.l #0x9,d0
+.define __lseek
+.extern __lseek
+__lseek: move.l #0x13,d0
+.define __open
+.extern __open
+__open: move.l #0x5,d0
+.define __pause
+.extern __pause
+__pause: move.l #0x1D,d0
@@ -0,0 +1,18 @@
+.define __pipe
+.extern __pipe
+__pipe:
+ move.l #0x2A,d0
+ bcc 1f
+ move.l d0,(a0)+
+ move.l d1,(a0)
+.define __read
+.extern __read
+__read: move.l #0x3,d0
+.define __stty
+.extern __stty
+__stty:
+move.l #29705,-(sp)
@@ -0,0 +1,15 @@
+.define __time
+.extern __time
+__time: move.l #0xD,d0
+ tst.l 4(sp)
+ beq 1f
+.define __times
+.extern __times
+__times: move.l #0x2B,d0
+.define __unlink
+.extern __unlink
+__unlink: move.l #0xA,d0
+.define __wait
+.extern __wait
+__wait: move.l #0x7,d0
+ bcs cerror
+.define __write
+.extern __write
+__write: move.l #0x4,d0
@@ -1,31 +1,25 @@
.define _brk
.define _sbrk
-.extern _brk
-.extern _sbrk
.sect .text
.sect .rom
.sect .data
.sect .bss
-_sbrk: move.l nd,a0
+_sbrk: move.l .limhp,a0
add.l 4(sp),a0
move.l #0x11,d0
trap #0
- bcs lcerror
- move.l nd,d0
move.l d0,a0
- move.l a0,nd
rts
-lcerror: jmp cerror
_brk: move.l #0x11,d0
move.l 4(sp),a0
- move.l 4(sp),nd
clr.l d0
-.sect .data
-nd:
- .data4 endbss
-.sect .text