Home » Archimedes archive » Acorn User » AU 1995-09.adf » !Regulars » Regulars/StarInfo/MachineID/MIDsrc
Regulars/StarInfo/MachineID/MIDsrc
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 User » AU 1995-09.adf » !Regulars |
Filename: | Regulars/StarInfo/MachineID/MIDsrc |
Read OK: | ✔ |
File size: | 0CB6 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
1REM >MNrc 2REM creates Machine$Name system variable 3REM by Dave Lawrence (c) October 1993 4: 5DIM code 4000 6FOR pass=4 TO 6 STEP 2 7P%=0 8O%=code 9[OPT pass 10 ADR r0,mname_name 11 ADR r1,mname_set 12 MOV r2,#mname_end-mname_set 13 MOV r3,#0 14 MOV r4,#16 15 SWI "XOS_SetVarVal" 16 17 ADR r0,mid_name 18 ADR r1,mid_set 19 MOV r2,#mid_end-mid_set 20 MOV r3,#0 21 MOV r4,#16 22 SWI "XOS_SetVarVal" 23 24 MOV PC,R14 25.mname_name 26 EQUS "Machine$Name" 27 EQUB 0 28 ALIGN 29.mid_name 30 EQUS "Machine$ID" 31 EQUB 0 32 ALIGN 33 34.mname_set 35 B mname_write 36 STMFD R13!,{R0-R12,R14} 37 38 MOV r0,#161 39 MOV r1,#30 40 ADR r3,nbuf 41.read_name 42 SWI "XOS_Byte" 43 CMP r2,#32 44 BLT name_end 45 STRB r2,[r3],#1 46 ADD r1,r1,#1 47 CMP r1,#45 48 BLE read_name 49.name_end 50 MOV r0,#0 51 STRB r0,[r3] 52 53 ADR r0,nbuf 54 SUB r2,r1,#30 55 STR r0,[r13,#0] 56 STR r2,[r13,#8] 57.exit 58 LDMFD R13!,{R0-R12,PC}^ 59.mname_write 60 STMFD R13!,{R0-R12,R14} 61 62 MOV r4,r2 63 MOV r3,r1 64 MOV r0,#162 65 MOV r1,#30 66.write_name 67 CMP r4,#0 68 ADREQ r3,null 69 LDRB r2,[r3],#1 70 SWI "XOS_Byte" 71 SUB r4,r4,#1 72 ADD r1,r1,#1 73 CMP r1,#45 74 BLE write_name 75 76 B exit 77 78.nbuf EQUD 0:EQUD 0:EQUD 0:EQUD 0:EQUD 0 79.null EQUD 0:EQUD 0:EQUD 0:EQUD 0 80.mname_end 81 82.mid_set 83 B mid_write 84 STMFD R13!,{R0-R12,R14} 85 86 MOV r0,#2 87 SWI "XOS_ReadSysInfo" 88 ADR r1,mid_buf 89 90 MOVS r0,r4 91 MOV r2,#20 92 SWI "XOS_ConvertHex8" 93 94 MOV r0,r3 95 SWI "XOS_ConvertHex8" 96 ADR r0,mid_buf 97 RSB r2,r2,#20 98.skip0s 99 LDRB r1,[r0] 100 CMP r1,#ASC"0" 101 ADDEQ r0,r0,#1 102 SUBEQ r2,r2,#1 103 BEQ skip0s 104 105 CMP r2,#0 106 ADDEQ r2,r2,#1 107 SUBEQ r0,r0,#1 108 109 TST r2,#1 110 ADDNE r2,r2,#1 111 SUBNE r0,r0,#1 112 113 SUB r0,r0,#2 114 MOV r1,#ASC"0" 115 STRB r1,[r0] 116 MOV r1,#ASC"x" 117 STRB r1,[r0,#1] 118 ADD r2,r2,#2 119 120 STR r0,[R13,#0] 121 STR r2,[R13,#8] 122 123 LDMFD R13!,{R0-R12,PC} 124.mid_write 125 MOV pc,R14 126 127 EQUD 0 128.mid_buf 129 EQUD 0:EQUD 0:EQUD 0:EQUD 0:EQUD 0 130 131.mid_end 132 133]NEXT 134SYS "OS_File",10,"Lib:Utils.MachineID",&FFC,,code,O%
� >MNrc *� creates Machine$Name system variable '� by Dave Lawrence (c) October 1993 : � code 4000 � pass=4 � 6 � 2 P%=0 O%=code [OPT pass ! ADR r0,mname_name ADR r1,mname_set + MOV r2,#mname_end-mname_set MOV r3,#0 MOV r4,#16 # SWI "XOS_SetVarVal" ADR r0,mid_name ADR r1,mid_set ' MOV r2,#mid_end-mid_set MOV r3,#0 MOV r4,#16 # SWI "XOS_SetVarVal" MOV PC,R14 .mname_name " EQUS "Machine$Name" EQUB 0 ALIGN .mid_name EQUS "Machine$ID" EQUB 0 ALIGN ! ".mname_set # B mname_write $% STMFD R13!,{R0-R12,R14} % & MOV r0,#161 ' MOV r1,#30 ( ADR r3,nbuf ).read_name * SWI "XOS_Byte" + CMP r2,#32 , BLT name_end - STRB r2,[r3],#1 . ADD r1,r1,#1 / CMP r1,#45 0 BLE read_name 1%.name_end 2 MOV r0,#0 3 STRB r0,[r3] 4 5 ADR r0,nbuf 6 SUB r2,r1,#30 7 STR r0,[r13,#0] 8 STR r2,[r13,#8] 9.exit :% LDMFD R13!,{R0-R12,PC}^ ;.mname_write <% STMFD R13!,{R0-R12,R14} = > MOV r4,r2 ? MOV r3,r1 @ MOV r0,#162 A MOV r1,#30 B.write_name C CMP r4,#0 D ADREQ r3,null E LDRB r2,[r3],#1 F SWI "XOS_Byte" G SUB r4,r4,#1 H ADD r1,r1,#1 I CMP r1,#45 J BLE write_name K L B exit M N..nbuf EQUD 0:EQUD 0:EQUD 0:EQUD 0:EQUD 0 O'.null EQUD 0:EQUD 0:EQUD 0:EQUD 0 P.mname_end Q R.mid_set S B mid_write T% STMFD R13!,{R0-R12,R14} U V MOV r0,#2 W% SWI "XOS_ReadSysInfo" X ADR r1,mid_buf Y Z MOVS r0,r4 [ MOV r2,#20 \% SWI "XOS_ConvertHex8" ] ^ MOV r0,r3 _% SWI "XOS_ConvertHex8" ` ADR r0,mid_buf a RSB r2,r2,#20 b.skip0s c LDRB r1,[r0] d CMP r1,#�"0" e ADDEQ r0,r0,#1 f SUBEQ r2,r2,#1 g BEQ skip0s h i CMP r2,#0 j ADDEQ r2,r2,#1 k SUBEQ r0,r0,#1 l m TST r2,#1 n ADDNE r2,r2,#1 o SUBNE r0,r0,#1 p q SUB r0,r0,#2 r MOV r1,#�"0" s STRB r1,[r0] t MOV r1,#�"x" u STRB r1,[r0,#1] v ADD r2,r2,#2 w x STR r0,[R13,#0] y STR r2,[R13,#8] z {$ LDMFD R13!,{R0-R12,PC} |.mid_write } MOV pc,R14 ~ EQUD 0 �.mid_buf �6 EQUD 0:EQUD 0:EQUD 0:EQUD 0:EQUD 0 � �.mid_end � �]� �7ș "OS_File",10,"Lib:Utils.MachineID",&FFC,,code,O% �
00000000 0d 00 01 0b f4 20 3e 4d 4e 72 63 0d 00 02 2a f4 |..... >MNrc...*.| 00000010 20 63 72 65 61 74 65 73 20 4d 61 63 68 69 6e 65 | creates Machine| 00000020 24 4e 61 6d 65 20 73 79 73 74 65 6d 20 76 61 72 |$Name system var| 00000030 69 61 62 6c 65 0d 00 03 27 f4 20 62 79 20 44 61 |iable...'. by Da| 00000040 76 65 20 4c 61 77 72 65 6e 63 65 20 28 63 29 20 |ve Lawrence (c) | 00000050 4f 63 74 6f 62 65 72 20 31 39 39 33 0d 00 04 05 |October 1993....| 00000060 3a 0d 00 05 0f de 20 63 6f 64 65 20 34 30 30 30 |:..... code 4000| 00000070 0d 00 06 14 e3 20 70 61 73 73 3d 34 20 b8 20 36 |..... pass=4 . 6| 00000080 20 88 20 32 0d 00 07 08 50 25 3d 30 0d 00 08 0b | . 2....P%=0....| 00000090 4f 25 3d 63 6f 64 65 0d 00 09 0d 5b 4f 50 54 20 |O%=code....[OPT | 000000a0 70 61 73 73 0d 00 0a 21 20 20 20 20 20 20 20 20 |pass...! | 000000b0 41 44 52 20 20 20 20 20 72 30 2c 6d 6e 61 6d 65 |ADR r0,mname| 000000c0 5f 6e 61 6d 65 0d 00 0b 20 20 20 20 20 20 20 20 |_name... | 000000d0 20 41 44 52 20 20 20 20 20 72 31 2c 6d 6e 61 6d | ADR r1,mnam| 000000e0 65 5f 73 65 74 0d 00 0c 2b 20 20 20 20 20 20 20 |e_set...+ | 000000f0 20 4d 4f 56 20 20 20 20 20 72 32 2c 23 6d 6e 61 | MOV r2,#mna| 00000100 6d 65 5f 65 6e 64 2d 6d 6e 61 6d 65 5f 73 65 74 |me_end-mname_set| 00000110 0d 00 0d 19 20 20 20 20 20 20 20 20 4d 4f 56 20 |.... MOV | 00000120 20 20 20 20 72 33 2c 23 30 0d 00 0e 1a 20 20 20 | r3,#0.... | 00000130 20 20 20 20 20 4d 4f 56 20 20 20 20 20 72 34 2c | MOV r4,| 00000140 23 31 36 0d 00 0f 23 20 20 20 20 20 20 20 20 53 |#16...# S| 00000150 57 49 20 20 20 20 20 22 58 4f 53 5f 53 65 74 56 |WI "XOS_SetV| 00000160 61 72 56 61 6c 22 0d 00 10 0c 20 20 20 20 20 20 |arVal".... | 00000170 20 20 0d 00 11 1f 20 20 20 20 20 20 20 20 41 44 | .... AD| 00000180 52 20 20 20 20 20 72 30 2c 6d 69 64 5f 6e 61 6d |R r0,mid_nam| 00000190 65 0d 00 12 1e 20 20 20 20 20 20 20 20 41 44 52 |e.... ADR| 000001a0 20 20 20 20 20 72 31 2c 6d 69 64 5f 73 65 74 0d | r1,mid_set.| 000001b0 00 13 27 20 20 20 20 20 20 20 20 4d 4f 56 20 20 |..' MOV | 000001c0 20 20 20 72 32 2c 23 6d 69 64 5f 65 6e 64 2d 6d | r2,#mid_end-m| 000001d0 69 64 5f 73 65 74 0d 00 14 19 20 20 20 20 20 20 |id_set.... | 000001e0 20 20 4d 4f 56 20 20 20 20 20 72 33 2c 23 30 0d | MOV r3,#0.| 000001f0 00 15 1a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 |... MOV | 00000200 20 20 20 72 34 2c 23 31 36 0d 00 16 23 20 20 20 | r4,#16...# | 00000210 20 20 20 20 20 53 57 49 20 20 20 20 20 22 58 4f | SWI "XO| 00000220 53 5f 53 65 74 56 61 72 56 61 6c 22 0d 00 17 0b |S_SetVarVal"....| 00000230 20 20 20 20 20 20 20 0d 00 18 1a 20 20 20 20 20 | .... | 00000240 20 20 20 4d 4f 56 20 20 20 20 20 50 43 2c 52 31 | MOV PC,R1| 00000250 34 0d 00 19 0f 2e 6d 6e 61 6d 65 5f 6e 61 6d 65 |4.....mname_name| 00000260 0d 00 1a 22 20 20 20 20 20 20 20 20 45 51 55 53 |..." EQUS| 00000270 20 20 20 20 22 4d 61 63 68 69 6e 65 24 4e 61 6d | "Machine$Nam| 00000280 65 22 0d 00 1b 15 20 20 20 20 20 20 20 20 45 51 |e".... EQ| 00000290 55 42 20 20 20 20 30 0d 00 1c 11 20 20 20 20 20 |UB 0.... | 000002a0 20 20 20 41 4c 49 47 4e 0d 00 1d 0d 2e 6d 69 64 | ALIGN.....mid| 000002b0 5f 6e 61 6d 65 0d 00 1e 20 20 20 20 20 20 20 20 |_name... | 000002c0 20 45 51 55 53 20 20 20 20 22 4d 61 63 68 69 6e | EQUS "Machin| 000002d0 65 24 49 44 22 0d 00 1f 14 20 20 20 20 20 20 20 |e$ID".... | 000002e0 20 45 51 55 42 20 20 20 30 0d 00 20 11 20 20 20 | EQUB 0.. . | 000002f0 20 20 20 20 20 41 4c 49 47 4e 0d 00 21 0c 20 20 | ALIGN..!. | 00000300 20 20 20 20 20 20 0d 00 22 0e 2e 6d 6e 61 6d 65 | .."..mname| 00000310 5f 73 65 74 0d 00 23 1f 20 20 20 20 20 20 20 20 |_set..#. | 00000320 42 20 20 20 20 20 20 20 6d 6e 61 6d 65 5f 77 72 |B mname_wr| 00000330 69 74 65 0d 00 24 25 20 20 20 20 20 20 20 20 53 |ite..$% S| 00000340 54 4d 46 44 20 20 20 52 31 33 21 2c 7b 52 30 2d |TMFD R13!,{R0-| 00000350 52 31 32 2c 52 31 34 7d 0d 00 25 04 0d 00 26 1b |R12,R14}..%...&.| 00000360 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 | MOV | 00000370 72 30 2c 23 31 36 31 0d 00 27 1a 20 20 20 20 20 |r0,#161..'. | 00000380 20 20 20 4d 4f 56 20 20 20 20 20 72 31 2c 23 33 | MOV r1,#3| 00000390 30 0d 00 28 1b 20 20 20 20 20 20 20 20 41 44 52 |0..(. ADR| 000003a0 20 20 20 20 20 72 33 2c 6e 62 75 66 0d 00 29 0e | r3,nbuf..).| 000003b0 2e 72 65 61 64 5f 6e 61 6d 65 0d 00 2a 1e 20 20 |.read_name..*. | 000003c0 20 20 20 20 20 20 53 57 49 20 20 20 20 20 22 58 | SWI "X| 000003d0 4f 53 5f 42 79 74 65 22 0d 00 2b 1a 20 20 20 20 |OS_Byte"..+. | 000003e0 20 20 20 20 43 4d 50 20 20 20 20 20 72 32 2c 23 | CMP r2,#| 000003f0 33 32 0d 00 2c 1c 20 20 20 20 20 20 20 20 42 4c |32..,. BL| 00000400 54 20 20 20 20 20 6e 61 6d 65 5f 65 6e 64 0d 00 |T name_end..| 00000410 2d 1e 20 20 20 20 20 20 20 20 53 54 52 42 20 20 |-. STRB | 00000420 20 20 72 32 2c 5b 72 33 5d 2c 23 31 0d 00 2e 1c | r2,[r3],#1....| 00000430 20 20 20 20 20 20 20 20 41 44 44 20 20 20 20 20 | ADD | 00000440 72 31 2c 72 31 2c 23 31 0d 00 2f 1a 20 20 20 20 |r1,r1,#1../. | 00000450 20 20 20 20 43 4d 50 20 20 20 20 20 72 31 2c 23 | CMP r1,#| 00000460 34 35 0d 00 30 1d 20 20 20 20 20 20 20 20 42 4c |45..0. BL| 00000470 45 20 20 20 20 20 72 65 61 64 5f 6e 61 6d 65 0d |E read_name.| 00000480 00 31 25 2e 6e 61 6d 65 5f 65 6e 64 20 20 20 20 |.1%.name_end | 00000490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000004a0 20 20 20 20 0d 00 32 19 20 20 20 20 20 20 20 20 | ..2. | 000004b0 4d 4f 56 20 20 20 20 20 72 30 2c 23 30 0d 00 33 |MOV r0,#0..3| 000004c0 1b 20 20 20 20 20 20 20 20 53 54 52 42 20 20 20 |. STRB | 000004d0 20 72 30 2c 5b 72 33 5d 0d 00 34 0c 20 20 20 20 | r0,[r3]..4. | 000004e0 20 20 20 20 0d 00 35 1b 20 20 20 20 20 20 20 20 | ..5. | 000004f0 41 44 52 20 20 20 20 20 72 30 2c 6e 62 75 66 0d |ADR r0,nbuf.| 00000500 00 36 1d 20 20 20 20 20 20 20 20 53 55 42 20 20 |.6. SUB | 00000510 20 20 20 72 32 2c 72 31 2c 23 33 30 0d 00 37 1f | r2,r1,#30..7.| 00000520 20 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 | STR | 00000530 72 30 2c 5b 72 31 33 2c 23 30 5d 0d 00 38 1f 20 |r0,[r13,#0]..8. | 00000540 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 72 | STR r| 00000550 32 2c 5b 72 31 33 2c 23 38 5d 0d 00 39 11 2e 65 |2,[r13,#8]..9..e| 00000560 78 69 74 20 20 20 20 20 20 20 20 0d 00 3a 25 20 |xit ..:% | 00000570 20 20 20 20 20 20 20 4c 44 4d 46 44 20 20 20 52 | LDMFD R| 00000580 31 33 21 2c 7b 52 30 2d 52 31 32 2c 50 43 7d 5e |13!,{R0-R12,PC}^| 00000590 0d 00 3b 10 2e 6d 6e 61 6d 65 5f 77 72 69 74 65 |..;..mname_write| 000005a0 0d 00 3c 25 20 20 20 20 20 20 20 20 53 54 4d 46 |..<% STMF| 000005b0 44 20 20 20 52 31 33 21 2c 7b 52 30 2d 52 31 32 |D R13!,{R0-R12| 000005c0 2c 52 31 34 7d 0d 00 3d 0c 20 20 20 20 20 20 20 |,R14}..=. | 000005d0 20 0d 00 3e 19 20 20 20 20 20 20 20 20 4d 4f 56 | ..>. MOV| 000005e0 20 20 20 20 20 72 34 2c 72 32 0d 00 3f 19 20 20 | r4,r2..?. | 000005f0 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 72 33 | MOV r3| 00000600 2c 72 31 0d 00 40 1b 20 20 20 20 20 20 20 20 4d |,r1..@. M| 00000610 4f 56 20 20 20 20 20 72 30 2c 23 31 36 32 0d 00 |OV r0,#162..| 00000620 41 1a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 |A. MOV | 00000630 20 20 72 31 2c 23 33 30 0d 00 42 0f 2e 77 72 69 | r1,#30..B..wri| 00000640 74 65 5f 6e 61 6d 65 0d 00 43 19 20 20 20 20 20 |te_name..C. | 00000650 20 20 20 43 4d 50 20 20 20 20 20 72 34 2c 23 30 | CMP r4,#0| 00000660 0d 00 44 1b 20 20 20 20 20 20 20 20 41 44 52 45 |..D. ADRE| 00000670 51 20 20 20 72 33 2c 6e 75 6c 6c 0d 00 45 1e 20 |Q r3,null..E. | 00000680 20 20 20 20 20 20 20 4c 44 52 42 20 20 20 20 72 | LDRB r| 00000690 32 2c 5b 72 33 5d 2c 23 31 0d 00 46 1e 20 20 20 |2,[r3],#1..F. | 000006a0 20 20 20 20 20 53 57 49 20 20 20 20 20 22 58 4f | SWI "XO| 000006b0 53 5f 42 79 74 65 22 0d 00 47 1c 20 20 20 20 20 |S_Byte"..G. | 000006c0 20 20 20 53 55 42 20 20 20 20 20 72 34 2c 72 34 | SUB r4,r4| 000006d0 2c 23 31 0d 00 48 1c 20 20 20 20 20 20 20 20 41 |,#1..H. A| 000006e0 44 44 20 20 20 20 20 72 31 2c 72 31 2c 23 31 0d |DD r1,r1,#1.| 000006f0 00 49 1a 20 20 20 20 20 20 20 20 43 4d 50 20 20 |.I. CMP | 00000700 20 20 20 72 31 2c 23 34 35 0d 00 4a 1e 20 20 20 | r1,#45..J. | 00000710 20 20 20 20 20 42 4c 45 20 20 20 20 20 77 72 69 | BLE wri| 00000720 74 65 5f 6e 61 6d 65 0d 00 4b 0c 20 20 20 20 20 |te_name..K. | 00000730 20 20 20 0d 00 4c 18 20 20 20 20 20 20 20 20 42 | ..L. B| 00000740 20 20 20 20 20 20 20 65 78 69 74 0d 00 4d 0c 20 | exit..M. | 00000750 20 20 20 20 20 20 20 0d 00 4e 2e 2e 6e 62 75 66 | ..N..nbuf| 00000760 20 20 20 45 51 55 44 20 30 3a 45 51 55 44 20 30 | EQUD 0:EQUD 0| 00000770 3a 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a 45 |:EQUD 0:EQUD 0:E| 00000780 51 55 44 20 30 0d 00 4f 27 2e 6e 75 6c 6c 20 20 |QUD 0..O'.null | 00000790 20 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a 45 | EQUD 0:EQUD 0:E| 000007a0 51 55 44 20 30 3a 45 51 55 44 20 30 0d 00 50 0e |QUD 0:EQUD 0..P.| 000007b0 2e 6d 6e 61 6d 65 5f 65 6e 64 0d 00 51 04 0d 00 |.mname_end..Q...| 000007c0 52 0c 2e 6d 69 64 5f 73 65 74 0d 00 53 1d 20 20 |R..mid_set..S. | 000007d0 20 20 20 20 20 20 42 20 20 20 20 20 20 20 6d 69 | B mi| 000007e0 64 5f 77 72 69 74 65 0d 00 54 25 20 20 20 20 20 |d_write..T% | 000007f0 20 20 20 53 54 4d 46 44 20 20 20 52 31 33 21 2c | STMFD R13!,| 00000800 7b 52 30 2d 52 31 32 2c 52 31 34 7d 0d 00 55 04 |{R0-R12,R14}..U.| 00000810 0d 00 56 19 20 20 20 20 20 20 20 20 4d 4f 56 20 |..V. MOV | 00000820 20 20 20 20 72 30 2c 23 32 0d 00 57 25 20 20 20 | r0,#2..W% | 00000830 20 20 20 20 20 53 57 49 20 20 20 20 20 22 58 4f | SWI "XO| 00000840 53 5f 52 65 61 64 53 79 73 49 6e 66 6f 22 0d 00 |S_ReadSysInfo"..| 00000850 58 1e 20 20 20 20 20 20 20 20 41 44 52 20 20 20 |X. ADR | 00000860 20 20 72 31 2c 6d 69 64 5f 62 75 66 0d 00 59 04 | r1,mid_buf..Y.| 00000870 0d 00 5a 19 20 20 20 20 20 20 20 20 4d 4f 56 53 |..Z. MOVS| 00000880 20 20 20 20 72 30 2c 72 34 0d 00 5b 1a 20 20 20 | r0,r4..[. | 00000890 20 20 20 20 20 4d 4f 56 20 20 20 20 20 72 32 2c | MOV r2,| 000008a0 23 32 30 0d 00 5c 25 20 20 20 20 20 20 20 20 53 |#20..\% S| 000008b0 57 49 20 20 20 20 20 22 58 4f 53 5f 43 6f 6e 76 |WI "XOS_Conv| 000008c0 65 72 74 48 65 78 38 22 0d 00 5d 0c 20 20 20 20 |ertHex8"..]. | 000008d0 20 20 20 20 0d 00 5e 19 20 20 20 20 20 20 20 20 | ..^. | 000008e0 4d 4f 56 20 20 20 20 20 72 30 2c 72 33 0d 00 5f |MOV r0,r3.._| 000008f0 25 20 20 20 20 20 20 20 20 53 57 49 20 20 20 20 |% SWI | 00000900 20 22 58 4f 53 5f 43 6f 6e 76 65 72 74 48 65 78 | "XOS_ConvertHex| 00000910 38 22 0d 00 60 1e 20 20 20 20 20 20 20 20 41 44 |8"..`. AD| 00000920 52 20 20 20 20 20 72 30 2c 6d 69 64 5f 62 75 66 |R r0,mid_buf| 00000930 0d 00 61 1d 20 20 20 20 20 20 20 20 52 53 42 20 |..a. RSB | 00000940 20 20 20 20 72 32 2c 72 32 2c 23 32 30 0d 00 62 | r2,r2,#20..b| 00000950 13 2e 73 6b 69 70 30 73 20 20 20 20 20 20 20 20 |..skip0s | 00000960 0d 00 63 1b 20 20 20 20 20 20 20 20 4c 44 52 42 |..c. LDRB| 00000970 20 20 20 20 72 31 2c 5b 72 30 5d 0d 00 64 1c 20 | r1,[r0]..d. | 00000980 20 20 20 20 20 20 20 43 4d 50 20 20 20 20 20 72 | CMP r| 00000990 31 2c 23 97 22 30 22 0d 00 65 1c 20 20 20 20 20 |1,#."0"..e. | 000009a0 20 20 20 41 44 44 45 51 20 20 20 72 30 2c 72 30 | ADDEQ r0,r0| 000009b0 2c 23 31 0d 00 66 1c 20 20 20 20 20 20 20 20 53 |,#1..f. S| 000009c0 55 42 45 51 20 20 20 72 32 2c 72 32 2c 23 31 0d |UBEQ r2,r2,#1.| 000009d0 00 67 1a 20 20 20 20 20 20 20 20 42 45 51 20 20 |.g. BEQ | 000009e0 20 20 20 73 6b 69 70 30 73 0d 00 68 0c 20 20 20 | skip0s..h. | 000009f0 20 20 20 20 20 0d 00 69 19 20 20 20 20 20 20 20 | ..i. | 00000a00 20 43 4d 50 20 20 20 20 20 72 32 2c 23 30 0d 00 | CMP r2,#0..| 00000a10 6a 1c 20 20 20 20 20 20 20 20 41 44 44 45 51 20 |j. ADDEQ | 00000a20 20 20 72 32 2c 72 32 2c 23 31 0d 00 6b 1c 20 20 | r2,r2,#1..k. | 00000a30 20 20 20 20 20 20 53 55 42 45 51 20 20 20 72 30 | SUBEQ r0| 00000a40 2c 72 30 2c 23 31 0d 00 6c 0c 20 20 20 20 20 20 |,r0,#1..l. | 00000a50 20 20 0d 00 6d 19 20 20 20 20 20 20 20 20 54 53 | ..m. TS| 00000a60 54 20 20 20 20 20 72 32 2c 23 31 0d 00 6e 1c 20 |T r2,#1..n. | 00000a70 20 20 20 20 20 20 20 41 44 44 4e 45 20 20 20 72 | ADDNE r| 00000a80 32 2c 72 32 2c 23 31 0d 00 6f 1c 20 20 20 20 20 |2,r2,#1..o. | 00000a90 20 20 20 53 55 42 4e 45 20 20 20 72 30 2c 72 30 | SUBNE r0,r0| 00000aa0 2c 23 31 0d 00 70 14 20 20 20 20 20 20 20 20 20 |,#1..p. | 00000ab0 20 20 20 20 20 20 20 0d 00 71 1c 20 20 20 20 20 | ..q. | 00000ac0 20 20 20 53 55 42 20 20 20 20 20 72 30 2c 72 30 | SUB r0,r0| 00000ad0 2c 23 32 0d 00 72 1c 20 20 20 20 20 20 20 20 4d |,#2..r. M| 00000ae0 4f 56 20 20 20 20 20 72 31 2c 23 97 22 30 22 0d |OV r1,#."0".| 00000af0 00 73 1b 20 20 20 20 20 20 20 20 53 54 52 42 20 |.s. STRB | 00000b00 20 20 20 72 31 2c 5b 72 30 5d 0d 00 74 1c 20 20 | r1,[r0]..t. | 00000b10 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 72 31 | MOV r1| 00000b20 2c 23 97 22 78 22 0d 00 75 1e 20 20 20 20 20 20 |,#."x"..u. | 00000b30 20 20 53 54 52 42 20 20 20 20 72 31 2c 5b 72 30 | STRB r1,[r0| 00000b40 2c 23 31 5d 0d 00 76 1c 20 20 20 20 20 20 20 20 |,#1]..v. | 00000b50 41 44 44 20 20 20 20 20 72 32 2c 72 32 2c 23 32 |ADD r2,r2,#2| 00000b60 0d 00 77 0c 20 20 20 20 20 20 20 20 0d 00 78 1f |..w. ..x.| 00000b70 20 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 | STR | 00000b80 72 30 2c 5b 52 31 33 2c 23 30 5d 0d 00 79 1f 20 |r0,[R13,#0]..y. | 00000b90 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 72 | STR r| 00000ba0 32 2c 5b 52 31 33 2c 23 38 5d 0d 00 7a 04 0d 00 |2,[R13,#8]..z...| 00000bb0 7b 24 20 20 20 20 20 20 20 20 4c 44 4d 46 44 20 |{$ LDMFD | 00000bc0 20 20 52 31 33 21 2c 7b 52 30 2d 52 31 32 2c 50 | R13!,{R0-R12,P| 00000bd0 43 7d 0d 00 7c 0e 2e 6d 69 64 5f 77 72 69 74 65 |C}..|..mid_write| 00000be0 0d 00 7d 1a 20 20 20 20 20 20 20 20 4d 4f 56 20 |..}. MOV | 00000bf0 20 20 20 20 70 63 2c 52 31 34 0d 00 7e 04 0d 00 | pc,R14..~...| 00000c00 7f 13 20 20 20 20 20 20 20 20 45 51 55 44 20 20 |.. EQUD | 00000c10 30 0d 00 80 0c 2e 6d 69 64 5f 62 75 66 0d 00 81 |0.....mid_buf...| 00000c20 36 20 20 20 20 20 20 20 20 45 51 55 44 20 30 3a |6 EQUD 0:| 00000c30 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a 45 51 |EQUD 0:EQUD 0:EQ| 00000c40 55 44 20 30 3a 45 51 55 44 20 30 20 20 20 20 20 |UD 0:EQUD 0 | 00000c50 20 20 20 0d 00 82 0c 20 20 20 20 20 20 20 20 0d | .... .| 00000c60 00 83 14 2e 6d 69 64 5f 65 6e 64 20 20 20 20 20 |....mid_end | 00000c70 20 20 20 0d 00 84 04 0d 00 85 06 5d ed 0d 00 86 | ........]....| 00000c80 37 c8 99 20 22 4f 53 5f 46 69 6c 65 22 2c 31 30 |7.. "OS_File",10| 00000c90 2c 22 4c 69 62 3a 55 74 69 6c 73 2e 4d 61 63 68 |,"Lib:Utils.Mach| 00000ca0 69 6e 65 49 44 22 2c 26 46 46 43 2c 2c 63 6f 64 |ineID",&FFC,,cod| 00000cb0 65 2c 4f 25 0d ff |e,O%..| 00000cb6