113 lines
6.1 KiB
NASM
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
|