Home » Archimedes archive » Micro User » MU 1991-10.adf » Listings » Routines/ErrText
Routines/ErrText
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 » Archimedes archive » Micro User » MU 1991-10.adf » Listings |
Filename: | Routines/ErrText |
Read OK: | ✔ |
File size: | 033B bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM Special error messages 20REM by J.L.Moorhouse 30REM (c) The Micro User 40FOR pass%=0 TO 2 STEP 2 50P%=&900:N%=5:[OPT pass%:.start 60LDX &202:STX &230:LDX &203:STX &231:LDX #23:STX &202:LDX #9:STX &203:RTS 70.brk LDY #0:LDA (&FD),Y:CMP #17 80BEQ exit:LDX #0 90.loop1:CMP &950,Y:BEQ print 100.loop2:INY:LDX &950,Y:CPX #2:BEQ exit:CPX #1:BNE loop1:JSR loop2 110.print INY:LDA #13:JSR &FFE3 120.loop3 LDA &950,Y 130CMP #1:BEQ exit;CMP #2:BEQ exit 140JSR &FFE3:INY:JSR loop3 150.exit JMP (&230) 160]:NEXT:W%=0:M%=&950:FOR T%=1 TO N%:READ A%,A$:M%?W%=A%:W%=W%+1 170FOR W1%=1 TO LEN(A$):M%?W%=ASC(MID$(A$,W1%,1)):W%=W%+1:NEXT:M%?W%=1:W%=W%+1:NEXT:W%=W%-1:M%?W%=2 180DATA 4,"Idiot!!!",26,"What did you do that for?",9,"Think before you type next time!",27,"Wally!!!",41,"Oh dear, another error!" 190P%=M%+W%+1:$&700="SAVE ErrText 900 "+STR$~P%:X%=0:Y%=7:CALL &FFF7
� Special error messages � by J.L.Moorhouse � (c) The Micro User (� pass%=0 � 2 � 2 2"P%=&900:N%=5:[OPT pass%:.start <LLDX &202:STX &230:LDX &203:STX &231:LDX #23:STX &202:LDX #9:STX &203:RTS F#.brk LDY #0:LDA (&FD),Y:CMP #17 PBEQ exit:LDX #0 Z.loop1:CMP &950,Y:BEQ print dD.loop2:INY:LDX &950,Y:CPX #2:BEQ exit:CPX #1:BNE loop1:JSR loop2 n .print INY:LDA #13:JSR &FFE3 x.loop3 LDA &950,Y �#CMP #1:BEQ exit;CMP #2:BEQ exit �JSR &FFE3:INY:JSR loop3 �.exit JMP (&230) �9]:�:W%=0:M%=&950:� T%=1 � N%:� A%,A$:M%?W%=A%:W%=W%+1 �S� W1%=1 � �(A$):M%?W%=�(�A$,W1%,1)):W%=W%+1:�:M%?W%=1:W%=W%+1:�:W%=W%-1:M%?W%=2 ��� 4,"Idiot!!!",26,"What did you do that for?",9,"Think before you type next time!",27,"Wally!!!",41,"Oh dear, another error!" �?P%=M%+W%+1:$&700="SAVE ErrText 900 "+�~P%:X%=0:Y%=7:� &FFF7 �
00000000 0d 00 0a 1c f4 20 53 70 65 63 69 61 6c 20 65 72 |..... Special er| 00000010 72 6f 72 20 6d 65 73 73 61 67 65 73 0d 00 14 16 |ror messages....| 00000020 f4 20 62 79 20 4a 2e 4c 2e 4d 6f 6f 72 68 6f 75 |. by J.L.Moorhou| 00000030 73 65 0d 00 1e 18 f4 20 28 63 29 20 54 68 65 20 |se..... (c) The | 00000040 4d 69 63 72 6f 20 55 73 65 72 0d 00 28 15 e3 20 |Micro User..(.. | 00000050 70 61 73 73 25 3d 30 20 b8 20 32 20 88 20 32 0d |pass%=0 . 2 . 2.| 00000060 00 32 22 50 25 3d 26 39 30 30 3a 4e 25 3d 35 3a |.2"P%=&900:N%=5:| 00000070 5b 4f 50 54 20 70 61 73 73 25 3a 2e 73 74 61 72 |[OPT pass%:.star| 00000080 74 0d 00 3c 4c 4c 44 58 20 26 32 30 32 3a 53 54 |t..<LLDX &202:ST| 00000090 58 20 26 32 33 30 3a 4c 44 58 20 26 32 30 33 3a |X &230:LDX &203:| 000000a0 53 54 58 20 26 32 33 31 3a 4c 44 58 20 23 32 33 |STX &231:LDX #23| 000000b0 3a 53 54 58 20 26 32 30 32 3a 4c 44 58 20 23 39 |:STX &202:LDX #9| 000000c0 3a 53 54 58 20 26 32 30 33 3a 52 54 53 0d 00 46 |:STX &203:RTS..F| 000000d0 23 2e 62 72 6b 20 4c 44 59 20 23 30 3a 4c 44 41 |#.brk LDY #0:LDA| 000000e0 20 28 26 46 44 29 2c 59 3a 43 4d 50 20 23 31 37 | (&FD),Y:CMP #17| 000000f0 0d 00 50 13 42 45 51 20 65 78 69 74 3a 4c 44 58 |..P.BEQ exit:LDX| 00000100 20 23 30 0d 00 5a 1f 2e 6c 6f 6f 70 31 3a 43 4d | #0..Z..loop1:CM| 00000110 50 20 26 39 35 30 2c 59 3a 42 45 51 20 70 72 69 |P &950,Y:BEQ pri| 00000120 6e 74 0d 00 64 44 2e 6c 6f 6f 70 32 3a 49 4e 59 |nt..dD.loop2:INY| 00000130 3a 4c 44 58 20 26 39 35 30 2c 59 3a 43 50 58 20 |:LDX &950,Y:CPX | 00000140 23 32 3a 42 45 51 20 65 78 69 74 3a 43 50 58 20 |#2:BEQ exit:CPX | 00000150 23 31 3a 42 4e 45 20 6c 6f 6f 70 31 3a 4a 53 52 |#1:BNE loop1:JSR| 00000160 20 6c 6f 6f 70 32 0d 00 6e 20 2e 70 72 69 6e 74 | loop2..n .print| 00000170 20 49 4e 59 3a 4c 44 41 20 23 31 33 3a 4a 53 52 | INY:LDA #13:JSR| 00000180 20 26 46 46 45 33 0d 00 78 15 2e 6c 6f 6f 70 33 | &FFE3..x..loop3| 00000190 20 4c 44 41 20 26 39 35 30 2c 59 0d 00 82 23 43 | LDA &950,Y...#C| 000001a0 4d 50 20 23 31 3a 42 45 51 20 65 78 69 74 3b 43 |MP #1:BEQ exit;C| 000001b0 4d 50 20 23 32 3a 42 45 51 20 65 78 69 74 0d 00 |MP #2:BEQ exit..| 000001c0 8c 1b 4a 53 52 20 26 46 46 45 33 3a 49 4e 59 3a |..JSR &FFE3:INY:| 000001d0 4a 53 52 20 6c 6f 6f 70 33 0d 00 96 14 2e 65 78 |JSR loop3.....ex| 000001e0 69 74 20 4a 4d 50 20 28 26 32 33 30 29 0d 00 a0 |it JMP (&230)...| 000001f0 39 5d 3a ed 3a 57 25 3d 30 3a 4d 25 3d 26 39 35 |9]:.:W%=0:M%=&95| 00000200 30 3a e3 20 54 25 3d 31 20 b8 20 4e 25 3a f3 20 |0:. T%=1 . N%:. | 00000210 41 25 2c 41 24 3a 4d 25 3f 57 25 3d 41 25 3a 57 |A%,A$:M%?W%=A%:W| 00000220 25 3d 57 25 2b 31 0d 00 aa 53 e3 20 57 31 25 3d |%=W%+1...S. W1%=| 00000230 31 20 b8 20 a9 28 41 24 29 3a 4d 25 3f 57 25 3d |1 . .(A$):M%?W%=| 00000240 97 28 c1 41 24 2c 57 31 25 2c 31 29 29 3a 57 25 |.(.A$,W1%,1)):W%| 00000250 3d 57 25 2b 31 3a ed 3a 4d 25 3f 57 25 3d 31 3a |=W%+1:.:M%?W%=1:| 00000260 57 25 3d 57 25 2b 31 3a ed 3a 57 25 3d 57 25 2d |W%=W%+1:.:W%=W%-| 00000270 31 3a 4d 25 3f 57 25 3d 32 0d 00 b4 81 dc 20 34 |1:M%?W%=2..... 4| 00000280 2c 22 49 64 69 6f 74 21 21 21 22 2c 32 36 2c 22 |,"Idiot!!!",26,"| 00000290 57 68 61 74 20 64 69 64 20 79 6f 75 20 64 6f 20 |What did you do | 000002a0 74 68 61 74 20 66 6f 72 3f 22 2c 39 2c 22 54 68 |that for?",9,"Th| 000002b0 69 6e 6b 20 62 65 66 6f 72 65 20 79 6f 75 20 74 |ink before you t| 000002c0 79 70 65 20 6e 65 78 74 20 74 69 6d 65 21 22 2c |ype next time!",| 000002d0 32 37 2c 22 57 61 6c 6c 79 21 21 21 22 2c 34 31 |27,"Wally!!!",41| 000002e0 2c 22 4f 68 20 64 65 61 72 2c 20 61 6e 6f 74 68 |,"Oh dear, anoth| 000002f0 65 72 20 65 72 72 6f 72 21 22 0d 00 be 3f 50 25 |er error!"...?P%| 00000300 3d 4d 25 2b 57 25 2b 31 3a 24 26 37 30 30 3d 22 |=M%+W%+1:$&700="| 00000310 53 41 56 45 20 45 72 72 54 65 78 74 20 39 30 30 |SAVE ErrText 900| 00000320 20 22 2b c3 7e 50 25 3a 58 25 3d 30 3a 59 25 3d | "+.~P%:X%=0:Y%=| 00000330 37 3a d6 20 26 46 46 46 37 0d ff |7:. &FFF7..| 0000033b