53 lines
1.3 KiB
ArmAsm
53 lines
1.3 KiB
ArmAsm
|
;
|
||
|
; Ullrich von Bassewitz, 2004-06-15
|
||
|
;
|
||
|
; const char* __fastcall__ tgi_geterrormsg (unsigned char code);
|
||
|
; /* Get an error message describing the error in code. */
|
||
|
;
|
||
|
|
||
|
.include "tgi-kernel.inc"
|
||
|
.include "tgi-error.inc"
|
||
|
|
||
|
|
||
|
.proc _tgi_geterrormsg
|
||
|
|
||
|
cmp #TGI_ERR_COUNT
|
||
|
bcs L1
|
||
|
lda #TGI_ERR_COUNT ; "Unknown error"
|
||
|
L1: tay
|
||
|
ldx #>msgtab
|
||
|
lda #<msgtab
|
||
|
clc
|
||
|
adc offs,y
|
||
|
bcc L2
|
||
|
inx
|
||
|
L2: rts
|
||
|
|
||
|
.endproc
|
||
|
|
||
|
|
||
|
;----------------------------------------------------------------------------
|
||
|
; Error messages. The messages are currently limited to 256 bytes total.
|
||
|
|
||
|
.rodata
|
||
|
|
||
|
offs: .byte <(msg0-msgtab)
|
||
|
.byte <(msg1-msgtab)
|
||
|
.byte <(msg2-msgtab)
|
||
|
.byte <(msg3-msgtab)
|
||
|
.byte <(msg4-msgtab)
|
||
|
.byte <(msg5-msgtab)
|
||
|
.byte <(msg6-msgtab)
|
||
|
.byte <(msg7-msgtab)
|
||
|
|
||
|
msgtab:
|
||
|
msg0: .asciiz "No error"
|
||
|
msg1: .asciiz "No driver available"
|
||
|
msg2: .asciiz "Error loading driver"
|
||
|
msg3: .asciiz "Invalid driver"
|
||
|
msg4: .asciiz "Mode not supported by driver"
|
||
|
msg5: .asciiz "Invalid function argument"
|
||
|
msg6: .asciiz "Function not supported"
|
||
|
msg7: .asciiz "Unknown error"
|
||
|
|