X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libsrc%2Fcommon%2Fstrerror.s;h=98a5725b186ceba855edb32e3531dad715996028;hb=4f6110604326357d378f373b917b92c7ad92997e;hp=6149c42fc20fddc697268a8845f0f44fe2e2c4f6;hpb=53dd513176425872128ef26031d00952ef7a0628;p=cc65 diff --git a/libsrc/common/strerror.s b/libsrc/common/strerror.s index 6149c42fc..98a5725b1 100644 --- a/libsrc/common/strerror.s +++ b/libsrc/common/strerror.s @@ -15,14 +15,20 @@ _strerror: bne @L1 ; Jump if invalid error cmp #EMAX ; Valid error code (map EUNKNOWN to 0)? bcc @L2 ; Jump if ok -@L1: lda #$00 ; "Unknown error" -@L2: asl a ; * 2 - tay + +; The given error code is invalid + +@L1: lda #EINVAL ; = 0 + sta __errno+1 +; lda #$00 ; A contains zero: "Unknown error" ; Load the pointer to the error message and return - lda __sys_errlist+1,y - tax +@L2: asl a ; * 2 + tay + ldx __sys_errlist+1,y lda __sys_errlist,y rts