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
This commit is contained in:
@@ -30,6 +30,6 @@ call: .byte $00
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
; Load oserror code and return
|
; Load oserror code and return
|
||||||
oserr: lda #$01 ; "Invalid MLI function code number"
|
oserr: lda #$01 ; "Bad system call number"
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
|||||||
@@ -41,36 +41,36 @@ End:
|
|||||||
.rodata
|
.rodata
|
||||||
|
|
||||||
__sys_oserrlist:
|
__sys_oserrlist:
|
||||||
sys_oserr_entry $01, "Invalid MLI function code number"
|
sys_oserr_entry $01, "Bad system call number"
|
||||||
sys_oserr_entry $04, "Incorrect parameter count"
|
sys_oserr_entry $04, "Bad system call parameter count"
|
||||||
sys_oserr_entry $25, "Interrupt table full"
|
sys_oserr_entry $25, "Interrupt vector table full"
|
||||||
sys_oserr_entry $27, "I/O error"
|
sys_oserr_entry $27, "I/O error"
|
||||||
sys_oserr_entry $28, "No device connected"
|
sys_oserr_entry $28, "No device detected/connected"
|
||||||
sys_oserr_entry $2B, "Write protected"
|
sys_oserr_entry $2B, "Disk write protected"
|
||||||
sys_oserr_entry $2E, "Disk switched"
|
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 $40, "Invalid pathname syntax"
|
||||||
sys_oserr_entry $42, "Too many files open"
|
sys_oserr_entry $42, "File Control Block table full"
|
||||||
sys_oserr_entry $43, "Bad reference number"
|
sys_oserr_entry $43, "Invalid reference number"
|
||||||
sys_oserr_entry $44, "Bad pathname"
|
sys_oserr_entry $44, "Path not found"
|
||||||
sys_oserr_entry $45, "Volume not mounted"
|
sys_oserr_entry $45, "Volume directory not found"
|
||||||
sys_oserr_entry $46, "File not found"
|
sys_oserr_entry $46, "File not found"
|
||||||
sys_oserr_entry $47, "File already exists"
|
sys_oserr_entry $47, "Duplicate filename"
|
||||||
sys_oserr_entry $48, "Disk full"
|
sys_oserr_entry $48, "Overrun error"
|
||||||
sys_oserr_entry $49, "Directory full"
|
sys_oserr_entry $49, "Volume directory full"
|
||||||
sys_oserr_entry $4A, "Incompatible ProDOS version"
|
sys_oserr_entry $4A, "Incompatible file format"
|
||||||
sys_oserr_entry $4B, "Unsupported storage type"
|
sys_oserr_entry $4B, "Unsupported storage_type"
|
||||||
sys_oserr_entry $4C, "End of file"
|
sys_oserr_entry $4C, "End of file has been encountered"
|
||||||
sys_oserr_entry $4D, "Position past EOF"
|
sys_oserr_entry $4D, "Position out of range"
|
||||||
sys_oserr_entry $4E, "Access denied"
|
sys_oserr_entry $4E, "Access error"
|
||||||
sys_oserr_entry $50, "File already open"
|
sys_oserr_entry $50, "File is open"
|
||||||
sys_oserr_entry $51, "File count bad"
|
sys_oserr_entry $51, "Directory count error"
|
||||||
sys_oserr_entry $52, "Not a ProDOS disk"
|
sys_oserr_entry $52, "Not a ProDOS disk"
|
||||||
sys_oserr_entry $53, "Parameter out of range"
|
sys_oserr_entry $53, "Invalid parameter"
|
||||||
sys_oserr_entry $55, "Too many devices mounted"
|
sys_oserr_entry $55, "Volume Control Block table full"
|
||||||
sys_oserr_entry $56, "Bad buffer address"
|
sys_oserr_entry $56, "Bad buffer address"
|
||||||
sys_oserr_entry $57, "Duplicate volume name"
|
sys_oserr_entry $57, "Duplicate volume"
|
||||||
sys_oserr_entry $5A, "Damaged disk free space bit map"
|
sys_oserr_entry $5A, "Bit map disk address is impossible"
|
||||||
sys_oserr_sentinel "Unknown error"
|
sys_oserr_sentinel "Unknown error"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -28,35 +28,35 @@ __osmaperrno:
|
|||||||
|
|
||||||
.rodata
|
.rodata
|
||||||
|
|
||||||
ErrTab: .byte $01, ENOSYS ; Invalid MLI function code number
|
ErrTab: .byte $01, ENOSYS ; Bad system call number
|
||||||
.byte $04, EINVAL ; Incorrect parameter count
|
.byte $04, EINVAL ; Bad system call parameter count
|
||||||
.byte $25, ENOMEM ; Interrupt table full
|
.byte $25, ENOMEM ; Interrupt vector table full
|
||||||
.byte $27, EIO ; I/O error
|
.byte $27, EIO ; I/O error
|
||||||
.byte $28, ENODEV ; No device connected
|
.byte $28, ENODEV ; No device detected/connected
|
||||||
.byte $2B, EACCES ; Write protected
|
.byte $2B, EACCES ; Disk write protected
|
||||||
; .byte $2E, EUNKNOWN ; Disk switched
|
; .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 $40, EINVAL ; Invalid pathname syntax
|
||||||
.byte $42, EMFILE ; Too many files open
|
.byte $42, EMFILE ; File Control Block table full
|
||||||
.byte $43, EINVAL ; Bad reference number
|
.byte $43, EINVAL ; Invalid reference number
|
||||||
.byte $44, ENOENT ; Bad pathname
|
.byte $44, ENOENT ; Path not found
|
||||||
.byte $45, ENOENT ; Volume not mounted
|
.byte $45, ENOENT ; Volume directory not found
|
||||||
.byte $46, ENOENT ; File not found
|
.byte $46, ENOENT ; File not found
|
||||||
.byte $47, EEXIST ; File already exists
|
.byte $47, EEXIST ; Duplicate filename
|
||||||
.byte $48, ENOSPC ; Disk full
|
.byte $48, ENOSPC ; Overrun error
|
||||||
.byte $49, ENOSPC ; Directory full
|
.byte $49, ENOSPC ; Volume directory full
|
||||||
; .byte $4A, EUNKNOWN ; Incompatible ProDOS version
|
; .byte $4A, EUNKNOWN ; Incompatible file format
|
||||||
.byte $4B, EINVAL ; Unsupported storage type
|
.byte $4B, EINVAL ; Unsupported storage_type
|
||||||
; .byte $4C, EUNKNOWN ; End of file
|
; .byte $4C, EUNKNOWN ; End of file has been encountered
|
||||||
.byte $4D, ESPIPE ; Position past EOF
|
.byte $4D, ESPIPE ; Position out of range
|
||||||
.byte $4E, EACCES ; Access denied
|
.byte $4E, EACCES ; Access error
|
||||||
.byte $50, EINVAL ; File already open
|
.byte $50, EINVAL ; File is open
|
||||||
; .byte $51, EUNKNOWN ; File count bad
|
; .byte $51, EUNKNOWN ; Directory count error
|
||||||
.byte $52, ENODEV ; Not a ProDOS disk
|
.byte $52, ENODEV ; Not a ProDOS disk
|
||||||
.byte $53, ERANGE ; Parameter out of range
|
.byte $53, ERANGE ; Invalid parameter
|
||||||
.byte $55, EMFILE ; Too many devices mounted
|
.byte $55, EMFILE ; Volume Control Block table full
|
||||||
.byte $56, EINVAL ; Bad buffer address
|
.byte $56, EINVAL ; Bad buffer address
|
||||||
; .byte $57, EUNKNOWN ; Duplicate volume name
|
; .byte $57, EUNKNOWN ; Duplicate volume
|
||||||
; .byte $5A, EUNKNOWN ; Damaged disk free space bit map
|
; .byte $5A, EUNKNOWN ; Bit map disk address is impossible
|
||||||
|
|
||||||
ErrTabSize = (* - ErrTab)
|
ErrTabSize = (* - ErrTab)
|
||||||
|
|||||||
Reference in New Issue
Block a user