Files
MZBAS/errors.asm
T

113 lines
6.1 KiB
NASM

; ==================================================
; MSX BASIC for Orion-128 computer
;
; Error messages and constants
; Disassembled by Romychs @ 2026-10-08
; ==================================================
; --------------------------------------------------
; Error messages
; --------------------------------------------------
MB_ERRTAB:
DB 0x00
MSG_ERR_NWF:
DB "NEXT without FOR", 0 ; 0x01
DB "Syntax error", 0 ; 0x02
DB "RETURN without GOSUB", 0 ; 0x03
DB "Out of DATA", 0 ; 0x04
DB "Illegal function call", 0 ; 0x05
DB "Overflow", 0 ; 0x06
DB "Out of memory", 0 ; 0x07
DB "Undefined line number", 0 ; 0x08
DB "Subscript out of range", 0 ; 0x09
DB "Redimensioned array", 0 ; 0x0A
DB "Division by zero", 0 ; 0x0B
DB "Illegal direct", 0 ; 0x0C
DB "Type mismatch", 0 ; 0x0D
DB "Out of string space", 0 ; 0x0E
DB "String too long", 0 ; 0x0F
DB "String formula too complex", 0 ; 0x10
DB "Can't CONTINUE", 0 ; 0x11
DB "Undefined user function", 0 ; 0x12
DB "Device I/O error", 0 ; 0x13
DB "Verify error", 0 ; 0x14
DB "No RESUME", 0 ; 0x15
DB "RESUME without error", 0 ; 0x16
DB "Unprintable error", 0 ; 0x17
DB "Missing operand", 0 ; 0x18
DB "Line buffer overflow", 0 ; 0x19
DB "FIELD overflow", 0 ; 0x32
DB "Internal error", 0 ; 0x33
DB "Bad file number", 0 ; 0x34
DB "File not found", 0 ; 0x35
DB "File already open", 0 ; 0x36
DB "Input past end", 0 ; 0x37
DB "Bad file name", 0 ; 0x38
DB "Direct statement in file", 0 ; 0x39
DB "Sequential I/O only", 0 ; 0x3A
DB "File not OPEN", 0 ; 0x3B
; Orion specific errors
DB "Bad file mode", 0 ; 0x3C
DB "File still open", 0 ; 0x3D
DB "File already exists", 0 ; 0x3E
DB "Disk full", 0 ; 0x3F
DB "Disk write protected", 0 ; 0x40
DB "Disk I/O error", 0 ; 0x41
; --------------------------------------------------
; Error codes
; --------------------------------------------------
ERRNF EQU 0x01 ; 1 Next wo for
ERRSN EQU 0x02 ; 2 Syntax err
ERRRG EQU 0x03 ; 3 Ret wo gosub
ERROD EQU 0x04 ; 4 Out of data
ERRFC EQU 0x05 ; 5 Illegal function call
ERROV EQU 0x06 ; 6 Overflow
ERROM EQU 0x07 ; 7 Out of memory
ERRULN EQU 0x08 ; 8 Undefined line number
ERRBS EQU 0x09 ; 9 Subscr out of range
ERRDD EQU 0x0a ; 10 Redimensioned array
ERRDV0 EQU 0x0b ; 11 Division by zero
ERRID EQU 0x0c ; 12 Illegal direct
ERRTM EQU 0x0d ; 13 Type mismatch
ERRSO EQU 0x0e ; 14 Out of string space
ERRLS EQU 0x0f ; 15 String too long
ERRST EQU 0x10 ; 16 String formula too complex
ERRCN EQU 0x11 ; 17 Can't CONTINUE
ERRUF EQU 0x12 ; 18 Undefined user function
ERRDIO EQU 0x13 ; 19 Device IO error
ERRVE EQU 0x14 ; 20 Verify error
ERRNR EQU 0x15 ; 21 No resume
ERRRWE EQU 0x16 ; 22 Resume wo error
ERRUE EQU 0x17 ; 23 Unprintable error
ERRMO EQU 0x18 ; 24 Missing operand
ERRLBO EQU 0x19 ; 25 Line buff over
; --------------------------------------------------
LSTERR EQU ERRLBO + 1
NONDSK EQU ERRLBO + 1 ; <NONDSK - standart BASIC errors
; --------------------------------------------------
DSKERR EQU 0x31 ; >DSKERR - disk BASIC errors
ERRFO EQU 0x32 ; 50 Field overflow
ERRIE EQU 0x33 ; 51 Internal error
ERRBFN EQU 0x34 ; 52 Bad File Number
ERRFNF EQU 0x35 ; 53 File Not Found
ERRFAO EQU 0x36 ; 54 File Already open
ERRIPE EQU 0x37 ; 55 Inp past end
ERRBN EQU 0x38 ; 56 Bad file Name
ERRDSF EQU 0x39 ; 57 Direct stmt in file
ERRSIO EQU 0x3A ; 58 Sequential I/O only
ERRFNO EQU 0x3B ; 59 File not open
; Orion specific errors
ERRBFM EQU 0x3C ; 60 Bad file mode
ERRFSO EQU 0x3D ; 61 File still open
ERRFAE EQU 0x3E ; 62 File already exists
ERRDF EQU 0x3F ; 63 Disk full
ERRDWP EQU 0x40 ; 64 Disk write protected
ERRDSIO EQU 0x41 ; 65 Disk I/O error