X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libsrc%2Fatari%2Fclose.s;h=d18fbec343d19e053f4b26dee6534166e69c1cf9;hb=34e75afec3091c211e132d7b49d92d4cdcc84d06;hp=23d80360d90f0755b68a872f026c63339d929c43;hpb=9e74c2b26f4c25c54b82c6b1148ec7973d72ffd2;p=cc65 diff --git a/libsrc/atari/close.s b/libsrc/atari/close.s index 23d80360d..d18fbec34 100644 --- a/libsrc/atari/close.s +++ b/libsrc/atari/close.s @@ -1,34 +1,29 @@ ; ; Christian Groessler, May-2000 ; -; int close(int fd); +; int __fastcall__ close(int fd); ; - .include "atari.inc" - .export _close - .import __do_oserror,popax,__oserror - .import fdtoiocb_down,__inviocb + .include "atari.inc" + .export _close + .import __do_oserror,popax,__oserror + .import fdtoiocb_down,__inviocb -.proc _close - jsr fdtoiocb_down ; get iocb index into X and decr. usage count - bmi inverr - bne ok ; not last one -> don't close yet -; asl a -; asl a -; asl a -; asl a -; tax - lda #CLOSE - sta ICCOM,x - jsr CIOV - bmi closerr -ok: ldx #0 - stx __oserror ; clear system specific error code - txa - rts +.proc _close + jsr fdtoiocb_down ; get iocb index into X and decr. usage count + bmi inverr + bne ok ; not last one -> don't close yet + lda #CLOSE + sta ICCOM,x + jsr CIOV + bmi closerr +ok: ldx #0 + stx __oserror ; clear system specific error code + txa + rts -inverr: jmp __inviocb -closerr:jmp __do_oserror +inverr: jmp __inviocb +closerr:jmp __do_oserror .endproc