Merge branch 'master' into coniopeek
This commit is contained in:
@@ -3,10 +3,10 @@
|
||||
; originally by Ullrich von Bassewitz and Sidney Cadot
|
||||
;
|
||||
; clock_t clock (void);
|
||||
; clock_t _clocks_per_sec (void);
|
||||
; clock_t __clocks_per_sec (void);
|
||||
;
|
||||
|
||||
.export _clock, __clocks_per_sec
|
||||
.export _clock, ___clocks_per_sec
|
||||
.importzp sreg
|
||||
|
||||
.include "atari.inc"
|
||||
@@ -28,7 +28,7 @@
|
||||
.endproc
|
||||
|
||||
|
||||
.proc __clocks_per_sec
|
||||
.proc ___clocks_per_sec
|
||||
|
||||
ldx #$00 ; Clear byte 1 of return value
|
||||
stx sreg ; Clear byte 2 of return value
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
.include "atari.inc"
|
||||
.export _close
|
||||
.import __do_oserror,popax,__oserror
|
||||
.import __do_oserror,popax,___oserror
|
||||
.import fdtoiocb_down,__inviocb
|
||||
|
||||
.proc _close
|
||||
@@ -18,7 +18,7 @@
|
||||
jsr CIOV
|
||||
bmi closerr
|
||||
ok: ldx #0
|
||||
stx __oserror ; clear system specific error code
|
||||
stx ___oserror ; clear system specific error code
|
||||
txa
|
||||
rts
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
;
|
||||
|
||||
.export _dio_phys_to_log
|
||||
.import popax,__oserror
|
||||
.import popax,___oserror
|
||||
.importzp ptr1,ptr2,ptr3
|
||||
.include "atari.inc"
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
ldx #0
|
||||
txa
|
||||
ret:
|
||||
sta __oserror
|
||||
sta ___oserror
|
||||
rts ; return success
|
||||
|
||||
; invalid handle
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
.export _dio_log_to_phys
|
||||
.include "atari.inc"
|
||||
.importzp ptr1,ptr2,ptr3
|
||||
.import popax,popptr1,__oserror
|
||||
.import popax,popptr1,___oserror
|
||||
|
||||
.proc _dio_log_to_phys
|
||||
|
||||
@@ -56,7 +56,7 @@ _l1: lda (ptr1,x)
|
||||
|
||||
txa
|
||||
ret:
|
||||
sta __oserror
|
||||
sta ___oserror
|
||||
rts ; return success
|
||||
|
||||
; invalid handle
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
.export _dio_open, _dio_close
|
||||
.export sectsizetab
|
||||
.import __oserror, __sio_call, _dio_read
|
||||
.import ___oserror, __sio_call, _dio_read
|
||||
.import pushax, addysp, subysp
|
||||
.importzp ptr2, sp
|
||||
.include "atari.inc"
|
||||
@@ -31,7 +31,7 @@ sectsizetab:
|
||||
|
||||
_inv_drive:
|
||||
lda #NONDEV ; non-existent device
|
||||
sta __oserror
|
||||
sta ___oserror
|
||||
lda #0
|
||||
tax
|
||||
rts ; return NULL
|
||||
@@ -49,7 +49,7 @@ _dio_open:
|
||||
sta sectsizetab+sst_flag,x ; set flag that drive is "open"
|
||||
lda #0
|
||||
sta sectsizetab+sst_sectsize+1,x
|
||||
sta __oserror ; success
|
||||
sta ___oserror ; success
|
||||
tya
|
||||
sta sectsizetab+sst_driveno,x
|
||||
stx ptr2
|
||||
@@ -156,7 +156,7 @@ s128: lda #128
|
||||
lda #0
|
||||
ldy #sst_flag
|
||||
sta (ptr2),y
|
||||
sta __oserror ; success
|
||||
sta ___oserror ; success
|
||||
tax
|
||||
rts ; return no error
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
.include "atari.inc"
|
||||
.export _dio_query_sectsize
|
||||
.importzp ptr1,tmp1
|
||||
.import popax, __oserror
|
||||
.import popax, ___oserror
|
||||
|
||||
.proc _dio_query_sectsize
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
stx ptr1+1
|
||||
|
||||
lda #0
|
||||
sta __oserror
|
||||
sta ___oserror
|
||||
|
||||
ldy #sst_sectsize+1
|
||||
lda (ptr1),y
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; __do_oserror updates __oserror and errno. Do a JMP here right after
|
||||
; __do_oserror updates ___oserror and errno. Do a JMP here right after
|
||||
; calling CIOV. It will return with AX set to -1 ($FFFF). It expects the CIO
|
||||
; status in Y.
|
||||
;
|
||||
@@ -9,4 +9,4 @@
|
||||
|
||||
__do_oserror:
|
||||
tya
|
||||
jmp __mappederrno
|
||||
jmp ___mappederrno
|
||||
|
||||
@@ -34,7 +34,7 @@ notsupp:lda #ENOSYS ; "unsupported system call"
|
||||
.byte $2C ; bit opcode, eats the next 2 bytes
|
||||
noiocb: lda #EMFILE ; "too many open files"
|
||||
jsr incsp2 ; clean up stack
|
||||
seterr: jmp __directerrno
|
||||
seterr: jmp ___directerrno
|
||||
|
||||
|
||||
; entry point
|
||||
@@ -148,7 +148,7 @@ copycd: lda #ATEOL
|
||||
pha ; remember error code
|
||||
jsr close ; close the IOCB (required even if open failed)
|
||||
pla ; put error code back into A
|
||||
setmerr:jmp __mappederrno ; update errno from OS specific error code in A
|
||||
setmerr:jmp ___mappederrno ; update errno from OS specific error code in A
|
||||
|
||||
openok: lda #>buf
|
||||
sta ICBAH,x ; set buffer address
|
||||
|
||||
@@ -41,7 +41,7 @@ _clock_getres:
|
||||
enosys: lda #ENOSYS
|
||||
|
||||
; Set __errno
|
||||
jmp __directerrno
|
||||
jmp ___directerrno
|
||||
|
||||
;----------------------------------------------------------------------------
|
||||
; timespec struct with tv_sec set to 1 second
|
||||
|
||||
@@ -105,7 +105,7 @@ errexit:jsr incsp3 ; Preserves A
|
||||
|
||||
; set __errno
|
||||
|
||||
jmp __directerrno
|
||||
jmp ___directerrno
|
||||
|
||||
; -------
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
.export __graphics
|
||||
|
||||
.import findfreeiocb
|
||||
.import __oserror
|
||||
.import ___oserror
|
||||
.import fddecusage
|
||||
.import clriocb
|
||||
.import fdtoiocb
|
||||
@@ -45,7 +45,7 @@ parmok: jsr findfreeiocb
|
||||
beq iocbok ; we found one
|
||||
|
||||
lda #<EMFILE ; "too many open files"
|
||||
seterr: jsr __mappederrno ; @@@ probably not correct to set errno here @@@
|
||||
seterr: jsr ___mappederrno ; @@@ probably not correct to set errno here @@@
|
||||
rts ; return -1
|
||||
|
||||
;invmode:ldx #>EINVAL
|
||||
@@ -94,7 +94,7 @@ doopen: txa
|
||||
|
||||
lda tmp2 ; get fd
|
||||
ldx #0
|
||||
stx __oserror
|
||||
stx ___oserror
|
||||
rts
|
||||
|
||||
cioerr: sty tmp3 ; remember error code
|
||||
@@ -103,6 +103,6 @@ cioerr: sty tmp3 ; remember error code
|
||||
jsr CIOV ; close IOCB again since open failed
|
||||
jsr fddecusage ; and decrement usage counter of fd
|
||||
lda tmp3 ; put error code into A
|
||||
jmp __mappederrno
|
||||
jmp ___mappederrno
|
||||
|
||||
.endproc ; __graphics
|
||||
|
||||
@@ -7,4 +7,4 @@
|
||||
|
||||
__inviocb:
|
||||
lda #<EINVAL
|
||||
jmp __directerrno
|
||||
jmp ___directerrno
|
||||
|
||||
@@ -69,7 +69,8 @@ INSTALL:
|
||||
lda #$34
|
||||
sta PACTL
|
||||
lda #JOY_ERR_OK
|
||||
ldx #0
|
||||
.assert JOY_ERR_OK = 0, error
|
||||
tax
|
||||
; rts ; Run into UNINSTALL instead
|
||||
|
||||
; ------------------------------------------------------------------------
|
||||
|
||||
@@ -62,7 +62,8 @@ JOY_COUNT = 4 ; Number of joysticks we support
|
||||
|
||||
INSTALL:
|
||||
lda #JOY_ERR_OK
|
||||
ldx #0
|
||||
.assert JOY_ERR_OK = 0, error
|
||||
tax
|
||||
; rts ; Run into UNINSTALL instead
|
||||
|
||||
; ------------------------------------------------------------------------
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
|
||||
.export _lseek
|
||||
.import incsp6,__oserror
|
||||
.import incsp6,___oserror
|
||||
.import __inviocb,ldax0sp,ldaxysp,fdtoiocb
|
||||
.import __dos_type
|
||||
.import fd_table
|
||||
@@ -21,7 +21,7 @@
|
||||
; seeking not supported, return -1 and ENOSYS errno value
|
||||
no_supp:jsr incsp6
|
||||
lda #<ENOSYS
|
||||
jsr __directerrno ; returns with $FFFF in AX
|
||||
jsr ___directerrno ; returns with $FFFF in AX
|
||||
sta sreg
|
||||
sta sreg+1
|
||||
rts
|
||||
@@ -94,7 +94,7 @@ xxerr: tya
|
||||
pha
|
||||
jsr incsp6
|
||||
pla
|
||||
jsr __mappederrno ; returns with $FFFF in AX
|
||||
jsr ___mappederrno ; returns with $FFFF in AX
|
||||
sta sreg
|
||||
sta sreg+1
|
||||
rts
|
||||
|
||||
@@ -137,9 +137,10 @@ INSTALL:
|
||||
ldx YPos+1
|
||||
jsr CMOVEY
|
||||
|
||||
; Done, return zero (= MOUSE_ERR_OK)
|
||||
; Done
|
||||
|
||||
ldx #$00
|
||||
ldx #MOUSE_ERR_OK
|
||||
.assert MOUSE_ERR_OK = 0, error
|
||||
txa
|
||||
rts
|
||||
|
||||
|
||||
@@ -268,9 +268,10 @@ INSTALL:
|
||||
and #$0f
|
||||
sta old_porta_vbi
|
||||
|
||||
; Done, return zero (= MOUSE_ERR_OK)
|
||||
; Done
|
||||
|
||||
ldx #$00
|
||||
ldx #MOUSE_ERR_OK
|
||||
.assert MOUSE_ERR_OK = 0, error
|
||||
txa
|
||||
rts
|
||||
|
||||
|
||||
@@ -132,9 +132,10 @@ INSTALL:
|
||||
ldx YPos+1
|
||||
jsr CMOVEY
|
||||
|
||||
; Done, return zero (= MOUSE_ERR_OK)
|
||||
; Done
|
||||
|
||||
ldx #$00
|
||||
ldx #MOUSE_ERR_OK
|
||||
.assert MOUSE_ERR_OK = 0, error
|
||||
txa
|
||||
rts
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
.import findfreeiocb
|
||||
.import incsp4
|
||||
.import ldaxysp,addysp
|
||||
.import __oserror
|
||||
.import ___oserror
|
||||
.ifdef UCASE_FILENAME
|
||||
.import ucase_fn
|
||||
.endif
|
||||
@@ -37,7 +37,7 @@ parmok: jsr findfreeiocb
|
||||
beq iocbok ; we found one
|
||||
|
||||
lda #<EMFILE ; "too many open files"
|
||||
seterr: jsr __directerrno
|
||||
seterr: jsr ___directerrno
|
||||
jsr incsp4 ; clean up stack
|
||||
lda #$FF
|
||||
tax
|
||||
@@ -150,11 +150,11 @@ finish: php
|
||||
jsr CIOV ; close IOCB again since open failed
|
||||
jsr fddecusage ; and decrement usage counter of fd
|
||||
lda tmp3 ; put error code into A
|
||||
jmp __mappederrno
|
||||
jmp ___mappederrno
|
||||
|
||||
ok: lda tmp2 ; get fd
|
||||
ldx #0
|
||||
stx __oserror
|
||||
stx ___oserror
|
||||
rts
|
||||
|
||||
.endproc
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
; Christian Groessler, May-2000
|
||||
;
|
||||
; os specific error code mapping
|
||||
; int __fastcall__ _osmaperrno (unsigned char oserror);
|
||||
; int __fastcall__ __osmaperrno (unsigned char oserror);
|
||||
;
|
||||
|
||||
.include "errno.inc"
|
||||
.export __osmaperrno
|
||||
.export ___osmaperrno
|
||||
|
||||
.proc __osmaperrno
|
||||
.proc ___osmaperrno
|
||||
|
||||
cmp #$80 ; error or success
|
||||
bcs errcode ; error, jump
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
.include "atari.inc"
|
||||
.export _opendir, _readdir, _closedir
|
||||
.import findfreeiocb, clriocb
|
||||
.import __oserror, return0, __do_oserror
|
||||
.import ___oserror, return0, __do_oserror
|
||||
.importzp ptr1, tmp1
|
||||
.ifdef DEFAULT_DEVICE
|
||||
.import __defdev
|
||||
@@ -56,13 +56,13 @@
|
||||
jsr CIOV
|
||||
bmi cioerr
|
||||
lda #0
|
||||
sta __oserror
|
||||
sta ___oserror
|
||||
tax
|
||||
lda diriocb
|
||||
rts
|
||||
.endproc
|
||||
|
||||
cioerr: sty __oserror
|
||||
cioerr: sty ___oserror
|
||||
lda #CLOSE
|
||||
sta ICCOM,x
|
||||
jsr CIOV ; close IOCB again since open failed
|
||||
@@ -147,7 +147,7 @@ copychar: lda (ptr1),y ; src=y dest=tmp1
|
||||
jsr CIOV
|
||||
bmi @cioerr
|
||||
ldx #0
|
||||
stx __oserror ; clear system specific error code
|
||||
stx ___oserror ; clear system specific error code
|
||||
txa
|
||||
rts
|
||||
@cioerr: jmp __do_oserror
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
;
|
||||
; Christian Groessler, 06.11.2002
|
||||
;
|
||||
; void _randomize (void);
|
||||
; void __randomize (void);
|
||||
; /* Initialize the random number generator */
|
||||
;
|
||||
|
||||
.export __randomize
|
||||
.export ___randomize
|
||||
.import _srand
|
||||
|
||||
.include "atari.inc"
|
||||
|
||||
__randomize:
|
||||
___randomize:
|
||||
ldx VCOUNT ; Use vertical line counter as high byte
|
||||
lda RTCLOK+2 ; Use clock as low byte
|
||||
jmp _srand ; Initialize generator
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
;
|
||||
|
||||
.include "atari.inc"
|
||||
.import __rwsetup,__do_oserror,__inviocb,__oserror
|
||||
.import __rwsetup,__do_oserror,__inviocb,___oserror
|
||||
.export _read
|
||||
|
||||
_read: jsr __rwsetup ; do common setup for read and write
|
||||
@@ -33,7 +33,7 @@ done: lda ICBLL,x ; buf len lo
|
||||
lda ICBLH,x ; get buf len hi
|
||||
tax ; to X
|
||||
okdone: lda #0
|
||||
sta __oserror ; clear system dependend error code
|
||||
sta ___oserror ; clear system dependend error code
|
||||
pla ; get buf len lo
|
||||
rts
|
||||
|
||||
|
||||
@@ -135,8 +135,8 @@ my_CIOV:
|
||||
.code
|
||||
|
||||
invbaud:
|
||||
lda #<SER_ERR_BAUD_UNAVAIL
|
||||
ldx #>SER_ERR_BAUD_UNAVAIL
|
||||
lda #SER_ERR_BAUD_UNAVAIL
|
||||
ldx #0 ; return value is char
|
||||
openerr:
|
||||
rts
|
||||
|
||||
@@ -229,8 +229,9 @@ SER_OPEN:
|
||||
jsr my_CIOV
|
||||
bmi cioerr
|
||||
|
||||
lda #<SER_ERR_OK
|
||||
tax ; A is zero
|
||||
lda #SER_ERR_OK
|
||||
.assert SER_ERR_OK = 0, error
|
||||
tax
|
||||
rts
|
||||
|
||||
inverr: jmp my___inviocb
|
||||
@@ -240,8 +241,8 @@ cioerr:
|
||||
jsr my_fddecusage ; decrement usage counter of fd as open failed
|
||||
|
||||
init_err:
|
||||
ldx #0
|
||||
lda #SER_ERR_INIT_FAILED
|
||||
ldx #0 ; return value is char
|
||||
rts
|
||||
|
||||
;---- open the device
|
||||
@@ -313,8 +314,9 @@ SER_CLOSE:
|
||||
stx rshand+1
|
||||
inx
|
||||
stx cm_run
|
||||
@done: lda #<SER_ERR_OK
|
||||
ldx #>SER_ERR_OK
|
||||
@done: lda #SER_ERR_OK
|
||||
.assert SER_ERR_OK = 0, error
|
||||
tax
|
||||
rts
|
||||
|
||||
;----------------------------------------------------------------------------
|
||||
@@ -365,16 +367,16 @@ SER_GET:
|
||||
rts
|
||||
|
||||
@nix_da:lda #SER_ERR_NO_DATA
|
||||
ldx #0
|
||||
ldx #0 ; return value is char
|
||||
rts
|
||||
|
||||
ser_error:
|
||||
lda #SER_ERR_OVERFLOW ; there is no large selection of serial error codes... :-/
|
||||
ldx #0
|
||||
ldx #0 ; return value is char
|
||||
rts
|
||||
|
||||
ni_err: lda #SER_ERR_NOT_OPEN
|
||||
ldx #0
|
||||
ldx #0 ; return value is char
|
||||
rts
|
||||
|
||||
;----------------------------------------------------------------------------
|
||||
@@ -427,8 +429,8 @@ SER_STATUS:
|
||||
;
|
||||
|
||||
SER_IOCTL:
|
||||
lda #<SER_ERR_INV_IOCTL ; We don't support ioclts for now
|
||||
ldx #>SER_ERR_INV_IOCTL
|
||||
lda #SER_ERR_INV_IOCTL ; We don't support ioclts for now
|
||||
ldx #0 ; return value is char
|
||||
rts
|
||||
|
||||
;----------------------------------------------------------------------------
|
||||
@@ -456,8 +458,8 @@ search: lda HATABS,y ; get device name
|
||||
|
||||
; R: device not found, return error
|
||||
|
||||
lda #<SER_ERR_NO_DEVICE
|
||||
ldx #0
|
||||
lda #SER_ERR_NO_DEVICE
|
||||
ldx #0 ; return value is char
|
||||
rts
|
||||
|
||||
; R: device found, initialize jump table into main program
|
||||
@@ -554,8 +556,9 @@ found: lda ptr3
|
||||
pla
|
||||
sta ptr3
|
||||
|
||||
lda #<SER_ERR_OK
|
||||
tax ; A is zero
|
||||
lda #SER_ERR_OK
|
||||
.assert SER_ERR_OK = 0, error
|
||||
tax
|
||||
rts
|
||||
|
||||
|
||||
|
||||
22
libsrc/atari/ser_stat_stddrv.s
Normal file
22
libsrc/atari/ser_stat_stddrv.s
Normal file
@@ -0,0 +1,22 @@
|
||||
;
|
||||
; Address of the static standard serial driver
|
||||
;
|
||||
; Oliver Schmidt, 2022-12-22
|
||||
;
|
||||
; const void ser_static_stddrv[];
|
||||
;
|
||||
|
||||
.export _ser_static_stddrv
|
||||
.ifdef __ATARIXL__
|
||||
.import _atrxrdev_ser
|
||||
.else
|
||||
.import _atrrdev_ser
|
||||
.endif
|
||||
|
||||
.rodata
|
||||
|
||||
.ifdef __ATARIXL__
|
||||
_ser_static_stddrv := _atrxrdev_ser
|
||||
.else
|
||||
_ser_static_stddrv := _atrrdev_ser
|
||||
.endif
|
||||
18
libsrc/atari/ser_stddrv.s
Normal file
18
libsrc/atari/ser_stddrv.s
Normal file
@@ -0,0 +1,18 @@
|
||||
;
|
||||
; Name of the standard serial driver
|
||||
;
|
||||
; Oliver Schmidt, 2022-12-22
|
||||
;
|
||||
; const char ser_stddrv[];
|
||||
;
|
||||
|
||||
.export _ser_stddrv
|
||||
|
||||
.rodata
|
||||
|
||||
_ser_stddrv:
|
||||
.ifdef __ATARIXL__
|
||||
.asciiz "atrxrdev.ser"
|
||||
.else
|
||||
.asciiz "atrrdev.ser"
|
||||
.endif
|
||||
@@ -96,4 +96,4 @@ done: jmp return0
|
||||
; load errno code
|
||||
|
||||
enosys: lda #ENOSYS
|
||||
drcter: jmp __directerrno
|
||||
drcter: jmp ___directerrno
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
.export __sio_call
|
||||
.include "atari.inc"
|
||||
.import popa,popax,popptr1
|
||||
.import sectsizetab,__oserror
|
||||
.import sectsizetab,___oserror
|
||||
.importzp ptr1
|
||||
|
||||
.proc __sio_call
|
||||
@@ -76,7 +76,7 @@ _cont: lda #DISKID ; SIO bus ID of diskette drive
|
||||
bmi _req_err ; error occurred
|
||||
txa ; no error occurred
|
||||
_req_err:
|
||||
sta __oserror
|
||||
sta ___oserror
|
||||
rts
|
||||
|
||||
_inv_hand:
|
||||
|
||||
39
libsrc/atari/sound.s
Normal file
39
libsrc/atari/sound.s
Normal file
@@ -0,0 +1,39 @@
|
||||
;
|
||||
; Mariano Domínguez
|
||||
; 2022-12-4
|
||||
;
|
||||
; this file provides an equivalent to the BASIC SOUND function
|
||||
;
|
||||
; void __fastcall__ _sound (unsigned char voice, unsigned char frequency, unsigned char distortion, unsigned char volume);
|
||||
;
|
||||
.include "atari.inc"
|
||||
.export __sound
|
||||
.import popa
|
||||
.importzp tmp1,tmp2
|
||||
|
||||
; play sound, arguments: voice, pitch, distortion, volume
|
||||
.proc __sound
|
||||
sta tmp2 ;save volume
|
||||
jsr popa ;get distortion
|
||||
sta tmp1 ;save distortion
|
||||
jsr popa ;get pitch
|
||||
pha ;save in stack
|
||||
jsr popa ;get voice
|
||||
asl a ;adjust voice *2 for offset in x
|
||||
tax
|
||||
pla ;get pitch from stack
|
||||
sta AUDF1,x ;store pitch
|
||||
lda #0
|
||||
sta AUDCTL
|
||||
lda #3
|
||||
sta SKCTL ;init sound
|
||||
lda tmp1 ;get distortion
|
||||
asl a ;ignore the high nibble
|
||||
asl a
|
||||
asl a
|
||||
asl a
|
||||
clc ;setup for adding volume
|
||||
adc tmp2 ;add volume
|
||||
sta AUDC1,x ;volume + distortion in control channel
|
||||
rts
|
||||
.endproc
|
||||
@@ -2,7 +2,7 @@
|
||||
; int __fastcall__ write (int fd, const void* buf, unsigned count);
|
||||
;
|
||||
.include "atari.inc"
|
||||
.import __rwsetup,__do_oserror,__inviocb,__oserror
|
||||
.import __rwsetup,__do_oserror,__inviocb,___oserror
|
||||
.export _write
|
||||
_write:
|
||||
jsr __rwsetup ; do common setup
|
||||
@@ -21,7 +21,7 @@ write9:
|
||||
lda ICBLH,x ; buf len high
|
||||
tax
|
||||
lda #0
|
||||
sta __oserror ; clear system dependend error code
|
||||
sta ___oserror ; clear system dependend error code
|
||||
pla
|
||||
rts
|
||||
|
||||
|
||||
Reference in New Issue
Block a user