Invalid error codes will set errno
git-svn-id: svn://svn.cc65.org/cc65/trunk@2784 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
@@ -15,12 +15,19 @@ _strerror:
|
|||||||
bne @L1 ; Jump if invalid error
|
bne @L1 ; Jump if invalid error
|
||||||
cmp #EMAX ; Valid error code (map EUNKNOWN to 0)?
|
cmp #EMAX ; Valid error code (map EUNKNOWN to 0)?
|
||||||
bcc @L2 ; Jump if ok
|
bcc @L2 ; Jump if ok
|
||||||
@L1: lda #$00 ; "Unknown error"
|
|
||||||
@L2: asl a ; * 2
|
; The given error code is invalid
|
||||||
tay
|
|
||||||
|
@L1: lda #<EINVAL
|
||||||
|
sta __errno
|
||||||
|
lda #>EINVAL ; = 0
|
||||||
|
sta __errno+1
|
||||||
|
; lda #$00 ; A contains zero: "Unknown error"
|
||||||
|
|
||||||
; Load the pointer to the error message and return
|
; Load the pointer to the error message and return
|
||||||
|
|
||||||
|
@L2: asl a ; * 2
|
||||||
|
tay
|
||||||
ldx __sys_errlist+1,y
|
ldx __sys_errlist+1,y
|
||||||
lda __sys_errlist,y
|
lda __sys_errlist,y
|
||||||
rts
|
rts
|
||||||
|
|||||||
Reference in New Issue
Block a user