From: ol.sc Date: Wed, 16 Jun 2010 21:16:14 +0000 (+0000) Subject: Use MLI error names from ProDOS 8 Technical Reference Manual (and ProDOS 8 Technical... X-Git-Tag: V2.13.3~710 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=ab068d43e30de20c854ad454fce80ad163620a73;p=cc65 Use MLI error names from ProDOS 8 Technical Reference Manual (and ProDOS 8 Technical Note #21). git-svn-id: svn://svn.cc65.org/cc65/trunk@4722 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- diff --git a/libsrc/apple2/mli.s b/libsrc/apple2/mli.s index a1d05be8c..fa826cc61 100644 --- a/libsrc/apple2/mli.s +++ b/libsrc/apple2/mli.s @@ -30,6 +30,6 @@ call: .byte $00 rts ; Load oserror code and return -oserr: lda #$01 ; "Invalid MLI function code number" +oserr: lda #$01 ; "Bad system call number" sec rts diff --git a/libsrc/apple2/oserrlist.s b/libsrc/apple2/oserrlist.s index 2375d9b3b..56cbdf595 100644 --- a/libsrc/apple2/oserrlist.s +++ b/libsrc/apple2/oserrlist.s @@ -41,36 +41,36 @@ End: .rodata __sys_oserrlist: - sys_oserr_entry $01, "Invalid MLI function code number" - sys_oserr_entry $04, "Incorrect parameter count" - sys_oserr_entry $25, "Interrupt table full" + sys_oserr_entry $01, "Bad system call number" + sys_oserr_entry $04, "Bad system call parameter count" + sys_oserr_entry $25, "Interrupt vector table full" sys_oserr_entry $27, "I/O error" - sys_oserr_entry $28, "No device connected" - sys_oserr_entry $2B, "Write protected" + sys_oserr_entry $28, "No device detected/connected" + sys_oserr_entry $2B, "Disk write protected" sys_oserr_entry $2E, "Disk switched" - sys_oserr_entry $2F, "No disk in drive" + sys_oserr_entry $2F, "Device off-line" sys_oserr_entry $40, "Invalid pathname syntax" - sys_oserr_entry $42, "Too many files open" - sys_oserr_entry $43, "Bad reference number" - sys_oserr_entry $44, "Bad pathname" - sys_oserr_entry $45, "Volume not mounted" + sys_oserr_entry $42, "File Control Block table full" + sys_oserr_entry $43, "Invalid reference number" + sys_oserr_entry $44, "Path not found" + sys_oserr_entry $45, "Volume directory not found" sys_oserr_entry $46, "File not found" - sys_oserr_entry $47, "File already exists" - sys_oserr_entry $48, "Disk full" - sys_oserr_entry $49, "Directory full" - sys_oserr_entry $4A, "Incompatible ProDOS version" - sys_oserr_entry $4B, "Unsupported storage type" - sys_oserr_entry $4C, "End of file" - sys_oserr_entry $4D, "Position past EOF" - sys_oserr_entry $4E, "Access denied" - sys_oserr_entry $50, "File already open" - sys_oserr_entry $51, "File count bad" + sys_oserr_entry $47, "Duplicate filename" + sys_oserr_entry $48, "Overrun error" + sys_oserr_entry $49, "Volume directory full" + sys_oserr_entry $4A, "Incompatible file format" + sys_oserr_entry $4B, "Unsupported storage_type" + sys_oserr_entry $4C, "End of file has been encountered" + sys_oserr_entry $4D, "Position out of range" + sys_oserr_entry $4E, "Access error" + sys_oserr_entry $50, "File is open" + sys_oserr_entry $51, "Directory count error" sys_oserr_entry $52, "Not a ProDOS disk" - sys_oserr_entry $53, "Parameter out of range" - sys_oserr_entry $55, "Too many devices mounted" + sys_oserr_entry $53, "Invalid parameter" + sys_oserr_entry $55, "Volume Control Block table full" sys_oserr_entry $56, "Bad buffer address" - sys_oserr_entry $57, "Duplicate volume name" - sys_oserr_entry $5A, "Damaged disk free space bit map" + sys_oserr_entry $57, "Duplicate volume" + sys_oserr_entry $5A, "Bit map disk address is impossible" sys_oserr_sentinel "Unknown error" diff --git a/libsrc/apple2/oserror.s b/libsrc/apple2/oserror.s index 88420a5a4..ee0ec6e61 100644 --- a/libsrc/apple2/oserror.s +++ b/libsrc/apple2/oserror.s @@ -28,35 +28,35 @@ __osmaperrno: .rodata -ErrTab: .byte $01, ENOSYS ; Invalid MLI function code number - .byte $04, EINVAL ; Incorrect parameter count - .byte $25, ENOMEM ; Interrupt table full +ErrTab: .byte $01, ENOSYS ; Bad system call number + .byte $04, EINVAL ; Bad system call parameter count + .byte $25, ENOMEM ; Interrupt vector table full .byte $27, EIO ; I/O error - .byte $28, ENODEV ; No device connected - .byte $2B, EACCES ; Write protected + .byte $28, ENODEV ; No device detected/connected + .byte $2B, EACCES ; Disk write protected ; .byte $2E, EUNKNOWN ; Disk switched - .byte $2F, ENODEV ; No disk in drive + .byte $2F, ENODEV ; Device off-line .byte $40, EINVAL ; Invalid pathname syntax - .byte $42, EMFILE ; Too many files open - .byte $43, EINVAL ; Bad reference number - .byte $44, ENOENT ; Bad pathname - .byte $45, ENOENT ; Volume not mounted + .byte $42, EMFILE ; File Control Block table full + .byte $43, EINVAL ; Invalid reference number + .byte $44, ENOENT ; Path not found + .byte $45, ENOENT ; Volume directory not found .byte $46, ENOENT ; File not found - .byte $47, EEXIST ; File already exists - .byte $48, ENOSPC ; Disk full - .byte $49, ENOSPC ; Directory full -; .byte $4A, EUNKNOWN ; Incompatible ProDOS version - .byte $4B, EINVAL ; Unsupported storage type -; .byte $4C, EUNKNOWN ; End of file - .byte $4D, ESPIPE ; Position past EOF - .byte $4E, EACCES ; Access denied - .byte $50, EINVAL ; File already open -; .byte $51, EUNKNOWN ; File count bad + .byte $47, EEXIST ; Duplicate filename + .byte $48, ENOSPC ; Overrun error + .byte $49, ENOSPC ; Volume directory full +; .byte $4A, EUNKNOWN ; Incompatible file format + .byte $4B, EINVAL ; Unsupported storage_type +; .byte $4C, EUNKNOWN ; End of file has been encountered + .byte $4D, ESPIPE ; Position out of range + .byte $4E, EACCES ; Access error + .byte $50, EINVAL ; File is open +; .byte $51, EUNKNOWN ; Directory count error .byte $52, ENODEV ; Not a ProDOS disk - .byte $53, ERANGE ; Parameter out of range - .byte $55, EMFILE ; Too many devices mounted + .byte $53, ERANGE ; Invalid parameter + .byte $55, EMFILE ; Volume Control Block table full .byte $56, EINVAL ; Bad buffer address -; .byte $57, EUNKNOWN ; Duplicate volume name -; .byte $5A, EUNKNOWN ; Damaged disk free space bit map +; .byte $57, EUNKNOWN ; Duplicate volume +; .byte $5A, EUNKNOWN ; Bit map disk address is impossible ErrTabSize = (* - ErrTab)