REM > ROMFS/lst REM Source for rom_podule_rom/bin OS_CLI=&FFF7:OSBYTE=&FFF4:OSWORD=&FFF1:OSWRCH=&FFEE OSWRCR=&FFEC:OSNEWL=&FFE7:OSASCI=&FFE3:OSRDCH=&FFE0 OSFILE=&FFDD:OSARGS=&FFDA:OSBGET=&FFD7:OSBPUT=&FFD4 OSGBPB=&FFD1:OSFIND=&FFCE load%=&0 DIM mcode% &4014 FOR P=0 TO 1 P%=load%:O%=mcode% [OPT P*3+4 .exec% .L00000000 EQUD &05000300 00 03 00 05 .... EQUD &00000000 00 00 00 00 .... EQUD &00000000 00 00 00 00 .... EQUD &00000000 00 00 00 00 .... EQUD &00029080 80 90 02 00 .... EQUD &00000570 70 05 00 00 p... EQUD &00000BF5 F5 0B 00 00 u... EQUD &00000565 65 05 00 00 e... EQUD &00053C81 81 3C 05 00 .<.. EQUD &00000029 29 00 00 00 )... EQUD &00000000 00 00 00 00 .... EQUD &00000000 00 00 00 00 .... EQUD &00000000 00 00 00 00 .... EQUD &00000000 00 00 00 00 .... EQUD &00001C00 00 1C 00 00 .... EQUD &00002500 00 25 00 00 .%.. EQUD &00004400 00 44 00 00 .D.. .L00000044 EQUB &00 EQUS "ROMBoard":EQUB 0 .L0000004E EQUS "ROM manager"+CHR$9+"0.07 (27 Aug 1987)":EQUB 0 .L0000006D EQUS "ROMBoard":EQUB 0:EQUB 0:EQUB 0 EQUW &0001D000:EQUD &00000000:EQUD &00019940:EQUD &00006100 EQUB 0:EQUB 0 .L0000008A EQUS "*Configure ROMBoard sets the device types installed " EQUS "in the relevant ROM podule board. The allowed types " EQUS "of device are as follows:":EQUB 13 EQUS CHR$31+"10_128" +CHR$31+"=>"+CHR$31+CHR$31+"16K byte ROM":EQUB 13 EQUS CHR$31+"10_256" +CHR$31+"=>"+CHR$31+CHR$31+"32K byte ROM":EQUB 13 EQUS CHR$31+"10_512" +CHR$31+"=>"+CHR$31+CHR$31+"64K byte ROM":EQUB 13 EQUS CHR$31+"10_1024"+CHR$31+"=>"+CHR$31+"128K byte ROM":EQUB 13 EQUS CHR$31+"20_64" +CHR$31+"=>"+CHR$31+CHR$31+CHR$31+"8K byte RAM":EQUB 13 EQUS CHR$31+"20_128" +CHR$31+"=>"+CHR$31+CHR$31+"16K byte RAM":EQUB 13 EQUS CHR$31+"20_256" +CHR$31+"=>"+CHR$31+CHR$31+"32K byte RAM":EQUB 13 EQUS CHR$31+"20_512" +CHR$31+"=>"+CHR$31+CHR$31+"64K byte RAM":EQUB 13 EQUS CHR$31+"20_1024"+CHR$31+"=>"+CHR$31+"128K byte ROM":EQUB 13 .L000001BD EQUS "Syntax: *Configure ROMBoard []":EQUB 0 LDCPL CP5,C6,[R14,#-448] STCCSL CP15,C7,[R0,#-0]:\ 000001F8 00 7F 40 2D ..@- ANDPL R0,R0,R9,ROR #3:\ 000001FC E9 01 00 50 i..P .L0000020000000200 E3 5A 00 00 cZ..:\ ANDEQ R5,R0,R3,ROR #21 ANDEQ R0,R0,R10,LSL #7:\ 00000204 8A 03 00 00 .... SWIMI User :\ 00000208 0A 3C 00 4F .<.O ANDEQ R0,R0,#&2000000E:\ 0000020C E2 02 00 02 b... ANDEQ R0,R0,#&BC000003:\ 00000210 EF 03 00 02 o... ANDEQ R11,R0,PC,ROR R0:\ 00000214 7F B0 00 00 .0.. EORGES R0,R0,R10,ROR #1:\ 00000218 EA 00 30 A0 j.0 ANDEQ R10,R0,R3,ROR #1:\ 0000021C E3 A0 00 00 c .. ANDEQ R2,R0,R11,ROR #5:\ 00000220 EB 22 00 00 k".. ANDEQ R2,R0,R10,ROR #2:\ 00000224 6A 21 00 00 j!.. TSTHI R0,#L1A :\ 00000228 1A 30 00 83 .0.. ANDEQ R0,R0,#&80000038:\ 0000022C E2 01 00 02 b... STRVSBT R5,L00000149:\ 00000230 EF 50 6F 64 oPod RSBCS R6,R5,R5,ROR R12:\ 00000234 75 6C 65 20 ule ANDEQ R0,R0,#0 :\ 00000238 00 00 00 02 .... ANDEQ R0,R0,#&FC000001:\ 0000023C 7F 03 00 02 .... ANDGES R7,R0,PC,ROR R0:\ 00000240 7F 70 10 A0 .p. TSTHI R1,R3,ROR #7:\ 00000244 E3 03 11 81 c... ANDGE R10,R0,R0,ROR #3:\ 00000248 E0 A1 00 A0 `!. ANDEQ R0,R0,#&07300000:\ 0000024C 73 06 00 02 s... SUBGE R0,R0,PC,ROR R2:\ 00000250 7F 02 40 A0 ..@ TSTHI R0,R1,ROR #3:\ 00000254 E1 01 10 81 a... ANDEQ R0,R0,#&0E200000:\ 00000258 E2 06 00 02 b... STRHIB R0,[R4],#-639:\ 0000025C 7F 02 44 84 ..D. TSTHI R0,R1,ROR #3:\ 00000260 E1 01 10 81 a... ANDEQ R0,R0,#&0E200000:\ 00000264 E2 06 00 02 b... STRHIB R0,[R8],#-639:\ 00000268 7F 02 48 84 ..H. SUBGES R3,R0,R1,ROR #3:\ 0000026C E1 31 50 A0 a1P SWIHI User :\ 00000270 E3 48 00 8F cH.. ANDEQ R0,R0,#&20000007:\ 00000274 72 02 00 02 r... ANDGE R0,R0,PC,ROR R5:\ 00000278 7F 05 00 A0 ... ANDEQ R0,R0,#L71 :\ 0000027C 71 00 00 02 q... SWIHI User :\ 00000280 7F 44 00 8F .D.. ANDEQ R0,R0,#&20000007:\ 00000284 72 02 00 02 r... STREQ R0,[R0],#-1919:\ 00000288 7F 07 00 04 .... SUBGE R10,R1,R2,ROR R4:\ 0000028C 72 A4 41 A0 r$A SWIHI User :\ 00000290 E1 38 10 8F a8.. TSTHI R2,R2,ROR #1:\ 00000294 E2 00 02 81 b... ANDEQ R0,R0,#L70,ROR #4:\ 00000298 70 02 00 02 p... ANDEQ R0,R0,#&FC000001:\ 0000029C 7F 03 00 02 .... ANDEQ R8,R0,PC,ROR R13:\ 000002A0 7F 8D 00 00 .... LDRHIB R0,[R0,#-362]:\ 000002A4 6A 01 50 85 j.P. STRCC R3,[R0,#-2530]:\ 000002A8 E2 39 00 35 b9.5 SWINV XUser :\ 000002AC E3 EF FF FF co.. TEQHI R0,#&80000006:\ 000002B0 1A 01 30 83 ..0. TSTPL R0,#&E2000000:\ 000002B4 E2 04 00 53 b..S SWINV XUser :\ 000002B8 E3 D7 FF FF cW.. ANDEQ R8,R0,R10,LSL R6:\ 000002BC 1A 86 00 00 .... EORCS R2,R0,R10,ROR #1:\ 000002C0 EA 20 20 20 j STRVCBT R4,[R5],-R0,LSR #8:\ 000002C4 20 44 65 76 Dev RSBCS R6,R5,R9,ROR #6:\ 000002C8 69 63 65 20 ice EORCSS R2,R13,R0 :\ 000002CC 00 20 3D 20 . = STCVSL CP0,C2,[R5,#-0]:\ 000002D0 00 20 45 6D . Em RSBCSS R7,R9,R0,ROR R4:\ 000002D4 70 74 79 20 pty BLVS &018DC0AC :\ 000002D8 73 6F 63 6B sock ANDEQ R7,R0,R5,ROR #8:\ 000002DC 65 74 00 00 et.. LDRCCT R2,[R1],-R0 :\ 000002E0 00 20 31 36 . 16 STMVCDB R2!,{R0,R1,R3,R6,R:\ 000002E4 4B 20 62 79 K by STRMI R6,[R0,#-1396]!:\ 000002E8 74 65 20 45 te E SFMMI F5,2,[PC,#-320] :\ 000002EC 50 52 4F 4D PROM EORCCS R2,R3,#0 :\ 000002F0 00 20 33 32 . 32 STMVCDB R2!,{R0,R1,R3,R6,R:\ 000002F4 4B 20 62 79 K by STRMI R6,[R0,#-1396]!:\ 000002F8 74 65 20 45 te E SFMMI F5,2,[PC,#-320] :\ 000002FC 50 52 4F 4D PROM LDRCCT R2,[R6],#-0 :\ 00000300 00 20 36 34 . 64 STMVCDB R2!,{R0,R1,R3,R6,R:\ 00000304 4B 20 62 79 K by STRMI R6,[R0,#-1396]!:\ 00000308 74 65 20 45 te E SFMMI F5,2,[PC,#-320] :\ 0000030C 50 52 4F 4D PROM LDMCCDA R2!,{R8,R12,R13}:\ 00000310 00 31 32 38 .128 STMVCDB R2!,{R0,R1,R3,R6,R:\ 00000314 4B 20 62 79 K by STRMI R6,[R0,#-1396]!:\ 00000318 74 65 20 45 te E SFMMI F5,2,[PC,#-320] :\ 0000031C 50 52 4F 4D PROM STMCCDA R0!,{R13} :\ 00000320 00 20 20 38 . 8 STMVCDB R2!,{R0,R1,R3,R6,R:\ 00000324 4B 20 62 79 K by TEQPL R0,#&1D000000:\ 00000328 74 65 20 53 te S SUBEQ R4,R13,R2,ASR R1:\ 0000032C 52 41 4D 00 RAM. EORCCS R2,R3,#0 :\ 00000330 00 20 33 32 . 32 STMVCDB R2!,{R0,R1,R3,R6,R:\ 00000334 4B 20 62 79 K by TEQPL R0,#&1D000000:\ 00000338 74 65 20 53 te S SUBEQ R4,R13,R2,ASR R1:\ 0000033C 52 41 4D 00 RAM. LDMCCDA R2!,{R8,R12,R13}:\ 00000340 00 31 32 38 .128 STMVCDB R2!,{R0,R1,R3,R6,R:\ 00000344 4B 20 62 79 K by TEQPL R0,#&1D000000:\ 00000348 74 65 20 53 te S SUBEQ R4,R13,R2,ASR R1:\ 0000034C 52 41 4D 00 RAM. ANDEQ R0,R4,R0,LSL #2:\ 00000350 00 01 04 00 .... ANDEQ R0,R8,R0,LSL #4:\ 00000354 00 02 08 00 .... ANDEQS R0,R0,R0,LSL #6:\ 00000358 00 03 10 00 .... EOREQ R0,R0,R0,LSL #8:\ 0000035C 00 04 20 00 .. . ANDEQ R14,R3,R0,LSL #10:\ 00000360 00 E5 03 00 .e.. ANDEQS R5,R12,R0,LSL #12:\ 00000364 00 56 1C 00 .V.. RSCEQS R6,R11,R0,LSL #14:\ 00000368 00 67 FB 00 .g{. ANDEQ R0,R0,R0 :\ 0000036C 00 00 00 00 .... ANDGES R0,R0,R0 :\ 00000370 00 00 10 A0 ... ANDEQ R4,R0,R1,ROR #9:\ 00000374 E1 44 00 00 aD.. ANDEQ R5,R0,R11,ROR #11:\ 00000378 EB 55 00 00 kU.. MULGE R1,R10,R10 :\ 0000037C BA 2A 01 A0 :*. ANDEQ R2,R0,#&C0000038:\ 00000380 E3 21 00 02 c!.. EORGES R0,R0,PC,ROR #5:\ 00000384 EF 02 30 A0 o.0 ANDEQ R3,R0,R1,ROR #31:\ 00000388 E1 3F 00 00 a?.. ANDEQ R5,R0,R11,ROR #1:\ 0000038C EB 50 00 00 kP.. MULEQ R0,R10,R3 :\ 00000390 BA 43 00 00 :C.. ANDEQ R5,R0,R11,ROR #1:\ 00000394 EB 50 00 00 kP.. SWIHI User :\ 00000398 6A 06 0D 8F j... ANDEQ R4,R0,R2,LSL R13:\ 0000039C 12 4D 00 00 .M.. ANDGE R2,R1,R10,LSL R10:\ 000003A0 1A 2A 01 A0 .*. ANDEQ R2,R0,#&C0000038:\ 000003A4 E3 21 00 02 c!.. ANDEQ R4,R0,PC,ROR #23:\ 000003A8 EF 4B 00 00 oK.. SUBMIS R0,R0,#&8000001A:\ 000003AC 6A 01 50 42 j.PB STRPL R0,[R0,#-2018]:\ 000003B0 E2 07 00 55 b..U SWIHI XUser :\ 000003B4 E3 5F 0F 8F c_.. ANDEQ R4,R0,R2,LSL #13:\ 000003B8 82 46 00 00 .F.. ANDEQ R3,R0,R10,LSL #5:\ 000003BC 8A 32 00 00 .2.. SUBGE R0,R0,R11,ROR #1:\ 000003C0 EB 00 40 A0 k.@ MULEQ R0,R3,R14 :\ 000003C4 B3 0E 00 00 3... MULGE R1,R10,R10 :\ 000003C8 BA 2A 01 A0 :*. ANDEQ R2,R0,#&C0000038:\ 000003CC E3 21 00 02 c!.. ANDEQ R2,R0,PC,ROR #27:\ 000003D0 EF 2D 00 00 o-.. ANDEQ R3,R0,R11,ROR #29:\ 000003D4 EB 3E 00 00 k>.. ANDCC R0,R0,#L8A :\ 000003D8 8A 00 00 32 ...2 SUBGE R0,R0,R3,ROR #5:\ 000003DC E3 02 40 A0 c.@ ANDEQ R0,R0,R1,LSL #14:\ 000003E0 01 07 00 00 .... SWIMI User :\ 000003E4 0A 9C 00 4F ...O ANDLSS R0,R0,R2,ROR #9:\ 000003E8 E2 04 10 90 b... TSTCC R0,R4,ROR #1:\ 000003EC E4 00 00 31 d..1 SWIHI XUser :\ 000003F0 E3 56 0F 8F cV.. ANDEQ R3,R0,R2,LSL #14:\ 000003F4 02 37 00 00 .7.. ANDPL R10,R1,#&80000002:\ 000003F8 0A A1 01 52 .!.R SWINV XUser :\ 000003FC E1 F9 FF FF ay.. .L0000040000000400 1A 07 40 01 ..@.:\ CMPEQ R0,R10,LSL R7 ANDGES R7,R0,R2,ROR #1:\ 00000404 E2 70 10 A0 bp. TSTHI R1,R3,ROR #7:\ 00000408 E3 03 11 81 c... ANDGE R10,R0,R0,ROR #3:\ 0000040C E0 A1 00 A0 `!. ANDEQ R0,R0,#&0E300000:\ 00000410 E3 06 00 02 c... RSBGE R0,R0,PC,ROR #5:\ 00000414 EF 02 60 A0 o.` TSTHI R0,R1,ROR #3:\ 00000418 E1 01 10 81 a... ANDEQ R0,R0,#&0E200000:\ 0000041C E2 06 00 02 b... Undefined instruction:\ 00000420 7F 02 64 86 ..d. TSTHI R0,R1,ROR #3:\ 00000424 E1 01 10 81 a... ANDEQ R0,R0,#&0E200000:\ 00000428 E2 06 00 02 b... ANDEQ R2,R0,PC,ROR R10:\ 0000042C 7F 2A 00 00 .*.. STRHIBT R0,[R8],-R10,ROR #:\ 00000430 6A 02 68 86 j.h. ANDGE R0,R0,R1,ROR #15:\ 00000434 E1 07 00 A0 a.. LDRHI R8,[R0,#-1507]:\ 00000438 E3 85 10 85 c... STRGT R1,[R1],-R0,ROR #1:\ 0000043C E0 10 01 C6 `..F SUBHI R1,R1,R1,ROR #9:\ 00000440 E1 14 41 80 a.A. STRCSBT R0,[R0],-R1,ROR #9:\ 00000444 E1 04 60 26 a.`& ANDGE R10,R0,R0,ROR #5:\ 00000448 E0 A2 00 A0 `". ANDGES R7,R0,R3,ROR #1:\ 0000044C E3 70 10 A0 cp. TSTHI R1,R3,ROR #7:\ 00000450 E3 03 11 81 c... STRNET PC,[R0],-R0,ROR #3:\ 00000454 E0 FF 20 16 `. . EORGE R0,R0,R2,ROR #9:\ 00000458 E2 04 20 A0 b. ANDEQ R0,R0,#&0E100000:\ 0000045C E1 06 00 02 a... ANDEQ R1,R0,PC,LSL R13:\ 00000460 1F 1D 00 00 .... TSTHI R0,R10,ROR #2:\ 00000464 6A 01 10 81 j... STRNET PC,[R12],-R2,ROR #:\ 00000468 E2 FF 2C 16 b.,. EORGE R2,R4,R2,ROR #9:\ 0000046C E2 24 24 A0 b$$ ANDEQ R0,R0,#&0E100000:\ 00000470 E1 06 00 02 a... ANDEQ R1,R0,PC,LSL R8:\ 00000474 1F 18 00 00 .... TSTHI R0,R10,ROR #2:\ 00000478 6A 01 10 81 j... STRNET PC,[R8],-R2,ROR #3:\ 0000047C E2 FF 28 16 b.(. EORGE R2,R8,R2,ROR #9:\ 00000480 E2 24 28 A0 b$( ANDEQ R0,R0,#&0E100000:\ 00000484 E1 06 00 02 a... ANDEQ R1,R0,PC,LSL R3:\ 00000488 1F 13 00 00 .... ANDEQ R1,R0,R10,ROR #5:\ 0000048C EA 12 00 00 j... TSTLE R0,R10,ROR #2:\ 00000490 6A 01 00 D1 j..Q ANDPL R2,R0,R4,ROR #1:\ 00000494 E4 20 00 50 d .P SWINV XUser :\ 00000498 E3 FC FF FF c|.. TSTMI R0,R10,LSL #2:\ 0000049C 0A 01 10 41 ...A RSCGES R0,R0,R2,ROR #29:\ 000004A0 E2 0E F0 A0 b.p EORGE R0,R0,R1,ROR #1:\ 000004A4 E1 00 20 A0 a. SUBGES R0,R0,R3,ROR #1:\ 000004A8 E3 00 50 A0 c.P STCCSL CP4,C14,[R0,#-908]:\ 000004AC E3 E4 40 2D cd@- STREQ R8,[R2],-R9,ROR #1:\ 000004B0 E9 80 02 06 i... EORGE R0,R0,PC,ROR #27:\ 000004B4 EF 0D 20 A0 o. STREQ R8,[R2],-R1,ROR #3:\ 000004B8 E1 81 02 06 a... ANDEQ R0,R0,PC,ROR R3:\ 000004BC 7F 03 00 00 .... ANDLE R0,R0,#&A8000001:\ 000004C0 6A 03 00 D2 j..R ANDCC R0,R0,R5,ROR #11:\ 000004C4 E5 05 00 30 e..0 ANDLS R0,R0,#&E3000000:\ 000004C8 E3 04 00 92 c... ANDCC R0,R0,R5 :\ 000004CC 05 00 00 30 ...0 STCLTL CP4,C6,[R0,#12]:\ 000004D0 03 64 C0 BD .d@= SWIHI User :\ 000004D4 E8 08 00 8F h... SWIPL User :\ 000004D8 E2 02 01 5F b.._ STCHI CP0,C0,[R0,#-908]:\ 000004DC E3 00 00 8D c... STCLT CP15,C7,[R0,#400]:\ 000004E0 64 7F 80 BD d..= ANDEQ R13,R0,R8,ROR #25:\ 000004E4 E8 DC 00 00 h\.. CDPVS CP3,7,C5,C9,C0:\ 000004E8 00 53 79 6E .Syn BCC &01E18AC4 :\ 000004EC 74 61 78 3A tax: SWIVS XUser :\ 000004F0 20 2A 43 6F *Co STRVSB R6,[R9,-R14,ROR #1:\ 000004F4 6E 66 69 67 nfig RSBCS R7,R5,R5,ROR R2:\ 000004F8 75 72 65 20 ure SUBMI R4,R13,#L0148 :\ 000004FC 52 4F 4D 42 ROMB .L0000050000000500 6F 61 72 64 oard:\ LDRVSBT R6,[R2],#-367 SWIVS User :\ 00000504 20 3C 70 6F [ RSBVCS R7,R9,R12,LSR R4:\ 00000518 3C 74 79 70 ]. ANDEQ R0,R5,R0,LSL #20:\ 00000520 00 0A 05 00 .... SWIVS XUser :\ 00000524 00 57 72 6F .Wro EORVC R6,R0,R14,ROR #14:\ 00000528 6E 67 20 70 ng p LDCVSL CP4,C6,[R5],#-444:\ 0000052C 6F 64 75 6C odul LDMVCDB R4!,{R0,R2,R5,R6,R:\ 00000530 65 20 74 79 e ty ANDEQ R6,R0,R0,ROR R5:\ 00000534 70 65 00 00 pe.. ANDEQ R0,R5,R0,LSL #16:\ 00000538 00 08 05 00 .... STRVSBT R4,[R1],#-512:\ 0000053C 00 42 61 64 .Bad STRVCBT R6,[R5],-R0,LSR #8:\ 00000540 20 64 65 76 dev RSBCS R6,R5,R9,ROR #6:\ 00000544 69 63 65 20 ice RSBVS R7,R13,#&1B800000:\ 00000548 6E 75 6D 62 numb ANDEQ R7,R0,R5,ROR #4:\ 0000054C 65 72 00 00 er.. .L0000055000000550 00 09 05 00 ....:\ ANDEQ R0,R5,R0,LSL #18 STRVSBT R4,[R1],#-512:\ 00000554 00 42 61 64 .Bad STRVCBT R6,[R5],-R0,LSR #8:\ 00000558 20 64 65 76 dev RSBCS R6,R5,R9,ROR #6:\ 0000055C 69 63 65 20 ice LDRVSB R7,[R0,#-2420]!:\ 00000560 74 79 70 65 type SFMMI F5,2,[PC,#-0] :\ 00000564 00 52 4F 4D .ROM STRVSBT R7,L00000550:\ 00000568 20 70 6F 64 pod RSBEQ R6,R5,R5,ROR R12:\ 0000056C 75 6C 65 00 ule. B L000005C8 :\ 00000570 14 00 00 EA ...j B L000005EC :\ 00000574 1C 00 00 EA ...j B L00000624 :\ 00000578 29 00 00 EA )..j BICS PC,R14,#&10000000:\ 0000057C 01 F2 DE E3 .r^c SUBMI R4,R13,#L0148 :\ 00000580 52 4F 4D 42 ROMB LDRVSBT R6,[R2],#-367:\ 00000584 6F 61 72 64 oard STRVSBT R6,[R1],#-3916:\ 00000588 4C 6F 61 64 Load TSTCC R9,R5,ROR #4:\ 0000058C 65 72 09 31 er.1 EORCSS R3,R7,R14,LSR #2:\ 00000590 2E 31 37 20 .17 EORCSS R3,R0,R8,LSR #4:\ 00000594 28 32 30 20 (20 RSBCSS R6,R6,R14,ASR #30:\ 00000598 4E 6F 76 20 Nov Undefined instruction:\ 0000059C 31 39 38 37 1987 ANDEQ R0,R0,R9,LSR #32:\ 000005A0 29 00 00 00 )... .L000005A4000005A4 FF FF 00 00 ....:\ MULEQ R0,PC,PC .L000005A8000005A8 00 00 00 00 ....:\ ANDEQ R0,R0,R0 ANDEQ R0,R0,R0 :\ 000005AC 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000005B0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000005B4 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000005B8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000005BC 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000005C0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000005C4 00 00 00 00 .... .L000005C8000005C8 12 48 2D E9 .H-i:\ STMDB R13!,{R1,R4,R11,R1 BL L00000654 :\ 000005CC 20 00 00 EB ..k MOV R10,R4,ASR #11:\ 000005D0 C4 A5 A0 E1 D% a BL L00000770 :\ 000005D4 65 00 00 EB e..k LDR R3,L000007B8:\ 000005D8 D8 31 9F E5 X1.e AND R3,R3,R4 :\ 000005DC 04 30 03 E0 .0.` LDRB R0,[R11,R3,LSL #2]:\ 000005E0 03 01 DB E7 ..[g LDMIA R13!,{R1,R4,R11,R1:\ 000005E4 12 48 BD E8 .H=h BICS PC,R14,#&10000000:\ 000005E8 01 F2 DE E3 .r^c .L000005EC000005EC 12 48 2D E9 .H-i:\ STMDB R13!,{R1,R4,R11,R1 BL L00000654 :\ 000005F0 17 00 00 EB ...k LDRB R2,L000005A7:\ 000005F4 55 20 5F E5 U _e MOV R3,#1 :\ 000005F8 01 30 A0 E3 .0 c TST R2,R3,LSL R10:\ 000005FC 13 0A 12 E1 ...a .L0000060000000600 1E 0E 8F 02 ....:\ ADREQ R0,L000007E8 BEQ L00000710 :\ 00000604 41 00 00 0A A... MOV R10,R4,ASR #11:\ 00000608 C4 A5 A0 E1 D% a BL L00000770 :\ 0000060C 57 00 00 EB W..k LDR R3,L000007B8:\ 00000610 A0 31 9F E5 1.e AND R3,R3,R4 :\ 00000614 04 30 03 E0 .0.` STRB R0,[R11,R3,LSL #2]:\ 00000618 03 01 CB E7 ..Kg LDMIA R13!,{R1,R4,R11,R1:\ 0000061C 12 48 BD E8 .H=h BICS PC,R14,#&10000000:\ 00000620 01 F2 DE E3 .r^c .L0000062400000624 12 48 2D E9 .H-i:\ STMDB R13!,{R1,R4,R11,R1 LDR R4,L000007BC:\ 00000628 8C 41 9F E5 .A.e AND R11,R11,R4 :\ 0000062C 04 B0 0B E0 .0.` MOV R10,#0 :\ 00000630 00 A0 A0 E3 . c BL L00000738 :\ 00000634 3F 00 00 EB ?..k BL L00000770 :\ 00000638 4C 00 00 EB L..k STRB R10,L000005A6:\ 0000063C 9E A0 4F E5 . Oe MVN R4,#0 :\ 00000640 00 40 E0 E3 .@`c STRB R4,L000005A5:\ 00000644 A7 40 4F E5 '@Oe STRB R4,L000005A4:\ 00000648 AC 40 4F E5 ,@Oe LDMIA R13!,{R1,R4,R11,R1:\ 0000064C 12 48 BD E8 .H=h .L0000065000000650 01 F2 DE E3 .r^c:\ BICS PC,R14,#&10000000 .L0000065400000654 64 21 9F E5 d!.e:\ LDR R2,L000007C0 AND R10,R11,R2 :\ 00000658 02 A0 0B E0 . .` LDR R2,L000007BC:\ 0000065C 58 21 9F E5 X!.e AND R11,R11,R2 :\ 00000660 02 B0 0B E0 .0.` LDRB R2,L000005A6:\ 00000664 C6 20 5F E5 F _e TEQ R2,#0 :\ 00000668 00 00 32 E3 ..2c BNE L000006F4 :\ 0000066C 20 00 00 1A ... STMDB R13!,{R0,R1,R7,R8,:\ 00000670 83 41 2D E9 .A-i MOV R0,#LA1 :\ 00000674 A1 00 A0 E3 !. c MOV R1,R10 :\ 00000678 0A 10 A0 E1 .. a SWI XOS_Byte :\ 0000067C 06 00 02 EF ...o BVS L000006F0 :\ 00000680 1A 00 00 6A ...j MOV R4,R2 :\ 00000684 02 40 A0 E1 .@ a ADD R1,R1,#1 :\ 00000688 01 10 81 E2 ...b SWI XOS_Byte :\ 0000068C 06 00 02 EF ...o BVS L000006F0 :\ 00000690 16 00 00 6A ...j ORR R4,R4,R2,LSL #8:\ 00000694 02 44 84 E1 .D.a ADD R1,R1,#1 :\ 00000698 01 10 81 E2 ...b SWI XOS_Byte :\ 0000069C 06 00 02 EF ...o BVS L000006F0 :\ 000006A0 12 00 00 6A ...j ORR R4,R4,R2,LSL #16:\ 000006A4 02 48 84 E1 .H.a MOV R0,#0 :\ 000006A8 00 00 A0 E3 .. c MOV R1,#0 :\ 000006AC 00 10 A0 E3 .. c ADR R2,L000005A8:\ 000006B0 11 2E 4F E2 ..Ob ADR R3,L00000798:\ 000006B4 DC 30 8F E2 \0.b MOV R7,#1 :\ 000006B8 01 70 A0 E3 .p c MOV R8,#0 :\ 000006BC 00 80 A0 E3 .. c .L000006C0000006C0 07 A0 04 E2 . .b:\ AND R10,R4,#7 MOV R4,R4,ASR #3:\ 000006C4 C4 41 A0 E1 DA a CMP R10,#5 :\ 000006C8 05 00 5A E3 ..Zc ORRCS R8,R8,R7,LSL R1:\ 000006CC 17 81 88 21 ...! LDR R10,[R3,R10,LSL #2:\ 000006D0 0A A1 93 E7 .!.g ADD R0,R0,R10 :\ 000006D4 0A 00 80 E0 ...` STR R0,[R2,R1,LSL #2]:\ 000006D8 01 01 82 E7 ...g ADD R1,R1,#1 :\ 000006DC 01 10 81 E2 ...b TEQ R1,#8 :\ 000006E0 08 00 31 E3 ..1c BNE L000006C0 :\ 000006E4 F5 FF FF 1A u... STRB R1,L000005A6:\ 000006E8 4A 11 4F E5 J.Oe STRB R8,L000005A7:\ 000006EC 4D 81 4F E5 M.Oe .L000006F0000006F0 83 41 BD E8 .A=h:\ LDMIA R13!,{R0,R1,R7,R8, .L000006F4000006F4 02 4B 81 E2 .K.b:\ ADD R4,R1,#L0800 MOV R10,#7 :\ 000006F8 07 A0 A0 E3 . c ADR R3,L000005A8:\ 000006FC 57 3F 4F E2 W?Ob .L0000070000000700 0A 21 93 E7 .!.g:\ LDR R2,[R3,R10,LSL #2] CMP R4,R2 :\ 00000704 02 00 54 E1 ..Ta BLT L00000718 :\ 00000708 02 00 00 BA ...: ADR R0,L000007C4:\ 0000070C B0 00 8F E2 0..b .L0000071000000710 02 01 5F E3 .._c:\ CMP PC,#&80000000 LDMIA R13!,{R1,R4,R11,PC:\ 00000714 12 88 BD E8 ..=h .L0000071800000718 01 A0 5A E2 . Zb:\ SUBS R10,R10,#1 LDR R2,[R3,R10,LSL #2]:\ 0000071C 0A 21 93 E7 .!.g BMI L0000072C :\ 00000720 01 00 00 4A ...J CMP R4,R2 :\ 00000724 02 00 54 E1 ..Ta BLT L00000718 :\ 00000728 FA FF FF BA z..: .L0000072C0000072C 01 A0 9A E2 . .b:\ ADDS R10,R10,#1 MOVEQ R2,#0 :\ 00000730 00 20 A0 03 . . SUB R4,R4,R2 :\ 00000734 02 40 44 E0 .@D` .L0000073800000738 07 30 0A E2 .0.b:\ AND R3,R10,#7 LDRB R2,L000005A4:\ 0000073C A0 21 5F E5 !_e TEQ R2,R3 :\ 00000740 03 00 32 E1 ..2a BICEQS PC,R14,#&10000000:\ 00000744 01 F2 DE 03 .r^. STRB R3,L000005A4:\ 00000748 AC 31 4F E5 ,1Oe LDRB R2,L000005A5:\ 0000074C AF 21 5F E5 /!_e ORR R3,R2,R3,LSL #6:\ 00000750 03 33 82 E1 .3.a ADD R2,R11,#L2000:\ 00000754 02 2A 8B E2 .*.b STRB R3,[R2],#0 :\ 00000758 00 30 C2 E4 .0Bd ADD R2,R11,#L3000:\ 0000075C 03 2A 8B E2 .*.b TST R3,#L0100 :\ 00000760 01 0C 13 E3 ...c ORRNE R2,R2,#L0800 :\ 00000764 02 2B 82 13 .+.. STRB PC,[R2],#0 :\ 00000768 00 F0 C2 E4 .pBd BICS PC,R14,#&10000000:\ 0000076C 01 F2 DE E3 .r^c .L0000077000000770 3F 30 0A E2 ?0.b:\ AND R3,R10,#L3F LDRB R2,L000005A5:\ 00000774 D7 21 5F E5 W!_e TEQ R2,R3 :\ 00000778 03 00 32 E1 ..2a BICEQS PC,R14,#&10000000:\ 0000077C 01 F2 DE 03 .r^. STRB R3,L000005A5:\ 00000780 E3 31 4F E5 c1Oe LDRB R2,L000005A4:\ 00000784 E8 21 5F E5 h!_e ORR R3,R3,R2,LSL #6:\ 00000788 02 33 83 E1 .3.a ADD R2,R11,#L2000:\ 0000078C 02 2A 8B E2 .*.b STRB R3,[R2],#0 :\ 00000790 00 30 C2 E4 .0Bd BICS PC,R14,#&10000000:\ 00000794 01 F2 DE E3 .r^c .L0000079800000798 00 00 00 00 ....:\ ANDEQ R0,R0,R0 ANDEQ R4,R0,R0 :\ 0000079C 00 40 00 00 .@.. ANDEQ R8,R0,R0 :\ 000007A0 00 80 00 00 .... ANDEQ R0,R1,R0 :\ 000007A4 00 00 01 00 .... ANDEQ R0,R2,R0 :\ 000007A8 00 00 02 00 .... ANDEQ R2,R0,R0 :\ 000007AC 00 20 00 00 . .. ANDEQ R8,R0,R0 :\ 000007B0 00 80 00 00 .... ANDEQ R0,R2,R0 :\ 000007B4 00 00 02 00 .... .L000007B8000007B8 FF 07 00 00 ....:\ MULEQ R0,PC,R7 .L000007BC000007BC 00 F0 FF 03 .p..:\ MVNEQS PC,#0 .L000007C0000007C0 FF 0F 00 00 ....:\ MULEQ R0,PC,PC .L000007C4000007C4 81 05 00 00 ....:\ ANDEQ R0,R0,R1,LSL #11 .L000007C8000007C8 41 64 64 72 Addr:\ RSBVC R6,R4,#&41000000 RSBCSS R7,R3,R5,ROR #6:\ 000007CC 65 73 73 20 ess RSBCSS R7,R4,PC,ROR #10:\ 000007D0 6F 75 74 20 out EORVC R6,R0,#&06F00000:\ 000007D4 6F 66 20 72 of r STRVSB R6,[R7,#-3681]!:\ 000007D8 61 6E 67 65 ange RSBVC R6,PC,#&02000000:\ 000007DC 20 66 6F 72 for STRVSBT R7,L000007C8:\ 000007E0 20 70 6F 64 pod RSBEQ R6,R5,R5,ROR R12:\ 000007E4 75 6C 65 00 ule. .L000007E8000007E8 83 05 00 00 ....:\ ANDEQ R0,R0,R3,LSL #11 STRVSBT R6,[R1],#-1362:\ 000007EC 52 65 61 64 Read STCVSL CP15,C6,[R14],#-12:\ 000007F0 20 6F 6E 6C onl STRVSB R2,[R4,#-121]!:\ 000007F4 79 20 64 65 y de STRVSB R6,[R3,#-2422]!:\ 000007F8 76 69 63 65 vice ANDEQ R0,R0,R0 :\ 000007FC 00 00 00 00 .... .L0000080000000800 81 F0 10 00 .p..:\ ANDEQS PC,R0,R1,LSL #1 ANDEQ R0,R0,R0,LSL #2:\ 00000804 00 01 00 00 .... MULEQ R0,R3,PC :\ 00000808 F3 0F 00 00 s... MULEQ R0,R0,R1 :\ 0000080C F0 11 00 00 p... MULEQ R0,R4,R9 :\ 00000810 F4 09 00 00 t... MULEQ R0,PC,R1 :\ 00000814 FF 11 00 00 .... MULEQ R0,R6,R12 :\ 00000818 F6 0C 00 00 v... ANDEQ R1,R0,R8,LSL #4:\ 0000081C 08 12 00 00 .... MULEQ R0,R2,R10 :\ 00000820 F2 0A 00 00 r... ANDEQ R1,R0,R4,LSL R2:\ 00000824 14 12 00 00 .... SUBEQ R0,R0,R2,LSL #1:\ 00000828 82 00 40 00 ..@. ANDEQ R3,R0,R0,LSL #16:\ 0000082C 00 38 00 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000830 82 00 40 00 ..@. ANDEQ R7,R0,R0,LSL #16:\ 00000834 00 78 00 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000838 82 00 40 00 ..@. ANDEQ R11,R0,R0,LSL #16:\ 0000083C 00 B8 00 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000840 82 00 40 00 ..@. ANDEQ PC,R0,R0,LSL #16:\ 00000844 00 F8 00 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000848 82 00 40 00 ..@. ANDEQ R3,R1,R0,LSL #16:\ 0000084C 00 38 01 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000850 82 00 40 00 ..@. ANDEQ R7,R1,R0,LSL #16:\ 00000854 00 78 01 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000858 82 00 40 00 ..@. ANDEQ R11,R1,R0,LSL #16:\ 0000085C 00 B8 01 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000860 82 00 40 00 ..@. ANDEQ PC,R1,R0,LSL #16:\ 00000864 00 F8 01 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000868 82 00 40 00 ..@. ANDEQ R3,R2,R0,LSL #16:\ 0000086C 00 38 02 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000870 82 00 40 00 ..@. ANDEQ R7,R2,R0,LSL #16:\ 00000874 00 78 02 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000878 82 00 40 00 ..@. ANDEQ R11,R2,R0,LSL #16:\ 0000087C 00 B8 02 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000880 82 00 40 00 ..@. ANDEQ PC,R2,R0,LSL #16:\ 00000884 00 F8 02 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000888 82 00 40 00 ..@. ANDEQ R3,R3,R0,LSL #16:\ 0000088C 00 38 03 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 00000890 82 00 40 00 ..@. ANDEQ R7,R3,R0,LSL #16:\ 00000894 00 78 03 00 .x.. SUBEQ R0,R0,R2,LSL #1:\ 00000898 82 00 40 00 ..@. ANDEQ R11,R3,R0,LSL #16:\ 0000089C 00 B8 03 00 .8.. SUBEQ R0,R0,R2,LSL #1:\ 000008A0 82 00 40 00 ..@. ANDEQ PC,R3,R0,LSL #16:\ 000008A4 00 F8 03 00 .x.. MULEQ R0,R0,R0 :\ 000008A8 F0 00 00 00 p... ANDEQ R3,R4,R0,LSL #16:\ 000008AC 00 38 04 00 .8.. ANDEQ R0,R0,R0 :\ 000008B0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008B4 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008B8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008BC 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008C0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008C4 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008C8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008CC 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008D0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008D4 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008D8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008DC 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008E0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008E4 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008E8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008EC 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008F0 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008F4 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008F8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 000008FC 00 00 00 00 .... \ ROMFS module \ ============ .L0900 EQUD 0 :\ Start EQUD L0974-L0900 :\ Init EQUD L0AC4-L0900 :\ Final EQUD L0AA0-L0900 :\ Service EQUD L0952-L0900 :\ Title 'ROMFS' EQUD L0958-L0900 :\ Help 'ROMFS 1.04 (18 Dec 1987)' EQUD L0B08-L0900 :\ Commands EQUD 0 :\ SWI base EQUD 0 :\ SWI handler EQUD 0 :\ SWI table EQUD 0 :\ SWI decode : .L092C EQUD &00000000 :\ EQUD &00004000 :\ EQUD &00008000 :\ EQUD &00010000 :\ EQUD &00020000 :\ EQUD &00002000 :\ EQUD &00008000 :\ EQUD &00020000 :\ : .L094C :EQUS "Acorn " .L9952 :EQUS "ROMFS":EQUB 0 .L0958 :EQUS "ROMFS"+CHR$9+CHR$9+"1.04 (18 Dec 1987)":EQUB 0:EQUW 0 : \ Initialisation \ ============== .L0974 STMDB R13!,{R14} :\ 00000974 00 40 2D E9 .@-i LDR R3,[R12],#0 :\ 00000978 00 30 9C E4 .0.d TEQ R3,#0 :\ 0000097C 00 00 33 E3 ..3c MOVNE R12,R3 :\ 00000980 03 C0 A0 11 .@ . BNE L000009A4 :\ 00000984 06 00 00 1A .... MOV R0,#6 :\ 00000988 06 00 A0 E3 .. c MOV R3,#L0150 :\ 0000098C 15 3E A0 E3 .> c SWI XOS_Module :\ 00000990 1E 00 02 EF ...o LDMVSIA R13!,{PC} :\ 00000994 00 80 BD 68 ..=h STR R2,[R12],#0 :\ 00000998 00 20 8C E4 . .d MOV R12,R2 :\ 0000099C 02 C0 A0 E1 .@ a B L000009A4 :\ 000009A0 FF FF FF EA ...j .L000009A4 :\ 000009A4 A1 00 A0 E3 !.\ MOV R0,#&A1 MOV R1,#&BC :\ 000009A8 BC 10 A0 E3 <. c SWI XOS_Byte :\ 000009AC 06 00 02 EF ...o LDMVSIA R13!,{PC} :\ 000009B0 00 80 BD 68 ..=h AND R2,R2,#3 :\ 000009B4 03 20 02 E2 . .b STRB R2,[R12,#175]:\ 000009B8 AF 20 CC E5 / Le MOV R1,#&70 :\ 000009BC 70 10 A0 E3 p. c ADD R3,R12,#&2D :\ 000009C0 2D 30 8C E2 -0.b MOV R0,#&A1 :\ 000009C4 A1 00 A0 E3 !. c .L000009C8 :\ 000009C8 06 00 02 EF ...o:\ SWI XOS_Byte LDMVSIA R13!,{PC} :\ 000009CC 00 80 BD 68 ..=h STRB R2,[R3],#1 :\ 000009D0 01 20 C3 E4 . Cd ADD R1,R1,#1 :\ 000009D4 01 10 81 E2 ...b TEQ R1,#L80 :\ 000009D8 80 00 31 E3 ..1c BNE L000009C8 :\ 000009DC F9 FF FF 1A y... SUB R13,R13,#L14 :\ 000009E0 14 D0 4D E2 .PMb MOV R1,#0 :\ 000009E4 00 10 A0 E3 .. c MOV R3,#3 :\ 000009E8 03 30 A0 E3 .0 c ADD R4,R12,#L2D :\ 000009EC 2D 40 8C E2 -@.b .L000009F0000009F0 0D 20 A0 E1 . a:\ MOV R2,R13 SWI XPodule_ReadHeader:\ 000009F4 81 02 06 EF ...o BVS L00000A10 :\ 000009F8 04 00 00 6A ...j LDRB R0,[R2,#3] :\ 000009FC 03 00 D2 E5 ..Re TEQ R0,#5 :\ 00000A00 05 00 30 E3 ..0c LDREQ R0,[R2,#4] :\ 00000A04 04 00 92 05 .... TEQEQ R0,#0 :\ 00000A08 00 00 30 03 ..0. BEQ L00000A14 :\ 00000A0C 00 00 00 0A .... .L00000A1000000A10 03 11 84 E7 ...g:\ STR R1,[R4,R3,LSL #2] .L00000A1400000A14 01 30 53 E2 .0Sb:\ SUBS R3,R3,#1 BPL L000009F0 :\ 00000A18 F4 FF FF 5A t..Z ADD R13,R13,#L14 :\ 00000A1C 14 D0 8D E2 .P.b ADD R3,R12,#L2D :\ 00000A20 2D 30 8C E2 -0.b ADD R5,R12,#LC4 :\ 00000A24 C4 50 8C E2 DP.b .L00000A2800000A28 04 40 93 E4 .@.d:\ LDR R4,[R3],#4 BICS R4,R4,#&FF000000:\ 00000A2C FF 44 D4 E3 .DTc MOV R0,#0 :\ 00000A30 00 00 A0 E3 .. c SUBNE R0,R0,#L0800 :\ 00000A34 02 0B 40 12 ..@. ADR R1,L0000092C:\ 00000A38 45 1F 4F E2 E.Ob MOV R6,#8 :\ 00000A3C 08 60 A0 E3 .` c .L00000A4000000A40 07 20 04 E2 . .b:\ AND R2,R4,#7 CMP R2,#5 :\ 00000A44 05 00 52 E3 ..Rc LDR R2,[R1,R2,LSL #2]:\ 00000A48 02 21 91 E7 .!.g ADD R0,R0,R2 :\ 00000A4C 02 00 80 E0 ...` BICCC R0,R0,#&40000000:\ 00000A50 01 01 C0 33 ..@3 ORRCS R0,R0,#&40000000:\ 00000A54 01 01 80 23 ...# STR R0,[R5],#4 :\ 00000A58 04 00 85 E4 ...d MOV R4,R4,ASR #3:\ 00000A5C C4 41 A0 E1 DA a SUBS R6,R6,#1 :\ 00000A60 01 60 56 E2 .`Vb BNE L00000A40 :\ 00000A64 F5 FF FF 1A u... ADD R4,R12,#L3D :\ 00000A68 3D 40 8C E2 =@.b TEQ R3,R4 :\ 00000A6C 04 00 33 E1 ..3a BNE L00000A28 :\ 00000A70 EC FF FF 1A l... MOV R0,#0 :\ 00000A74 00 00 A0 E3 .. c STR R0,[R12,#176]:\ 00000A78 B0 00 8C E5 0..e STR R0,[R12,#45]:\ 00000A7C 2D 00 8C E5 -..e MVN R0,#0 :\ 00000A80 00 00 E0 E3 ..`c STR R0,[R12,#0] :\ 00000A84 00 00 8C E5 ...e MOV R0,#&0C :\ 12= Add filing system ADR R1,L0900 :\ R1=>this module MOV R2,#L0AE0-L0900 :\ R2=>offset to filing system information block MOV R3,R12 :\ R3=>private workspace SWI XOS_FSControl LDMIA R13!,{PC} : \ Service \ ======= .L0AA0 TEQ R1,#&40 :\ 00000AA0 40 00 31 E3 @.1c MOVNE PC,R14 :\ 00000AA4 0E F0 A0 11 .p . STMDB R13!,{R0-R3,R14} :\ 00000AA8 0F 40 2D E9 .@-i MOV R0,#&0C :\ 00000AAC 0C 00 A0 E3 .. c ADR R1,L00000900 :\ 00000AB0 6E 1F 4F E2 n.Ob MOV R2,#L01E0 :\ 00000AB4 1E 2E A0 E3 .. c LDR R3,[R12],#0 :\ 00000AB8 00 30 9C E4 .0.d SWI XOS_FSControl :\ 00000ABC 29 00 02 EF )..o LDMIA R13!,{R0-R3,PC} :\ 00000AC0 0F 80 BD E8 ..=h : \ Finalisation \ ============ .L0AC4 MOV R6,R14 :\ 00000AC4 0E 60 A0 E1 .` a MOV R0,#L10 :\ 00000AC8 10 00 A0 E3 .. c ADR R1,L00000B08:\ 00000ACC 34 10 8F E2 4..b SWI XOS_FSControl:\ 00000AD0 29 00 02 EF )..o BICS PC,R6,#&10000000:\ 00000AD4 01 F2 D6 E3 .rVc ANDEQ R0,R0,R0 :\ 00000AD8 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 00000ADC 00 00 00 00 .... \ Filing system information block \ ------------------------------- .L0AE0 EQUD L0B08-L0900 :\ Filing system name EQUD L094C-L0900 :\ Startup text EQUD L0B38-L0900 :\ Open EQUD L0C00-L0900 :\ GetBytes EQUD L0BEC-L0900 :\ PutBytes EQUD L0C40-L0900 :\ Args EQUD L0C98-L0900 :\ Close EQUD L0CC0-L0900 :\ File EQUD &80000003 :\ Filing system information word, FSNum=&03 EQUD L0DEC-L0900 :\ Func : \ Commands \ ======== .L0B08 EQUS "ROM":EQUB 0 :\ Filing system name and selection command EQUD &0B44:EQUD &00000000:EQUD &0B35:EQUD &0B00 EQUS "ROMLoad":EQUB 0 EQUD &0C1C:EQUD &00040003:EQUD &0BDB:EQUD &0B5C EQUD 0 : .L0B38 STMDB R13!,{R14} :\ 00000B38 00 40 2D E9 .@-i .L0B3C TEQ R0,#0 :\ 00000B3C 00 00 30 E3 ..0c TEQNE R0,#2 :\ 00000B40 02 00 30 13 ..0. BNE L00000BF0 :\ 00000B44 29 00 00 1A )... LDR R0,[R12,#176]:\ 00000B48 B0 00 9C E5 0..e TEQ R0,#0 :\ 00000B4C 00 00 30 E3 ..0c BNE L00000BDC :\ 00000B50 21 00 00 1A !... BL L0000133C :\ 00000B54 F8 01 00 EB x..k LDMVSIA R13!,{PC} :\ 00000B58 00 80 BD 68 ..=h BLEQ L00001088 :\ 00000B5C 49 01 00 0B I... BEQ L00000B84 :\ 00000B60 07 00 00 0A .... MVN R0,#0 :\ 00000B64 00 00 E0 E3 ..`c STR R0,[R12,#0] :\ 00000B68 00 00 8C E5 ...e .L00000B6C BL L00001104 :\ 00000B6C 64 01 00 EB d..k BVS L00000BD0 :\ 00000B70 16 00 00 6A ...j BL L00001088 :\ 00000B74 43 01 00 EB C..k BNE L00000B6C :\ 00000B78 FB FF FF 1A {... SUBS R6,R6,#1 :\ 00000B7C 01 60 56 E2 .`Vb BPL L00000B6C :\ 00000B80 F9 FF FF 5A y..Z .L00000B84 LDR R0,[R12,#32] TEQ R0,#2 :\ 00000B88 02 00 30 E3 ..0c BEQ L00000DDC :\ 00000B8C 92 00 00 0A .... SWI XOS_ReadMonotonicT:\ 00000B90 42 00 02 EF B..o LDMVSIA R13!,{PC} :\ 00000B94 00 80 BD 68 ..=h STR R0,[R12,#176]:\ 00000B98 B0 00 8C E5 0..e MOV R1,R0 :\ 00000B9C 00 10 A0 E1 .. a LDR R3,[R12,#24]:\ 00000BA0 18 30 9C E5 .0.e MOV R4,R3 :\ 00000BA4 03 40 A0 E1 .@ a STR R3,[R12,#192]:\ 00000BA8 C0 30 8C E5 @0.e LDR R0,[R12,#4] :\ 00000BAC 04 00 9C E5 ...e STR R0,[R12,#184]:\ 00000BB0 B8 00 8C E5 8..e LDR R0,[R12,#8] :\ 00000BB4 08 00 9C E5 ...e STR R0,[R12,#188]:\ 00000BB8 BC 00 8C E5 <..e MOV R0,#0 :\ 00000BBC 00 00 A0 E3 .. c STR R0,[R12,#180]:\ 00000BC0 B4 00 8C E5 4..e MOV R0,#&40000000:\ 00000BC4 01 01 A0 E3 .. c MOV R2,#L0400 :\ 00000BC8 01 2B A0 E3 .+ c CMP PC,#0 :\ 00000BCC 00 00 5F E3 .._c .L00000BD000000BD0 00 10 A0 63 .. c:\ MOVVS R1,#0 CMP PC,#0 :\ 00000BD4 00 00 5F E3 .._c LDMIA R13!,{PC} :\ 00000BD8 00 80 BD E8 ..=h .L00000BDC00000BDC E8 00 8F E2 h..b:\ ADR R0,L00000CCC ADD R0,R0,#L0C00 :\ 00000BE0 0C 0C 80 E2 ...b CMP PC,#&80000000:\ 00000BE4 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 00000BE8 00 80 BD E8 ..=h STMDB R13!,{R14} :\ 00000BEC 00 40 2D E9 .@-i .L00000BF000000BF0 3C 00 8F E2 <..b:\ ADR R0,L00000C34 ADD R0,R0,#L0D00 :\ 00000BF4 0D 0C 80 E2 ...b CMP PC,#&80000000:\ 00000BF8 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 00000BFC 00 80 BD E8 ..=h .L00000C0000000C00 0E 90 A0 E1 .. a:\ MOV R9,R14 ADD R0,R12,#LB0 :\ 00000C04 B0 00 8C E2 0..b LDMIA R0,{R0,R5-R8}:\ 00000C08 E1 01 90 E8 a..h TEQ R1,R0 :\ 00000C0C 00 00 31 E1 ..1a BNE L00000C34 :\ 00000C10 07 00 00 1A .... ADD R5,R3,R4 :\ 00000C14 04 50 83 E0 .P.` SUBS R5,R8,R5 :\ 00000C18 05 50 58 E0 .PX` ADDMI R3,R3,R5 :\ 00000C1C 05 30 83 40 .0.@ ADD R0,R7,R4 :\ 00000C20 04 00 87 E0 ...` MOV R1,R3 :\ 00000C24 03 10 A0 E1 .. a MOV R3,R6 :\ 00000C28 06 30 A0 E1 .0 a BL L000013E8 :\ 00000C2C ED 01 00 EB m..k MOV PC,R9 :\ 00000C30 09 F0 A0 E1 .p a .L00000C3400000C34 54 00 8F E2 T..b:\ ADR R0,L00000C90 ADD R0,R0,#L0C00 :\ 00000C38 0C 0C 80 E2 ...b ORRS PC,R9,#&10000000:\ 00000C3C 01 F2 99 E3 .r.c STMDB R13!,{R14} :\ 00000C40 00 40 2D E9 .@-i CMP R0,#9 :\ 00000C44 09 00 50 E3 ..Pc BHI L000016A0 :\ 00000C48 94 02 00 8A .... ADD PC,PC,R0,LSL #2:\ 00000C4C 00 F1 8F E0 .q.` MOVNV R0,R0 :\ 00000C50 00 00 A0 F1 .. q B L00000C80 :\ 00000C54 09 00 00 EA ...j B L00000C80 :\ 00000C58 08 00 00 EA ...j B L00000C80 :\ 00000C5C 07 00 00 EA ...j B L00000C7C :\ 00000C60 05 00 00 EA ...j B L00000C84 :\ 00000C64 06 00 00 EA ...j B L00000C80 :\ 00000C68 04 00 00 EA ...j B L00000C80 :\ 00000C6C 03 00 00 EA ...j B L00000C7C :\ 00000C70 01 00 00 EA ...j B L00000C7C :\ 00000C74 00 00 00 EA ...j B L00000C80 :\ 00000C78 00 00 00 EA ...j .L00000C7C00000C7C DB FF FF EA [..j:\ B L00000BF0 .L00000C8000000C80 86 02 00 EA ...j:\ B L000016A0 .L00000C8400000C84 B0 20 9C E5 0 .e:\ LDR R2,[R12,#176] SUBS R2,R1,R2 :\ 00000C88 02 20 51 E0 . Q` BNE L00000CB0 :\ 00000C8C 07 00 00 1A .... .L00000C9000000C90 C0 20 9C E5 @ .e:\ LDR R2,[R12,#192] LDMIA R13!,{PC} :\ 00000C94 00 80 BD E8 ..=h STMDB R13!,{R14} :\ 00000C98 00 40 2D E9 .@-i LDR R2,[R12,#176]:\ 00000C9C B0 20 9C E5 0 .e SUBS R2,R1,R2 :\ 00000CA0 02 20 51 E0 . Q` BNE L00000CB0 :\ 00000CA4 01 00 00 1A .... STR R2,[R12,#176]:\ 00000CA8 B0 20 8C E5 0 .e LDMIA R13!,{PC} :\ 00000CAC 00 80 BD E8 ..=h .L00000CB000000CB0 D8 00 8F E2 X..b:\ ADR R0,L00000D90 ADD R0,R0,#L0B00 :\ 00000CB4 0B 0C 80 E2 ...b CMP PC,#&80000000:\ 00000CB8 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 00000CBC 00 80 BD E8 ..=h \ OSFILE handler \ ============== .L00000CC0 STMDB R13!,{R14} TEQ R0,#LFF BEQ L0D98 :\ R0=&FF, Load .L00000CCC TEQ R0,#5 BEQ L0CE4 :\ R0=5, Info TEQ R0,#6 BEQ L16A0 :\ R0=6, Delete B L0BF0 .L00000CE0 STMDB R13!,{R14} OSFILE 5 - Read object info \ ------------------------- .L00000CE4 BL L00000D2C :\ Check for root prefix BL L0000133C :\ 00000CE8 93 01 00 EB ...k LDMVSIA R13!,{PC} :\ 00000CEC 00 80 BD 68 ..=h BLEQ L00001088 :\ 00000CF0 E4 00 00 0B d... BEQ L00000D18 :\ 00000CF4 07 00 00 0A .... MVN R0,#0 :\ 00000CF8 00 00 E0 E3 ..`c STR R0,[R12,#0] :\ 00000CFC 00 00 8C E5 ...e .L00000D0000000D00 FF 00 00 EB ...k:\ BL L00001104 BVS L00000D8C :\ 00000D04 20 00 00 6A ..j BL L00001088 :\ 00000D08 DE 00 00 EB ^..k BNE L00000D00 :\ 00000D0C FB FF FF 1A {... SUBS R6,R6,#1 :\ 00000D10 01 60 56 E2 .`Vb BPL L00000D00 :\ 00000D14 F9 FF FF 5A y..Z .L00000D18 LDR R0,[R12,#32] :\ Get object type from ws+32 ADD R6,R12,#&10 :\ Point to file information at ws+16 LDMIA R6,{R2-R5} :\ Get file information to R2-R5 ADD R6,R12,#&2D LDMIA R13!,{PC} \ Check for root prefix \ --------------------- .L00000D2C LDRB R0,[R1],#0 TEQ R0,#ASC"$" :\ 00000D30 24 00 30 E3 $.0c TEQNE R0,#ASC"&" :\ 00000D34 26 00 30 13 &.0. TEQNE R0,#ASC"@" :\ 00000D38 40 00 30 13 @.0. MOVNE PC,R14 :\ 00000D3C 0E F0 A0 11 .p . LDRB R11,[R1,#1] :\ 00000D40 01 B0 D1 E5 .0Qe CMP R11,#&20 :\ 00000D44 20 00 5B E3 .[c MOVGT PC,R14 :\ 00000D48 0E F0 A0 C1 .p A ADD R10,R12,#&2D :\ 00000D4C 2D A0 8C E2 - .b STRB R0,[R10],#1 :\ 00000D50 01 00 CA E4 ..Jd MOV R0,#0 :\ 00000D54 00 00 A0 E3 .. c STRB R0,[R10],#0 STRB R0,[R12,#110] STR R10,[R12,#12] STR R0,[R12,#20] :\ exec=0 STR R0,[R12,#16] :\ load=0 STR R0,[R12,#24] :\ size=0 MVN R0,#0 STR R0,[R12,#36] :\ ws+36=-1 MOV R0,#&88 STR R0,[R12,#28] :\ attr=&88 - L/L MOV R0,#2 :\ STR R0,[R12,#32] :\ Object type 2=directory B L00000D18 .L00000D8C MOV R0,#0 .L00000D9000000D90 00 00 5F E3 .._c:\ CMP PC,#0 LDMIA R13!,{PC} :\ 00000D94 00 80 BD E8 ..=h .L00000D9800000D98 02 70 A0 E1 .p a:\ MOV R7,R2 MOV R8,R3 :\ 00000D9C 03 80 A0 E1 .. a BL L00000CE0 :\ 00000DA0 CE FF FF EB N..k LDMVSIA R13!,{PC} :\ 00000DA4 00 80 BD 68 ..=h TEQ R0,#0 :\ 00000DA8 00 00 30 E3 ..0c BEQ L00001724 :\ 00000DAC 5C 02 00 0A \... TEQ R0,#2 :\ 00000DB0 02 00 30 E3 ..0c BEQ L00000DDC :\ 00000DB4 08 00 00 0A .... STMDB R13!,{R0-R3}:\ 00000DB8 0F 00 2D E9 ..-i LDR R0,[R12,#8] :\ 00000DBC 08 00 9C E5 ...e MOV R1,R4 :\ 00000DC0 04 10 A0 E1 .. a TEQ R8,#0 :\ 00000DC4 00 00 38 E3 ..8c MOVEQ R2,R7 :\ 00000DC8 07 20 A0 01 . . LDR R3,[R12,#4] :\ 00000DCC 04 30 9C E5 .0.e BL L000013E8 :\ 00000DD0 84 01 00 EB ...k STRVS R0,[R13],#0 :\ 00000DD4 00 00 8D 64 ...d LDMIA R13!,{R0-R3,PC}:\ 00000DD8 0F 80 BD E8 ..=h .L00000DDC00000DDC 20 00 8F E2 ..b:\ ADR R0,L00000E04 ADD R0,R0,#L0B00 :\ 00000DE0 0B 0C 80 E2 ...b CMP PC,#&80000000:\ 00000DE4 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 00000DE8 00 80 BD E8 ..=h STMDB R13!,{R14} :\ 00000DEC 00 40 2D E9 .@-i CMP R0,#L13 :\ 00000DF0 13 00 50 E3 ..Pc BHI L000016A0 :\ 00000DF4 29 02 00 8A )... ADD PC,PC,R0,LSL #2:\ 00000DF8 00 F1 8F E0 .q.` MOVNV R0,R0 :\ 00000DFC 00 00 A0 F1 .. q B L000016A0 :\ 00000E00 26 02 00 EA &..j .L00000E0400000E04 25 02 00 EA %..j:\ B L000016A0 B L00001734 :\ 00000E08 49 02 00 EA I..j B L0000178C :\ 00000E0C 5E 02 00 EA ^..j B L00000E50 :\ 00000E10 0E 00 00 EA ...j B L00000E50 :\ 00000E14 0D 00 00 EA ...j B L00001704 :\ 00000E18 39 02 00 EA 9..j B L000016B4 :\ 00000E1C 24 02 00 EA $..j B L000016A0 :\ 00000E20 1E 02 00 EA ...j B L000016B0 :\ 00000E24 21 02 00 EA !..j B L00000EF4 :\ 00000E28 31 00 00 EA 1..j B L00000E54 :\ 00000E2C 08 00 00 EA ...j B L00000ED4 :\ 00000E30 27 00 00 EA '..j B L00000ED4 :\ 00000E34 26 00 00 EA &..j B L00000F74 :\ 00000E38 4D 00 00 EA M..j B L00000F74 :\ 00000E3C 4C 00 00 EA L..j B L00000F58 :\ 00000E40 44 00 00 EA D..j B L00000E50 :\ 00000E44 01 00 00 EA ...j B L00000E50 :\ 00000E48 00 00 00 EA ...j B L00000F74 :\ 00000E4C 48 00 00 EA H..j .L00000E5000000E50 12 02 00 EA ...j:\ B L000016A0 .L00000E5400000E54 02 B0 A0 E1 .0 a:\ MOV R11,R2 MOV R3,#0 :\ 00000E58 00 30 A0 E3 .0 c ADD R0,R12,#LE0 :\ 00000E5C E0 00 8C E2 `..b .L00000E6000000E60 83 12 90 E7 ...g:\ LDR R1,[R0,R3,LSL #5] TEQ R1,#0 :\ 00000E64 00 00 31 E3 ..1c BNE L00000E7C :\ 00000E68 03 00 00 1A .... ADD R3,R3,#1 :\ 00000E6C 01 30 83 E2 .0.b TEQ R3,#4 :\ 00000E70 04 00 33 E3 ..3c BLT L00000E60 :\ 00000E74 F9 FF FF BA y..: MOV R3,#0 :\ 00000E78 00 30 A0 E3 .0 c .L00000E7C00000E7C 00 00 A0 E3 .. c:\ MOV R0,#0 .L00000E8000000E80 82 02 06 EF ...o:\ SWI XPodule_EnumerateC LDMVSIA R13!,{PC} :\ 00000E84 00 80 BD 68 ..=h TEQ R0,#0 :\ 00000E88 00 00 30 E3 ..0c BEQ L00001724 :\ 00000E8C 24 02 00 0A $... TEQ R2,#LF5 :\ 00000E90 F5 00 32 E3 u.2c BNE L00000E80 :\ 00000E94 F9 FF FF 1A y... CMP R1,#L0100 :\ 00000E98 01 0C 51 E3 ..Qc BCS L00000EC4 :\ 00000E9C 08 00 00 2A ...* SUB R0,R0,#1 :\ 00000EA0 01 00 40 E2 ..@b MOV R2,R11 :\ 00000EA4 0B 20 A0 E1 . a SUB R1,R1,#1 :\ 00000EA8 01 10 41 E2 ..Ab STRB R1,[R2],#1 :\ 00000EAC 01 10 C2 E4 ..Bd ADD R11,R2,R1 :\ 00000EB0 01 B0 82 E0 .0.` SWI XPodule_ReadChunk:\ 00000EB4 83 02 06 EF ...o LDRVCB R4,[R12,#175]:\ 00000EB8 AF 40 DC 75 /@\u STRVCB R4,[R11],#0 :\ 00000EBC 00 40 CB 74 .@Kt LDMIA R13!,{PC} :\ 00000EC0 00 80 BD E8 ..=h .L00000EC400000EC4 10 00 8F E2 ...b:\ ADR R0,L00000EDC ADD R0,R0,#L0B00 :\ 00000EC8 0B 0C 80 E2 ...b LDMIA R13!,{R14} :\ 00000ECC 00 40 BD E8 .@=h ORRS PC,R14,#&10000000:\ 00000ED0 01 F2 9E E3 .r.c .L00000ED400000ED4 03 00 A0 E3 .. c:\ MOV R0,#3 ADR R1,L00000EF0:\ 00000ED8 10 10 8F E2 ...b .L00000EDC00000EDC 00 30 D1 E7 .0Qg:\ LDRB R3,[R1,R0] STRB R3,[R2,R0] :\ 00000EE0 00 30 C2 E7 .0Bg SUBS R0,R0,#1 :\ 00000EE4 01 00 50 E2 ..Pb BPL L00000EDC :\ 00000EE8 FB FF FF 5A {..Z LDMIA R13!,{PC} :\ 00000EEC 00 80 BD E8 ..=h .L00000EF000000EF0 00 01 24 00 ..$.:\ EOREQ R0,R4,R0,LSL #2 .L00000EF400000EF4 AF 00 DC E5 /.\e:\ LDRB R0,[R12,#175] AND R0,R0,#3 :\ 00000EF8 03 00 00 E2 ...b ADR R1,L00000F1C:\ 00000EFC 18 10 8F E2 ...b .L00000F0000000F00 00 1C 81 E2 ...b:\ ADD R1,R1,#0,ROR #24 LDR R0,[R1,R0,LSL #2]:\ 00000F04 00 01 91 E7 ...g ADR R1,L00000F00:\ 00000F08 10 10 4F E2 ..Ob SUB R1,R1,#L0600 :\ 00000F0C 06 1C 41 E2 ..Ab ADD R0,R1,R0 :\ 00000F10 00 00 81 E0 ...` SWI XOS_CLI :\ 00000F14 05 00 02 EF ...o LDMIA R13!,{PC} :\ 00000F18 00 80 BD E8 ..=h .L00000F1C00000F1C 3B 06 00 00 ;...:\ ANDEQ R0,R0,R11,LSR R6 ANDEQ R0,R0,R12,LSR #12:\ 00000F20 2C 06 00 00 ,... ANDEQ R0,R0,R12,LSR R6:\ 00000F24 3C 06 00 00 <... ANDEQ R0,R0,R6,ASR #12:\ 00000F28 46 06 00 00 F... BCC &01354C7C :\ 00000F2C 52 4F 4D 3A ROM: CMNVS PC,R5,LSR #24:\ 00000F30 25 4C 6F 61 %Loa EORMI R2,R1,#L64 :\ 00000F34 64 20 21 42 d !B LDCEQL CP15,C6,[R4,#-444]:\ 00000F38 6F 6F 74 0D oot. BCC &01354C8C :\ 00000F3C 52 4F 4D 3A ROM: SWIVS XUser :\ 00000F40 21 42 6F 6F !Boo SWIMI XUser :\ 00000F44 74 0D 52 4F t.RO STRMI R3,[R5,#-2637]!:\ 00000F48 4D 3A 25 45 M:%E RSBCS R6,R3,R8,ROR R5:\ 00000F4C 78 65 63 20 xec SWIVS XUser :\ 00000F50 21 42 6F 6F !Boo ANDEQ R0,R0,R4,ROR R13:\ 00000F54 74 0D 00 00 t... .L00000F5800000F58 00 00 5F E3 .._c:\ CMP PC,#0 LDMIA R13!,{PC} :\ 00000F5C 00 80 BD E8 ..=h .L00000F6000000F60 C0 4F 2D E9 @O-i:\ STMDB R13!,{R6-R11,R14} ADR R14,L00000F70:\ 00000F64 04 E0 8F E2 .`.b STMDB R13!,{R14} :\ 00000F68 00 40 2D E9 .@-i B L00000F74 :\ 00000F6C 00 00 00 EA ...j .L00000F7000000F70 C0 8F BD E8 @.=h:\ LDMIA R13!,{R6-R11,PC} .L00000F7400000F74 00 B0 A0 E1 .0 a:\ MOV R11,R0 MOV R10,R3 :\ 00000F78 03 A0 A0 E1 . a MOV R9,R4 :\ 00000F7C 04 90 A0 E1 .. a MOV R4,#0 :\ 00000F80 00 40 A0 E3 .@ c MOV R3,#0 :\ 00000F84 00 30 A0 E3 .0 c MVN R6,#0 :\ 00000F88 00 60 E0 E3 .``c STR R6,[R12,#0] :\ 00000F8C 00 60 8C E5 .`.e .L00000F9000000F90 0A 00 53 E1 ..Sa:\ CMP R3,R10 LDMEQIA R13!,{PC} :\ 00000F94 00 80 BD 08 ..=. BL L00001104 :\ 00000F98 59 00 00 EB Y..k BVS L00001050 :\ 00000F9C 2B 00 00 6A +..j BL L0000105C :\ 00000FA0 2D 00 00 EB -..k BNE L00000FAC :\ 00000FA4 00 00 00 1A .... B L00000FB4 :\ 00000FA8 01 00 00 EA ...j .L00000FAC00000FAC 32 00 00 EB 2..k:\ BL L0000107C BNE L00000F90 :\ 00000FB0 F6 FF FF 1A v... .L00000FB400000FB4 09 00 54 E1 ..Ta:\ CMP R4,R9 ADDLT R4,R4,#1 :\ 00000FB8 01 40 84 B2 .@.2 BLT L00000F90 :\ 00000FBC F3 FF FF BA s..: TEQ R11,#L0E :\ 00000FC0 0E 00 3B E3 ..;c BEQ L00000FE0 :\ 00000FC4 05 00 00 0A .... .L00000FC800000FC8 03 70 12 E2 .p.b:\ ANDS R7,R2,#3 BEQ L00000FE0 :\ 00000FCC 03 00 00 0A .... SUBS R5,R5,#1 :\ 00000FD0 01 50 55 E2 .PUb LDMMIIA R13!,{PC} :\ 00000FD4 00 80 BD 48 ..=H ADD R2,R2,#1 :\ 00000FD8 01 20 82 E2 . .b B L00000FC8 :\ 00000FDC F9 FF FF EA y..j .L00000FE000000FE0 0E 00 30 E3 ..0c:\ TEQ R0,#L0E BEQ L00001020 :\ 00000FE4 0D 00 00 0A .... SUBS R5,R5,#L14 :\ 00000FE8 14 50 55 E2 .PUb LDMMIIA R13!,{PC} :\ 00000FEC 00 80 BD 48 ..=H ADD R6,R12,#L10 :\ 00000FF0 10 60 8C E2 .`.b LDMIA R6!,{R7,R8} :\ 00000FF4 80 01 B6 E8 ..6h STMIA R2!,{R7,R8} :\ 00000FF8 80 01 A2 E8 .."h LDMIA R6!,{R7,R8,R14}:\ 00000FFC 80 41 B6 E8 .A6h STMIA R2!,{R7,R8,R14}:\ 00001000 80 41 A2 E8 .A"h TEQ R0,#L0F :\ 00001004 0F 00 30 E3 ..0c BEQ L00001020 :\ 00001008 04 00 00 0A .... SUBS R5,R5,#9 :\ 0000100C 09 50 55 E2 .PUb LDMMIIA R13!,{PC} :\ 00001010 00 80 BD 48 ..=H LDMIA R6!,{R7,R8,R14}:\ 00001014 80 41 B6 E8 .A6h STMIA R2!,{R7,R8} :\ 00001018 80 01 A2 E8 .."h STRB R14,[R2],#1 :\ 0000101C 01 E0 C2 E4 .`Bd .L0000102000001020 0C 60 9C E5 .`.e:\ LDR R6,[R12,#12] BL L0000105C :\ 00001024 0C 00 00 EB ...k ADDEQ R6,R12,#L2D :\ 00001028 2D 60 8C 02 -`.. .L0000102C0000102C 01 50 55 E2 .PUb:\ SUBS R5,R5,#1 LDMMIIA R13!,{PC} :\ 00001030 00 80 BD 48 ..=H LDRB R7,[R6],#1 :\ 00001034 01 70 D6 E4 .pVd STRB R7,[R2],#1 :\ 00001038 01 70 C2 E4 .pBd TEQ R7,#0 :\ 0000103C 00 00 37 E3 ..7c BNE L0000102C :\ 00001040 F9 FF FF 1A y... ADD R4,R4,#1 :\ 00001044 01 40 84 E2 .@.b ADD R3,R3,#1 :\ 00001048 01 30 83 E2 .0.b B L00000F90 :\ 0000104C CF FF FF EA O..j .L0000105000001050 00 40 E0 E3 .@`c:\ MVN R4,#0 CMP PC,#0 :\ 00001054 00 00 5F E3 .._c LDMIA R13!,{PC} :\ 00001058 00 80 BD E8 ..=h .L0000105C0000105C 01 40 2D E9 .@-i:\ STMDB R13!,{R0,R14} LDRB R0,[R1,#0] :\ 00001060 00 00 D1 E5 ..Qe TEQ R0,#L40 :\ 00001064 40 00 30 E3 @.0c LDMNEIA R13!,{R0,PC}:\ 00001068 01 80 BD 18 ..=. LDRB R0,[R1,#1] :\ 0000106C 01 00 D1 E5 ..Qe CMP R0,#L20 :\ 00001070 20 00 50 E3 .Pc TEQLE R0,R0 :\ 00001074 00 00 30 D1 ..0Q LDMIA R13!,{R0,PC}:\ 00001078 01 80 BD E8 ..=h .L0000107C0000107C 0F 40 2D E9 .@-i:\ STMDB R13!,{R0-R3,R14} ADD R3,R12,#L6E :\ 00001080 6E 30 8C E2 n0.b B L00001090 :\ 00001084 01 00 00 EA ...j .L0000108800001088 0F 40 2D E9 .@-i:\ STMDB R13!,{R0-R3,R14} ADD R3,R12,#L2D :\ 0000108C 2D 30 8C E2 -0.b .L0000109000001090 00 00 D1 E4 ..Qd:\ LDRB R0,[R1],#0 TEQ R0,#L24 :\ 00001094 24 00 30 E3 $.0c TEQNE R0,#L26 :\ 00001098 26 00 30 13 &.0. TEQNE R0,#L40 :\ 0000109C 40 00 30 13 @.0. BNE L000010BC :\ 000010A0 05 00 00 1A .... LDRB R0,[R1,#1] :\ 000010A4 01 00 D1 E5 ..Qe TEQ R0,#L2E :\ 000010A8 2E 00 30 E3 ..0c ADDEQ R1,R1,#2 :\ 000010AC 02 10 81 02 .... BEQ L000010BC :\ 000010B0 01 00 00 0A .... CMP R0,#L20 :\ 000010B4 20 00 50 E3 .Pc ADDLE R1,R1,#1 :\ 000010B8 01 10 81 D2 ...R .L000010BC000010BC 01 20 D3 E4 . Sd:\ LDRB R2,[R3],#1 CMP R2,#L61 :\ 000010C0 61 00 52 E3 a.Rc RSBGES R14,R2,#L7A :\ 000010C4 7A E0 72 A2 z`r" SUBGE R2,R2,#L20 :\ 000010C8 20 20 42 A2 B" LDRB R0,[R1],#1 :\ 000010CC 01 00 D1 E4 ..Qd CMP R0,#L61 :\ 000010D0 61 00 50 E3 a.Pc RSBGES R14,R0,#L7A :\ 000010D4 7A E0 70 A2 z`p" SUBGE R0,R0,#L20 :\ 000010D8 20 00 40 A2 .@" CMP R0,#L20 :\ 000010DC 20 00 50 E3 .Pc MOVLE R0,#0 :\ 000010E0 00 00 A0 D3 .. S BEQ L000010FC :\ 000010E4 04 00 00 0A .... TEQ R2,#0 :\ 000010E8 00 00 32 E3 ..2c BEQ L000010FC :\ 000010EC 02 00 00 0A .... TEQ R2,R0 :\ 000010F0 00 00 32 E1 ..2a BEQ L000010BC :\ 000010F4 F0 FF FF 0A p... LDMIA R13!,{R0-R3,PC}:\ 000010F8 0F 80 BD E8 ..=h .L000010FC000010FC 00 00 32 E1 ..2a:\ TEQ R2,R0 LDMIA R13!,{R0-R3,PC}:\ 00001100 0F 80 BD E8 ..=h .L0000110400001104 1F 40 2D E9 .@-i:\ STMDB R13!,{R0-R4,R14} LDR R4,[R12,#0] :\ 00001108 00 40 9C E5 .@.e CMN R4,#1 :\ 0000110C 01 00 74 E3 ..tc BNE L00001130 :\ 00001110 06 00 00 1A .... MOV R0,#0 :\ 00001114 00 00 A0 E3 .. c STR R0,[R12,#40]:\ 00001118 28 00 8C E5 (..e STRB R0,[R12,#44]:\ 0000111C 2C 00 CC E5 ,.Le .L0000112000001120 44 01 8C E5 D..e:\ STR R0,[R12,#324] MOV R0,#0 :\ 00001124 00 00 A0 E3 .. c STR R0,[R12,#332]:\ 00001128 4C 01 8C E5 L..e STR R0,[R12,#328]:\ 0000112C 48 01 8C E5 H..e .L0000113000001130 48 01 9C E5 H..e:\ LDR R0,[R12,#328] LDR R1,[R12,#332]:\ 00001134 4C 11 9C E5 L..e ADD R4,R0,R1 :\ 00001138 01 40 80 E0 .@.` LDR R3,[R12,#324]:\ 0000113C 44 31 9C E5 D1.e .L00001140 ADD R1,R4,#7 :\ Point to (C) offset BL L0000139C :\ Fetch byte from [R1] BVS L0000131C :\ 00001148 73 00 00 6A s..j ADD R1,R4,R0 :\ 0000114C 00 10 84 E0 ...` BL L0000139C :\ 00001150 91 00 00 EB ...k BVS L0000131C :\ 00001154 70 00 00 6A p..j TEQ R0,#0 :\ 00001158 00 00 30 E3 ..0c BNE L000011D0 :\ 0000115C 1B 00 00 1A .... ADD R1,R1,#1 :\ 00001160 01 10 81 E2 ...b BL L0000139C :\ 00001164 8C 00 00 EB ...k BVS L0000131C :\ 00001168 6B 00 00 6A k..j TEQ R0,#ASC"(" :\ 0000116C 28 00 30 E3 (.0c BNE L000011D0 :\ 00001170 16 00 00 1A .... ADD R1,R1,#1 :\ 00001174 01 10 81 E2 ...b BL L0000139C :\ 00001178 87 00 00 EB ...k BVS L0000131C :\ 0000117C 66 00 00 6A f..j TEQ R0,#ASC"C" :\ 00001180 43 00 30 E3 C.0c BNE L000011D0 :\ 00001184 11 00 00 1A .... ADD R1,R1,#1 :\ 00001188 01 10 81 E2 ...b BL L0000139C :\ 0000118C 82 00 00 EB ...k BVS L0000131C :\ 00001190 61 00 00 6A a..j TEQ R0,#ASC")" :\ 00001194 29 00 30 E3 ).0c BNE L000011D0 :\ 00001198 0C 00 00 1A .... :\ R4=>start of ROM image ADD R2,R1,#1 :\ R2=>after '(C)' ADD R1,R4,#6 :\ R1=>ROM type byte BL L0000139C :\ Get byte from [R1] BVS L0000131C AND R14,R0,#&0F :\ Isolate CPU in b0-b3 CMP R14,#3 BLE L000011E0 :\ 0-3 for 6502, return 16K ROM TEQ R14,#&0D BNE L000011D0 :\ Not 13 for ARM, skip past TST R0,#&40 :\ Test bit 6 BNE L000012C4 :\ &4D, &CD -> jump to return file TST R0,#&80 :\ Test bit 8 BNE L000012B0 :\ &8D -> jump to return Directory \ CPU not 6502/ARM or \ CPU is ARM and noServ+noLang, %00xx1101 .L000011D0 BIC R4,R4,#&0700 BIC R4,R4,#&FF ADD R4,R4,#&0800 :\ Step to next 2K boundary B L00001140 :\ Loop back to check next object \ CPU is 6502, return 16K file, type=&BBC \ --------------------------------------- .L000011E0 MOV R0,#&4000 STR R0,[R12,#24] :\ size=&4000 STR R0,[R12,#328] LDR R0,L13F8 STR R0,[R12,#16] :\ load=&FFFFFB0B LDR R0,L13FC STR R0,[R12,#20] :\ exec=&BCBBCBBC STR R4,[R12,#8] STR R4,[R12,#332] MOV R0,#&99 STR R0,[R12,#28] :\ attr=&99 - LR/LR MOV R0,#1 STR R0,[R12,#32] :\ Store object type 1=file .L00001214 LDR R0,[R12,#324] STR R0,[R12,#4] :\ 00001218 04 00 8C E5 ...e ADD R2,R12,#L6E :\ 0000121C 6E 20 8C E2 n .b MOV R0,#0 :\ 00001220 00 00 A0 E3 .. c STRB R0,[R2,#-1] :\ 00001224 01 00 42 E5 ..Be ADD R1,R4,#9 :\ 00001228 09 10 84 E2 ...b .L0000122C0000122C 5A 00 00 EB Z..k:\ BL L0000139C ADD R1,R1,#1 :\ 00001230 01 10 81 E2 ...b CMP R0,#L20 :\ 00001234 20 00 50 E3 .Pc MOVEQ R0,#L5F :\ 00001238 5F 00 A0 03 _. . MOVCC R0,#0 :\ 0000123C 00 00 A0 33 .. 3 STRB R0,[R2,#-65]:\ 00001240 41 00 42 E5 A.Be STRB R0,[R2],#0 :\ 00001244 00 00 C2 E4 ..Bd BCC L00001268 :\ 00001248 06 00 00 3A ...: ADD R2,R2,#1 :\ 0000124C 01 20 82 E2 . .b SUB R0,R1,R4 :\ 00001250 04 00 41 E0 ..A` CMP R0,#L49 :\ 00001254 49 00 50 E3 I.Pc BLT L0000122C :\ 00001258 F3 FF FF BA s..: MOV R0,#0 :\ 0000125C 00 00 A0 E3 .. c STRB R0,[R2,#-65]:\ 00001260 41 00 42 E5 A.Be STRB R0,[R2],#0 :\ 00001264 00 00 C2 E4 ..Bd .L0000126800001268 01 00 72 E5 ..re:\ LDRB R0,[R2,#-1]! TEQ R0,#L2E :\ 0000126C 2E 00 30 E3 ..0c MOVEQ R0,#0 :\ 00001270 00 00 A0 03 .. . STREQB R0,[R2],#0 :\ 00001274 00 00 C2 04 ..B. ADDEQ R0,R2,#1 :\ 00001278 01 00 82 02 .... BEQ L00001290 :\ 0000127C 03 00 00 0A .... TEQ R0,#0 :\ 00001280 00 00 30 E3 ..0c BNE L00001268 :\ 00001284 F7 FF FF 1A w... STRB R0,[R2,#1] :\ 00001288 01 00 C2 E5 ..Be ADD R0,R12,#L2D :\ 0000128C 2D 00 8C E2 -..b .L00001290 STR R0,[R12,#12] MOV R0,R3,LSL #24 :\ 00001294 03 0C A0 E1 .. a ADD R0,R0,R4 :\ 00001298 04 00 80 E0 ...` STR R0,[R12,#36] :\ 0000129C 24 00 8C E5 $..e LDR R0,[R12,#0] :\ 000012A0 00 00 9C E5 ...e ADD R0,R0,#1 :\ 000012A4 01 00 80 E2 ...b STR R0,[R12,#0] :\ 000012A8 00 00 8C E5 ...e LDMIA R13!,{R0-R4,PC}:\ 000012AC 1F 80 BD E8 ..=h \ ROM type byte=%10xx1101 (normally &8D) - directory .L12B0 MOV R0,#L88 STR R0,[R12,#28] :\ attr=&88 - L/L MOV R0,#2 STR R0,[R12,#32] :\ Store object type 2=directory B L000012D4 :\ Jump to fetch load/exec/length \ ROM type byte=%x1xx1101 (normally &4D or &CD) - file .L000012C4 MOV R0,#&99 STR R0,[R12,#28] :\ attr=&99 - LR/LR MOV R0,#1 STR R0,[R12,#32] :\ Store object type 1=file \ ROM type &4D, &8D, &CD all treated the same for metadata locations \ ROM type &4D and &CD both treated the same as file object \ \ ROMstart+0..3 = exec \ ROMtype AND &80 -> 0=file, 1=directory \ ROMtube+0..3 = load \ ROMtube+4..7 = length \ \ \ROM \type \ &0D NoServ NoLang NoTube \ &2D NoServ NoLang Tube \ &4D NoServ Lang NoTube ROMFS file \ &6D NoServ Lang Tube \ &8D Serv NoLang NoTube ROMFS directory \ &AD Serv NoLang Tube \ &CD Serv Lang NoTube Not normal type byte, ARM code with default &8000 address \ &ED Serv Lang Tube Normal type byte for ROM with ARM code in with Tube address \ .L000012D4 MOV R1,R2 :\ Point to after '(C)' .L000012D8 BL L0000139C :\ Fetch byte from [R1] ADD R1,R1,#1 :\ Step past the byte TEQ R0,#0 BNE L000012D8 :\ Loop until terminating &00 byte found BL L00001368 :\ fetch word from [R1] STR R0,[R12,#16] :\ store as load address ADD R1,R1,#4 :\ step to next word BL L00001368 :\ fetch word from [R1] STR R0,[R12,#24] :\ store as length STR R0,[R12,#328] ADD R1,R1,#4 :\ step to next word STR R1,[R12,#8] :\ store as start of data STR R1,[R12,#332] MOV R1,R4 :\ R1=>start of image BL L00001368 :\ fetch word from [R1] STR R0,[R12,#20] :\ store as exec address B L00001214 .L0000131C LDR R0,[R12,#324] TEQ R0,#3 :\ 00001320 03 00 30 E3 ..0c ADDNE R0,R0,#1 :\ 00001324 01 00 80 12 .... BNE L00001120 :\ 00001328 7C FF FF 1A |... MVN R0,#0 :\ 0000132C 00 00 E0 E3 ..`c STR R0,[R12,#0] :\ 00001330 00 00 8C E5 ...e CMP PC,#&80000000:\ 00001334 02 01 5F E3 .._c LDMIA R13!,{R0-R4,PC}:\ 00001338 1F 80 BD E8 ..=h .L0000133C TEQ R6,#0 .L00001340 MOVEQ PC,R14 STMDB R13!,{R0-R2,R14}:\ 00001344 07 40 2D E9 .@-i MOV R0,#&80000000:\ 00001348 02 01 A0 E3 .. c MOV R1,R6 :\ 0000134C 06 10 A0 E1 .. a SWI XOS_ReadUnsigned:\ 00001350 21 00 02 EF !..o ADDVS R13,R13,#4 :\ 00001354 04 D0 8D 62 .P.b LDMVSIA R13!,{R1,R2,PC}:\ 00001358 06 80 BD 68 ..=h SUB R6,R2,#1 :\ 0000135C 01 60 42 E2 .`Bb TEQ PC,#0 :\ 00001360 00 00 3F E3 ..?c LDMIA R13!,{R0-R2,PC}:\ 00001364 07 80 BD E8 ..=h .L0000136800001368 07 40 2D E9 .@-i:\ STMDB R13!,{R0-R2,R14} MOV R0,R1 :\ 0000136C 01 00 A0 E1 .. a ADD R1,R12,#LE0 :\ 00001370 E0 10 8C E2 `..b LDR R1,[R1,R3,LSL #5]:\ 00001374 83 12 91 E7 ...g BIC R1,R1,#&FF000000:\ 00001378 FF 14 C1 E3 ..Ac SUB R1,R1,#L1800 :\ 0000137C 06 1B 41 E2 ..Ab CMP R0,R1 :\ 00001380 01 00 50 E1 ..Pa BGE L000013D8 :\ 00001384 13 00 00 AA ...* MOV R1,#4 :\ 00001388 04 10 A0 E3 .. c MOV R2,R13 :\ 0000138C 0D 20 A0 E1 . a BL L000013E8 :\ 00001390 14 00 00 EB ...k STRVS R0,[R13],#0 :\ 00001394 00 00 8D 64 ...d LDMIA R13!,{R0-R2,PC}:\ 00001398 07 80 BD E8 ..=h .L0000139C STMDB R13!,{R1,R2,R14} SUB R13,R13,#4 :\ 000013A0 04 D0 4D E2 .PMb MOV R0,R1 :\ 000013A4 01 00 A0 E1 .. a ADD R1,R12,#&E0 :\ 000013A8 E0 10 8C E2 `..b LDR R1,[R1,R3,LSL #5]:\ 000013AC 83 12 91 E7 ...g BIC R1,R1,#&FF000000:\ 000013B0 FF 14 C1 E3 ..Ac SUB R1,R1,#L1800 :\ 000013B4 06 1B 41 E2 ..Ab CMP R0,R1 :\ 000013B8 01 00 50 E1 ..Pa BGE L000013D8 :\ 000013BC 05 00 00 AA ...* MOV R1,#1 :\ 000013C0 01 10 A0 E3 .. c MOV R2,R13 :\ 000013C4 0D 20 A0 E1 . a BL L000013E8 :\ 000013C8 06 00 00 EB ...k LDRVCB R0,[R13],#0 :\ 000013CC 00 00 DD 74 ..]t ADD R13,R13,#4 :\ 000013D0 04 D0 8D E2 .P.b LDMIA R13!,{R1,R2,PC}:\ 000013D4 06 80 BD E8 ..=h .L000013D8000013D8 07 40 BD E8 .@=h:\ LDMIA R13!,{R0-R2,R14} ADR R0,L000014D4:\ 000013DC F0 00 8F E2 p..b ADD R0,R0,#L0500 :\ 000013E0 05 0C 80 E2 ...b ORRS PC,R14,#&10000000:\ 000013E4 01 F2 9E E3 .r.c .L000013E8000013E8 00 40 2D E9 .@-i:\ STMDB R13!,{R14} ADD R0,R0,#L1800 :\ 000013EC 06 0B 80 E2 ...b SWI XPodule_ReadBytes:\ 000013F0 84 02 06 EF ...o LDMIA R13!,{PC} :\ 000013F4 00 80 BD E8 ..=h .L000013F8000013F8 0B BC FB FF .<{.:\ SWINV XUser .L000013FC000013FC BC CB BB BC Undefined instruction:\ 000014FC 3C 64 65 76 STMVSDB R6!,{R5,R10-R13}^ :\ 00001504 20 3C 66 69 Undefined instruction:\ 00001510 5B 3C 6F 66 [].. STMDB R13!,{R14} :\ 0000151C 00 40 2D E9 .@-i LDR R12,[R12],#0:\ 00001520 00 C0 9C E4 .@.d MOV R6,R1 :\ 00001524 01 60 A0 E1 .` a MOV R1,R0 :\ 00001528 00 10 A0 E1 .. a MOV R0,#&8000000A:\ 0000152C 2A 01 A0 E3 *. c SWI XOS_ReadUnsigned:\ 00001530 21 00 02 EF !..o MOVVC R3,R2 :\ 00001534 02 30 A0 71 .0 q SWIVC XPodule_ReadID:\ 00001538 80 02 06 7F .... MOVVC R0,#&8000000A:\ 0000153C 2A 01 A0 73 *. s SWIVC XOS_ReadUnsigned:\ 00001540 21 00 02 7F !... LDMVSIA R13!,{PC} :\ 00001544 00 80 BD 68 ..=h TEQ R2,#0 :\ 00001548 00 00 32 E3 ..2c BEQ L00001694 :\ 0000154C 50 00 00 0A P... CMP R2,#8 :\ 00001550 08 00 52 E3 ..Rc BHI L00001694 :\ 00001554 4E 00 00 8A N... SUB R5,R2,#1 :\ 00001558 01 50 42 E2 .PBb MOV R4,R1 :\ 0000155C 01 40 A0 E1 .@ a TEQ R6,#3 :\ 00001560 03 00 36 E3 ..6c MOVEQ R6,#0 :\ 00001564 00 60 A0 03 .` . BEQ L00001594 :\ 00001568 09 00 00 0A .... .L0000156C0000156C 01 00 F1 E5 ..qe:\ LDRB R0,[R1,#1]! TEQ R0,#L20 :\ 00001570 20 00 30 E3 .0c BNE L0000156C :\ 00001574 FC FF FF 1A |... .L0000157800001578 01 00 F1 E5 ..qe:\ LDRB R0,[R1,#1]! TEQ R0,#L20 :\ 0000157C 20 00 30 E3 .0c BEQ L00001578 :\ 00001580 FC FF FF 0A |... MOV R0,#&80000010:\ 00001584 42 01 A0 E3 B. c SWI XOS_ReadUnsigned:\ 00001588 21 00 02 EF !..o LDMVSIA R13!,{PC} :\ 0000158C 00 80 BD 68 ..=h MOV R6,R2 :\ 00001590 02 60 A0 E1 .` a .L0000159400001594 C4 00 8C E2 D..b:\ ADD R0,R12,#LC4 ADD R0,R0,R3,LSL #5:\ 00001598 83 02 80 E0 ...` LDR R2,[R0,R5,LSL #2]:\ 0000159C 05 21 90 E7 .!.g TEQ R5,#0 :\ 000015A0 00 00 35 E3 ..5c MOVEQ R1,#0 :\ 000015A4 00 10 A0 03 .. . SUBNE R1,R5,#1 :\ 000015A8 01 10 45 12 ..E. LDRNE R1,[R0,R1,LSL #2]:\ 000015AC 01 11 90 17 .... BIC R1,R1,#&FF000000:\ 000015B0 FF 14 C1 E3 ..Ac ADD R6,R6,R1 :\ 000015B4 01 60 86 E0 .`.` TST R2,#&40000000:\ 000015B8 01 01 12 E3 ...c BEQ L0000166C :\ 000015BC 2A 00 00 0A *... .L000015C0000015C0 FF 24 C2 E3 .$Bc:\ BIC R2,R2,#&FF000000 SUBS R2,R2,R6 :\ 000015C4 06 20 52 E0 . R` BLE L00001664 :\ 000015C8 25 00 00 DA %..Z ADD R5,R5,#1 :\ 000015CC 01 50 85 E2 .P.b TEQ R5,#8 :\ 000015D0 08 00 35 E3 ..5c BEQ L000015E8 :\ 000015D4 03 00 00 0A .... LDR R1,[R0,R5,LSL #2]:\ 000015D8 05 11 90 E7 ...g TST R1,#&40000000:\ 000015DC 01 01 11 E3 ...c MOVNE R2,R1 :\ 000015E0 01 20 A0 11 . . BNE L000015C0 :\ 000015E4 F5 FF FF 1A u... .L000015E8000015E8 02 50 A0 E1 .P a:\ MOV R5,R2 MOV R0,#L4C :\ 000015EC 4C 00 A0 E3 L. c MOV R1,R4 :\ 000015F0 04 10 A0 E1 .. a SWI XOS_Find :\ 000015F4 0D 00 02 EF ...o LDMVSIA R13!,{PC} :\ 000015F8 00 80 BD 68 ..=h MOV R4,R0 :\ 000015FC 00 40 A0 E1 .@ a MOV R1,R4 :\ 00001600 04 10 A0 E1 .. a MOV R0,#2 :\ 00001604 02 00 A0 E3 .. c SWI XOS_Args :\ 00001608 09 00 02 EF ...o .L0000160C0000160C 19 00 00 6A ...j:\ BVS L00001678 CMP R5,R2 :\ 00001610 02 00 55 E1 ..Ua SUBCS R13,R13,#4 :\ 00001614 04 D0 4D 22 .PM" MOVCS R2,R13 :\ 00001618 0D 20 A0 21 . ! BCS L00001644 :\ 0000161C 08 00 00 2A ...* ADR R0,L00001994:\ 00001620 DB 0F 8F E2 [..b B L00001678 :\ 00001624 13 00 00 EA ...j .L0000162800001628 00 00 C2 E4 ..Bd:\ STRB R0,[R2],#0 MOV R0,R6 :\ 0000162C 06 00 A0 E1 .. a ADD R6,R6,#1 :\ 00001630 01 60 86 E2 .`.b MOV R1,#1 :\ 00001634 01 10 A0 E3 .. c STMDB R13!,{R4} :\ 00001638 10 00 2D E9 ..-i SWI XPodule_WriteBytes:\ 0000163C 85 02 06 EF ...o LDMIA R13!,{R4} :\ 00001640 10 00 BD E8 ..=h .L0000164400001644 04 10 A0 71 .. q:\ MOVVC R1,R4 SWIVC XOS_BGet :\ 00001648 0A 00 02 7F .... BVS L00001674 :\ 0000164C 08 00 00 6A ...j BCC L00001628 :\ 00001650 F4 FF FF 3A t..: MOV R0,#0 :\ 00001654 00 00 A0 E3 .. c MOV R1,R4 :\ 00001658 04 10 A0 E1 .. a SWI XOS_Find :\ 0000165C 0D 00 02 EF ...o LDMIA R13!,{R14,PC}:\ 00001660 00 C0 BD E8 .@=h .L0000166400001664 D2 0F 8F E2 R..b:\ ADR R0,L000019B4 B L00001678 :\ 00001668 02 00 00 EA ...j .L0000166C0000166C 03 0C 8F E2 ...b:\ ADR R0,L00001974 SUB R13,R13,#4 :\ 00001670 04 D0 4D E2 .PMb .L0000167400001674 04 D0 8D E2 .P.b:\ ADD R13,R13,#4 .L0000167800001678 00 30 A0 E1 .0 a:\ MOV R3,R0 MOV R0,#0 :\ 0000167C 00 00 A0 E3 .. c MOV R1,R4 :\ 00001680 04 10 A0 E1 .. a SWI XOS_Find :\ 00001684 0D 00 02 EF ...o CMP PC,#&80000000:\ 00001688 02 01 5F E3 .._c MOV R0,R3 :\ 0000168C 03 00 A0 E1 .. a LDMIA R13!,{PC} :\ 00001690 00 80 BD E8 ..=h .L0000169400001694 0B 0D 8F E2 ...b:\ ADR R0,L0000195C LDMIA R13!,{R14} :\ 00001698 00 40 BD E8 .@=h ORRS PC,R14,#&10000000:\ 0000169C 01 F2 9E E3 .r.c .L000016A0000016A0 70 00 8F E2 p..b:\ ADR R0,L00001718 ADD R0,R0,#L0200 :\ 000016A4 02 0C 80 E2 ...b CMP PC,#&80000000:\ 000016A8 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 000016AC 00 80 BD E8 ..=h .L000016B0000016B0 00 80 BD E8 ..=h:\ LDMIA R13!,{PC} .L000016B4000016B4 04 00 31 E3 ..1c:\ TEQ R1,#4 BEQ L000016CC :\ 000016B8 03 00 00 0A .... .L000016BC000016BC DC 00 8F E2 \..b:\ ADR R0,L000017A0 ADD R0,R0,#L0100 :\ 000016C0 01 0C 80 E2 ...b CMP PC,#&80000000:\ 000016C4 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 000016C8 00 80 BD E8 ..=h .L000016CC000016CC 03 00 D2 E3 ..Rc:\ BICS R0,R2,#3 BNE L000016BC :\ 000016D0 F9 FF FF 1A y... LDRB R0,[R12,#175]:\ 000016D4 AF 00 DC E5 /.\e EORS R3,R0,R2 :\ 000016D8 02 30 30 E0 .00` LDMEQIA R13!,{PC} :\ 000016DC 00 80 BD 08 ..=. MOV R0,#LA1 :\ 000016E0 A1 00 A0 E3 !. c MOV R1,#LBC :\ 000016E4 BC 10 A0 E3 <. c SWI XOS_Byte :\ 000016E8 06 00 02 EF ...o EOR R2,R2,R3 :\ 000016EC 03 20 22 E0 . "` MOVVC R0,#LA2 :\ 000016F0 A2 00 A0 73 ". s SWIVC XOS_Byte :\ 000016F4 06 00 02 7F .... AND R2,R2,#3 :\ 000016F8 03 20 02 E2 . .b STRVCB R2,[R12,#175]:\ 000016FC AF 20 CC 75 / Lu LDMIA R13!,{PC} :\ 00001700 00 80 BD E8 ..=h .L0000170400001704 05 00 A0 E3 .. c:\ MOV R0,#5 BL L00000CC0 :\ 00001708 6C FD FF EB l}.k LDMVSIA R13!,{PC} :\ 0000170C 00 80 BD 68 ..=h TEQ R0,#0 :\ 00001710 00 00 30 E3 ..0c BEQ L00001724 :\ 00001714 02 00 00 0A .... .L0000171800001718 24 70 9C E5 $p.e:\ LDR R7,[R12,#36] BL L00001804 :\ 0000171C 38 00 00 EB 8..k LDMIA R13!,{PC} :\ 00001720 00 80 BD E8 ..=h .L0000172400001724 C4 00 8F E2 D..b:\ ADR R0,L000017F0 ADD R0,R0,#L0100 :\ 00001728 01 0C 80 E2 ...b CMP PC,#&80000000:\ 0000172C 02 01 5F E3 .._c LDMIA R13!,{PC} :\ 00001730 00 80 BD E8 ..=h .L0000173400001734 C8 D0 4D E2 HPMb:\ SUB R13,R13,#LC8 MOV R4,#0 :\ 00001738 00 40 A0 E3 .@ c LDRB R0,[R1],#0 :\ 0000173C 00 00 D1 E4 ..Qd CMP R0,#L20 :\ 00001740 20 00 50 E3 .Pc ADRLS R1,L0000188C:\ 00001744 05 1D 8F 92 .... .L0000174800001748 01 00 74 E3 ..tc:\ CMN R4,#1 BEQ L00001784 :\ 0000174C 0C 00 00 0A .... MOV R0,#L0E :\ 00001750 0E 00 A0 E3 .. c MOV R2,R13 :\ 00001754 0D 20 A0 E1 . a MOV R3,#L64 :\ 00001758 64 30 A0 E3 d0 c MOV R5,#LC7 :\ 0000175C C7 50 A0 E3 GP c BL L00000F60 :\ 00001760 FE FD FF EB ~}.k BVS L00001784 :\ 00001764 06 00 00 6A ...j MOV R0,R13 :\ 00001768 0D 00 A0 E1 .. a .L0000176C0000176C 00 00 33 E3 ..3c:\ TEQ R3,#0 BEQ L00001748 :\ 00001770 F4 FF FF 0A t... SUB R3,R3,#1 :\ 00001774 01 30 43 E2 .0Cb SWI XOS_Write0 :\ 00001778 02 00 02 EF ...o SWIVC XOS_NewLine :\ 0000177C 03 00 02 7F .... BVC L0000176C :\ 00001780 F9 FF FF 7A y..z .L0000178400001784 C8 D0 8D E2 HP.b:\ ADD R13,R13,#LC8 LDMIA R13!,{PC} :\ 00001788 00 80 BD E8 ..=h .L0000178C0000178C C8 D0 4D E2 HPMb:\ SUB R13,R13,#LC8 MOV R4,#0 :\ 00001790 00 40 A0 E3 .@ c LDRB R0,[R1],#0 :\ 00001794 00 00 D1 E4 ..Qd CMP R0,#L20 :\ 00001798 20 00 50 E3 .Pc ADRLS R1,L0000188C:\ 0000179C E8 10 8F 92 h... .L000017A0000017A0 01 00 74 E3 ..tc:\ CMN R4,#1 BEQ L000017FC :\ 000017A4 14 00 00 0A .... MOV R0,#L13 :\ 000017A8 13 00 A0 E3 .. c MOV R2,R13 :\ 000017AC 0D 20 A0 E1 . a MOV R3,#L64 :\ 000017B0 64 30 A0 E3 d0 c MOV R5,#LC7 :\ 000017B4 C7 50 A0 E3 GP c BL L00000F60 :\ 000017B8 E8 FD FF EB h}.k BVS L000017FC :\ 000017BC 0E 00 00 6A ...j MOV R0,R13 :\ 000017C0 0D 00 A0 E1 .. a .L000017C4000017C4 00 00 33 E3 ..3c:\ TEQ R3,#0 BEQ L000017A0 :\ 000017C8 F4 FF FF 0A t... SUB R3,R3,#1 :\ 000017CC 01 30 43 E2 .0Cb STMDB R13!,{R1,R3,R4}:\ 000017D0 1A 00 2D E9 ..-i LDMIA R0,{R2-R5} :\ 000017D4 3C 00 90 E8 <..h ADD R6,R0,#L1D :\ 000017D8 1D 60 80 E2 .`.b LDR R7,[R0,#20] :\ 000017DC 14 70 90 E5 .p.e LDR R0,[R0,#16] :\ 000017E0 10 00 90 E5 ...e BL L00001804 :\ 000017E4 06 00 00 EB ...k LDMIA R13!,{R1,R3,R4}:\ 000017E8 1A 00 BD E8 ..=h BVS L000017FC :\ 000017EC 02 00 00 6A ...j .L000017F0000017F0 03 00 80 E2 ...b:\ ADD R0,R0,#3 BIC R0,R0,#3 :\ 000017F4 03 00 C0 E3 ..@c B L000017C4 :\ 000017F8 F1 FF FF EA q..j .L000017FC000017FC C8 D0 8D E2 HP.b:\ ADD R13,R13,#LC8 .L0000180000001800 00 80 BD E8 ..=h:\ LDMIA R13!,{PC} .L0000180400001804 00 40 2D E9 .@-i:\ STMDB R13!,{R14} MOV R8,R0 :\ 00001808 00 80 A0 E1 .. a SUB R13,R13,#L30 :\ 0000180C 30 D0 4D E2 0PMb MOV R1,R13 :\ 00001810 0D 10 A0 E1 .. a MOV R0,R2 :\ 00001814 02 00 A0 E1 .. a MOV R2,#L28 :\ 00001818 28 20 A0 E3 ( c SWI XOS_ConvertHex8:\ 0000181C D4 00 02 EF T..o MOVVC R0,#L20 :\ 00001820 20 00 A0 73 . s STRVCB R0,[R1],#1 :\ 00001824 01 00 C1 74 ..At MOVVC R0,R3 :\ 00001828 03 00 A0 71 .. q SWIVC XOS_ConvertHex8:\ 0000182C D4 00 02 7F T... MOVVC R0,#L20 :\ 00001830 20 00 A0 73 . s STRVCB R0,[R1],#1 :\ 00001834 01 00 C1 74 ..At MOVVC R0,R4 :\ 00001838 04 00 A0 71 .. q SWIVC XOS_ConvertHex6:\ 0000183C D3 00 02 7F S... MOVVC R0,#L20 :\ 00001840 20 00 A0 73 . s STRVCB R0,[R1],#1 :\ 00001844 01 00 C1 74 ..At MOVVC R0,R7 :\ 00001848 07 00 A0 71 .. q SWIVC XOS_ConvertHex8:\ 0000184C D4 00 02 7F T... MOVVC R0,R13 :\ 00001850 0D 00 A0 71 .. q SWIVC XOS_Write0 :\ 00001854 02 00 02 7F .... BVS L00001878 :\ 00001858 06 00 00 6A ...j TEQ R8,#2 :\ 0000185C 02 00 38 E3 ..8c ADRNE R0,L00001880:\ 00001860 18 00 8F 12 .... ADREQ R0,L00001886:\ 00001864 1A 00 8F 02 .... SWI XOS_Write0 :\ 00001868 02 00 02 EF ...o MOVVC R0,R6 :\ 0000186C 06 00 A0 71 .. q SWIVC XOS_Write0 :\ 00001870 02 00 02 7F .... SWIVC XOS_NewLine :\ 00001874 03 00 02 7F .... .L0000187800001878 30 D0 8D E2 0P.b:\ ADD R13,R13,#L30 LDMIA R13!,{PC} :\ 0000187C 00 80 BD E8 ..=h .L0000188000001880 20 4C 52 20 LR :\ SUBCSS R4,R2,R0,LSR #24 STRMIT R0,[R0],#-32:\ 00001884 20 00 20 44 . D EOREQ R2,R0,R12,ASR #32:\ 00001888 4C 20 20 00 L . .L0000188C0000188C 40 00 42 43 @.BC:\ CMPMI R2,#L40 MULEQ R1,R14,R3 :\ 00001890 DE 03 01 00 ^... RSBCS R6,R4,R2,ASR #2:\ 00001894 42 61 64 20 Bad STRVSBT R6,[R14],#-360:\ 00001898 68 61 6E 64 hand ANDEQ R6,R0,R12,ROR #10:\ 0000189C 6C 65 00 00 le.. ANDEQ R0,R1,R11,ASR #7:\ 000018A0 CB 03 01 00 K... RSBCS R6,R4,R2,ASR #2:\ 000018A4 42 61 64 20 Bad LDMVSDB R4!,{R0-R3,R5,R6,R:\ 000018A8 6F 70 74 69 opti STRVCT R6,[R0],-PC,ROR #2:\ 000018AC 6F 6E 20 76 on v LDRVSB R6,[R5,#-3169]!:\ 000018B0 61 6C 75 65 alue .L000018B4000018B4 00 00 00 00 ....:\ ANDEQ R0,R0,R0 MULEQ R1,R7,R3 :\ 000018B8 B7 03 01 00 7... CMNVC R4,#&13C00000:\ 000018BC 4F 75 74 73 Outs RSBCS R6,R5,R9,ROR #8:\ 000018C0 69 64 65 20 ide STRVSB R6,[R12,#-2406]!:\ 000018C4 66 69 6C 65 file ANDEQ R0,R0,R0 :\ 000018C8 00 00 00 00 .... ANDEQ R0,R1,R0,ASR #7:\ 000018CC C0 03 01 00 @... STMVCDB R12!,{R0-R3,R6,R9-:\ 000018D0 4F 6E 6C 79 Only STRVSB R6,[R14,#-3872]!:\ 000018D4 20 6F 6E 65 one STCVSL CP6,C6,[R9],#-128:\ 000018D8 20 66 69 6C fil RSBVC R2,PC,R5,RRX:\ 000018DC 65 20 6F 70 e op TEQVS R0,R5,ROR #28:\ 000018E0 65 6E 20 61 en a RSBCS R2,R1,R4,ROR R0:\ 000018E4 74 20 61 20 t a STRVSB R6,[R13,#-2420]!:\ 000018E8 74 69 6D 65 time ANDEQ R0,R0,R0 :\ 000018EC 00 00 00 00 .... MULEQ R1,R6,R3 :\ 000018F0 D6 03 01 00 V... STRVSB R6,[R12,#-2374]!:\ 000018F4 46 69 6C 65 File STRVCBT R6,L00000AE0:\ 000018F8 20 6E 6F 74 not STRVCB R6,L000012E4:\ 000018FC 20 66 6F 75 fou ANDEQ R6,R0,R14,ROR #8:\ 00001900 6E 64 00 00 nd.. ANDEQ R0,R1,R8,LSR #7:\ 00001904 A8 03 01 00 (... TEQVS R0,R9,ASR #6:\ 00001908 49 73 20 61 Is a RSBVC R6,R9,#&20000000:\ 0000190C 20 64 69 72 dir SWIVS User :\ 00001910 65 63 74 6F ecto ANDEQ R7,R0,R2,ROR R9:\ 00001914 72 79 00 00 ry.. MULEQ R1,R8,R3 :\ 00001918 F8 03 01 00 x... RSBCS R6,R4,R2,ASR #2:\ 0000191C 42 61 64 20 Bad RSBVC R7,R5,#L6F :\ 00001920 6F 70 65 72 oper SWIVS User :\ 00001924 61 74 69 6F atio CDPVS CP0,6,C2,C15,C14,3:\ 00001928 6E 20 6F 6E n on SFMMI F5,2,[PC,#-128] :\ 0000192C 20 52 4F 4D ROM ANDEQ R0,R0,R10,LSR R0:\ 00001930 3A 00 00 00 :... MULEQ R1,R10,R3 :\ 00001934 FA 03 01 00 z... BCC &01355688 :\ 00001938 52 4F 4D 3A ROM: RSBCSS R6,R3,R0,LSR #18:\ 0000193C 20 69 73 20 is LDRVSB R2,[R2,#-97]!:\ 00001940 61 20 72 65 a re SWIVS User :\ 00001944 61 64 20 6F ad o RSBCSS R6,R9,R14,ROR #24:\ 00001948 6E 6C 79 20 nly STMVSDB R12!,{R1,R2,R5,R6,:\ 0000194C 66 69 6C 69 fili TEQVC R0,#&01B80000:\ 00001950 6E 67 20 73 ng s LDRVSB R7,[R4,#-889]!:\ 00001954 79 73 74 65 yste ANDEQ R0,R0,R13,RRX:\ 00001958 6D 00 00 00 m... .L0000195C0000195C 08 05 00 00 ....:\ ANDEQ R0,R0,R8,LSL #10 RSBCS R6,R4,R2,ASR #2:\ 00001960 42 61 64 20 Bad LDMVSDB R6!,{R2,R5,R6,R8,R:\ 00001964 64 65 76 69 devi CDPVS CP5,2,C6,C0,C3,3:\ 00001968 63 65 20 6E ce n STRVSB R6,[R2,#-3445]!:\ 0000196C 75 6D 62 65 umbe ANDEQ R0,R0,R2,ROR R0:\ 00001970 72 00 00 00 r... .L0000197400001974 82 05 00 00 ....:\ ANDEQ R0,R0,R2,LSL #11 CMNVC R9,#&00540000:\ 00001978 54 68 69 73 This STRVCBT R6,[R5],-R0,LSR #8:\ 0000197C 20 64 65 76 dev RSBCS R6,R5,R9,ROR #6:\ 00001980 69 63 65 20 ice RSBCSS R6,R4,R14,ROR #30:\ 00001984 6E 6F 74 20 not STRVCBT R7,[R9],#-631:\ 00001988 77 72 69 74 writ STFVSE F6,[R2],#-404:\ 0000198C 65 61 62 6C eabl ANDEQ R0,R0,R5,RRX:\ 00001990 65 00 00 00 e... .L0000199400001994 00 03 01 00 ....:\ ANDEQ R0,R1,R0,LSL #6 STRVSB R6,[R12,#-2374]!:\ 00001998 46 69 6C 65 File SWIVS XUser :\ 0000199C 20 74 6F 6F too STRVSB R6,[R9,-R0,LSR #4]:\ 000019A0 20 62 69 67 big RSBVC R6,PC,#&02000000:\ 000019A4 20 66 6F 72 for STRVCBT R6,[R5],-R0,LSR #8:\ 000019A8 20 64 65 76 dev STMCSDA R5!,{R0,R3,R5,R6,R:\ 000019AC 69 63 65 28 ice( ANDEQ R2,R0,R3,ROR R9:\ 000019B0 73 29 00 00 s).. .L000019B4000019B4 01 03 01 00 ....:\ ANDEQ R0,R1,R1,LSL #6 CMNVC R6,#&04F00000:\ 000019B8 4F 66 66 73 Offs STRVCT R7,[R0],#-1125:\ 000019BC 65 74 20 74 et t EORVS R6,R0,#L01BC :\ 000019C0 6F 6F 20 62 oo b STRVST R6,[R0],-R9,ROR #1:\ 000019C4 69 67 20 66 ig f STRVST R7,[R0],#-623:\ 000019C8 6F 72 20 64 or d CMNVS R9,#&06500000:\ 000019CC 65 76 69 63 evic ANDEQ R0,R0,R5,RRX:\ 000019D0 65 00 00 00 e... ANDEQ R0,R0,R4,LSL #11:\ 000019D4 84 05 00 00 .... ANDEQ R0,R0,R0 :\ 000019D8 00 00 00 00 .... ANDEQ R0,R0,R7,ROR #2:\ 000019DC 67 01 00 00 g... LDMVSDB R2!,{R0,R1,R4,R6,R:\ 000019E0 53 74 72 69 Stri STRVCT R6,[R0],#-1902:\ 000019E4 6E 67 20 74 ng t STCVS CP15,C6,[R0],#-444:\ 000019E8 6F 6F 20 6C oo l RSBEQ R6,R7,PC,ROR #28:\ 000019EC 6F 6E 67 00 ong. SWIVS XUser :\ 000019F0 53 65 63 6F Seco EORVC R6,R0,#&6E000000:\ 000019F4 6E 64 20 72 nd r CMNVS R5,R5,ROR #24:\ 000019F8 65 6C 65 61 elea TSTMI R0,R3,ROR R5:\ 000019FC 73 65 00 41 se.A CDPVS CP15,7,C6,C2,C3,3:\ 00001A00 63 6F 72 6E corn SUBEQ R5,R11,R0,LSR #10:\ 00001A04 20 55 4B 00 UK. Undefined instruction:\ 00001A08 30 32 37 36 0276 TEQCC R2,R12,LSR #4:\ 00001A0C 2C 32 32 31 ,221 EOREQS R3,R2,R13,LSR #32:\ 00001A10 2D 30 32 00 -02. STRMIT R3,[R13],#-2097:\ 00001A14 31 38 2D 44 18-D STMCCDA R13!,{R0,R2,R5,R6,:\ 00001A18 65 63 2D 38 ec-8 ANDEQ R0,R0,R7,LSR R0:\ 00001A1C 37 00 00 00 7... ANDEQ R0,R0,R0 :\ 00001A20 00 00 00 00 .... ANDEQ R0,R0,R0 :\ 00001A24 00 00 00 00 ....