Mercurial > hg > Members > kono > nitros9-code
view 3rdparty/packages/cc/sources/access.a @ 1942:b41df77588b0
printer is now scbbp
sio is now scbbt
All references changed in various files
author | boisy |
---|---|
date | Sat, 26 Nov 2005 22:51:50 +0000 |
parents | 0198655f2552 |
children |
line wrap: on
line source
* * File access system calls * pmode equ $0b r/w for owner, r for others ifp1 use ..../defs/os9defs.a endc psect access_a,0,0,2,0,0 * access(name,mode) access: ldx 2,s lda 5,s os9 I$OPEN bcs access10 os9 I$CLOSE access10 lbra _sysret * open(name,mode) open: ldx 2,s lda 5,s os9 I$OPEN lbcs _os9err tfr a,b clra rts * close(fd) close: lda 3,s os9 I$CLOSE lbra _sysret * mknod(name,mode) mknod: ldx 2,s ldb 5,s os9 I$MAKDIR lbra _sysret * creat(fname,mode) creat: ldx 2,s lda 5,s tfr a,b proto attr andb #%00100100 save exec bits orb #pmode default modes os9 I$CREATE bcs creat10 crret tfr a,b clra rts creat10 cmpb #E$CEF already there? lbne _os9err no - can't cope lda 5,s get the mode bita #$80 trying to create a directory? lbne _os9err yes, forget it anda #7 access mode bits ldx 2,s get the name again os9 I$OPEN try to open it lbcs _os9err pshs a,u ldx #0 leau ,x ldb #2 os9 I$SETSTT set the file size to zero puls a,u bcc crret pshs b os9 I$CLOSE puls b lbra _os9err * unlink(fname) unlink: ldx 2,s os9 I$DELETE lbra _sysret * dup(fildes) dup: lda 3,s os9 I$DUP lbcs _os9err tfr a,b clra rts endsect