Home » Archimedes archive » Acorn Computing » 1993 06 Mega Disk.adf » 93_06 » Miscellany/Alt_Boot/Alt-Boot

Miscellany/Alt_Boot/Alt-Boot

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 » Acorn Computing » 1993 06 Mega Disk.adf » 93_06
Filename: Miscellany/Alt_Boot/Alt-Boot
Read OK:
File size: 03EE bytes
Load address: 0000
Exec address: 0000
File contents
   10REM > Alt-Boot
   20REM by Paul Mason, 1992
   30REM avoids autobooting of filer displays
   40REM when ALT is depressed
   50
   60SYS &1E,6,,,1024 TO ,,code%
   70FOR opt%=0 TO 2 STEP 2
   80P%=code%
   90[OPT opt%
  100.filev
  110TEQ R0,#5
  120TEQNE R0,#13
  130TEQNE R0,#15
  140TEQNE R0,#17
  150MOVNE PC,R14
  160MOV R2,R1
  170.lp0
  180LDRB R3,[R2],#1
  190CMP R3,#32
  200BGE lp0
  210SUB R2,R2,#2
  220LDRB R3,[R2,#0]
  230ORR R3,R3,#32
  240.b
  250TEQ R3,#ASC"t"
  260BNE finish
  270LDRB R3,[R2,#-1]
  280ORR R3,R3,#32
  290TEQ R3,#ASC"o"
  300BNE finish
  310LDRB R3,[R2,#-2]
  320ORR R3,R3,#32
  330TEQ R3,#ASC"o"
  340BNE finish
  350LDRB R3,[R2,#-3]
  360ORR R3,R3,#32
  370TEQ R3,#ASC"b"
  380BNE finish
  390LDRB R3,[R2,#-4]
  400ORR R3,R3,#32
  410TEQ R3,#ASC"!"
  420SUB R2,R2,#5
  430CMP R2,R1
  440BLE refuse
  450LDRB R3,[R2]
  460TEQ R3,#ASC"."
  470BNE finish
  480.refuse
  490STMFD R13!,{R0-R12,R14}
  500MOV R0,#&81
  510MOV R1,#(2EOR&FF)
  520MOV R2,#&FF
  530SWI &20006
  540TEQ R1,#&FF
  550LDMFD R13!,{R0-R12,R14}
  560MOVEQ R0,#0
  570LDMEQFD R13!,{PC}
  580.finish
  590MOVS PC,R14
  600]
  610NEXT
  620SYS &1F,&8,filev,0
  630END

� > Alt-Boot
� by Paul Mason, 1992
*� avoids autobooting of filer displays
(� when ALT is depressed
2
<ș &1E,6,,,1024 � ,,code%
F� opt%=0 � 2 � 2
PP%=code%
Z
[OPT opt%
d
.filev
n
TEQ R0,#5
xTEQNE R0,#13
�TEQNE R0,#15
�TEQNE R0,#17
�MOVNE PC,R14
�
MOV R2,R1
�.lp0
�LDRB R3,[R2],#1
�CMP R3,#32
�BGE lp0
�SUB R2,R2,#2
�LDRB R3,[R2,#0]
��R R3,R3,#32
�.b
�TEQ R3,#�"t"
BNE finish
LDRB R3,[R2,#-1]
�R R3,R3,#32
"TEQ R3,#�"o"
,BNE finish
6LDRB R3,[R2,#-2]
@�R R3,R3,#32
JTEQ R3,#�"o"
TBNE finish
^LDRB R3,[R2,#-3]
h�R R3,R3,#32
rTEQ R3,#�"b"
|BNE finish
�LDRB R3,[R2,#-4]
��R R3,R3,#32
�TEQ R3,#�"!"
�SUB R2,R2,#5
�
CMP R2,R1
�BLE refuse
�LDRB R3,[R2]
�TEQ R3,#�"."
�BNE finish
�.refuse
�STMFD R13!,{R0-R12,R14}
�MOV R0,#&81
�MOV R1,#(2�&FF)
MOV R2,#&FF
SWI &20006
TEQ R1,#&FF
&LDMFD R13!,{R0-R12,R14}
0�Q R0,#0
:LDMEQFD R13!,{PC}
D.finish
NMOVS PC,R14
X]
b�
lș &1F,&8,filev,0
v�
�
00000000  0d 00 0a 10 f4 20 3e 20  41 6c 74 2d 42 6f 6f 74  |..... > Alt-Boot|
00000010  0d 00 14 19 f4 20 62 79  20 50 61 75 6c 20 4d 61  |..... by Paul Ma|
00000020  73 6f 6e 2c 20 31 39 39  32 0d 00 1e 2a f4 20 61  |son, 1992...*. a|
00000030  76 6f 69 64 73 20 61 75  74 6f 62 6f 6f 74 69 6e  |voids autobootin|
00000040  67 20 6f 66 20 66 69 6c  65 72 20 64 69 73 70 6c  |g of filer displ|
00000050  61 79 73 0d 00 28 1b f4  20 77 68 65 6e 20 41 4c  |ays..(.. when AL|
00000060  54 20 69 73 20 64 65 70  72 65 73 73 65 64 0d 00  |T is depressed..|
00000070  32 04 0d 00 3c 1d c8 99  20 26 31 45 2c 36 2c 2c  |2...<... &1E,6,,|
00000080  2c 31 30 32 34 20 b8 20  2c 2c 63 6f 64 65 25 0d  |,1024 . ,,code%.|
00000090  00 46 14 e3 20 6f 70 74  25 3d 30 20 b8 20 32 20  |.F.. opt%=0 . 2 |
000000a0  88 20 32 0d 00 50 0c 50  25 3d 63 6f 64 65 25 0d  |. 2..P.P%=code%.|
000000b0  00 5a 0d 5b 4f 50 54 20  6f 70 74 25 0d 00 64 0a  |.Z.[OPT opt%..d.|
000000c0  2e 66 69 6c 65 76 0d 00  6e 0d 54 45 51 20 52 30  |.filev..n.TEQ R0|
000000d0  2c 23 35 0d 00 78 10 54  45 51 4e 45 20 52 30 2c  |,#5..x.TEQNE R0,|
000000e0  23 31 33 0d 00 82 10 54  45 51 4e 45 20 52 30 2c  |#13....TEQNE R0,|
000000f0  23 31 35 0d 00 8c 10 54  45 51 4e 45 20 52 30 2c  |#15....TEQNE R0,|
00000100  23 31 37 0d 00 96 10 4d  4f 56 4e 45 20 50 43 2c  |#17....MOVNE PC,|
00000110  52 31 34 0d 00 a0 0d 4d  4f 56 20 52 32 2c 52 31  |R14....MOV R2,R1|
00000120  0d 00 aa 08 2e 6c 70 30  0d 00 b4 13 4c 44 52 42  |.....lp0....LDRB|
00000130  20 52 33 2c 5b 52 32 5d  2c 23 31 0d 00 be 0e 43  | R3,[R2],#1....C|
00000140  4d 50 20 52 33 2c 23 33  32 0d 00 c8 0b 42 47 45  |MP R3,#32....BGE|
00000150  20 6c 70 30 0d 00 d2 10  53 55 42 20 52 32 2c 52  | lp0....SUB R2,R|
00000160  32 2c 23 32 0d 00 dc 13  4c 44 52 42 20 52 33 2c  |2,#2....LDRB R3,|
00000170  5b 52 32 2c 23 30 5d 0d  00 e6 10 84 52 20 52 33  |[R2,#0].....R R3|
00000180  2c 52 33 2c 23 33 32 0d  00 f0 06 2e 62 0d 00 fa  |,R3,#32.....b...|
00000190  10 54 45 51 20 52 33 2c  23 97 22 74 22 0d 01 04  |.TEQ R3,#."t"...|
000001a0  0e 42 4e 45 20 66 69 6e  69 73 68 0d 01 0e 14 4c  |.BNE finish....L|
000001b0  44 52 42 20 52 33 2c 5b  52 32 2c 23 2d 31 5d 0d  |DRB R3,[R2,#-1].|
000001c0  01 18 10 84 52 20 52 33  2c 52 33 2c 23 33 32 0d  |....R R3,R3,#32.|
000001d0  01 22 10 54 45 51 20 52  33 2c 23 97 22 6f 22 0d  |.".TEQ R3,#."o".|
000001e0  01 2c 0e 42 4e 45 20 66  69 6e 69 73 68 0d 01 36  |.,.BNE finish..6|
000001f0  14 4c 44 52 42 20 52 33  2c 5b 52 32 2c 23 2d 32  |.LDRB R3,[R2,#-2|
00000200  5d 0d 01 40 10 84 52 20  52 33 2c 52 33 2c 23 33  |]..@..R R3,R3,#3|
00000210  32 0d 01 4a 10 54 45 51  20 52 33 2c 23 97 22 6f  |2..J.TEQ R3,#."o|
00000220  22 0d 01 54 0e 42 4e 45  20 66 69 6e 69 73 68 0d  |"..T.BNE finish.|
00000230  01 5e 14 4c 44 52 42 20  52 33 2c 5b 52 32 2c 23  |.^.LDRB R3,[R2,#|
00000240  2d 33 5d 0d 01 68 10 84  52 20 52 33 2c 52 33 2c  |-3]..h..R R3,R3,|
00000250  23 33 32 0d 01 72 10 54  45 51 20 52 33 2c 23 97  |#32..r.TEQ R3,#.|
00000260  22 62 22 0d 01 7c 0e 42  4e 45 20 66 69 6e 69 73  |"b"..|.BNE finis|
00000270  68 0d 01 86 14 4c 44 52  42 20 52 33 2c 5b 52 32  |h....LDRB R3,[R2|
00000280  2c 23 2d 34 5d 0d 01 90  10 84 52 20 52 33 2c 52  |,#-4].....R R3,R|
00000290  33 2c 23 33 32 0d 01 9a  10 54 45 51 20 52 33 2c  |3,#32....TEQ R3,|
000002a0  23 97 22 21 22 0d 01 a4  10 53 55 42 20 52 32 2c  |#."!"....SUB R2,|
000002b0  52 32 2c 23 35 0d 01 ae  0d 43 4d 50 20 52 32 2c  |R2,#5....CMP R2,|
000002c0  52 31 0d 01 b8 0e 42 4c  45 20 72 65 66 75 73 65  |R1....BLE refuse|
000002d0  0d 01 c2 10 4c 44 52 42  20 52 33 2c 5b 52 32 5d  |....LDRB R3,[R2]|
000002e0  0d 01 cc 10 54 45 51 20  52 33 2c 23 97 22 2e 22  |....TEQ R3,#."."|
000002f0  0d 01 d6 0e 42 4e 45 20  66 69 6e 69 73 68 0d 01  |....BNE finish..|
00000300  e0 0b 2e 72 65 66 75 73  65 0d 01 ea 1b 53 54 4d  |...refuse....STM|
00000310  46 44 20 52 31 33 21 2c  7b 52 30 2d 52 31 32 2c  |FD R13!,{R0-R12,|
00000320  52 31 34 7d 0d 01 f4 0f  4d 4f 56 20 52 30 2c 23  |R14}....MOV R0,#|
00000330  26 38 31 0d 01 fe 13 4d  4f 56 20 52 31 2c 23 28  |&81....MOV R1,#(|
00000340  32 82 26 46 46 29 0d 02  08 0f 4d 4f 56 20 52 32  |2.&FF)....MOV R2|
00000350  2c 23 26 46 46 0d 02 12  0e 53 57 49 20 26 32 30  |,#&FF....SWI &20|
00000360  30 30 36 0d 02 1c 0f 54  45 51 20 52 31 2c 23 26  |006....TEQ R1,#&|
00000370  46 46 0d 02 26 1b 4c 44  4d 46 44 20 52 31 33 21  |FF..&.LDMFD R13!|
00000380  2c 7b 52 30 2d 52 31 32  2c 52 31 34 7d 0d 02 30  |,{R0-R12,R14}..0|
00000390  0c ec 51 20 52 30 2c 23  30 0d 02 3a 15 4c 44 4d  |..Q R0,#0..:.LDM|
000003a0  45 51 46 44 20 52 31 33  21 2c 7b 50 43 7d 0d 02  |EQFD R13!,{PC}..|
000003b0  44 0b 2e 66 69 6e 69 73  68 0d 02 4e 0f 4d 4f 56  |D..finish..N.MOV|
000003c0  53 20 50 43 2c 52 31 34  0d 02 58 05 5d 0d 02 62  |S PC,R14..X.]..b|
000003d0  05 ed 0d 02 6c 15 c8 99  20 26 31 46 2c 26 38 2c  |....l... &1F,&8,|
000003e0  66 69 6c 65 76 2c 30 0d  02 76 05 e0 0d ff        |filev,0..v....|
000003ee