From 2525a995bca185e2321319f1e8db89a7cbbbc2a1 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Wed, 29 Jun 2016 12:40:06 +0100 Subject: [PATCH] scc6809: bits for syscalls --- Library/libs/fuzix-scc6809/Makefile | 120 +++++++++++++++++++++++ Library/libs/fuzix-scc6809/syscall6809.s | 12 +++ 2 files changed, 132 insertions(+) create mode 100644 Library/libs/fuzix-scc6809/Makefile create mode 100644 Library/libs/fuzix-scc6809/syscall6809.s diff --git a/Library/libs/fuzix-scc6809/Makefile b/Library/libs/fuzix-scc6809/Makefile new file mode 100644 index 00000000..a09baf20 --- /dev/null +++ b/Library/libs/fuzix-scc6809/Makefile @@ -0,0 +1,120 @@ +# Autogenerated by tools/syscall-scc6809 +CROSS_AS=lxas09 +CROSS_LD=lxld09 +CROSS_AR=lxar +ASYS=syscall$(PLATFORM).s +ASRCS = syscall__exit.s +ASRCS += syscall_open.s +ASRCS += syscall_close.s +ASRCS += syscall_rename.s +ASRCS += syscall_mknod.s +ASRCS += syscall_link.s +ASRCS += syscall_unlink.s +ASRCS += syscall_read.s +ASRCS += syscall_write.s +ASRCS += syscall__lseek.s +ASRCS += syscall_chdir.s +ASRCS += syscall_sync.s +ASRCS += syscall_access.s +ASRCS += syscall_chmod.s +ASRCS += syscall_chown.s +ASRCS += syscall__stat.s +ASRCS += syscall__fstat.s +ASRCS += syscall_dup.s +ASRCS += syscall_getpid.s +ASRCS += syscall_getppid.s +ASRCS += syscall_getuid.s +ASRCS += syscall_umask.s +ASRCS += syscall__getfsys.s +ASRCS += syscall_execve.s +ASRCS += syscall__getdirent.s +ASRCS += syscall_setuid.s +ASRCS += syscall_setgid.s +ASRCS += syscall__time.s +ASRCS += syscall__stime.s +ASRCS += syscall_ioctl.s +ASRCS += syscall_brk.s +ASRCS += syscall_sbrk.s +ASRCS += syscall__fork.s +ASRCS += syscall_mount.s +ASRCS += syscall_umount.s +ASRCS += syscall_signal.s +ASRCS += syscall_dup2.s +ASRCS += syscall__pause.s +ASRCS += syscall_alarm.s +ASRCS += syscall_kill.s +ASRCS += syscall_pipe.s +ASRCS += syscall_getgid.s +ASRCS += syscall_times.s +ASRCS += syscall_utime.s +ASRCS += syscall_geteuid.s +ASRCS += syscall_getegid.s +ASRCS += syscall_chroot.s +ASRCS += syscall_fcntl.s +ASRCS += syscall_fchdir.s +ASRCS += syscall_fchmod.s +ASRCS += syscall_fchown.s +ASRCS += syscall_mkdir.s +ASRCS += syscall_rmdir.s +ASRCS += syscall_setpgrp.s +ASRCS += syscall__uname.s +ASRCS += syscall_waitpid.s +ASRCS += syscall__profil.s +ASRCS += syscall_uadmin.s +ASRCS += syscall_nice.s +ASRCS += syscall__sigdisp.s +ASRCS += syscall_flock.s +ASRCS += syscall_getpgrp.s +ASRCS += syscall_yield.s +ASRCS += syscall_acct.s +ASRCS += syscall_memalloc.s +ASRCS += syscall_memfree.s +ASRCS += syscall__nosys66.s +ASRCS += syscall__nosys67.s +ASRCS += syscall__nosys68.s +ASRCS += syscall__nosys69.s +ASRCS += syscall__nosys70.s +ASRCS += syscall__nosys71.s +ASRCS += syscall__select.s +ASRCS += syscall_setgroups.s +ASRCS += syscall_getgroups.s +ASRCS += syscall_getrlimit.s +ASRCS += syscall_setrlimit.s +ASRCS += syscall_setpgid.s +ASRCS += syscall_setsid.s +ASRCS += syscall_getsid.s +ASRCS += syscall__nosys80.s +ASRCS += syscall__nosys81.s +ASRCS += syscall__nosys82.s +ASRCS += syscall__nosys83.s +ASRCS += syscall__nosys84.s +ASRCS += syscall__nosys85.s +ASRCS += syscall__nosys86.s +ASRCS += syscall__nosys87.s +ASRCS += syscall__nosys88.s +ASRCS += syscall__nosys89.s +ASRCS += syscall_socket.s +ASRCS += syscall_listen.s +ASRCS += syscall_bind.s +ASRCS += syscall_connect.s +ASRCS += syscall__accept.s +ASRCS += syscall__getsockaddrs.s +ASRCS += syscall__sendto.s +ASRCS += syscall__recvfrom.s +ASRCS += syscall__shutdown.s + + +ASRCALL = $(ASRCS) $(ASYS) + +AOBJS = $(ASRCALL:.s=.o) + +syslib.lib: $(AOBJS) + echo $(AOBJS) >syslib.l + $(CROSS_AR) rc syslib.lib $(AOBJS) + +$(AOBJS): %.o: %.s + $(CROSS_AS) $(ASOPTS) -o $*.o $< + +clean: + rm -f $(AOBJS) $(ASRCS) syslib.lib syslib.l *~ + diff --git a/Library/libs/fuzix-scc6809/syscall6809.s b/Library/libs/fuzix-scc6809/syscall6809.s new file mode 100644 index 00000000..947249e2 --- /dev/null +++ b/Library/libs/fuzix-scc6809/syscall6809.s @@ -0,0 +1,12 @@ + .globl __syscall + .globl _errno + + .text + +__syscall: + swi + cmpd #0 ; D holds errno, if any + beq @noerr + std _errno ; X is -1 in this case +@noerr: + rts -- 2.34.1