diff --git a/mach/m68k4/libsys/LIST b/mach/m68k4/libsys/LIST index 2abc65bd8..c8b9a5fb9 100644 --- a/mach/m68k4/libsys/LIST +++ b/mach/m68k4/libsys/LIST @@ -4,40 +4,60 @@ _exit.s access.s acct.s alarm.s +_alarm.s chdir.s chmod.s chown.s chroot.s close.s +_close.s creat.s +_creat.s dup.s +_dup.s dup2.s +_dup2.s execle.s execl.s +_execl.s execv.s execve.s +_execve.s fork.s +_fork.s ftime.s +_ftime.s getegid.s getgid.s getpid.s +_getpid.s getuid.s stty.s +_stty.s gtty.s +_gtty.s ioctl.s +_ioctl.s kill.s +_kill.s link.s +_link.s lock.s lseek.s +_lseek.s mknod.s mount.s nice.s open.s +_open.s pause.s +_pause.s pipe.s +_pipe.s profil.s ptrace.s read.s +_read.s setgid.s setuid.s stat.s @@ -45,14 +65,20 @@ stime.s sync.s time.s times.s +_times.s umask.s umount.s unlink.s +_unlink.s utime.s write.s +_write.s brk.s +_brk.s wait.s +_wait.s fstat.s +_fstat.s signal.s call.s cleanup.s diff --git a/mach/m68k4/libsys/_alarm.s b/mach/m68k4/libsys/_alarm.s new file mode 100644 index 000000000..2ef9b68ff --- /dev/null +++ b/mach/m68k4/libsys/_alarm.s @@ -0,0 +1,12 @@ +.define __alarm +.extern __alarm +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__alarm: clr.l d0 + move.l 4(sp),a0 + move.w #0x1B,d0 + trap #0 + rts diff --git a/mach/m68k4/libsys/_brk.s b/mach/m68k4/libsys/_brk.s new file mode 100644 index 000000000..5b69a92da --- /dev/null +++ b/mach/m68k4/libsys/_brk.s @@ -0,0 +1,31 @@ +.define __brk +.define __sbrk +.extern __brk +.extern __sbrk +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__sbrk: move.l nd,a0 + add.l 4(sp),a0 + move.w #0x11,d0 + trap #0 + bcs lcerror + move.l nd,d0 + move.l d0,a0 + add.l 4(sp),a0 + move.l a0,nd + rts +lcerror: jmp cerror +__brk: move.w #0x11,d0 + move.l 4(sp),a0 + trap #0 + bcs lcerror + move.l 4(sp),nd + clr.l d0 + rts +.sect .data +nd: + .data4 endbss +.sect .text diff --git a/mach/m68k4/libsys/_close.s b/mach/m68k4/libsys/_close.s new file mode 100644 index 000000000..390d48966 --- /dev/null +++ b/mach/m68k4/libsys/_close.s @@ -0,0 +1,10 @@ +.define __close +.extern __close +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__close: move.w #0x6,d0 + move.l 4(sp),a0 + jmp callc diff --git a/mach/m68k4/libsys/_creat.s b/mach/m68k4/libsys/_creat.s new file mode 100644 index 000000000..6fec8900a --- /dev/null +++ b/mach/m68k4/libsys/_creat.s @@ -0,0 +1,11 @@ +.define __creat +.extern __creat +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__creat: move.w #0x8,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + jmp call diff --git a/mach/m68k4/libsys/_dup.s b/mach/m68k4/libsys/_dup.s new file mode 100644 index 000000000..0725c299e --- /dev/null +++ b/mach/m68k4/libsys/_dup.s @@ -0,0 +1,10 @@ +.define __dup +.extern __dup +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__dup: move.w #0x29,d0 + move.l 4(sp),a0 + jmp call diff --git a/mach/m68k4/libsys/_dup2.s b/mach/m68k4/libsys/_dup2.s new file mode 100644 index 000000000..4f37ba1c5 --- /dev/null +++ b/mach/m68k4/libsys/_dup2.s @@ -0,0 +1,12 @@ +.define __dup2 +.extern __dup2 +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__dup2: move.w #0x29,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + add.l #0x40,a0 + jmp call diff --git a/mach/m68k4/libsys/_execl.s b/mach/m68k4/libsys/_execl.s new file mode 100644 index 000000000..7bb4d4797 --- /dev/null +++ b/mach/m68k4/libsys/_execl.s @@ -0,0 +1,16 @@ +.define __execl +.extern __execl +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__execl: link a6,#0 + tst.b -132(sp) + move.l _environ,-(sp) + pea 12(sp) + move.l 8(a6),-(sp) + jsr _execve + add.l #0xC,sp + unlk a6 + rts diff --git a/mach/m68k4/libsys/_execve.s b/mach/m68k4/libsys/_execve.s new file mode 100644 index 000000000..7a3b77ba1 --- /dev/null +++ b/mach/m68k4/libsys/_execve.s @@ -0,0 +1,12 @@ +.define __execve +.extern __execve +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__execve: move.w #0x3B,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + move.l 12(sp),a1 + jmp calle diff --git a/mach/m68k4/libsys/_fork.s b/mach/m68k4/libsys/_fork.s new file mode 100644 index 000000000..f7199c375 --- /dev/null +++ b/mach/m68k4/libsys/_fork.s @@ -0,0 +1,17 @@ +.define __fork +.extern __fork +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__fork: move.w #0x2,d0 + trap #0 + bra 1f + bcc 2f + jmp cerror +1: + !move.l d0,p_uid + clr.l d0 +2: + rts diff --git a/mach/m68k4/libsys/_fstat.s b/mach/m68k4/libsys/_fstat.s new file mode 100644 index 000000000..4835a8b76 --- /dev/null +++ b/mach/m68k4/libsys/_fstat.s @@ -0,0 +1,11 @@ +.define __fstat +.extern __fstat +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__fstat: move.w #0x1C,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + jmp callc diff --git a/mach/m68k4/libsys/_ftime.s b/mach/m68k4/libsys/_ftime.s new file mode 100644 index 000000000..9fdaaf1da --- /dev/null +++ b/mach/m68k4/libsys/_ftime.s @@ -0,0 +1,10 @@ +.define __ftime +.extern __ftime +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__ftime: move.w #0x23,d0 + move.l 4(sp),a0 + jmp callc diff --git a/mach/m68k4/libsys/_getpid.s b/mach/m68k4/libsys/_getpid.s new file mode 100644 index 000000000..bf7639ce7 --- /dev/null +++ b/mach/m68k4/libsys/_getpid.s @@ -0,0 +1,10 @@ +.define __getpid +.extern __getpid +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__getpid: move.w #0x14,d0 + trap #0 + rts diff --git a/mach/m68k4/libsys/_gtty.s b/mach/m68k4/libsys/_gtty.s new file mode 100644 index 000000000..d42284eab --- /dev/null +++ b/mach/m68k4/libsys/_gtty.s @@ -0,0 +1,17 @@ +.define __gtty +.extern __gtty +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__gtty: +tst.b -40(sp) +link a6,#-0 +move.l 12(a6),-(sp) +move.l #29704,-(sp) +move.l 8(a6),-(sp) +jsr _ioctl +add.l #12,sp +unlk a6 +rts diff --git a/mach/m68k4/libsys/_ioctl.s b/mach/m68k4/libsys/_ioctl.s new file mode 100644 index 000000000..db397b37c --- /dev/null +++ b/mach/m68k4/libsys/_ioctl.s @@ -0,0 +1,12 @@ +.define __ioctl +.extern __ioctl +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__ioctl: move.w #0x36,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + move.l 12(sp),a1 + jmp callc diff --git a/mach/m68k4/libsys/_kill.s b/mach/m68k4/libsys/_kill.s new file mode 100644 index 000000000..7ebd7c28a --- /dev/null +++ b/mach/m68k4/libsys/_kill.s @@ -0,0 +1,11 @@ +.define __kill +.extern __kill +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__kill: move.w #0x25,d0 + move.l 4(sp),a0 + move.l 6(sp),d1 + jmp callc diff --git a/mach/m68k4/libsys/_link.s b/mach/m68k4/libsys/_link.s new file mode 100644 index 000000000..2f54c1c1d --- /dev/null +++ b/mach/m68k4/libsys/_link.s @@ -0,0 +1,11 @@ +.define __link +.extern __link +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__link: move.w #0x9,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + jmp callc diff --git a/mach/m68k4/libsys/_lseek.s b/mach/m68k4/libsys/_lseek.s new file mode 100644 index 000000000..534fea226 --- /dev/null +++ b/mach/m68k4/libsys/_lseek.s @@ -0,0 +1,12 @@ +.define __lseek +.extern __lseek +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__lseek: move.w #0x13,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + move.l 12(sp),a1 + jmp call diff --git a/mach/m68k4/libsys/_open.s b/mach/m68k4/libsys/_open.s new file mode 100644 index 000000000..64e5853a2 --- /dev/null +++ b/mach/m68k4/libsys/_open.s @@ -0,0 +1,11 @@ +.define __open +.extern __open +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__open: move.w #0x5,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + jmp call diff --git a/mach/m68k4/libsys/_pause.s b/mach/m68k4/libsys/_pause.s new file mode 100644 index 000000000..046e68eb4 --- /dev/null +++ b/mach/m68k4/libsys/_pause.s @@ -0,0 +1,10 @@ +.define __pause +.extern __pause +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__pause: move.w #0x1D,d0 + trap #0 + rts diff --git a/mach/m68k4/libsys/_pipe.s b/mach/m68k4/libsys/_pipe.s new file mode 100644 index 000000000..0fe7862f4 --- /dev/null +++ b/mach/m68k4/libsys/_pipe.s @@ -0,0 +1,18 @@ +.define __pipe +.extern __pipe +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__pipe: + move.w #0x2A,d0 + trap #0 + bcc 1f + jmp cerror +1: + move.l 4(sp),a0 + move.l d0,(a0)+ + move.l d1,(a0) + clr.l d0 + rts diff --git a/mach/m68k4/libsys/_read.s b/mach/m68k4/libsys/_read.s new file mode 100644 index 000000000..d523a9d96 --- /dev/null +++ b/mach/m68k4/libsys/_read.s @@ -0,0 +1,12 @@ +.define __read +.extern __read +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__read: move.w #0x3,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + move.l 12(sp),a1 + jmp call diff --git a/mach/m68k4/libsys/_stty.s b/mach/m68k4/libsys/_stty.s new file mode 100644 index 000000000..df6b5ca90 --- /dev/null +++ b/mach/m68k4/libsys/_stty.s @@ -0,0 +1,17 @@ +.define __stty +.extern __stty +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__stty: +tst.b -40(sp) +link a6,#-0 +move.l 12(a6),-(sp) +move.l #29705,-(sp) +move.l 8(a6),-(sp) +jsr _ioctl +add.l #12,sp +unlk a6 +rts diff --git a/mach/m68k4/libsys/_times.s b/mach/m68k4/libsys/_times.s new file mode 100644 index 000000000..c1f4fdc4e --- /dev/null +++ b/mach/m68k4/libsys/_times.s @@ -0,0 +1,11 @@ +.define __times +.extern __times +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__times: move.w #0x2B,d0 + move.l 4(sp),a0 + trap #0 + rts diff --git a/mach/m68k4/libsys/_unlink.s b/mach/m68k4/libsys/_unlink.s new file mode 100644 index 000000000..6304a2012 --- /dev/null +++ b/mach/m68k4/libsys/_unlink.s @@ -0,0 +1,10 @@ +.define __unlink +.extern __unlink +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__unlink: move.w #0xA,d0 + move.l 4(sp),a0 + jmp callc diff --git a/mach/m68k4/libsys/_wait.s b/mach/m68k4/libsys/_wait.s new file mode 100644 index 000000000..aa62163c2 --- /dev/null +++ b/mach/m68k4/libsys/_wait.s @@ -0,0 +1,17 @@ +.define __wait +.extern __wait +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__wait: move.w #0x7,d0 + move.l 4(sp),a0 + trap #0 + bcs cerror + tst.l 4(sp) + beq 1f + move.l 4(sp),a0 + move.l d1,(a0) +1: + rts diff --git a/mach/m68k4/libsys/_write.s b/mach/m68k4/libsys/_write.s new file mode 100644 index 000000000..0e8c6f347 --- /dev/null +++ b/mach/m68k4/libsys/_write.s @@ -0,0 +1,12 @@ +.define __write +.extern __write +.sect .text +.sect .rom +.sect .data +.sect .bss +.sect .text +__write: move.w #0x4,d0 + move.l 4(sp),a0 + move.l 8(sp),d1 + move.l 12(sp),a1 + jmp call