Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape18a_acorn_eu_1991_january.wav » R.Errors

R.Errors

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape18a_acorn_eu_1991_january.wav
Filename: R.Errors
Read OK:
File size: 0216 bytes
Load address: FFFF1900
Exec address: FFFF802B
Duplicates

There are 2 duplicate copies of this file in the archive:

File contents
   10REM Customised error messsages
   20REM by Douglas Boffey
   30REM (c) The Micro User
   40REM January 1991
   50PROCerr(8,"Error!!! Error!!!")
   60END
 1000DEF PROCerr(?&101,$&102)
 1010?(&102+LEN($&102))=0:?&100=0
 1020FOR pass=0 TO 2 STEP 2
 1030P%=&900:[OPT pass
 1040TSX:CPX #&FC:BCC ok
 1050.err
 1060BRK:OPT FNequb(13):OPT FNequs("No "):OPT FNequb(&F2):BRK
 1070.ok
 1080LDA &1FF:CMP #&F2:BNE err
 1090PLA:PLA:PLA:PLA:PLA:PLA:PLA:PLA
 1100PLA:STA &C:PLA:STA &B:PLA:STA &A
 1110JMP &100:]:NEXT:CALL &900
 1120ENDPROC
 1130DEF FNequb(S%)
 1140?P%=S%:P%=P%+1:=pass
 1150DEF FNequs(S$)
 1160$P%=S$:P%=P%+LEN(S$):=pass

 � Customised error messsages
� by Douglas Boffey
� (c) The Micro User
(� January 1991
2�err(8,"Error!!! Error!!!")
<�
�� �err(?&101,$&102)
�?(&102+�($&102))=0:?&100=0
�� pass=0 � 2 � 2
P%=&900:[OPT pass
TSX:CPX #&FC:BCC ok
.err
$9BRK:OPT �equb(13):OPT �equs("No "):OPT �equb(&F2):BRK
..ok
8LDA &1FF:CMP #&F2:BNE err
B#PLA:PLA:PLA:PLA:PLA:PLA:PLA:PLA
L$PLA:STA &C:PLA:STA &B:PLA:STA &A
VJMP &100:]:�:� &900
`�
j� �equb(S%)
t?P%=S%:P%=P%+1:=pass
~� �equs(S$)
�$P%=S$:P%=P%+�(S$):=pass
�
00000000  0d 00 0a 20 f4 20 43 75  73 74 6f 6d 69 73 65 64  |... . Customised|
00000010  20 65 72 72 6f 72 20 6d  65 73 73 73 61 67 65 73  | error messsages|
00000020  0d 00 14 17 f4 20 62 79  20 44 6f 75 67 6c 61 73  |..... by Douglas|
00000030  20 42 6f 66 66 65 79 0d  00 1e 18 f4 20 28 63 29  | Boffey..... (c)|
00000040  20 54 68 65 20 4d 69 63  72 6f 20 55 73 65 72 0d  | The Micro User.|
00000050  00 28 12 f4 20 4a 61 6e  75 61 72 79 20 31 39 39  |.(.. January 199|
00000060  31 0d 00 32 1f f2 65 72  72 28 38 2c 22 45 72 72  |1..2..err(8,"Err|
00000070  6f 72 21 21 21 20 45 72  72 6f 72 21 21 21 22 29  |or!!! Error!!!")|
00000080  0d 00 3c 05 e0 0d 03 e8  17 dd 20 f2 65 72 72 28  |..<....... .err(|
00000090  3f 26 31 30 31 2c 24 26  31 30 32 29 0d 03 f2 1e  |?&101,$&102)....|
000000a0  3f 28 26 31 30 32 2b a9  28 24 26 31 30 32 29 29  |?(&102+.($&102))|
000000b0  3d 30 3a 3f 26 31 30 30  3d 30 0d 03 fc 14 e3 20  |=0:?&100=0..... |
000000c0  70 61 73 73 3d 30 20 b8  20 32 20 88 20 32 0d 04  |pass=0 . 2 . 2..|
000000d0  06 15 50 25 3d 26 39 30  30 3a 5b 4f 50 54 20 70  |..P%=&900:[OPT p|
000000e0  61 73 73 0d 04 10 17 54  53 58 3a 43 50 58 20 23  |ass....TSX:CPX #|
000000f0  26 46 43 3a 42 43 43 20  6f 6b 0d 04 1a 08 2e 65  |&FC:BCC ok.....e|
00000100  72 72 0d 04 24 39 42 52  4b 3a 4f 50 54 20 a4 65  |rr..$9BRK:OPT .e|
00000110  71 75 62 28 31 33 29 3a  4f 50 54 20 a4 65 71 75  |qub(13):OPT .equ|
00000120  73 28 22 4e 6f 20 22 29  3a 4f 50 54 20 a4 65 71  |s("No "):OPT .eq|
00000130  75 62 28 26 46 32 29 3a  42 52 4b 0d 04 2e 07 2e  |ub(&F2):BRK.....|
00000140  6f 6b 0d 04 38 1d 4c 44  41 20 26 31 46 46 3a 43  |ok..8.LDA &1FF:C|
00000150  4d 50 20 23 26 46 32 3a  42 4e 45 20 65 72 72 0d  |MP #&F2:BNE err.|
00000160  04 42 23 50 4c 41 3a 50  4c 41 3a 50 4c 41 3a 50  |.B#PLA:PLA:PLA:P|
00000170  4c 41 3a 50 4c 41 3a 50  4c 41 3a 50 4c 41 3a 50  |LA:PLA:PLA:PLA:P|
00000180  4c 41 0d 04 4c 24 50 4c  41 3a 53 54 41 20 26 43  |LA..L$PLA:STA &C|
00000190  3a 50 4c 41 3a 53 54 41  20 26 42 3a 50 4c 41 3a  |:PLA:STA &B:PLA:|
000001a0  53 54 41 20 26 41 0d 04  56 17 4a 4d 50 20 26 31  |STA &A..V.JMP &1|
000001b0  30 30 3a 5d 3a ed 3a d6  20 26 39 30 30 0d 04 60  |00:]:.:. &900..`|
000001c0  05 e1 0d 04 6a 0f dd 20  a4 65 71 75 62 28 53 25  |....j.. .equb(S%|
000001d0  29 0d 04 74 18 3f 50 25  3d 53 25 3a 50 25 3d 50  |)..t.?P%=S%:P%=P|
000001e0  25 2b 31 3a 3d 70 61 73  73 0d 04 7e 0f dd 20 a4  |%+1:=pass..~.. .|
000001f0  65 71 75 73 28 53 24 29  0d 04 88 1c 24 50 25 3d  |equs(S$)....$P%=|
00000200  53 24 3a 50 25 3d 50 25  2b a9 28 53 24 29 3a 3d  |S$:P%=P%+.(S$):=|
00000210  70 61 73 73 0d ff                                 |pass..|
00000216
R.Errors.m0
R.Errors.m1
R.Errors.m2
R.Errors.m4
R.Errors.m5