home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 1 / ARM_CLUB_CD.iso / contents / apps / files / a / fre / fre < prev    next >
Unknown  |  1992-05-19  |  21.9 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert Truevision Targa Graphic (image/tga) magic Supported
100% file data default
100% xdgMime image/x-tga default (weak)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 19 f4 20 20 3e | 3c 64 3e 2e 42 61 73 69 |..... >|<d>.Basi|
|00000010| 63 2e 66 72 65 2e 66 72 | 65 0d 00 14 1a f4 20 20 |c.fre.fr|e..... |
|00000020| 20 20 20 a9 20 43 79 20 | 42 6f 6f 6b 65 72 20 31 | . Cy |Booker 1|
|00000030| 39 39 32 0d 00 1e 04 0d | 00 28 47 2a 7c 20 57 72 |992.....|.(G*| Wr|
|00000040| 69 74 69 6e 67 20 61 73 | 20 61 6e 20 69 6e 64 65 |iting as| an inde|
|00000050| 70 65 6e 64 65 6e 74 20 | 61 70 70 6c 69 63 61 74 |pendent |applicat|
|00000060| 69 6f 6e 20 74 6f 20 66 | 69 6e 64 20 72 65 27 73 |ion to f|ind re's|
|00000070| 20 69 6e 20 74 65 78 74 | 20 66 69 6c 65 73 0d 00 | in text| files..|
|00000080| 32 04 0d 00 3c 1b f4 20 | 20 4d 41 43 48 49 4e 45 |2...<.. | MACHINE|
|00000090| 3a 20 20 41 72 63 68 69 | 6d 65 64 65 73 0d 00 46 |: Archi|medes..F|
|000000a0| 1c f4 20 20 4c 41 4e 47 | 55 41 47 45 3a 20 42 42 |.. LANG|UAGE: BB|
|000000b0| 43 20 42 41 53 49 43 20 | 56 0d 00 50 1b f4 20 20 |C BASIC |V..P.. |
|000000c0| 41 55 54 48 4f 52 3a 20 | 20 20 43 79 20 42 6f 6f |AUTHOR: | Cy Boo|
|000000d0| 6b 65 72 2c 0d 00 5a 47 | f4 20 20 20 20 20 20 20 |ker,..ZG|. |
|000000e0| 20 20 20 20 20 38 36 20 | 43 68 75 72 63 68 20 56 | 86 |Church V|
|000000f0| 69 65 77 2c 20 4d 61 69 | 6e 20 52 6f 61 64 2c 20 |iew, Mai|n Road, |
|00000100| 43 72 6f 63 6b 65 6e 68 | 69 6c 6c 2c 20 53 77 61 |Crockenh|ill, Swa|
|00000110| 6e 6c 65 79 2c 20 4b 65 | 6e 74 2e 0d 00 64 18 f4 |nley, Ke|nt...d..|
|00000120| 20 20 20 20 20 20 20 20 | 20 20 20 20 42 52 38 20 | | BR8 |
|00000130| 38 4a 57 0d 00 6e 05 3a | 0d 00 78 3f c8 9b 20 22 |8JW..n.:|..x?.. "|
|00000140| 3c 42 61 73 69 63 56 24 | 4c 69 62 3e 2e 4c 69 62 |<BasicV$|Lib>.Lib|
|00000150| 48 61 6e 64 6c 65 72 22 | 20 20 3a 20 20 ee 20 85 |Handler"| : . .|
|00000160| 20 f2 5f 68 61 6e 64 6c | 65 5f 6c 69 62 72 61 72 | ._handl|e_librar|
|00000170| 79 5f 65 72 72 6f 72 0d | 00 82 29 f2 5f 68 61 72 |y_error.|..)._har|
|00000180| 64 5f 69 6e 69 74 69 61 | 6c 69 73 65 5f 4c 69 62 |d_initia|lise_Lib|
|00000190| 48 61 6e 64 6c 65 72 28 | 32 30 2c 20 30 31 32 29 |Handler(|20, 012)|
|000001a0| 0d 00 8c 24 f2 5f 68 61 | 72 64 5f 69 6e 69 74 5f |...$._ha|rd_init_|
|000001b0| 61 73 73 65 6d 62 6c 65 | 5f 6c 69 62 72 61 72 79 |assemble|_library|
|000001c0| 28 32 30 29 0d 00 96 1b | 4f 6e 5f 4c 69 62 5f 45 |(20)....|On_Lib_E|
|000001d0| 72 72 6f 72 5f 4d 4f 44 | 45 25 20 3d 20 2d 31 0d |rror_MOD|E% = -1.|
|000001e0| 00 a0 2c f2 5f 6c 6f 61 | 64 5f 6c 69 62 72 61 72 |..,._loa|d_librar|
|000001f0| 79 28 22 3c 42 61 73 69 | 63 56 24 4c 69 62 3e 2e |y("<Basi|cV$Lib>.|
|00000200| 43 41 73 6d 22 2c 20 30 | 30 32 29 0d 00 aa 30 f2 |CAsm", 0|02)...0.|
|00000210| 5f 6c 6f 61 64 5f 6c 69 | 62 72 61 72 79 28 22 3c |_load_li|brary("<|
|00000220| 42 61 73 69 63 56 24 4c | 69 62 3e 2e 46 69 6c 65 |BasicV$L|ib>.File|
|00000230| 54 79 70 65 22 2c 20 30 | 30 31 29 0d 00 b4 36 f2 |Type", 0|01)...6.|
|00000240| 5f 6c 6f 61 64 5f 6c 69 | 62 72 61 72 79 28 22 3c |_load_li|brary("<|
|00000250| 42 61 73 69 63 56 5f 41 | 73 73 65 6d 62 6c 65 72 |BasicV_A|ssembler|
|00000260| 24 4c 69 62 3e 2e 4d 69 | 73 63 22 2c 20 30 32 37 |$Lib>.Mi|sc", 027|
|00000270| 29 0d 00 be 07 20 20 3a | 0d 00 c8 35 20 20 56 45 |).... :|...5 VE|
|00000280| 52 42 4f 53 49 54 59 5f | 44 45 46 41 55 4c 54 20 |RBOSITY_|DEFAULT |
|00000290| 3d 20 32 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |= 2 | |
|000002a0| 20 20 20 20 3a f4 20 5b | 30 2c 20 33 5d 0d 00 d2 | :. [|0, 3]...|
|000002b0| 35 20 20 48 4f 55 52 47 | 4c 41 53 53 5f 44 45 46 |5 HOURG|LASS_DEF|
|000002c0| 41 55 4c 54 20 3d 20 31 | 20 20 20 20 20 20 20 20 |AULT = 1| |
|000002d0| 20 20 20 20 20 20 20 20 | 20 3a f4 20 5b 30 2c 20 | | :. [0, |
|000002e0| 32 5d 0d 00 dc 21 20 20 | 73 69 7a 65 6f 66 5f 42 |2]...! |sizeof_B|
|000002f0| 53 53 5f 76 69 61 5f 62 | 75 66 66 65 72 20 3d 20 |SS_via_b|uffer = |
|00000300| 35 31 32 0d 00 e6 21 20 | 20 73 69 7a 65 6f 66 5f |512...! | sizeof_|
|00000310| 42 53 53 5f 67 73 74 5f | 62 75 66 66 65 72 20 3d |BSS_gst_|buffer =|
|00000320| 20 35 31 32 0d 00 f0 0f | 20 20 64 65 62 75 67 20 | 512....| debug |
|00000330| 3d 20 a3 0d 00 fa 07 20 | 20 3a 0d 01 04 26 20 20 |= ..... | :...& |
|00000340| 50 72 6f 67 72 61 6d 5f | 53 74 61 63 6b 5f 53 69 |Program_|Stack_Si|
|00000350| 7a 65 20 20 20 20 3d 20 | 36 20 2a 20 31 30 32 34 |ze = |6 * 1024|
|00000360| 0d 01 0e 3e 20 20 50 72 | 6f 67 72 61 6d 5f 48 65 |...> Pr|ogram_He|
|00000370| 61 70 5f 53 69 7a 65 20 | 20 20 20 20 3d 20 50 72 |ap_Size | = Pr|
|00000380| 6f 67 72 61 6d 5f 53 74 | 61 63 6b 5f 53 69 7a 65 |ogram_St|ack_Size|
|00000390| 20 2b 20 28 33 32 20 2a | 20 31 30 32 34 29 0d 01 | + (32 *| 1024)..|
|000003a0| 18 07 20 20 3a 0d 01 22 | 19 20 20 43 41 73 6d 54 |.. :.."|. CAsmT|
|000003b0| 61 62 6c 65 73 49 6e 42 | 53 53 20 3d 20 b9 0d 01 |ablesInB|SS = ...|
|000003c0| 2c 0f 20 20 e7 20 64 65 | 62 75 67 20 8c 0d 01 36 |,. . de|bug ...6|
|000003d0| 4d 20 20 20 20 f2 43 6c | 61 69 6d 43 41 73 6d 4c |M .Cl|aimCAsmL|
|000003e0| 69 62 72 61 72 79 28 22 | 63 74 79 70 65 2c 64 65 |ibrary("|ctype,de|
|000003f0| 62 75 67 2c 64 6f 73 2c | 68 6f 75 72 67 6c 61 73 |bug,dos,|hourglas|
|00000400| 73 2c 6f 73 2c 72 65 67 | 65 78 2c 73 74 72 69 6e |s,os,reg|ex,strin|
|00000410| 67 2c 74 65 78 74 69 6f | 22 29 0d 01 40 07 20 20 |g,textio|")..@. |
|00000420| cc 0d 01 4a 47 20 20 20 | 20 f2 43 6c 61 69 6d 43 |...JG | .ClaimC|
|00000430| 41 73 6d 4c 69 62 72 61 | 72 79 28 22 63 74 79 70 |AsmLibra|ry("ctyp|
|00000440| 65 2c 64 6f 73 2c 68 6f | 75 72 67 6c 61 73 73 2c |e,dos,ho|urglass,|
|00000450| 6f 73 2c 72 65 67 65 78 | 2c 73 74 72 69 6e 67 2c |os,regex|,string,|
|00000460| 74 65 78 74 69 6f 22 29 | 0d 01 54 07 20 20 cd 0d |textio")|..T. ..|
|00000470| 01 5e 12 20 20 6f 66 66 | 73 65 74 25 20 20 3d 20 |.^. off|set% = |
|00000480| b9 0d 01 68 12 20 20 76 | 65 72 62 6f 73 65 25 20 |...h. v|erbose% |
|00000490| 3d 20 b9 0d 01 72 22 20 | 20 6f 75 74 70 75 74 24 |= ...r" | output$|
|000004a0| 20 20 3d 20 22 3c 64 3e | 2e 4c 69 62 72 61 72 79 | = "<d>|.Library|
|000004b0| 2e 66 72 65 22 0d 01 7c | 46 20 20 f2 5f 61 73 73 |.fre"..||F ._ass|
|000004c0| 65 6d 62 6c 65 5f 43 41 | 73 6d 5f 41 70 70 6c 69 |emble_CA|sm_Appli|
|000004d0| 63 61 74 69 6f 6e 28 33 | 32 2a 31 30 32 34 2c 20 |cation(3|2*1024, |
|000004e0| 6f 66 66 73 65 74 25 2c | 20 76 65 72 62 6f 73 65 |offset%,| verbose|
|000004f0| 25 2c 20 6f 75 74 70 75 | 74 24 29 0d 01 86 61 f4 |%, outpu|t$)...a.|
|00000500| 20 20 50 52 4f 43 5f 74 | 65 73 74 5f 43 41 73 6d | PROC_t|est_CAsm|
|00000510| 5f 41 70 70 6c 69 63 61 | 74 69 6f 6e 28 6f 75 74 |_Applica|tion(out|
|00000520| 70 75 74 24 2c 20 22 22 | 22 20 42 22 22 20 57 61 |put$, ""|" B"" Wa|
|00000530| 72 6e 69 6e 67 20 2d 42 | 61 73 69 63 20 2d 56 65 |rning -B|asic -Ve|
|00000540| 72 62 6f 73 69 74 79 20 | 33 20 2d 53 63 61 6e 20 |rbosity |3 -Scan |
|00000550| 2d 56 69 61 20 24 2e 76 | 69 61 22 29 0d 01 90 55 |-Via $.v|ia")...U|
|00000560| f4 20 20 50 52 4f 43 5f | 74 65 73 74 5f 43 41 73 |. PROC_|test_CAs|
|00000570| 6d 5f 41 70 70 6c 69 63 | 61 74 69 6f 6e 28 6f 75 |m_Applic|ation(ou|
|00000580| 74 70 75 74 24 2c 20 22 | 22 22 41 44 52 22 22 20 |tput$, "|""ADR"" |
|00000590| 2a 20 2d 56 65 72 62 6f | 73 69 74 79 20 33 20 2d |* -Verbo|sity 3 -|
|000005a0| 53 63 61 6e 20 2d 56 69 | 61 20 24 2e 76 69 61 22 |Scan -Vi|a $.via"|
|000005b0| 29 0d 01 9a 46 20 20 f2 | 5f 74 65 73 74 5f 43 41 |)...F .|_test_CA|
|000005c0| 73 6d 5f 41 70 70 6c 69 | 63 61 74 69 6f 6e 28 6f |sm_Appli|cation(o|
|000005d0| 75 74 70 75 74 24 2c 20 | 22 61 64 72 20 24 2e 62 |utput$, |"adr $.b|
|000005e0| 61 73 69 63 2e 2a 20 2d | 52 65 63 75 72 73 65 20 |asic.* -|Recurse |
|000005f0| 2d 53 63 61 6e 22 29 0d | 01 a4 05 e0 0d 01 ae 04 |-Scan").|........|
|00000600| 0d 01 b8 4a f4 20 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |...J. **|********|
|00000610| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000620| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000630| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000640| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0d 01 c2 05 3a 0d |********|**....:.|
|00000650| 01 cc 14 dd 20 f2 5f 61 | 73 73 65 6d 62 6c 65 5f |.... ._a|ssemble_|
|00000660| 42 53 53 0d 01 d6 26 20 | 20 42 53 53 5f 46 69 6c |BSS...& | BSS_Fil|
|00000670| 65 4c 65 6e 67 74 68 20 | 20 20 20 20 20 20 3d 20 |eLength | = |
|00000680| a4 5f 42 53 53 61 28 34 | 29 0d 01 e0 2b 20 20 42 |._BSSa(4|)...+ B|
|00000690| 53 53 5f 6e 61 6d 65 5f | 62 75 66 66 65 72 20 20 |SS_name_|buffer |
|000006a0| 20 20 20 20 3d 20 a4 5f | 42 53 53 6e 28 46 50 53 | = ._|BSSn(FPS|
|000006b0| 49 5a 45 29 0d 01 ea 3a | 20 20 42 53 53 5f 76 69 |IZE)...:| BSS_vi|
|000006c0| 61 5f 62 75 66 66 65 72 | 20 20 20 20 20 20 20 3d |a_buffer| =|
|000006d0| 20 a4 5f 42 53 53 6e 28 | 73 69 7a 65 6f 66 5f 42 | ._BSSn(|sizeof_B|
|000006e0| 53 53 5f 76 69 61 5f 62 | 75 66 66 65 72 29 0d 01 |SS_via_b|uffer)..|
|000006f0| f4 3a 20 20 42 53 53 5f | 67 73 74 5f 62 75 66 66 |.: BSS_|gst_buff|
|00000700| 65 72 20 20 20 20 20 20 | 20 3d 20 a4 5f 42 53 53 |er | = ._BSS|
|00000710| 6e 28 73 69 7a 65 6f 66 | 5f 42 53 53 5f 67 73 74 |n(sizeof|_BSS_gst|
|00000720| 5f 62 75 66 66 65 72 29 | 0d 01 fe 28 20 20 42 53 |_buffer)|...( BS|
|00000730| 53 5f 74 72 61 6e 73 6c | 61 74 65 5f 74 61 62 6c |S_transl|ate_tabl|
|00000740| 65 20 20 3d 20 a4 5f 42 | 53 53 6e 28 32 35 36 29 |e = ._B|SSn(256)|
|00000750| 0d 02 08 28 20 20 42 53 | 53 5f 77 6f 72 64 5f 74 |...( BS|S_word_t|
|00000760| 61 62 6c 65 20 20 20 20 | 20 20 20 3d 20 a4 5f 42 |able | = ._B|
|00000770| 53 53 6e 28 32 35 36 29 | 0d 02 12 32 20 20 42 53 |SSn(256)|...2 BS|
|00000780| 53 5f 72 65 67 6d 65 6d | 20 20 20 20 20 20 20 20 |S_regmem| |
|00000790| 20 20 20 3d 20 a4 5f 42 | 53 53 61 28 73 69 7a 65 | = ._B|SSa(size|
|000007a0| 6f 66 5f 52 45 47 4d 45 | 4d 29 0d 02 1c 05 e1 0d |of_REGME|M)......|
|000007b0| 02 26 07 20 20 3a 0d 02 | 30 4a f4 20 2a 2a 2a 2a |.&. :..|0J. ****|
|000007c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000007d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000007e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000007f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000800| 0d 02 3a 05 3a 0d 02 44 | 08 dd 20 f2 50 0d 02 4e |..:.:..D|.. .P..N|
|00000810| 09 20 20 d9 23 30 0d 02 | 58 05 e1 0d 02 62 05 3a |. .#0..|X....b.:|
|00000820| 0d 02 6c 18 dd 20 f2 5f | 61 73 73 65 6d 62 6c 65 |..l.. ._|assemble|
|00000830| 5f 70 72 6f 67 72 61 6d | 0d 02 76 07 ea 20 85 0d |_program|..v.. ..|
|00000840| 02 80 27 20 20 ee 20 85 | 20 ea 20 f7 20 85 3a f2 |..' . .| . . .:.|
|00000850| 5f 65 28 22 61 73 73 65 | 6d 62 6c 65 5f 70 72 6f |_e("asse|mble_pro|
|00000860| 67 72 61 6d 22 29 0d 02 | 8a 07 20 20 3a 0d 02 94 |gram")..|.. :...|
|00000870| 1e 20 20 46 6c 61 67 5f | 49 6e 76 65 72 74 20 20 |. Flag_|Invert |
|00000880| 20 20 20 3d 20 31 20 3c | 3c 20 30 0d 02 9e 1e 20 | = 1 <|< 0.... |
|00000890| 20 46 6c 61 67 5f 52 65 | 63 75 72 73 65 20 20 20 | Flag_Re|curse |
|000008a0| 20 3d 20 31 20 3c 3c 20 | 31 0d 02 a8 1e 20 20 46 | = 1 << |1.... F|
|000008b0| 6c 61 67 5f 42 61 73 69 | 63 20 20 20 20 20 20 3d |lag_Basi|c =|
|000008c0| 20 31 20 3c 3c 20 32 0d | 02 b2 1e 20 20 46 6c 61 | 1 << 2.|... Fla|
|000008d0| 67 5f 41 6c 6c 20 20 20 | 20 20 20 20 20 3d 20 31 |g_All | = 1|
|000008e0| 20 3c 3c 20 33 0d 02 bc | 42 20 20 46 6c 61 67 5f | << 3...|B Flag_|
|000008f0| 4d 61 74 63 68 20 20 20 | 20 20 20 3d 20 31 20 3c |Match | = 1 <|
|00000900| 3c 20 34 20 20 20 20 20 | 20 20 3a f4 20 41 6e 79 |< 4 | :. Any|
|00000910| 20 6d 61 74 63 68 65 73 | 20 69 6e 20 74 68 69 73 | matches| in this|
|00000920| 20 66 69 6c 65 20 3f 0d | 02 c6 3f 20 20 46 6c 61 | file ?.|..? Fla|
|00000930| 67 5f 53 63 61 6e 20 20 | 20 20 20 20 20 3d 20 31 |g_Scan | = 1|
|00000940| 20 3c 3c 20 35 20 20 20 | 20 20 20 20 3a f4 20 53 | << 5 | :. S|
|00000950| 68 6f 77 20 66 69 6c 65 | 28 73 29 20 73 63 61 6e |how file|(s) scan|
|00000960| 6e 69 6e 67 20 3f 0d 02 | d0 41 20 20 46 6c 61 67 |ning ?..|.A Flag|
|00000970| 5f 48 6f 75 72 47 6c 61 | 73 73 20 20 3d 20 31 20 |_HourGla|ss = 1 |
|00000980| 3c 3c 20 36 20 20 20 20 | 20 20 20 3a f4 20 62 6f |<< 6 | :. bo|
|00000990| 6f 6c 65 61 6e 20 20 20 | 20 20 20 20 20 20 20 20 |olean | |
|000009a0| 20 20 20 20 5c 5c 5c 0d | 02 da 41 20 20 46 6c 61 | \\\.|..A Fla|
|000009b0| 67 5f 48 6f 75 72 47 6c | 61 73 73 50 20 3d 20 31 |g_HourGl|assP = 1|
|000009c0| 20 3c 3c 20 37 20 20 20 | 20 20 20 20 3a f4 20 62 | << 7 | :. b|
|000009d0| 6f 6f 6c 65 61 6e 20 2d | 20 70 65 72 63 65 6e 74 |oolean -| percent|
|000009e0| 61 67 65 20 20 2f 2f 2f | 0d 02 e4 07 20 20 3a 0d |age ///|.... :.|
|000009f0| 02 ee 20 20 20 f2 41 50 | 3a f2 5f 61 73 73 65 6d |.. .AP|:._assem|
|00000a00| 62 6c 65 5f 4d 61 69 6e | 50 72 6f 67 72 61 6d 0d |ble_Main|Program.|
|00000a10| 02 f8 22 20 20 f2 41 50 | 3a f2 5f 61 73 73 65 6d |.." .AP|:._assem|
|00000a20| 62 6c 65 5f 66 72 65 5f | 63 6f 6d 6d 61 6c 69 73 |ble_fre_|commalis|
|00000a30| 74 0d 03 02 21 20 20 f2 | 41 50 3a f2 5f 61 73 73 |t...! .|AP:._ass|
|00000a40| 65 6d 62 6c 65 5f 66 72 | 65 5f 77 69 6c 64 63 61 |emble_fr|e_wildca|
|00000a50| 72 64 0d 03 0c 24 20 20 | f2 41 50 3a f2 5f 61 73 |rd...$ |.AP:._as|
|00000a60| 73 65 6d 62 6c 65 5f 66 | 72 65 5f 6d 61 6b 65 5f |semble_f|re_make_|
|00000a70| 74 61 62 6c 65 73 0d 03 | 16 07 20 20 3a 0d 03 20 |tables..|.. :.. |
|00000a80| 05 e1 0d 03 2a 05 3a 0d | 03 34 1c dd 20 f2 5f 61 |....*.:.|.4.. ._a|
|00000a90| 73 73 65 6d 62 6c 65 5f | 4d 61 69 6e 50 72 6f 67 |ssemble_|MainProg|
|00000aa0| 72 61 6d 0d 03 3e 43 ea | 20 4c 5f 62 75 66 66 65 |ram..>C.| L_buffe|
|00000ab0| 72 2c 20 4c 5f 6c 65 6e | 2c 20 73 69 7a 65 6f 66 |r, L_len|, sizeof|
|00000ac0| 5f 62 75 66 66 65 72 2c | 20 41 72 67 52 65 2c 20 |_buffer,| ArgRe, |
|00000ad0| 41 72 67 46 69 6c 65 73 | 2c 20 41 72 67 56 65 72 |ArgFiles|, ArgVer|
|00000ae0| 62 6f 73 69 74 79 0d 03 | 48 45 ea 20 41 72 67 4e |bosity..|HE. ArgN|
|00000af0| 6f 74 2c 20 41 72 67 52 | 65 63 75 72 73 65 2c 20 |ot, ArgR|ecurse, |
|00000b00| 41 72 67 42 61 73 69 63 | 2c 20 41 72 67 41 6c 6c |ArgBasic|, ArgAll|
|00000b10| 2c 20 41 72 67 56 69 61 | 2c 20 41 72 67 53 63 61 |, ArgVia|, ArgSca|
|00000b20| 6e 2c 20 41 72 67 49 43 | 61 73 65 0d 03 52 1d ea |n, ArgIC|ase..R..|
|00000b30| 20 41 72 67 49 53 70 61 | 63 65 2c 20 41 72 67 48 | ArgISpa|ce, ArgH|
|00000b40| 6f 75 72 47 6c 61 73 73 | 0d 03 5c 3a ea 20 61 72 |ourGlass|..\:. ar|
|00000b50| 67 5f 6b 65 79 77 6f 72 | 64 73 2c 20 6c 6f 6f 70 |g_keywor|ds, loop|
|00000b60| 2c 20 6e 6f 6e 65 5f 66 | 2c 20 6f 6e 65 5f 66 2c |, none_f|, one_f,|
|00000b70| 20 6d 61 6e 79 5f 66 2c | 20 68 65 6c 70 5f 74 65 | many_f,| help_te|
|00000b80| 78 74 0d 03 66 07 ea 20 | 85 0d 03 70 22 20 20 ee |xt..f.. |...p" .|
|00000b90| 20 85 20 ea 20 f7 20 85 | 3a f2 5f 65 28 22 4d 61 | . . . .|:._e("Ma|
|00000ba0| 69 6e 50 72 6f 67 72 61 | 6d 22 29 0d 03 7a 19 20 |inProgra|m")..z. |
|00000bb0| 20 73 69 7a 65 6f 66 5f | 62 75 66 66 65 72 20 3d | sizeof_|buffer =|
|00000bc0| 20 35 31 32 0d 03 84 3e | 20 20 4c 5f 62 75 66 66 | 512...>| L_buff|
|00000bd0| 65 72 20 20 20 20 20 20 | 3d 20 30 20 20 20 20 20 |er |= 0 |
|00000be0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000bf0| 3a f4 20 49 6d 70 6c 69 | 63 69 74 6c 79 20 7a 65 |:. Impli|citly ze|
|00000c00| 72 6f 0d 03 8e 23 20 20 | 4c 5f 6c 65 6e 20 20 20 |ro...# |L_len |
|00000c10| 20 20 20 20 20 20 3d 20 | 73 69 7a 65 6f 66 5f 62 | = |sizeof_b|
|00000c20| 75 66 66 65 72 0d 03 98 | 2a 20 20 41 72 67 52 65 |uffer...|* ArgRe|
|00000c30| 20 20 20 20 20 20 20 20 | 20 3d 20 4c 5f 62 75 66 | | = L_buf|
|00000c40| 66 65 72 20 2b 20 28 30 | 20 20 3c 3c 20 32 29 0d |fer + (0| << 2).|
|00000c50| 03 a2 2a 20 20 41 72 67 | 46 69 6c 65 73 20 20 20 |..* Arg|Files |
|00000c60| 20 20 20 3d 20 4c 5f 62 | 75 66 66 65 72 20 2b 20 | = L_b|uffer + |
|00000c70| 28 31 20 20 3c 3c 20 32 | 29 0d 03 ac 2a 20 20 41 |(1 << 2|)...* A|
|00000c80| 72 67 56 65 72 62 6f 73 | 69 74 79 20 20 3d 20 4c |rgVerbos|ity = L|
|00000c90| 5f 62 75 66 66 65 72 20 | 2b 20 28 32 20 20 3c 3c |_buffer |+ (2 <<|
|00000ca0| 20 32 29 0d 03 b6 2a 20 | 20 41 72 67 4e 6f 74 20 | 2)...* | ArgNot |
|00000cb0| 20 20 20 20 20 20 20 3d | 20 4c 5f 62 75 66 66 65 | =| L_buffe|
|00000cc0| 72 20 2b 20 28 33 20 20 | 3c 3c 20 32 29 0d 03 c0 |r + (3 |<< 2)...|
|00000cd0| 2a 20 20 41 72 67 52 65 | 63 75 72 73 65 20 20 20 |* ArgRe|curse |
|00000ce0| 20 3d 20 4c 5f 62 75 66 | 66 65 72 20 2b 20 28 34 | = L_buf|fer + (4|
|00000cf0| 20 20 3c 3c 20 32 29 0d | 03 ca 2a 20 20 41 72 67 | << 2).|..* Arg|
|00000d00| 42 61 73 69 63 20 20 20 | 20 20 20 3d 20 4c 5f 62 |Basic | = L_b|
|00000d10| 75 66 66 65 72 20 2b 20 | 28 35 20 20 3c 3c 20 32 |uffer + |(5 << 2|
|00000d20| 29 0d 03 d4 2a 20 20 41 | 72 67 41 6c 6c 20 20 20 |)...* A|rgAll |
|00000d30| 20 20 20 20 20 3d 20 4c | 5f 62 75 66 66 65 72 20 | = L|_buffer |
|00000d40| 2b 20 28 36 20 20 3c 3c | 20 32 29 0d 03 de 2a 20 |+ (6 <<| 2)...* |
|00000d50| 20 41 72 67 56 69 61 20 | 20 20 20 20 20 20 20 3d | ArgVia | =|
|00000d60| 20 4c 5f 62 75 66 66 65 | 72 20 2b 20 28 37 20 20 | L_buffe|r + (7 |
|00000d70| 3c 3c 20 32 29 0d 03 e8 | 2a 20 20 41 72 67 48 65 |<< 2)...|* ArgHe|
|00000d80| 6c 70 20 20 20 20 20 20 | 20 3d 20 4c 5f 62 75 66 |lp | = L_buf|
|00000d90| 66 65 72 20 2b 20 28 38 | 20 20 3c 3c 20 32 29 0d |fer + (8| << 2).|
|00000da0| 03 f2 2a 20 20 41 72 67 | 53 63 61 6e 20 20 20 20 |..* Arg|Scan |
|00000db0| 20 20 20 3d 20 4c 5f 62 | 75 66 66 65 72 20 2b 20 | = L_b|uffer + |
|00000dc0| 28 39 20 20 3c 3c 20 32 | 29 0d 03 fc 2a 20 20 41 |(9 << 2|)...* A|
|00000dd0| 72 67 49 43 61 73 65 20 | 20 20 20 20 20 3d 20 4c |rgICase | = L|
|00000de0| 5f 62 75 66 66 65 72 20 | 2b 20 28 31 30 20 3c 3c |_buffer |+ (10 <<|
|00000df0| 20 32 29 0d 04 06 2a 20 | 20 41 72 67 49 53 70 61 | 2)...* | ArgISpa|
|00000e00| 63 65 20 20 20 20 20 3d | 20 4c 5f 62 75 66 66 65 |ce =| L_buffe|
|00000e10| 72 20 2b 20 28 31 31 20 | 3c 3c 20 32 29 0d 04 10 |r + (11 |<< 2)...|
|00000e20| 2a 20 20 41 72 67 48 6f | 75 72 47 6c 61 73 73 20 |* ArgHo|urGlass |
|00000e30| 20 3d 20 4c 5f 62 75 66 | 66 65 72 20 2b 20 28 31 | = L_buf|fer + (1|
|00000e40| 32 20 3c 3c 20 32 29 0d | 04 1a 07 20 20 3a 0d 04 |2 << 2).|... :..|
|00000e50| 24 0e 5b 4f 50 54 20 70 | 61 73 73 25 0d 04 2e 11 |$.[OPT p|ass%....|
|00000e60| 20 20 20 20 20 20 20 20 | 41 4c 49 47 4e 0d 04 38 | |ALIGN..8|
|00000e70| 11 2e 61 72 67 5f 6b 65 | 79 77 6f 72 64 73 0d 04 |..arg_ke|ywords..|
|00000e80| 42 18 20 20 20 20 20 20 | 20 20 45 51 55 53 20 22 |B. | EQUS "|
|00000e90| 52 65 2f 41 2c 22 0d 04 | 4c 1b 20 20 20 20 20 20 |Re/A,"..|L. |
|00000ea0| 20 20 45 51 55 53 20 22 | 46 69 6c 65 73 2f 47 2c | EQUS "|Files/G,|
|00000eb0| 22 0d 04 56 1f 20 20 20 | 20 20 20 20 20 45 51 55 |"..V. | EQU|
|00000ec0| 53 20 22 56 65 72 62 6f | 73 69 74 79 2f 45 2c 22 |S "Verbo|sity/E,"|
|00000ed0| 0d 04 60 19 20 20 20 20 | 20 20 20 20 45 51 55 53 |..`. | EQUS|
|00000ee0| 20 22 4e 6f 74 2f 53 2c | 22 0d 04 6a 1d 20 20 20 | "Not/S,|"..j. |
|00000ef0| 20 20 20 20 20 45 51 55 | 53 20 22 52 65 63 75 72 | EQU|S "Recur|
|00000f00| 73 65 2f 53 2c 22 0d 04 | 74 1b 20 20 20 20 20 20 |se/S,"..|t. |
|00000f10| 20 20 45 51 55 53 20 22 | 42 61 73 69 63 2f 53 2c | EQUS "|Basic/S,|
|00000f20| 22 0d 04 7e 19 20 20 20 | 20 20 20 20 20 45 51 55 |"..~. | EQU|
|00000f30| 53 20 22 41 6c 6c 2f 53 | 2c 22 0d 04 88 1b 20 20 |S "All/S|,".... |
|00000f40| 20 20 20 20 20 20 45 51 | 55 53 20 22 56 69 61 2f | EQ|US "Via/|
|00000f50| 4b 2f 47 2c 22 0d 04 92 | 1a 20 20 20 20 20 20 20 |K/G,"...|. |
|00000f60| 20 45 51 55 53 20 22 48 | 65 6c 70 2f 53 2c 22 0d | EQUS "H|elp/S,".|
|00000f70| 04 9c 1a 20 20 20 20 20 | 20 20 20 45 51 55 53 20 |... | EQUS |
|00000f80| 22 53 63 61 6e 2f 53 2c | 22 0d 04 a6 1b 20 20 20 |"Scan/S,|".... |
|00000f90| 20 20 20 20 20 45 51 55 | 53 20 22 49 43 61 73 65 | EQU|S "ICase|
|00000fa0| 2f 53 2c 22 0d 04 b0 1c | 20 20 20 20 20 20 20 20 |/S,"....| |
|00000fb0| 45 51 55 53 20 22 49 53 | 70 61 63 65 2f 53 2c 22 |EQUS "IS|pace/S,"|
|00000fc0| 0d 04 ba 1e 20 20 20 20 | 20 20 20 20 45 51 55 53 |.... | EQUS|
|00000fd0| 20 22 48 6f 75 72 47 6c | 61 73 73 2f 45 22 0d 04 | "HourGl|ass/E"..|
|00000fe0| c4 12 20 20 20 20 20 20 | 20 20 45 51 55 42 20 30 |.. | EQUB 0|
|00000ff0| 0d 04 ce 0e 2e 68 65 6c | 70 5f 74 65 78 74 0d 04 |.....hel|p_text..|
|00001000| d8 5f 45 51 55 53 20 a4 | 63 65 73 63 61 70 65 28 |._EQUS .|cescape(|
|00001010| 22 46 52 65 20 66 69 6e | 64 73 20 72 65 67 75 6c |"FRe fin|ds regul|
|00001020| 61 72 20 65 78 70 72 65 | 73 73 69 6f 6e 73 20 69 |ar expre|ssions i|
|00001030| 6e 20 66 69 6c 65 73 2c | 20 72 65 74 75 72 6e 73 |n files,| returns|
|00001040| 20 6e 75 6d 62 65 72 20 | 6f 66 20 6d 61 74 63 68 | number |of match|
|00001050| 69 6e 67 20 66 69 6c 65 | 73 5c 6e 22 29 0d 04 e2 |ing file|s\n")...|
|00001060| 4d 45 51 55 53 20 a4 63 | 65 73 63 61 70 65 28 22 |MEQUS .c|escape("|
|00001070| 53 79 6e 74 61 78 3a 20 | 46 52 65 20 5b 2d 52 65 |Syntax: |FRe [-Re|
|00001080| 5d 20 3c 72 65 67 65 78 | 3e 20 5b 5b 2d 46 69 6c |] <regex|> [[-Fil|
|00001090| 65 73 5d 20 3c 66 69 6c | 65 73 3e 5d 20 5b 4f 70 |es] <fil|es>] [Op|
|000010a0| 74 69 6f 6e 73 5d 5c 6e | 22 29 0d 04 ec 1f 45 51 |tions]\n|")....EQ|
|000010b0| 55 53 20 a4 63 65 73 63 | 61 70 65 28 22 4f 70 74 |US .cesc|ape("Opt|
|000010c0| 69 6f 6e 73 3a 5c 6e 22 | 29 0d 04 f6 4e 45 51 55 |ions:\n"|)...NEQU|
|000010d0| 53 20 a4 63 65 73 63 61 | 70 65 28 22 56 65 72 62 |S .cesca|pe("Verb|
|000010e0| 6f 73 69 74 79 20 3c 6e | 3e 20 30 2d 33 2c 20 30 |osity <n|> 0-3, 0|
|000010f0| 3d 3e 20 6e 6f 20 6f 75 | 74 70 75 74 2c 20 33 3d |=> no ou|tput, 3=|
|00001100| 3e 6c 69 73 74 20 61 6c | 6c 20 6c 69 6e 65 73 20 |>list al|l lines |
|00001110| 28 32 29 5c 6e 22 29 0d | 05 00 42 45 51 55 53 20 |(2)\n").|..BEQUS |
|00001120| a4 63 65 73 63 61 70 65 | 28 22 41 6c 6c 20 20 20 |.cescape|("All |
|00001130| 20 20 20 20 20 20 20 20 | 70 61 72 73 65 20 61 6c | |parse al|
|00001140| 6c 20 66 69 6c 65 73 20 | 61 73 20 54 65 78 74 20 |l files |as Text |
|00001150| 28 4f 46 46 29 5c 6e 22 | 29 0d 05 0a 4c 45 51 55 |(OFF)\n"|)...LEQU|
|00001160| 53 20 a4 63 65 73 63 61 | 70 65 28 22 42 61 73 69 |S .cesca|pe("Basi|
|00001170| 63 20 20 20 20 20 20 20 | 20 20 70 72 65 2d 70 72 |c | pre-pr|
|00001180| 6f 63 65 73 73 20 42 61 | 73 69 63 20 74 6f 6b 65 |ocess Ba|sic toke|
|00001190| 6e 69 73 65 64 20 66 69 | 6c 65 73 20 28 4f 46 46 |nised fi|les (OFF|
|000011a0| 29 5c 6e 22 29 0d 05 14 | 4c 45 51 55 53 20 a4 63 |)\n")...|LEQUS .c|
|000011b0| 65 73 63 61 70 65 28 22 | 48 6f 75 72 67 6c 61 73 |escape("|Hourglas|
|000011c0| 73 20 3c 6e 3e 20 30 20 | 6f 66 66 2c 20 31 20 6f |s <n> 0 |off, 1 o|
|000011d0| 6e 2c 20 32 20 70 65 72 | 63 65 6e 74 61 67 65 20 |n, 2 per|centage |
|000011e0| 65 61 63 68 20 66 69 6c | 65 20 28 31 29 5c 6e 22 |each fil|e (1)\n"|
|000011f0| 29 0d 05 1e 52 45 51 55 | 53 20 a4 63 65 73 63 61 |)...REQU|S .cesca|
|00001200| 70 65 28 22 49 43 61 73 | 65 20 20 20 20 20 20 20 |pe("ICas|e |
|00001210| 20 20 69 67 6e 6f 72 65 | 20 63 61 73 65 20 6f 66 | ignore| case of|
|00001220| 20 61 6c 6c 20 6c 65 74 | 74 65 72 73 20 64 75 72 | all let|ters dur|
|00001230| 69 6e 67 20 6d 61 74 63 | 68 20 28 4f 46 46 29 5c |ing matc|h (OFF)\|
|00001240| 6e 22 29 0d 05 28 4c 45 | 51 55 53 20 a4 63 65 73 |n")..(LE|QUS .ces|
|00001250| 63 61 70 65 28 22 49 53 | 70 61 63 65 20 20 20 20 |cape("IS|pace |
|00001260| 20 20 20 20 74 72 61 6e | 73 6c 61 74 65 20 61 6c | tran|slate al|
|00001270| 6c 20 77 68 69 74 65 73 | 70 61 63 65 20 74 6f 20 |l whites|pace to |
|00001280| 22 22 20 22 22 20 28 4f | 46 46 29 5c 6e 22 29 0d |"" "" (O|FF)\n").|
|00001290| 05 32 55 45 51 55 53 20 | a4 63 65 73 63 61 70 65 |.2UEQUS |.cescape|
|000012a0| 28 22 4e 6f 74 20 20 20 | 20 20 20 20 20 20 20 20 |("Not | |
|000012b0| 73 75 63 63 65 73 73 20 | 69 73 20 61 20 6c 69 6e |success |is a lin|
|000012c0| 65 20 4e 4f 54 20 6d 61 | 74 63 68 69 6e 67 20 74 |e NOT ma|tching t|
|000012d0| 68 65 20 3c 72 65 67 65 | 78 3e 20 28 4f 46 46 29 |he <rege|x> (OFF)|
|000012e0| 5c 6e 22 29 0d 05 3c 42 | 45 51 55 53 20 a4 63 65 |\n")..<B|EQUS .ce|
|000012f0| 73 63 61 70 65 28 22 52 | 65 63 75 72 73 65 20 20 |scape("R|ecurse |
|00001300| 20 20 20 20 20 67 6f 20 | 69 6e 74 6f 20 73 75 62 | go |into sub|
|00001310| 2d 64 69 72 65 63 74 6f | 72 69 65 73 20 28 4f 46 |-directo|ries (OF|
|00001320| 46 29 5c 6e 22 29 0d 05 | 46 45 45 51 55 53 20 a4 |F)\n")..|FEEQUS .|
|00001330| 63 65 73 63 61 70 65 28 | 22 53 63 61 6e 20 20 20 |cescape(|"Scan |
|00001340| 20 20 20 20 20 20 20 73 | 68 6f 77 20 66 69 6c 65 | s|how file|
|00001350| 73 20 61 73 20 62 65 69 | 6e 67 20 70 61 72 73 65 |s as bei|ng parse|
|00001360| 64 20 28 4f 46 46 29 5c | 6e 22 29 0d 05 50 5c 45 |d (OFF)\|n")..P\E|
|00001370| 51 55 53 20 a4 63 65 73 | 63 61 70 65 28 22 56 69 |QUS .ces|cape("Vi|
|00001380| 61 20 3c 66 69 6c 65 73 | 3e 20 20 20 74 68 65 20 |a <files|> the |
|00001390| 6e 61 6d 65 20 6f 66 20 | 66 69 6c 65 28 73 29 20 |name of |file(s) |
|000013a0| 63 6f 6e 74 61 69 6e 69 | 6e 67 20 6d 6f 72 65 20 |containi|ng more |
|000013b0| 66 69 6c 65 20 6e 61 6d | 65 73 20 74 6f 20 63 68 |file nam|es to ch|
|000013c0| 65 63 6b 5c 6e 22 29 0d | 05 5a 17 45 51 55 53 20 |eck\n").|.Z.EQUS |
|000013d0| a4 63 65 73 63 61 70 65 | 28 22 5c 6e 22 29 0d 05 |.cescape|("\n")..|
|000013e0| 64 51 45 51 55 53 20 a4 | 63 65 73 63 61 70 65 28 |dQEQUS .|cescape(|
|000013f0| 22 3c 66 69 6c 65 73 3e | 20 69 73 20 61 20 63 6f |"<files>| is a co|
|00001400| 6d 6d 61 20 73 65 70 61 | 72 61 74 65 64 20 6c 69 |mma sepa|rated li|
|00001410| 73 74 20 6f 66 20 77 69 | 6c 64 63 61 72 64 65 64 |st of wi|ldcarded|
|00001420| 20 66 69 6c 65 20 6e 61 | 6d 65 73 5c 6e 22 29 0d | file na|mes\n").|
|00001430| 05 6e 4b 45 51 55 53 20 | a4 63 65 73 63 61 70 65 |.nKEQUS |.cescape|
|00001440| 28 22 4e 6f 74 65 20 74 | 68 61 74 20 62 79 20 64 |("Note t|hat by d|
|00001450| 65 66 61 75 6c 74 20 6f | 6e 6c 79 20 70 61 72 73 |efault o|nly pars|
|00001460| 65 20 54 65 78 74 20 61 | 6e 64 20 42 61 73 69 63 |e Text a|nd Basic|
|00001470| 20 66 69 6c 65 73 5c 6e | 22 29 0d 05 78 0a 45 51 | files\n|")..x.EQ|
|00001480| 55 42 20 30 0d 05 82 3b | 2e 6e 6f 6e 65 5f 66 20 |UB 0...;|.none_f |
|00001490| 45 51 55 53 20 a4 63 65 | 73 63 61 70 65 28 22 4e |EQUS .ce|scape("N|
|000014a0| 6f 20 6d 61 74 63 68 65 | 73 20 77 65 72 65 20 66 |o matche|s were f|
|000014b0| 6f 75 6e 64 5c 6e 22 29 | 3a 45 51 55 42 20 30 0d |ound\n")|:EQUB 0.|
|000014c0| 05 8c 3f 2e 6f 6e 65 5f | 66 20 20 45 51 55 53 20 |..?.one_|f EQUS |
|000014d0| a4 63 65 73 63 61 70 65 | 28 22 54 68 65 72 65 20 |.cescape|("There |
|000014e0| 77 61 73 20 31 20 6d 61 | 74 63 68 69 6e 67 20 66 |was 1 ma|tching f|
|000014f0| 69 6c 65 5c 6e 22 29 3a | 45 51 55 42 20 30 0d 05 |ile\n"):|EQUB 0..|
|00001500| 96 42 2e 6d 61 6e 79 5f | 66 20 45 51 55 53 20 a4 |.B.many_|f EQUS .|
|00001510| 63 65 73 63 61 70 65 28 | 22 54 68 65 72 65 20 77 |cescape(|"There w|
|00001520| 65 72 65 20 25 64 20 6d | 61 74 63 68 69 6e 67 20 |ere %d m|atching |
|00001530| 66 69 6c 65 73 5c 6e 22 | 29 3a 45 51 55 42 20 30 |files\n"|):EQUB 0|
|00001540| 0d 05 a0 04 0d 05 aa 05 | 3b 0d 05 b4 33 3b 20 4f |........|;...3; O|
|00001550| 75 74 20 20 20 52 30 20 | 3d 20 6e 75 6d 62 65 72 |ut R0 |= number|
|00001560| 20 6f 66 20 66 69 6c 65 | 73 20 74 68 61 74 20 6d | of file|s that m|
|00001570| 61 74 63 68 20 74 68 61 | 74 20 52 65 0d 05 be 04 |atch tha|t Re....|
|00001580| 0d 05 c8 11 20 20 20 20 | 20 20 20 20 41 4c 49 47 |.... | ALIG|
|00001590| 4e 0d 05 d2 10 2e 4d 61 | 69 6e 50 72 6f 67 72 61 |N.....Ma|inProgra|
|000015a0| 6d 0d 05 dc 26 20 20 20 | 20 20 20 20 20 53 54 4d |m...& | STM|
|000015b0| 46 44 20 20 20 28 73 70 | 29 21 2c 20 7b 76 31 2d |FD (sp|)!, {v1-|
|000015c0| 76 36 2c 20 6c 72 7d 0d | 05 e6 28 20 20 20 20 20 |v6, lr}.|..( |
|000015d0| 20 20 20 53 55 42 20 20 | 20 20 20 6c 6f 63 61 6c | SUB | local|
|000015e0| 2c 20 6c 6f 63 61 6c 2c | 20 23 4c 5f 6c 65 6e 0d |, local,| #L_len.|
|000015f0| 05 f0 1f 20 20 20 20 20 | 20 20 20 53 57 49 20 20 |... | SWI |
|00001600| 20 20 20 22 4f 53 5f 47 | 65 74 45 6e 76 22 0d 05 | "OS_G|etEnv"..|
|00001610| fa 20 2e 6c 6f 6f 70 20 | 20 20 4c 44 52 42 20 20 |. .loop | LDRB |
|00001620| 20 20 52 31 2c 20 5b 52 | 30 5d 2c 20 23 31 0d 06 | R1, [R|0], #1..|
|00001630| 04 1a 20 20 20 20 20 20 | 20 20 54 45 51 20 20 20 |.. | TEQ |
|00001640| 20 20 52 31 2c 20 23 30 | 0d 06 0e 1f 20 20 20 20 | R1, #0|.... |
|00001650| 20 20 20 20 54 45 51 6e | 65 20 20 20 52 31 2c 20 | TEQn|e R1, |
|00001660| 23 97 28 22 20 22 29 0d | 06 18 18 20 20 20 20 20 |#.(" ").|... |
|00001670| 20 20 20 42 6e 65 20 20 | 20 20 20 6c 6f 6f 70 0d | Bne | loop.|
|00001680| 06 22 37 20 20 20 20 20 | 20 20 20 53 55 42 20 20 |."7 | SUB |
|00001690| 20 20 20 52 31 2c 20 52 | 30 2c 20 23 31 20 20 20 | R1, R|0, #1 |
|000016a0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 41 72 67 | | ; Arg|
|000016b0| 75 6d 65 6e 74 73 0d 06 | 2c 26 20 20 20 20 20 20 |uments..|,& |
|000016c0| 20 20 a4 61 64 72 6c 28 | 22 22 2c 20 30 2c 20 61 | .adrl(|"", 0, a|
|000016d0| 72 67 5f 6b 65 79 77 6f | 72 64 73 29 0d 06 36 25 |rg_keywo|rds)..6%|
|000016e0| 20 20 20 20 20 20 20 20 | 41 44 44 20 20 20 20 20 | |ADD |
|000016f0| 52 32 2c 20 73 70 2c 20 | 23 4c 5f 62 75 66 66 65 |R2, sp, |#L_buffe|
|00001700| 72 0d 06 40 26 20 20 20 | 20 20 20 20 20 4d 4f 56 |r..@& | MOV|
|00001710| 20 20 20 20 20 52 33 2c | 20 23 73 69 7a 65 6f 66 | R3,| #sizeof|
|00001720| 5f 62 75 66 66 65 72 0d | 06 4a 36 20 20 20 20 20 |_buffer.|.J6 |
|00001730| 20 20 20 53 57 49 20 20 | 20 20 20 22 58 4f 53 5f | SWI | "XOS_|
|00001740| 52 65 61 64 41 72 67 73 | 22 20 20 20 20 20 20 20 |ReadArgs|" |
|00001750| 20 20 20 3b 20 52 65 61 | 64 20 27 65 6d 0d 06 54 | ; Rea|d 'em..T|
|00001760| 1d 20 20 20 20 20 20 20 | 20 42 76 73 20 20 20 20 |. | Bvs |
|00001770| 20 67 69 76 65 5f 68 65 | 6c 70 0d 06 5e 29 20 20 | give_he|lp..^) |
|00001780| 20 20 20 20 20 20 4c 44 | 52 20 20 20 20 20 52 30 | LD|R R0|
|00001790| 2c 20 5b 6c 6f 63 61 6c | 2c 20 23 41 72 67 48 65 |, [local|, #ArgHe|
|000017a0| 6c 70 5d 0d 06 68 1a 20 | 20 20 20 20 20 20 20 43 |lp]..h. | C|
|000017b0| 4d 50 20 20 20 20 20 52 | 30 2c 20 23 30 0d 06 72 |MP R|0, #0..r|
|000017c0| 1d 20 20 20 20 20 20 20 | 20 42 6e 65 20 20 20 20 |. | Bne |
|000017d0| 20 67 69 76 65 5f 68 65 | 6c 70 0d 06 7c 2e 20 20 | give_he|lp..|. |
|000017e0| 20 20 20 20 20 20 4c 44 | 52 20 20 20 20 20 52 30 | LD|R R0|
|000017f0| 2c 20 5b 6c 6f 63 61 6c | 2c 20 23 41 72 67 48 6f |, [local|, #ArgHo|
|00001800| 75 72 47 6c 61 73 73 5d | 0d 06 86 3f 20 20 20 20 |urGlass]|...? |
|00001810| 20 20 20 20 54 45 51 20 | 20 20 20 20 52 30 2c 20 | TEQ | R0, |
|00001820| 23 30 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |#0 | |
|00001830| 20 20 20 20 3b 20 44 69 | 64 20 75 73 65 72 20 73 | ; Di|d user s|
|00001840| 65 74 20 69 74 20 3f 0d | 06 90 30 20 20 20 20 20 |et it ?.|..0 |
|00001850| 20 20 20 4d 4f 56 65 71 | 20 20 20 52 30 2c 20 23 | MOVeq| R0, #|
|00001860| 48 4f 55 52 47 4c 41 53 | 53 5f 44 45 46 41 55 4c |HOURGLAS|S_DEFAUL|
|00001870| 54 20 20 3b 20 4e 6f 0d | 06 9a 1e 20 20 20 20 20 |T ; No.|... |
|00001880| 20 20 20 41 44 44 6e 65 | 20 20 20 52 30 2c 20 52 | ADDne| R0, R|
|00001890| 30 2c 20 23 31 0d 06 a4 | 3a 20 20 20 20 20 20 20 |0, #1...|: |
|000018a0| 20 42 4c 6e 65 20 20 20 | 20 6c 64 77 20 20 20 20 | BLne | ldw |
|000018b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000018c0| 20 3b 20 52 65 61 64 20 | 69 6e 74 65 67 65 72 0d | ; Read |integer.|
|000018d0| 06 ae 1a 20 20 20 20 20 | 20 20 20 43 4d 50 20 20 |... | CMP |
|000018e0| 20 20 20 52 30 2c 20 23 | 32 0d 06 b8 1a 20 20 20 | R0, #|2.... |
|000018f0| 20 20 20 20 20 4d 4f 56 | 68 73 20 20 20 52 30 2c | MOV|hs R0,|
|00001900| 20 23 30 0d 06 c2 1a 20 | 20 20 20 20 20 20 20 4d | #0.... | M|
|00001910| 4f 56 67 74 20 20 20 52 | 30 2c 20 23 32 0d 06 cc |OVgt R|0, #2...|
|00001920| 37 20 20 20 20 20 20 20 | 20 4d 4f 56 20 20 20 20 |7 | MOV |
|00001930| 20 76 32 2c 20 23 46 6c | 61 67 5f 48 6f 75 72 47 | v2, #Fl|ag_HourG|
|00001940| 6c 61 73 73 20 20 20 20 | 20 3b 20 53 65 74 20 66 |lass | ; Set f|
|00001950| 6c 61 67 73 0d 06 d6 1e | 20 20 20 20 20 20 20 20 |lags....| |
|00001960| 4d 55 4c 53 20 20 20 20 | 76 32 2c 20 52 30 2c 20 |MULS |v2, R0, |
|00001970| 76 32 0d 06 e0 38 20 20 | 20 20 20 20 20 20 42 4c |v2...8 | BL|
|00001980| 6e 65 20 20 20 20 68 6f | 75 72 67 6c 61 73 73 5f |ne ho|urglass_|
|00001990| 63 6c 61 69 6d 20 20 20 | 20 20 20 20 20 20 3b 20 |claim | ; |
|000019a0| 54 75 72 6e 20 69 74 20 | 6f 6e 0d 06 ea 04 0d 06 |Turn it |on......|
|000019b0| f4 3f 20 20 20 20 20 20 | 20 20 42 4c 20 20 20 20 |.? | BL |
|000019c0| 20 20 6d 61 6b 65 5f 77 | 6f 72 64 5f 74 61 62 6c | make_w|ord_tabl|
|000019d0| 65 20 20 20 20 20 20 20 | 20 20 3b 20 4f 6e 6c 79 |e | ; Only|
|000019e0| 20 6d 61 6b 65 20 69 74 | 20 6f 6e 63 65 0d 06 fe | make it| once...|
|000019f0| 2a 20 20 20 20 20 20 20 | 20 4c 44 52 20 20 20 20 |* | LDR |
|00001a00| 20 52 30 2c 20 5b 6c 6f | 63 61 6c 2c 20 23 41 72 | R0, [lo|cal, #Ar|
|00001a10| 67 49 43 61 73 65 5d 0d | 07 08 2b 20 20 20 20 20 |gICase].|..+ |
|00001a20| 20 20 20 4c 44 52 20 20 | 20 20 20 52 31 2c 20 5b | LDR | R1, [|
|00001a30| 6c 6f 63 61 6c 2c 20 23 | 41 72 67 49 53 70 61 63 |local, #|ArgISpac|
|00001a40| 65 5d 0d 07 12 42 20 20 | 20 20 20 20 20 20 54 45 |e]...B | TE|
|00001a50| 51 20 20 20 20 20 52 30 | 2c 20 23 30 20 20 20 20 |Q R0|, #0 |
|00001a60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00001a70| 4e 6f 20 74 72 61 6e 73 | 6c 61 74 69 6f 6e 20 74 |No trans|lation t|
|00001a80| 61 62 6c 65 0d 07 1c 1a | 20 20 20 20 20 20 20 20 |able....| |
|00001a90| 54 45 51 65 71 20 20 20 | 52 31 2c 20 23 30 0d 07 |TEQeq |R1, #0..|
|00001aa0| 26 4b 20 20 20 20 20 20 | 20 20 42 4c 6e 65 20 20 |&K | BLne |
|00001ab0| 20 20 6d 61 6b 65 5f 74 | 72 61 6e 73 6c 61 74 65 | make_t|ranslate|
|00001ac0| 5f 74 61 62 6c 65 20 20 | 20 20 3b 20 43 72 65 61 |_table | ; Crea|
|00001ad0| 74 65 20 74 61 62 6c 65 | 20 28 52 30 20 3c 2d 2d |te table| (R0 <--|
|00001ae0| 20 61 64 64 72 65 73 73 | 29 0d 07 30 1a 20 20 20 | address|)..0. |
|00001af0| 20 20 20 20 20 4d 4f 56 | 6e 65 20 20 20 52 32 2c | MOV|ne R2,|
|00001b00| 20 52 30 0d 07 3a 1a 20 | 20 20 20 20 20 20 20 4d | R0..:. | M|
|00001b10| 4f 56 65 71 20 20 20 52 | 32 2c 20 23 30 0d 07 44 |OVeq R|2, #0..D|
|00001b20| 42 20 20 20 20 20 20 20 | 20 4d 4f 56 20 20 20 20 |B | MOV |
|00001b30| 20 52 31 2c 20 23 30 20 | 20 20 20 20 20 20 20 20 | R1, #0 | |
|00001b40| 20 20 20 20 20 20 20 20 | 20 3b 20 42 75 66 66 65 | | ; Buffe|
|00001b50| 72 20 73 69 7a 65 20 28 | 65 6d 70 74 79 21 29 0d |r size (|empty!).|
|00001b60| 07 4e 4d 20 20 20 20 20 | 20 20 20 4d 4f 56 20 20 |.NM | MOV |
|00001b70| 20 20 20 52 30 2c 20 23 | 30 20 20 20 20 20 20 20 | R0, #|0 |
|00001b80| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 4e 6f 20 | | ; No |
|00001b90| 62 75 66 66 65 72 20 28 | 69 2e 65 2e 20 61 75 74 |buffer (|i.e. aut|
|00001ba0| 6f 2d 61 6c 6c 6f 63 61 | 74 65 64 29 0d 07 58 1e |o-alloca|ted)..X.|
|00001bb0| 20 20 20 20 20 20 20 20 | 42 4c 20 20 20 20 20 20 | |BL |
|00001bc0| 78 72 65 5f 63 72 65 61 | 74 65 0d 07 62 34 20 20 |xre_crea|te..b4 |
|00001bd0| 20 20 20 20 20 20 4d 4f | 56 76 63 20 20 20 76 33 | MO|Vvc v3|
|00001be0| 2c 20 52 30 20 20 20 20 | 20 20 20 20 20 20 20 20 |, R0 | |
|00001bf0| 20 20 20 20 20 20 3b 20 | 76 33 3d 20 72 65 0d 07 | ; |v3= re..|
|00001c00| 6c 34 20 20 20 20 20 20 | 20 20 4c 44 52 76 63 20 |l4 | LDRvc |
|00001c10| 20 20 52 30 2c 20 5b 6c | 6f 63 61 6c 2c 20 23 41 | R0, [l|ocal, #A|
|00001c20| 72 67 52 65 5d 20 20 20 | 20 20 3b 20 73 74 72 69 |rgRe] | ; stri|
|00001c30| 6e 67 0d 07 76 1a 20 20 | 20 20 20 20 20 20 4d 4f |ng..v. | MO|
|00001c40| 56 76 63 20 20 20 52 31 | 2c 20 76 33 0d 07 80 43 |Vvc R1|, v3...C|
|00001c50| 20 20 20 20 20 20 20 20 | 4d 4f 56 76 63 20 20 20 | |MOVvc |
|00001c60| 52 32 2c 20 23 30 20 20 | 20 20 20 20 20 20 20 20 |R2, #0 | |
|00001c70| 20 20 20 20 20 20 20 20 | 3b 20 4e 6f 20 65 78 74 | |; No ext|
|00001c80| 65 6e 64 65 64 20 63 68 | 61 72 2d 73 65 74 73 0d |ended ch|ar-sets.|
|00001c90| 07 8a 38 20 20 20 20 20 | 20 20 20 42 4c 76 63 20 |..8 | BLvc |
|00001ca0| 20 20 20 78 72 65 5f 63 | 6f 6d 70 69 6c 65 20 20 | xre_c|ompile |
|00001cb0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 43 6f 6d | | ; Com|
|00001cc0| 70 69 6c 65 20 52 45 0d | 07 94 26 20 20 20 20 20 |pile RE.|..& |
|00001cd0| 20 20 20 53 57 49 76 73 | 20 20 20 22 4f 53 5f 47 | SWIvs| "OS_G|
|00001ce0| 65 6e 65 72 61 74 65 45 | 72 72 6f 72 22 0d 07 9e |enerateE|rror"...|
|00001cf0| 04 0d 07 a8 2e 20 20 20 | 20 20 20 20 20 4c 44 52 |..... | LDR|
|00001d00| 20 20 20 20 20 52 30 2c | 20 5b 6c 6f 63 61 6c 2c | R0,| [local,|
|00001d10| 20 23 41 72 67 56 65 72 | 62 6f 73 69 74 79 5d 0d | #ArgVer|bosity].|
|00001d20| 07 b2 3f 20 20 20 20 20 | 20 20 20 54 45 51 20 20 |..? | TEQ |
|00001d30| 20 20 20 52 30 2c 20 23 | 30 20 20 20 20 20 20 20 | R0, #|0 |
|00001d40| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 44 69 64 | | ; Did|
|00001d50| 20 75 73 65 72 20 73 65 | 74 20 69 74 20 3f 0d 07 | user se|t it ?..|
|00001d60| bc 30 20 20 20 20 20 20 | 20 20 4d 4f 56 65 71 20 |.0 | MOVeq |
|00001d70| 20 20 52 30 2c 20 23 56 | 45 52 42 4f 53 49 54 59 | R0, #V|ERBOSITY|
|00001d80| 5f 44 45 46 41 55 4c 54 | 20 20 3b 20 4e 6f 0d 07 |_DEFAULT| ; No..|
|00001d90| c6 1e 20 20 20 20 20 20 | 20 20 41 44 44 6e 65 20 |.. | ADDne |
|00001da0| 20 20 52 30 2c 20 52 30 | 2c 20 23 31 0d 07 d0 3a | R0, R0|, #1...:|
|00001db0| 20 20 20 20 20 20 20 20 | 42 4c 6e 65 20 20 20 20 | |BLne |
|00001dc0| 6c 64 77 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |ldw | |
|00001dd0| 20 20 20 20 20 20 20 20 | 3b 20 52 65 61 64 20 69 | |; Read i|
|00001de0| 6e 74 65 67 65 72 0d 07 | da 49 20 20 20 20 20 20 |nteger..|.I |
|00001df0| 20 20 53 54 52 20 20 20 | 20 20 52 30 2c 20 5b 6c | STR | R0, [l|
|00001e00| 6f 63 61 6c 2c 20 23 41 | 72 67 56 65 72 62 6f 73 |ocal, #A|rgVerbos|
|00001e10| 69 74 79 5d 20 20 20 20 | 20 20 3b 20 4f 76 65 72 |ity] | ; Over|
|00001e20| 77 72 69 74 65 20 66 6f | 72 20 6c 61 74 65 72 0d |write fo|r later.|
|00001e30| 07 e4 28 20 20 20 20 20 | 20 20 20 4c 44 52 20 20 |..( | LDR |
|00001e40| 20 20 20 6c 72 2c 20 5b | 6c 6f 63 61 6c 2c 20 23 | lr, [|local, #|
|00001e50| 41 72 67 4e 6f 74 5d 0d | 07 ee 1a 20 20 20 20 20 |ArgNot].|... |
|00001e60| 20 20 20 43 4d 50 20 20 | 20 20 20 6c 72 2c 20 23 | CMP | lr, #|
|00001e70| 30 0d 07 f8 27 20 20 20 | 20 20 20 20 20 84 52 6e |0...' | .Rn|
|00001e80| 65 20 20 20 76 32 2c 20 | 76 32 2c 20 23 46 6c 61 |e v2, |v2, #Fla|
|00001e90| 67 5f 49 6e 76 65 72 74 | 0d 08 02 2c 20 20 20 20 |g_Invert|..., |
|00001ea0| 20 20 20 20 4c 44 52 20 | 20 20 20 20 6c 72 2c 20 | LDR | lr, |
|00001eb0| 5b 6c 6f 63 61 6c 2c 20 | 23 41 72 67 52 65 63 75 |[local, |#ArgRecu|
|00001ec0| 72 73 65 5d 0d 08 0c 1a | 20 20 20 20 20 20 20 20 |rse]....| |
|00001ed0| 43 4d 50 20 20 20 20 20 | 6c 72 2c 20 23 30 0d 08 |CMP |lr, #0..|
|00001ee0| 16 28 20 20 20 20 20 20 | 20 20 84 52 6e 65 20 20 |.( | .Rne |
|00001ef0| 20 76 32 2c 20 76 32 2c | 20 23 46 6c 61 67 5f 52 | v2, v2,| #Flag_R|
|00001f00| 65 63 75 72 73 65 0d 08 | 20 2a 20 20 20 20 20 20 |ecurse..| * |
|00001f10| 20 20 4c 44 52 20 20 20 | 20 20 6c 72 2c 20 5b 6c | LDR | lr, [l|
|00001f20| 6f 63 61 6c 2c 20 23 41 | 72 67 42 61 73 69 63 5d |ocal, #A|rgBasic]|
|00001f30| 0d 08 2a 1a 20 20 20 20 | 20 20 20 20 43 4d 50 20 |..*. | CMP |
|00001f40| 20 20 20 20 6c 72 2c 20 | 23 30 0d 08 34 26 20 20 | lr, |#0..4& |
|00001f50| 20 20 20 20 20 20 84 52 | 6e 65 20 20 20 76 32 2c | .R|ne v2,|
|00001f60| 20 76 32 2c 20 23 46 6c | 61 67 5f 42 61 73 69 63 | v2, #Fl|ag_Basic|
|00001f70| 0d 08 3e 29 20 20 20 20 | 20 20 20 20 4c 44 52 20 |..>) | LDR |
|00001f80| 20 20 20 20 6c 72 2c 20 | 5b 6c 6f 63 61 6c 2c 20 | lr, |[local, |
|00001f90| 23 41 72 67 53 63 61 6e | 5d 0d 08 48 1a 20 20 20 |#ArgScan|]..H. |
|00001fa0| 20 20 20 20 20 43 4d 50 | 20 20 20 20 20 6c 72 2c | CMP| lr,|
|00001fb0| 20 23 30 0d 08 52 25 20 | 20 20 20 20 20 20 20 84 | #0..R% | .|
|00001fc0| 52 6e 65 20 20 20 76 32 | 2c 20 76 32 2c 20 23 46 |Rne v2|, v2, #F|
|00001fd0| 6c 61 67 5f 53 63 61 6e | 0d 08 5c 28 20 20 20 20 |lag_Scan|..\( |
|00001fe0| 20 20 20 20 4c 44 52 20 | 20 20 20 20 6c 72 2c 20 | LDR | lr, |
|00001ff0| 5b 6c 6f 63 61 6c 2c 20 | 23 41 72 67 41 6c 6c 5d |[local, |#ArgAll]|
|00002000| 0d 08 66 1a 20 20 20 20 | 20 20 20 20 43 4d 50 20 |..f. | CMP |
|00002010| 20 20 20 20 6c 72 2c 20 | 23 30 0d 08 70 36 20 20 | lr, |#0..p6 |
|00002020| 20 20 20 20 20 20 84 52 | 6e 65 20 20 20 76 32 2c | .R|ne v2,|
|00002030| 20 76 32 2c 20 23 46 6c | 61 67 5f 41 6c 6c 20 20 | v2, #Fl|ag_All |
|00002040| 20 20 20 20 20 3b 20 76 | 32 3d 20 66 6c 61 67 73 | ; v|2= flags|
|00002050| 0d 08 7a 35 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |..z5 | MOV |
|00002060| 20 20 20 20 76 36 2c 20 | 23 30 20 20 20 20 20 20 | v6, |#0 |
|00002070| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 43 6f | | ; Co|
|00002080| 75 6e 74 65 72 0d 08 84 | 49 20 20 20 20 20 20 20 |unter...|I |
|00002090| 20 4c 44 52 20 20 20 20 | 20 76 34 2c 20 5b 6c 6f | LDR | v4, [lo|
|000020a0| 63 61 6c 2c 20 23 41 72 | 67 46 69 6c 65 73 5d 20 |cal, #Ar|gFiles] |
|000020b0| 20 3b 20 52 30 3d 20 43 | 6f 6d 6d 61 20 6c 69 73 | ; R0= C|omma lis|
|000020c0| 74 20 6f 66 20 76 61 72 | 69 61 62 6c 65 73 0d 08 |t of var|iables..|
|000020d0| 8e 4b 20 20 20 20 20 20 | 20 20 a4 61 64 72 6c 28 |.K | .adrl(|
|000020e0| 22 22 2c 20 34 2c 20 66 | 72 65 5f 6d 61 74 63 68 |"", 4, f|re_match|
|000020f0| 6c 69 6e 65 29 20 20 20 | 20 3b 20 54 68 69 73 20 |line) | ; This |
|00002100| 63 61 6c 6c 65 64 20 65 | 76 65 72 79 20 6c 69 6e |called e|very lin|
|00002110| 65 20 6f 66 20 66 69 6c | 65 0d 08 98 19 20 20 20 |e of fil|e.... |
|00002120| 20 20 20 20 20 42 4c 20 | 20 20 20 20 20 64 6f 5f | BL | do_|
|00002130| 69 74 0d 08 a2 04 0d 08 | ac 28 20 20 20 20 20 20 |it......|.( |
|00002140| 20 20 4c 44 52 20 20 20 | 20 20 76 34 2c 20 5b 6c | LDR | v4, [l|
|00002150| 6f 63 61 6c 2c 20 23 41 | 72 67 56 69 61 5d 0d 08 |ocal, #A|rgVia]..|
|00002160| b6 4b 20 20 20 20 20 20 | 20 20 a4 61 64 72 6c 28 |.K | .adrl(|
|00002170| 22 22 2c 20 34 2c 20 66 | 72 65 5f 76 69 61 6c 69 |"", 4, f|re_viali|
|00002180| 6e 65 29 20 20 20 20 20 | 20 3b 20 54 68 69 73 20 |ne) | ; This |
|00002190| 63 61 6c 6c 65 64 20 65 | 76 65 72 79 20 6c 69 6e |called e|very lin|
|000021a0| 65 20 6f 66 20 66 69 6c | 65 0d 08 c0 41 20 20 20 |e of fil|e...A |
|000021b0| 20 20 20 20 20 42 4c 20 | 20 20 20 20 20 64 6f 5f | BL | do_|
|000021c0| 69 74 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |it | |
|000021d0| 20 20 20 20 20 3b 20 50 | 61 72 73 65 20 65 61 63 | ; P|arse eac|
|000021e0| 68 20 76 69 61 20 66 69 | 6c 65 0d 08 ca 04 0d 08 |h via fi|le......|
|000021f0| d4 22 20 20 20 20 20 20 | 20 20 54 53 54 20 20 20 |." | TST |
|00002200| 20 20 76 32 2c 20 23 46 | 6c 61 67 5f 53 63 61 6e | v2, #F|lag_Scan|
|00002210| 0d 08 de 23 20 20 20 20 | 20 20 20 20 42 65 71 20 |...# | Beq |
|00002220| 20 20 20 20 6e 6f 74 5f | 73 63 61 6e 5f 72 65 73 | not_|scan_res|
|00002230| 75 6c 74 0d 08 e8 20 20 | 20 20 20 20 20 20 20 42 |ult... | B|
|00002240| 4c 20 20 20 20 20 20 63 | 6c 65 61 72 5f 74 6f 5f |L c|lear_to_|
|00002250| 65 6f 6c 0d 08 f2 1a 20 | 20 20 20 20 20 20 20 4d |eol.... | M|
|00002260| 4f 56 20 20 20 20 20 52 | 31 2c 20 76 36 0d 08 fc |OV R|1, v6...|
|00002270| 1a 20 20 20 20 20 20 20 | 20 43 4d 50 20 20 20 20 |. | CMP |
|00002280| 20 52 31 2c 20 23 31 0d | 09 06 22 20 20 20 20 20 | R1, #1.|.." |
|00002290| 20 20 20 a4 61 64 72 6c | 28 22 6c 6f 22 2c 20 30 | .adrl|("lo", 0|
|000022a0| 2c 20 6e 6f 6e 65 5f 66 | 29 0d 09 10 21 20 20 20 |, none_f|)...! |
|000022b0| 20 20 20 20 20 a4 61 64 | 72 6c 28 22 65 71 22 2c | .ad|rl("eq",|
|000022c0| 20 30 2c 20 6f 6e 65 5f | 66 29 0d 09 1a 22 20 20 | 0, one_|f)..." |
|000022d0| 20 20 20 20 20 20 a4 61 | 64 72 6c 28 22 68 69 22 | .a|drl("hi"|
|000022e0| 2c 20 30 2c 20 6d 61 6e | 79 5f 66 29 0d 09 24 28 |, 0, man|y_f)..$(|
|000022f0| 20 20 20 20 20 20 20 20 | 53 57 49 20 20 20 20 20 | |SWI |
|00002300| 22 43 41 73 73 65 6d 62 | 6c 65 72 5f 43 50 72 69 |"CAssemb|ler_CPri|
|00002310| 6e 74 66 22 0d 09 2e 14 | 2e 6e 6f 74 5f 73 63 61 |ntf"....|.not_sca|
|00002320| 6e 5f 72 65 73 75 6c 74 | 0d 09 38 1a 20 20 20 20 |n_result|..8. |
|00002330| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 30 2c 20 | MOV | R0, |
|00002340| 76 33 0d 09 42 42 20 20 | 20 20 20 20 20 20 42 4c |v3..BB | BL|
|00002350| 20 20 20 20 20 20 78 72 | 65 5f 66 72 65 65 20 20 | xr|e_free |
|00002360| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00002370| 46 72 65 65 20 75 70 20 | 72 65 67 65 78 20 6d 65 |Free up |regex me|
|00002380| 6d 6f 72 79 0d 09 4c 26 | 20 20 20 20 20 20 20 20 |mory..L&| |
|00002390| 53 57 49 76 73 20 20 20 | 22 4f 53 5f 47 65 6e 65 |SWIvs |"OS_Gene|
|000023a0| 72 61 74 65 45 72 72 6f | 72 22 0d 09 56 39 20 20 |rateErro|r"..V9 |
|000023b0| 20 20 20 20 20 20 54 53 | 54 20 20 20 20 20 76 32 | TS|T v2|
|000023c0| 2c 20 23 46 6c 61 67 5f | 48 6f 75 72 47 6c 61 73 |, #Flag_|HourGlas|
|000023d0| 73 20 84 20 46 6c 61 67 | 5f 48 6f 75 72 47 6c 61 |s . Flag|_HourGla|
|000023e0| 73 73 50 0d 09 60 25 20 | 20 20 20 20 20 20 20 42 |ssP..`% | B|
|000023f0| 4c 6e 65 20 20 20 20 68 | 6f 75 72 67 6c 61 73 73 |Lne h|ourglass|
|00002400| 5f 72 65 6c 65 61 73 65 | 0d 09 6a 3a 20 20 20 20 |_release|..j: |
|00002410| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 30 2c 20 | MOV | R0, |
|00002420| 76 36 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |v6 | |
|00002430| 20 20 20 20 3b 20 52 65 | 74 75 72 6e 20 76 61 6c | ; Re|turn val|
|00002440| 75 65 0d 09 74 28 2e 64 | 6f 6e 65 20 20 20 41 44 |ue..t(.d|one AD|
|00002450| 44 20 20 20 20 20 6c 6f | 63 61 6c 2c 20 6c 6f 63 |D lo|cal, loc|
|00002460| 61 6c 2c 20 23 4c 5f 6c | 65 6e 0d 09 7e 27 20 20 |al, #L_l|en..~' |
|00002470| 20 20 20 20 20 20 4c 44 | 4d 46 44 20 20 20 28 73 | LD|MFD (s|
|00002480| 70 29 21 2c 20 7b 76 31 | 2d 76 36 2c 20 70 63 7d |p)!, {v1|-v6, pc}|
|00002490| 5e 0d 09 88 04 0d 09 92 | 0e 2e 67 69 76 65 5f 68 |^.......|..give_h|
|000024a0| 65 6c 70 0d 09 9c 23 20 | 20 20 20 20 20 20 20 a4 |elp...# | .|
|000024b0| 61 64 72 6c 28 22 22 2c | 20 30 2c 20 68 65 6c 70 |adrl("",| 0, help|
|000024c0| 5f 74 65 78 74 29 0d 09 | a6 28 20 20 20 20 20 20 |_text)..|.( |
|000024d0| 20 20 53 57 49 20 20 20 | 20 20 22 43 41 73 73 65 | SWI | "CAsse|
|000024e0| 6d 62 6c 65 72 5f 43 50 | 72 69 6e 74 66 22 0d 09 |mbler_CP|rintf"..|
|000024f0| b0 1a 20 20 20 20 20 20 | 20 20 4d 4f 56 20 20 20 |.. | MOV |
|00002500| 20 20 52 30 2c 20 23 30 | 0d 09 ba 18 20 20 20 20 | R0, #0|.... |
|00002510| 20 20 20 20 42 20 20 20 | 20 20 20 20 64 6f 6e 65 | B | done|
|00002520| 0d 09 c4 04 0d 09 ce 0a | 2e 64 6f 5f 69 74 0d 09 |........|.do_it..|
|00002530| d8 44 20 20 20 20 20 20 | 20 20 4d 4f 56 53 20 20 |.D | MOVS |
|00002540| 20 20 52 30 2c 20 76 34 | 20 20 20 20 20 20 20 20 | R0, v4| |
|00002550| 20 20 20 20 20 20 20 20 | 20 20 3b 20 43 68 65 63 | | ; Chec|
|00002560| 6b 20 66 6f 72 20 6e 6f | 20 70 61 72 61 6d 65 74 |k for no| paramet|
|00002570| 65 72 0d 09 e2 1a 20 20 | 20 20 20 20 20 20 4d 4f |er.... | MO|
|00002580| 56 65 71 53 20 20 70 63 | 2c 20 6c 72 0d 09 ec 1a |VeqS pc|, lr....|
|00002590| 20 20 20 20 20 20 20 20 | 4d 4f 56 20 20 20 20 20 | |MOV |
|000025a0| 76 35 2c 20 6c 72 0d 09 | f6 39 20 20 20 20 20 20 |v5, lr..|.9 |
|000025b0| 20 20 42 4c 20 20 20 20 | 20 20 6c 64 68 77 20 20 | BL | ldhw |
|000025c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000025d0| 20 20 3b 20 52 65 61 64 | 20 6c 65 6e 67 74 68 0d | ; Read| length.|
|000025e0| 0a 00 1a 20 20 20 20 20 | 20 20 20 4d 4f 56 20 20 |... | MOV |
|000025f0| 20 20 20 52 32 2c 20 52 | 30 0d 0a 0a 43 20 20 20 | R2, R|0...C |
|00002600| 20 20 20 20 20 41 44 44 | 20 20 20 20 20 52 31 2c | ADD| R1,|
|00002610| 20 76 34 2c 20 23 32 20 | 20 20 20 20 20 20 20 20 | v4, #2 | |
|00002620| 20 20 20 20 20 3b 20 53 | 6b 69 70 20 6c 65 6e 67 | ; S|kip leng|
|00002630| 74 68 20 68 61 6c 66 2d | 77 6f 72 64 0d 0a 14 28 |th half-|word...(|
|00002640| 20 20 20 20 20 20 20 20 | a4 61 64 72 6c 28 22 22 | |.adrl(""|
|00002650| 2c 20 30 2c 20 42 53 53 | 5f 67 73 74 5f 62 75 66 |, 0, BSS|_gst_buf|
|00002660| 66 65 72 29 0d 0a 1e 2e | 20 20 20 20 20 20 20 20 |fer)....| |
|00002670| 43 4d 50 20 20 20 20 20 | 52 32 2c 20 23 73 69 7a |CMP |R2, #siz|
|00002680| 65 6f 66 5f 42 53 53 5f | 67 73 74 5f 62 75 66 66 |eof_BSS_|gst_buff|
|00002690| 65 72 0d 0a 28 40 20 20 | 20 20 20 20 20 20 4d 4f |er..(@ | MO|
|000026a0| 56 68 73 53 20 20 70 63 | 2c 20 76 35 20 20 20 20 |VhsS pc|, v5 |
|000026b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|000026c0| 43 68 65 63 6b 20 66 6f | 72 20 6f 76 65 72 66 6c |Check fo|r overfl|
|000026d0| 6f 77 0d 0a 32 1a 20 20 | 20 20 20 20 20 20 4d 4f |ow..2. | MO|
|000026e0| 56 20 20 20 20 20 6c 72 | 2c 20 23 30 0d 0a 3c 20 |V lr|, #0..< |
|000026f0| 20 20 20 20 20 20 20 20 | 53 54 52 42 20 20 20 20 | |STRB |
|00002700| 6c 72 2c 20 5b 52 30 2c | 20 52 32 5d 0d 0a 46 1a |lr, [R0,| R2]..F.|
|00002710| 20 20 20 20 20 20 20 20 | 42 4c 20 20 20 20 20 20 | |BL |
|00002720| 6d 65 6d 63 70 79 0d 0a | 50 33 20 20 20 20 20 20 |memcpy..|P3 |
|00002730| 20 20 4d 4f 56 20 20 20 | 20 20 52 33 2c 20 76 32 | MOV | R3, v2|
|00002740| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002750| 20 20 3b 20 46 6c 61 67 | 73 0d 0a 5a 47 20 20 20 | ; Flag|s..ZG |
|00002760| 20 20 20 20 20 4c 44 52 | 20 20 20 20 20 52 32 2c | LDR| R2,|
|00002770| 20 5b 6c 6f 63 61 6c 2c | 20 23 41 72 67 56 65 72 | [local,| #ArgVer|
|00002780| 62 6f 73 69 74 79 5d 20 | 3b 20 41 63 74 75 61 6c |bosity] |; Actual|
|00002790| 20 76 65 72 62 6f 73 69 | 74 79 20 6c 65 76 65 6c | verbosi|ty level|
|000027a0| 0d 0a 64 34 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |..d4 | MOV |
|000027b0| 20 20 20 20 52 31 2c 20 | 76 33 20 20 20 20 20 20 | R1, |v3 |
|000027c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 52 31 | | ; R1|
|000027d0| 3d 20 72 65 0d 0a 6e 35 | 20 20 20 20 20 20 20 20 |= re..n5| |
|000027e0| 42 4c 20 20 20 20 20 20 | 66 72 65 5f 63 6f 6d 6d |BL |fre_comm|
|000027f0| 61 6c 69 73 74 20 20 20 | 20 20 20 20 20 20 20 20 |alist | |
|00002800| 3b 20 43 61 6c 6c 20 69 | 74 0d 0a 78 1e 20 20 20 |; Call i|t..x. |
|00002810| 20 20 20 20 20 41 44 44 | 20 20 20 20 20 76 36 2c | ADD| v6,|
|00002820| 20 76 36 2c 20 52 30 0d | 0a 82 1a 20 20 20 20 20 | v6, R0.|... |
|00002830| 20 20 20 4d 4f 56 53 20 | 20 20 20 70 63 2c 20 76 | MOVS | pc, v|
|00002840| 35 0d 0a 8c 05 5d 0d 0a | 96 05 e1 0d 0a a0 05 3a |5....]..|.......:|
|00002850| 0d 0a aa 4b f4 20 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |...K. **|********|
|00002860| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002870| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002880| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002890| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0d 0a b4 05 3a |********|***....:|
|000028a0| 0d 0a be 20 dd 20 f2 5f | 61 73 73 65 6d 62 6c 65 |... . ._|assemble|
|000028b0| 5f 66 72 65 5f 6d 61 6b | 65 5f 74 61 62 6c 65 73 |_fre_mak|e_tables|
|000028c0| 0d 0a c8 0a ea 20 6c 6f | 6f 70 0d 0a d2 07 ea 20 |..... lo|op..... |
|000028d0| 85 0d 0a dc 26 20 20 ee | 20 85 20 ea 20 f7 20 85 |....& .| . . . .|
|000028e0| 3a f2 5f 65 28 22 66 72 | 65 5f 6d 61 6b 65 5f 74 |:._e("fr|e_make_t|
|000028f0| 61 62 6c 65 73 22 29 0d | 0a e6 0e 5b 4f 50 54 20 |ables").|...[OPT |
|00002900| 70 61 73 73 25 0d 0a f0 | 11 20 20 20 20 20 20 20 |pass%...|. |
|00002910| 20 41 4c 49 47 4e 0d 0a | fa 19 2e 6d 61 6b 65 5f | ALIGN..|...make_|
|00002920| 74 72 61 6e 73 6c 61 74 | 65 5f 74 61 62 6c 65 0d |translat|e_table.|
|00002930| 0b 04 26 20 20 20 20 20 | 20 20 20 53 54 4d 46 44 |..& | STMFD|
|00002940| 20 20 20 28 73 70 29 21 | 2c 20 7b 76 31 2d 76 33 | (sp)!|, {v1-v3|
|00002950| 2c 20 6c 72 7d 0d 0b 0e | 2e 20 20 20 20 20 20 20 |, lr}...|. |
|00002960| 20 a4 61 64 72 6c 28 22 | 22 2c 20 76 31 2c 20 42 | .adrl("|", v1, B|
|00002970| 53 53 5f 74 72 61 6e 73 | 6c 61 74 65 5f 74 61 62 |SS_trans|late_tab|
|00002980| 6c 65 29 0d 0b 18 1c 20 | 20 20 20 20 20 20 20 4d |le).... | M|
|00002990| 4f 56 20 20 20 20 20 76 | 32 2c 20 23 32 35 35 0d |OV v|2, #255.|
|000029a0| 0b 22 3f 2e 6c 6f 6f 70 | 20 20 20 53 54 52 42 20 |."?.loop| STRB |
|000029b0| 20 20 20 76 32 2c 20 5b | 76 31 2c 20 76 32 5d 20 | v2, [|v1, v2] |
|000029c0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 49 6e 69 | | ; Ini|
|000029d0| 74 69 61 6c 20 31 2d 31 | 20 74 61 62 6c 65 0d 0b |tial 1-1| table..|
|000029e0| 2c 1e 20 20 20 20 20 20 | 20 20 53 55 42 53 20 20 |,. | SUBS |
|000029f0| 20 20 76 32 2c 20 76 32 | 2c 20 23 31 0d 0b 36 18 | v2, v2|, #1..6.|
|00002a00| 20 20 20 20 20 20 20 20 | 42 68 73 20 20 20 20 20 | |Bhs |
|00002a10| 6c 6f 6f 70 0d 0b 40 42 | 20 20 20 20 20 20 20 20 |loop..@B| |
|00002a20| 4d 4f 56 20 20 20 20 20 | 76 33 2c 20 52 31 20 20 |MOV |v3, R1 |
|00002a30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002a40| 3b 20 52 65 6d 65 6d 62 | 65 72 20 69 66 20 6e 6f |; Rememb|er if no|
|00002a50| 20 73 70 61 63 65 0d 0b | 4a 1a 20 20 20 20 20 20 | space..|J. |
|00002a60| 20 20 54 45 51 20 20 20 | 20 20 52 30 2c 20 23 30 | TEQ | R0, #0|
|00002a70| 0d 0b 54 30 20 20 20 20 | 20 20 20 20 42 65 71 20 |..T0 | Beq |
|00002a80| 20 20 20 20 6e 6f 5f 63 | 61 73 65 5f 6d 61 6b 65 | no_c|ase_make|
|00002a90| 5f 74 72 61 6e 73 6c 61 | 74 65 5f 74 61 62 6c 65 |_transla|te_table|
|00002aa0| 0d 0b 5e 1c 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |..^. | MOV |
|00002ab0| 20 20 20 20 76 32 2c 20 | 23 32 35 35 0d 0b 68 1a | v2, |#255..h.|
|00002ac0| 2e 6c 6f 6f 70 20 20 20 | 4d 4f 56 20 20 20 20 20 |.loop |MOV |
|00002ad0| 52 30 2c 20 76 32 0d 0b | 72 1c 20 20 20 20 20 20 |R0, v2..|r. |
|00002ae0| 20 20 42 4c 20 20 20 20 | 20 20 76 69 73 75 70 70 | BL | visupp|
|00002af0| 65 72 0d 0b 7c 46 20 20 | 20 20 20 20 20 20 4d 4f |er..|F | MO|
|00002b00| 56 6e 65 20 20 20 52 30 | 2c 20 76 32 20 20 20 20 |Vne R0|, v2 |
|00002b10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00002b20| 54 72 61 6e 73 6c 61 74 | 65 20 75 70 70 65 72 20 |Translat|e upper |
|00002b30| 74 6f 20 6c 6f 77 65 72 | 0d 0b 86 1b 20 20 20 20 |to lower|.... |
|00002b40| 20 20 20 20 42 4c 6e 65 | 20 20 20 20 74 6f 6c 6f | BLne| tolo|
|00002b50| 77 65 72 0d 0b 90 20 20 | 20 20 20 20 20 20 20 53 |wer... | S|
|00002b60| 54 52 6e 65 42 20 20 52 | 30 2c 20 5b 76 31 2c 20 |TRneB R|0, [v1, |
|00002b70| 76 32 5d 0d 0b 9a 1e 20 | 20 20 20 20 20 20 20 53 |v2].... | S|
|00002b80| 55 42 53 20 20 20 20 76 | 32 2c 20 76 32 2c 20 23 |UBS v|2, v2, #|
|00002b90| 31 0d 0b a4 18 20 20 20 | 20 20 20 20 20 42 68 73 |1.... | Bhs|
|00002ba0| 20 20 20 20 20 6c 6f 6f | 70 0d 0b ae 21 2e 6e 6f | loo|p...!.no|
|00002bb0| 5f 63 61 73 65 5f 6d 61 | 6b 65 5f 74 72 61 6e 73 |_case_ma|ke_trans|
|00002bc0| 6c 61 74 65 5f 74 61 62 | 6c 65 0d 0b b8 1a 20 20 |late_tab|le.... |
|00002bd0| 20 20 20 20 20 20 54 45 | 51 20 20 20 20 20 76 33 | TE|Q v3|
|00002be0| 2c 20 23 30 0d 0b c2 31 | 20 20 20 20 20 20 20 20 |, #0...1| |
|00002bf0| 42 65 71 20 20 20 20 20 | 6e 6f 5f 73 70 61 63 65 |Beq |no_space|
|00002c00| 5f 6d 61 6b 65 5f 74 72 | 61 6e 73 6c 61 74 65 5f |_make_tr|anslate_|
|00002c10| 74 61 62 6c 65 0d 0b cc | 41 20 20 20 20 20 20 20 |table...|A |
|00002c20| 20 4d 4f 56 20 20 20 20 | 20 76 33 2c 20 23 97 28 | MOV | v3, #.(|
|00002c30| 22 20 22 29 20 20 20 20 | 20 20 20 20 20 20 20 3b |" ") | ;|
|00002c40| 20 41 6c 6c 20 77 68 69 | 74 65 73 70 61 63 65 20 | All whi|tespace |
|00002c50| 74 6f 20 22 20 22 0d 0b | d6 1c 20 20 20 20 20 20 |to " "..|.. |
|00002c60| 20 20 4d 4f 56 20 20 20 | 20 20 76 32 2c 20 23 32 | MOV | v2, #2|
|00002c70| 35 35 0d 0b e0 1a 2e 6c | 6f 6f 70 20 20 20 4d 4f |55.....l|oop MO|
|00002c80| 56 20 20 20 20 20 52 30 | 2c 20 76 32 0d 0b ea 1c |V R0|, v2....|
|00002c90| 20 20 20 20 20 20 20 20 | 42 4c 20 20 20 20 20 20 | |BL |
|00002ca0| 76 69 73 73 70 61 63 65 | 0d 0b f4 20 20 20 20 20 |visspace|... |
|00002cb0| 20 20 20 20 53 54 52 6e | 65 42 20 20 76 33 2c 20 | STRn|eB v3, |
|00002cc0| 5b 76 31 2c 20 76 32 5d | 0d 0b fe 1e 20 20 20 20 |[v1, v2]|.... |
|00002cd0| 20 20 20 20 53 55 42 53 | 20 20 20 20 76 32 2c 20 | SUBS| v2, |
|00002ce0| 76 32 2c 20 23 31 0d 0c | 08 18 20 20 20 20 20 20 |v2, #1..|.. |
|00002cf0| 20 20 42 68 73 20 20 20 | 20 20 6c 6f 6f 70 0d 0c | Bhs | loop..|
|00002d00| 12 22 2e 6e 6f 5f 73 70 | 61 63 65 5f 6d 61 6b 65 |.".no_sp|ace_make|
|00002d10| 5f 74 72 61 6e 73 6c 61 | 74 65 5f 74 61 62 6c 65 |_transla|te_table|
|00002d20| 0d 0c 1c 1a 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |.... | MOV |
|00002d30| 20 20 20 20 52 30 2c 20 | 76 31 0d 0c 26 27 20 20 | R0, |v1..&' |
|00002d40| 20 20 20 20 20 20 4c 44 | 4d 46 44 20 20 20 28 73 | LD|MFD (s|
|00002d50| 70 29 21 2c 20 7b 76 31 | 2d 76 33 2c 20 70 63 7d |p)!, {v1|-v3, pc}|
|00002d60| 5e 0d 0c 30 04 0d 0c 3a | 11 20 20 20 20 20 20 20 |^..0...:|. |
|00002d70| 20 41 4c 49 47 4e 0d 0c | 44 14 2e 6d 61 6b 65 5f | ALIGN..|D..make_|
|00002d80| 77 6f 72 64 5f 74 61 62 | 6c 65 0d 0c 4e 26 20 20 |word_tab|le..N& |
|00002d90| 20 20 20 20 20 20 53 54 | 4d 46 44 20 20 20 28 73 | ST|MFD (s|
|00002da0| 70 29 21 2c 20 7b 76 31 | 2d 76 32 2c 20 6c 72 7d |p)!, {v1|-v2, lr}|
|00002db0| 0d 0c 58 29 20 20 20 20 | 20 20 20 20 a4 61 64 72 |..X) | .adr|
|00002dc0| 6c 28 22 22 2c 20 76 31 | 2c 20 42 53 53 5f 77 6f |l("", v1|, BSS_wo|
|00002dd0| 72 64 5f 74 61 62 6c 65 | 29 0d 0c 62 1c 20 20 20 |rd_table|)..b. |
|00002de0| 20 20 20 20 20 4d 4f 56 | 20 20 20 20 20 76 32 2c | MOV| v2,|
|00002df0| 20 23 32 35 35 0d 0c 6c | 1f 2e 6c 6f 6f 70 20 20 | #255..l|..loop |
|00002e00| 20 54 45 51 20 20 20 20 | 20 76 32 2c 20 23 97 28 | TEQ | v2, #.(|
|00002e10| 22 60 22 29 0d 0c 76 1f | 20 20 20 20 20 20 20 20 |"`")..v.| |
|00002e20| 54 45 51 6e 65 20 20 20 | 76 32 2c 20 23 97 28 22 |TEQne |v2, #.("|
|00002e30| 5f 22 29 0d 0c 80 27 20 | 20 20 20 20 20 20 20 4d |_")...' | M|
|00002e40| 4f 56 65 71 20 20 20 52 | 30 2c 20 23 52 45 53 53 |OVeq R|0, #RESS|
|00002e50| 79 6d 20 84 20 52 45 53 | 79 6d 0d 0c 8a 1a 20 20 |ym . RES|ym.... |
|00002e60| 20 20 20 20 20 20 4d 4f | 56 6e 65 20 20 20 52 30 | MO|Vne R0|
|00002e70| 2c 20 76 32 0d 0c 94 1c | 20 20 20 20 20 20 20 20 |, v2....| |
|00002e80| 42 4c 6e 65 20 20 20 20 | 76 69 73 61 6c 6e 75 6d |BLne |visalnum|
|00002e90| 0d 0c 9e 30 20 20 20 20 | 20 20 20 20 4d 4f 56 6e |...0 | MOVn|
|00002ea0| 65 20 20 20 52 30 2c 20 | 23 52 45 53 53 79 6d 20 |e R0, |#RESSym |
|00002eb0| 84 20 52 45 53 79 6d 20 | 84 20 52 45 57 6f 72 64 |. RESym |. REWord|
|00002ec0| 0d 0c a8 20 20 20 20 20 | 20 20 20 20 53 54 52 42 |... | STRB|
|00002ed0| 20 20 20 20 52 30 2c 20 | 5b 76 31 2c 20 76 32 5d | R0, |[v1, v2]|
|00002ee0| 0d 0c b2 1e 20 20 20 20 | 20 20 20 20 53 55 42 53 |.... | SUBS|
|00002ef0| 20 20 20 20 76 32 2c 20 | 76 32 2c 20 23 31 0d 0c | v2, |v2, #1..|
|00002f00| bc 18 20 20 20 20 20 20 | 20 20 42 68 73 20 20 20 |.. | Bhs |
|00002f10| 20 20 6c 6f 6f 70 0d 0c | c6 1a 20 20 20 20 20 20 | loop..|.. |
|00002f20| 20 20 4d 4f 56 20 20 20 | 20 20 52 30 2c 20 76 31 | MOV | R0, v1|
|00002f30| 0d 0c d0 27 20 20 20 20 | 20 20 20 20 4c 44 4d 46 |...' | LDMF|
|00002f40| 44 20 20 20 28 73 70 29 | 21 2c 20 7b 76 31 2d 76 |D (sp)|!, {v1-v|
|00002f50| 32 2c 20 70 63 7d 5e 0d | 0c da 05 5d 0d 0c e4 05 |2, pc}^.|...]....|
|00002f60| e1 0d 0c ee 05 3a 0d 0c | f8 19 dd 20 a4 64 65 66 |.....:..|... .def|
|00002f70| 69 6e 65 5f 75 70 70 65 | 72 5f 74 61 62 6c 65 0d |ine_uppe|r_table.|
|00002f80| 0d 02 14 ea 20 69 25 2c | 20 6c 25 2c 20 68 25 2c |.... i%,| l%, h%,|
|00002f90| 20 6f 25 0d 0d 0c 11 20 | 20 6c 25 20 3d 20 97 28 | o%.... | l% = .(|
|00002fa0| 22 61 22 29 0d 0d 16 11 | 20 20 68 25 20 3d 20 97 |"a")....| h% = .|
|00002fb0| 28 22 7a 22 29 0d 0d 20 | 11 20 20 6f 25 20 3d 20 |("z").. |. o% = |
|00002fc0| 97 28 22 41 22 29 0d 0d | 2a 13 20 20 e3 20 69 25 |.("A")..|*. . i%|
|00002fd0| 3d 20 30 20 b8 20 32 35 | 35 0d 0d 34 19 20 20 20 |= 0 . 25|5..4. |
|00002fe0| 20 e7 20 69 25 3c 6c 25 | 20 84 20 69 25 3e 68 25 | . i%<l%| . i%>h%|
|00002ff0| 20 8c 0d 0d 3e 1d 20 20 | 20 20 20 20 5b 4f 50 54 | ...>. | [OPT|
|00003000| 20 70 61 73 73 25 3a 44 | 43 42 20 69 25 3a 5d 0d | pass%:D|CB i%:].|
|00003010| 0d 48 09 20 20 20 20 cc | 0d 0d 52 23 20 20 20 20 |.H. .|..R# |
|00003020| 20 20 5b 4f 50 54 20 70 | 61 73 73 25 3a 44 43 42 | [OPT p|ass%:DCB|
|00003030| 20 69 25 2d 6c 25 2b 6f | 25 3a 5d 0d 0d 5c 09 20 | i%-l%+o|%:]..\. |
|00003040| 20 20 20 cd 0d 0d 66 0a | 20 20 ed 20 69 25 0d 0d | ...f.| . i%..|
|00003050| 70 07 3d 20 30 0d 0d 7a | 05 3a 0d 0d 84 4b f4 20 |p.= 0..z|.:...K. |
|00003060| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003070| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003080| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003090| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000030a0| 2a 2a 2a 2a 2a 0d 0d 8e | 05 3a 0d 0d 98 1e dd 20 |*****...|.:..... |
|000030b0| f2 5f 61 73 73 65 6d 62 | 6c 65 5f 66 72 65 5f 63 |._assemb|le_fre_c|
|000030c0| 6f 6d 6d 61 6c 69 73 74 | 0d 0d a2 16 ea 20 6c 6f |ommalist|..... lo|
|000030d0| 6f 70 2c 20 6e 65 78 74 | 5f 63 6f 6d 6d 61 0d 0d |op, next|_comma..|
|000030e0| ac 07 ea 20 85 0d 0d b6 | 24 20 20 ee 20 85 20 ea |... ....|$ . . .|
|000030f0| 20 f7 20 85 3a f2 5f 65 | 28 22 66 72 65 5f 63 6f | . .:._e|("fre_co|
|00003100| 6d 6d 61 6c 69 73 74 22 | 29 0d 0d c0 0e 5b 4f 50 |mmalist"|)....[OP|
|00003110| 54 20 70 61 73 73 25 0d | 0d ca 11 20 20 20 20 20 |T pass%.|... |
|00003120| 20 20 20 41 4c 49 47 4e | 0d 0d d4 48 3b 20 49 6e | ALIGN|...H; In|
|00003130| 20 20 20 20 52 30 20 3d | 20 70 6f 69 6e 74 65 72 | R0 =| pointer|
|00003140| 20 74 6f 20 61 20 63 6f | 6d 6d 61 20 73 65 70 61 | to a co|mma sepa|
|00003150| 72 61 74 65 64 20 6c 69 | 73 74 20 6f 66 20 28 77 |rated li|st of (w|
|00003160| 69 6c 64 63 61 72 64 65 | 64 29 20 66 69 6c 65 73 |ildcarde|d) files|
|00003170| 0d 0d de 2b 3b 20 20 20 | 20 20 20 20 52 31 2d 52 |...+; | R1-R|
|00003180| 34 20 70 61 73 73 65 64 | 20 6f 6e 20 74 6f 20 66 |4 passed| on to f|
|00003190| 72 65 5f 77 69 6c 64 63 | 61 72 64 0d 0d e8 34 3b |re_wildc|ard...4;|
|000031a0| 20 4f 75 74 20 20 20 52 | 30 20 3d 20 6e 75 6d 62 | Out R|0 = numb|
|000031b0| 65 72 20 6f 66 20 66 69 | 6c 65 73 20 74 68 61 74 |er of fi|les that|
|000031c0| 20 61 72 65 20 73 75 63 | 63 65 73 73 66 75 6c 0d | are suc|cessful.|
|000031d0| 0d f2 05 3b 0d 0d fc 12 | 2e 66 72 65 5f 63 6f 6d |...;....|.fre_com|
|000031e0| 6d 61 6c 69 73 74 0d 0e | 06 26 20 20 20 20 20 20 |malist..|.& |
|000031f0| 20 20 53 54 4d 46 44 20 | 20 20 28 73 70 29 21 2c | STMFD | (sp)!,|
|00003200| 20 7b 76 31 2d 76 36 2c | 20 6c 72 7d 0d 0e 10 1a | {v1-v6,| lr}....|
|00003210| 20 20 20 20 20 20 20 20 | 4d 4f 56 20 20 20 20 20 | |MOV |
|00003220| 76 32 2c 20 52 33 0d 0e | 1a 1a 20 20 20 20 20 20 |v2, R3..|.. |
|00003230| 20 20 4d 4f 56 20 20 20 | 20 20 76 33 2c 20 52 32 | MOV | v3, R2|
|00003240| 0d 0e 24 1a 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |..$. | MOV |
|00003250| 20 20 20 20 76 34 2c 20 | 52 31 0d 0e 2e 1a 20 20 | v4, |R1.... |
|00003260| 20 20 20 20 20 20 4d 4f | 56 20 20 20 20 20 76 35 | MO|V v5|
|00003270| 2c 20 52 30 0d 0e 38 3d | 20 20 20 20 20 20 20 20 |, R0..8=| |
|00003280| 4d 4f 56 20 20 20 20 20 | 76 36 2c 20 23 30 20 20 |MOV |v6, #0 |
|00003290| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000032a0| 3b 20 53 75 63 63 65 73 | 73 20 63 6f 75 6e 74 65 |; Succes|s counte|
|000032b0| 72 0d 0e 42 0f 2e 6e 65 | 78 74 5f 63 6f 6d 6d 61 |r..B..ne|xt_comma|
|000032c0| 0d 0e 4c 1e 20 20 20 20 | 20 20 20 20 53 55 42 53 |..L. | SUBS|
|000032d0| 20 20 20 20 76 35 2c 20 | 76 35 2c 20 23 31 0d 0e | v5, |v5, #1..|
|000032e0| 56 26 20 20 20 20 20 20 | 20 20 42 6d 69 20 20 20 |V& | Bmi |
|000032f0| 20 20 64 6f 6e 65 5f 66 | 72 65 5f 63 6f 6d 6d 61 | done_f|re_comma|
|00003300| 6c 69 73 74 0d 0e 60 21 | 2e 6c 6f 6f 70 20 20 20 |list..`!|.loop |
|00003310| 4c 44 52 42 20 20 20 20 | 52 30 2c 20 5b 76 35 2c |LDRB |R0, [v5,|
|00003320| 20 23 31 5d 21 0d 0e 6a | 43 20 20 20 20 20 20 20 | #1]!..j|C |
|00003330| 20 42 4c 20 20 20 20 20 | 20 76 69 73 73 70 61 63 | BL | visspac|
|00003340| 65 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |e | |
|00003350| 20 3b 20 53 6b 69 70 20 | 70 72 65 63 65 64 69 6e | ; Skip |precedin|
|00003360| 67 20 73 70 61 63 65 73 | 0d 0e 74 18 20 20 20 20 |g spaces|..t. |
|00003370| 20 20 20 20 42 6e 65 20 | 20 20 20 20 6c 6f 6f 70 | Bne | loop|
|00003380| 0d 0e 7e 1c 20 20 20 20 | 20 20 20 20 4c 44 52 42 |..~. | LDRB|
|00003390| 20 20 20 20 52 30 2c 20 | 5b 76 35 5d 0d 0e 88 40 | R0, |[v5]...@|
|000033a0| 20 20 20 20 20 20 20 20 | 54 45 51 20 20 20 20 20 | |TEQ |
|000033b0| 52 30 2c 20 23 97 28 22 | 2c 22 29 20 20 20 20 20 |R0, #.("|,") |
|000033c0| 20 20 20 20 20 20 3b 20 | 49 67 6e 6f 72 65 20 22 | ; |Ignore "|
|000033d0| 65 6d 70 74 79 22 20 6e | 61 6d 65 73 0d 0e 92 18 |empty" n|ames....|
|000033e0| 20 20 20 20 20 20 20 20 | 42 65 71 20 20 20 20 20 | |Beq |
|000033f0| 6c 6f 6f 70 0d 0e 9c 33 | 20 20 20 20 20 20 20 20 |loop...3| |
|00003400| 54 45 51 20 20 20 20 20 | 52 30 2c 20 23 30 20 20 |TEQ |R0, #0 |
|00003410| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003420| 3b 20 45 6e 64 20 3f 0d | 0e a6 31 20 20 20 20 20 |; End ?.|..1 |
|00003430| 20 20 20 42 65 71 20 20 | 20 20 20 64 6f 6e 65 5f | Beq | done_|
|00003440| 66 72 65 5f 63 6f 6d 6d | 61 6c 69 73 74 20 20 20 |fre_comm|alist |
|00003450| 20 20 20 3b 20 59 65 73 | 0d 0e b0 1a 20 20 20 20 | ; Yes|.... |
|00003460| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 30 2c 20 | MOV | R0, |
|00003470| 76 35 0d 0e ba 1f 20 20 | 20 20 20 20 20 20 4d 4f |v5.... | MO|
|00003480| 56 20 20 20 20 20 52 31 | 2c 20 23 97 28 22 2c 22 |V R1|, #.(","|
|00003490| 29 0d 0e c4 35 20 20 20 | 20 20 20 20 20 42 4c 20 |)...5 | BL |
|000034a0| 20 20 20 20 20 73 74 72 | 63 68 72 20 20 20 20 20 | str|chr |
|000034b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 46 | | ; F|
|000034c0| 69 6e 64 20 69 74 0d 0e | ce 4a 20 20 20 20 20 20 |ind it..|.J |
|000034d0| 20 20 4d 4f 56 53 20 20 | 20 20 52 31 2c 20 52 30 | MOVS | R1, R0|
|000034e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000034f0| 20 20 3b 20 76 36 3d 20 | 6e 65 78 74 20 63 6f 6d | ; v6= |next com|
|00003500| 6d 61 20 6c 69 73 74 2c | 20 6f 72 20 7a 65 72 6f |ma list,| or zero|
|00003510| 0d 0e d8 1a 20 20 20 20 | 20 20 20 20 4d 4f 56 6e |.... | MOVn|
|00003520| 65 20 20 20 6c 72 2c 20 | 23 30 0d 0e e2 3c 20 20 |e lr, |#0...< |
|00003530| 20 20 20 20 20 20 53 54 | 52 6e 65 42 20 20 6c 72 | ST|RneB lr|
|00003540| 2c 20 5b 52 31 5d 2c 20 | 23 31 20 20 20 20 20 20 |, [R1], |#1 |
|00003550| 20 20 20 20 20 20 3b 20 | 4e 75 6c 6c 2d 74 65 72 | ; |Null-ter|
|00003560| 6d 69 6e 61 74 65 0d 0e | ec 1a 20 20 20 20 20 20 |minate..|.. |
|00003570| 20 20 4d 4f 56 20 20 20 | 20 20 52 30 2c 20 76 35 | MOV | R0, v5|
|00003580| 0d 0e f6 1a 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |.... | MOV |
|00003590| 20 20 20 20 76 35 2c 20 | 52 31 0d 0f 00 1a 20 20 | v5, |R1.... |
|000035a0| 20 20 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 31 | MO|V R1|
|000035b0| 2c 20 76 34 0d 0f 0a 1a | 20 20 20 20 20 20 20 20 |, v4....| |
|000035c0| 4d 4f 56 20 20 20 20 20 | 52 32 2c 20 76 33 0d 0f |MOV |R2, v3..|
|000035d0| 14 1a 20 20 20 20 20 20 | 20 20 4d 4f 56 20 20 20 |.. | MOV |
|000035e0| 20 20 52 33 2c 20 76 32 | 0d 0f 1e 3e 20 20 20 20 | R3, v2|...> |
|000035f0| 20 20 20 20 42 4c 20 20 | 20 20 20 20 66 72 65 5f | BL | fre_|
|00003600| 77 69 6c 64 63 61 72 64 | 20 20 20 20 20 20 20 20 |wildcard| |
|00003610| 20 20 20 20 3b 20 43 61 | 6c 6c 20 73 75 62 2d 72 | ; Ca|ll sub-r|
|00003620| 6f 75 74 69 6e 65 0d 0f | 28 42 20 20 20 20 20 20 |outine..|(B |
|00003630| 20 20 41 44 44 20 20 20 | 20 20 76 36 2c 20 76 36 | ADD | v6, v6|
|00003640| 2c 20 52 30 20 20 20 20 | 20 20 20 20 20 20 20 20 |, R0 | |
|00003650| 20 20 3b 20 55 70 64 61 | 74 65 20 73 75 63 63 65 | ; Upda|te succe|
|00003660| 73 73 20 63 6f 75 6e 74 | 0d 0f 32 1e 20 20 20 20 |ss count|..2. |
|00003670| 20 20 20 20 42 20 20 20 | 20 20 20 20 6e 65 78 74 | B | next|
|00003680| 5f 63 6f 6d 6d 61 0d 0f | 3c 17 2e 64 6f 6e 65 5f |_comma..|<..done_|
|00003690| 66 72 65 5f 63 6f 6d 6d | 61 6c 69 73 74 0d 0f 46 |fre_comm|alist..F|
|000036a0| 3a 20 20 20 20 20 20 20 | 20 4d 4f 56 20 20 20 20 |: | MOV |
|000036b0| 20 52 30 2c 20 76 36 20 | 20 20 20 20 20 20 20 20 | R0, v6 | |
|000036c0| 20 20 20 20 20 20 20 20 | 20 3b 20 52 65 74 75 72 | | ; Retur|
|000036d0| 6e 20 76 61 6c 75 65 0d | 0f 50 36 20 20 20 20 20 |n value.|.P6 |
|000036e0| 20 20 20 4c 44 4d 46 44 | 20 20 20 28 73 70 29 21 | LDMFD| (sp)!|
|000036f0| 2c 20 7b 76 31 2d 76 36 | 2c 20 70 63 7d 5e 20 20 |, {v1-v6|, pc}^ |
|00003700| 20 20 20 3b 20 41 6c 6c | 20 64 6f 6e 65 0d 0f 5a | ; All| done..Z|
|00003710| 05 5d 0d 0f 64 05 e1 0d | 0f 6e 05 3a 0d 0f 78 4b |.]..d...|.n.:..xK|
|00003720| f4 20 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |. ******|********|
|00003730| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003740| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003750| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003760| 2a 2a 2a 2a 2a 2a 2a 0d | 0f 82 05 3a 0d 0f 8c 1d |*******.|...:....|
|00003770| dd 20 f2 5f 61 73 73 65 | 6d 62 6c 65 5f 66 72 65 |. ._asse|mble_fre|
|00003780| 5f 77 69 6c 64 63 61 72 | 64 0d 0f 96 2a ea 20 4c |_wildcar|d...*. L|
|00003790| 5f 63 6f 75 6e 74 2c 20 | 4c 5f 66 69 6e 66 6f 2c |_count, |L_finfo,|
|000037a0| 20 4c 5f 66 69 6c 65 6e | 61 6d 65 2c 20 20 4c 5f | L_filen|ame, L_|
|000037b0| 6c 65 6e 0d 0f a0 31 ea | 20 66 6f 72 6d 61 74 31 |len...1.| format1|
|000037c0| 2c 20 66 6f 72 6d 61 74 | 32 2c 20 66 6f 72 6d 61 |, format|2, forma|
|000037d0| 74 33 2c 20 64 6f 74 5f | 73 74 61 72 2c 20 73 63 |t3, dot_|star, sc|
|000037e0| 61 6e 5f 66 0d 0f aa 1a | ea 20 6e 65 78 74 5f 6c |an_f....|. next_l|
|000037f0| 69 6e 65 2c 20 6e 65 78 | 74 5f 66 69 6c 65 0d 0f |ine, nex|t_file..|
|00003800| b4 2b ea 20 72 65 2c 20 | 76 65 72 62 6f 73 69 74 |.+. re, |verbosit|
|00003810| 79 2c 20 66 6c 61 67 73 | 2c 20 63 6f 75 6e 74 2c |y, flags|, count,|
|00003820| 20 6c 69 6e 65 2c 20 66 | 68 0d 0f be 07 ea 20 85 | line, f|h..... .|
|00003830| 0d 0f c8 22 20 20 ee 20 | 85 20 ea 20 f7 20 85 3a |..." . |. . . .:|
|00003840| f2 5f 65 28 22 4d 61 69 | 6e 50 72 6f 67 72 61 6d |._e("Mai|nProgram|
|00003850| 22 29 0d 0f d2 1c 20 20 | 4c 5f 63 6f 75 6e 74 20 |").... |L_count |
|00003860| 20 20 20 20 20 20 3d 20 | 30 20 3c 3c 20 32 0d 0f | = |0 << 2..|
|00003870| dc 1c 20 20 4c 5f 66 69 | 6e 66 6f 20 20 20 20 20 |.. L_fi|nfo |
|00003880| 20 20 3d 20 31 20 3c 3c | 20 32 0d 0f e6 2d 20 20 | = 1 <<| 2...- |
|00003890| 4c 5f 66 69 6c 65 6e 61 | 6d 65 20 20 20 20 3d 20 |L_filena|me = |
|000038a0| 4c 5f 66 69 6e 66 6f 20 | 2b 20 73 69 7a 65 6f 66 |L_finfo |+ sizeof|
|000038b0| 5f 5f 66 69 6e 66 6f 0d | 0f f0 29 20 20 4c 5f 6c |__finfo.|..) L_l|
|000038c0| 65 6e 20 20 20 20 20 20 | 20 20 20 3d 20 4c 5f 66 |en | = L_f|
|000038d0| 69 6c 65 6e 61 6d 65 20 | 2b 20 46 50 53 49 5a 45 |ilename |+ FPSIZE|
|000038e0| 0d 0f fa 07 20 20 3a 0d | 10 04 18 20 20 72 65 20 |.... :.|... re |
|000038f0| 20 20 20 20 20 20 20 20 | 20 20 20 3d 20 76 32 0d | | = v2.|
|00003900| 10 0e 18 20 20 76 65 72 | 62 6f 73 69 74 79 20 20 |... ver|bosity |
|00003910| 20 20 20 3d 20 76 33 0d | 10 18 18 20 20 66 6c 61 | = v3.|... fla|
|00003920| 67 73 20 20 20 20 20 20 | 20 20 20 3d 20 76 34 0d |gs | = v4.|
|00003930| 10 22 3b 20 20 6c 69 6e | 65 20 20 20 20 20 20 20 |."; lin|e |
|00003940| 20 20 20 3d 20 76 35 20 | 20 20 20 20 20 20 20 20 | = v5 | |
|00003950| 20 20 20 3a f4 20 73 75 | 63 63 65 73 73 66 75 6c | :. su|ccessful|
|00003960| 20 74 65 78 74 20 6c 69 | 6e 65 0d 10 2c 32 20 20 | text li|ne..,2 |
|00003970| 66 68 20 20 20 20 20 20 | 20 20 20 20 20 20 3d 20 |fh | = |
|00003980| 76 36 20 20 20 20 20 20 | 20 20 20 20 20 20 3a f4 |v6 | :.|
|00003990| 20 66 69 6c 65 20 68 61 | 6e 64 6c 65 0d 10 36 0e | file ha|ndle..6.|
|000039a0| 5b 4f 50 54 20 70 61 73 | 73 25 0d 10 40 04 0d 10 |[OPT pas|s%..@...|
|000039b0| 4a 29 2e 66 6f 72 6d 61 | 74 31 20 45 51 55 53 20 |J).forma|t1 EQUS |
|000039c0| a4 63 65 73 63 61 70 65 | 28 22 25 73 5c 6e 22 29 |.cescape|("%s\n")|
|000039d0| 3a 45 51 55 42 20 30 0d | 10 54 2c 2e 66 6f 72 6d |:EQUB 0.|.T,.form|
|000039e0| 61 74 32 20 45 51 55 53 | 20 a4 63 65 73 63 61 70 |at2 EQUS| .cescap|
|000039f0| 65 28 22 25 73 20 25 64 | 5c 6e 22 29 3a 45 51 55 |e("%s %d|\n"):EQU|
|00003a00| 42 20 30 0d 10 5e 31 2e | 66 6f 72 6d 61 74 33 20 |B 0..^1.|format3 |
|00003a10| 45 51 55 53 20 a4 63 65 | 73 63 61 70 65 28 22 25 |EQUS .ce|scape("%|
|00003a20| 73 20 25 34 64 3a 20 25 | 73 5c 6e 22 29 3a 45 51 |s %4d: %|s\n"):EQ|
|00003a30| 55 42 20 30 0d 10 68 1e | 2e 64 6f 74 5f 73 74 61 |UB 0..h.|.dot_sta|
|00003a40| 72 20 45 51 55 53 20 22 | 2e 2a 22 3a 45 51 55 42 |r EQUS "|.*":EQUB|
|00003a50| 20 30 0d 10 72 31 2e 73 | 63 61 6e 5f 66 20 45 51 | 0..r1.s|can_f EQ|
|00003a60| 55 53 20 a4 63 65 73 63 | 61 70 65 28 22 53 63 61 |US .cesc|ape("Sca|
|00003a70| 6e 6e 69 6e 67 20 25 73 | 5c 72 22 29 3a 45 51 55 |nning %s|\r"):EQU|
|00003a80| 42 20 30 0d 10 7c 49 3b | 20 49 6e 20 20 20 20 52 |B 0..|I;| In R|
|00003a90| 30 20 3d 20 70 6f 69 6e | 74 65 72 20 74 6f 20 61 |0 = poin|ter to a|
|00003aa0| 20 60 20 27 2c 20 60 2c | 27 2c 20 60 5c 30 27 20 | ` ', `,|', `\0' |
|00003ab0| 74 65 72 6d 69 6e 61 74 | 65 64 20 77 69 6c 64 63 |terminat|ed wildc|
|00003ac0| 61 72 64 20 66 69 6c 65 | 6e 61 6d 65 0d 10 86 29 |ard file|name...)|
|00003ad0| 3b 20 20 20 20 20 20 20 | 52 31 20 3d 20 70 6f 69 |; |R1 = poi|
|00003ae0| 6e 74 65 72 20 74 6f 20 | 61 20 52 65 20 74 6f 20 |nter to |a Re to |
|00003af0| 6d 61 74 63 68 0d 10 90 | 20 3b 20 20 20 20 20 20 |match...| ; |
|00003b00| 20 52 32 20 3d 20 76 65 | 72 62 6f 73 69 74 79 20 | R2 = ve|rbosity |
|00003b10| 6c 65 76 65 6c 0d 10 9a | 23 3b 20 20 20 20 20 20 |level...|#; |
|00003b20| 20 52 33 20 3d 20 62 69 | 74 73 65 74 20 6f 66 20 | R3 = bi|tset of |
|00003b30| 46 6c 61 67 5f 2e 2e 2e | 0d 10 a4 36 3b 20 20 20 |Flag_...|...6; |
|00003b40| 20 20 20 20 52 34 20 3d | 20 72 6f 75 74 69 6e 65 | R4 =| routine|
|00003b50| 20 74 6f 20 63 61 6c 6c | 20 66 6f 72 20 65 61 63 | to call| for eac|
|00003b60| 68 20 6c 69 6e 65 20 6f | 66 20 66 69 6c 65 0d 10 |h line o|f file..|
|00003b70| ae 4b 3b 20 4f 75 74 20 | 20 20 46 6f 72 20 65 61 |.K; Out | For ea|
|00003b80| 63 68 20 6d 61 74 63 68 | 69 6e 67 20 77 69 6c 64 |ch match|ing wild|
|00003b90| 63 61 72 64 65 64 20 6e | 61 6d 65 20 28 6d 61 79 |carded n|ame (may|
|00003ba0| 20 72 65 63 75 72 73 65 | 29 20 77 65 20 63 68 65 | recurse|) we che|
|00003bb0| 63 6b 20 69 66 20 74 68 | 65 0d 10 b8 1b 3b 20 20 |ck if th|e....; |
|00003bc0| 20 20 20 20 20 66 69 6c | 65 20 74 79 70 65 20 69 | fil|e type i|
|00003bd0| 73 20 4f 4b 0d 10 c2 3e | 3b 20 20 20 20 20 20 20 |s OK...>|; |
|00003be0| 54 68 65 6e 20 77 65 20 | 6f 70 65 6e 20 66 69 6c |Then we |open fil|
|00003bf0| 65 20 61 73 20 61 20 74 | 65 78 74 20 66 69 6c 65 |e as a t|ext file|
|00003c00| 20 26 20 70 61 72 73 65 | 20 65 61 63 68 20 6c 69 | & parse| each li|
|00003c10| 6e 65 0d 10 cc 41 3b 20 | 20 20 20 20 20 20 2d 2d |ne...A; | --|
|00003c20| 3e 20 6e 75 6d 62 65 72 | 20 6f 66 20 66 69 6c 65 |> number| of file|
|00003c30| 73 20 74 68 61 74 20 63 | 6f 6e 74 61 69 6e 20 61 |s that c|ontain a|
|00003c40| 6e 79 20 22 6d 61 74 63 | 68 22 69 6e 67 20 6c 69 |ny "matc|h"ing li|
|00003c50| 6e 65 73 0d 10 d6 05 3b | 0d 10 e0 11 20 20 20 20 |nes....;|.... |
|00003c60| 20 20 20 20 41 4c 49 47 | 4e 0d 10 ea 11 2e 66 72 | ALIG|N.....fr|
|00003c70| 65 5f 77 69 6c 64 63 61 | 72 64 0d 10 f4 26 20 20 |e_wildca|rd...& |
|00003c80| 20 20 20 20 20 20 53 54 | 4d 46 44 20 20 20 28 73 | ST|MFD (s|
|00003c90| 70 29 21 2c 20 7b 76 31 | 2d 76 36 2c 20 6c 72 7d |p)!, {v1|-v6, lr}|
|00003ca0| 0d 10 fe 28 20 20 20 20 | 20 20 20 20 53 55 42 20 |...( | SUB |
|00003cb0| 20 20 20 20 6c 6f 63 61 | 6c 2c 20 6c 6f 63 61 6c | loca|l, local|
|00003cc0| 2c 20 23 4c 5f 6c 65 6e | 0d 11 08 1a 20 20 20 20 |, #L_len|.... |
|00003cd0| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 72 65 2c 20 | MOV | re, |
|00003ce0| 52 31 0d 11 12 21 20 20 | 20 20 20 20 20 20 4d 4f |R1...! | MO|
|00003cf0| 56 20 20 20 20 20 76 65 | 72 62 6f 73 69 74 79 2c |V ve|rbosity,|
|00003d00| 20 52 32 0d 11 1c 1d 20 | 20 20 20 20 20 20 20 4d | R2.... | M|
|00003d10| 4f 56 20 20 20 20 20 66 | 6c 61 67 73 2c 20 52 33 |OV f|lags, R3|
|00003d20| 0d 11 26 1a 20 20 20 20 | 20 20 20 20 4d 4f 56 20 |..&. | MOV |
|00003d30| 20 20 20 20 6c 72 2c 20 | 23 30 0d 11 30 45 20 20 | lr, |#0..0E |
|00003d40| 20 20 20 20 20 20 53 54 | 52 20 20 20 20 20 6c 72 | ST|R lr|
|00003d50| 2c 20 5b 6c 6f 63 61 6c | 2c 20 23 4c 5f 63 6f 75 |, [local|, #L_cou|
|00003d60| 6e 74 5d 20 20 20 3b 20 | 4e 6f 20 6d 61 74 63 68 |nt] ; |No match|
|00003d70| 65 64 20 66 69 6c 65 73 | 20 73 6f 20 66 61 72 0d |ed files| so far.|
|00003d80| 11 3a 1a 20 20 20 20 20 | 20 20 20 4d 4f 56 20 20 |.:. | MOV |
|00003d90| 20 20 20 52 31 2c 20 52 | 30 0d 11 44 27 20 20 20 | R1, R|0..D' |
|00003da0| 20 20 20 20 20 41 44 44 | 20 20 20 20 20 52 30 2c | ADD| R0,|
|00003db0| 20 6c 6f 63 61 6c 2c 20 | 23 4c 5f 66 69 6e 66 6f | local, |#L_finfo|
|00003dc0| 0d 11 4e 1a 20 20 20 20 | 20 20 20 20 42 4c 20 20 |..N. | BL |
|00003dd0| 20 20 20 20 78 64 66 69 | 6e 64 0d 11 58 0e 2e 6e | xdfi|nd..X..n|
|00003de0| 65 78 74 5f 66 69 6c 65 | 0d 11 62 26 20 20 20 20 |ext_file|..b& |
|00003df0| 20 20 20 20 53 57 49 76 | 73 20 20 20 22 4f 53 5f | SWIv|s "OS_|
|00003e00| 47 65 6e 65 72 61 74 65 | 45 72 72 6f 72 22 0d 11 |Generate|Error"..|
|00003e10| 6c 4b 20 20 20 20 20 20 | 20 20 43 4d 50 20 20 20 |lK | CMP |
|00003e20| 20 20 52 30 2c 20 23 30 | 20 20 20 20 20 20 20 20 | R0, #0| |
|00003e30| 20 20 20 20 20 20 20 20 | 20 20 3b 20 41 6e 79 20 | | ; Any |
|00003e40| 66 69 6c 65 73 20 6d 61 | 74 63 68 69 6e 67 20 77 |files ma|tching w|
|00003e50| 69 6c 64 63 61 72 64 20 | 3f 0d 11 76 3b 20 20 20 |ildcard |?..v; |
|00003e60| 20 20 20 20 20 4c 44 52 | 65 71 20 20 20 52 30 2c | LDR|eq R0,|
|00003e70| 20 5b 6c 6f 63 61 6c 2c | 20 23 4c 5f 63 6f 75 6e | [local,| #L_coun|
|00003e80| 74 5d 20 20 20 3b 20 4e | 6f 2c 20 73 6f 20 72 65 |t] ; N|o, so re|
|00003e90| 74 75 72 6e 0d 11 80 28 | 20 20 20 20 20 20 20 20 |turn...(| |
|00003ea0| 41 44 44 65 71 20 20 20 | 6c 6f 63 61 6c 2c 20 6c |ADDeq |local, l|
|00003eb0| 6f 63 61 6c 2c 20 23 4c | 5f 6c 65 6e 0d 11 8a 27 |ocal, #L|_len...'|
|00003ec0| 20 20 20 20 20 20 20 20 | 4c 44 4d 65 71 46 44 20 | |LDMeqFD |
|00003ed0| 28 73 70 29 21 2c 20 7b | 76 31 2d 76 36 2c 20 70 |(sp)!, {|v1-v6, p|
|00003ee0| 63 7d 5e 0d 11 94 29 20 | 20 20 20 20 20 20 20 a4 |c}^...) | .|
|00003ef0| 61 64 72 6c 28 22 22 2c | 20 30 2c 20 42 53 53 5f |adrl("",| 0, BSS_|
|00003f00| 6e 61 6d 65 5f 62 75 66 | 66 65 72 29 0d 11 9e 27 |name_buf|fer)...'|
|00003f10| 20 20 20 20 20 20 20 20 | 41 44 44 20 20 20 20 20 | |ADD |
|00003f20| 52 31 2c 20 6c 6f 63 61 | 6c 2c 20 23 4c 5f 66 69 |R1, loca|l, #L_fi|
|00003f30| 6e 66 6f 0d 11 a8 3b 20 | 20 20 20 20 20 20 20 42 |nfo...; | B|
|00003f40| 4c 20 20 20 20 20 20 64 | 66 6f 75 6e 64 20 20 20 |L d|found |
|00003f50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00003f60| 20 47 65 74 20 66 75 6c | 6c 20 6e 61 6d 65 0d 11 | Get ful|l name..|
|00003f70| b2 35 20 20 20 20 20 20 | 20 20 4c 44 52 20 20 20 |.5 | LDR |
|00003f80| 20 20 52 30 2c 20 5b 6c | 6f 63 61 6c 2c 20 23 4c | R0, [l|ocal, #L|
|00003f90| 5f 66 69 6e 66 6f 2b 5f | 66 69 6e 66 6f 5f 74 79 |_finfo+_|finfo_ty|
|00003fa0| 70 65 5d 0d 11 bc 3c 20 | 20 20 20 20 20 20 20 43 |pe]...< | C|
|00003fb0| 4d 50 20 20 20 20 20 52 | 30 2c 20 23 31 20 20 20 |MP R|0, #1 |
|00003fc0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00003fd0| 20 49 73 20 69 74 20 61 | 20 66 69 6c 65 20 3f 0d | Is it a| file ?.|
|00003fe0| 11 c6 24 20 20 20 20 20 | 20 20 20 42 65 71 20 20 |..$ | Beq |
|00003ff0| 20 20 20 69 73 5f 61 5f | 66 69 6c 65 5f 6f 62 6a | is_a_|file_obj|
|00004000| 65 63 74 0d 11 d0 3e 20 | 20 20 20 20 20 20 20 54 |ect...> | T|
|00004010| 53 54 20 20 20 20 20 66 | 6c 61 67 73 2c 20 23 46 |ST f|lags, #F|
|00004020| 6c 61 67 5f 52 65 63 75 | 72 73 65 20 20 20 20 3b |lag_Recu|rse ;|
|00004030| 20 43 61 6e 20 77 65 20 | 72 65 63 75 72 73 65 20 | Can we |recurse |
|00004040| 3f 0d 11 da 32 20 20 20 | 20 20 20 20 20 42 65 71 |?...2 | Beq|
|00004050| 20 20 20 20 20 63 61 6e | 74 5f 6c 6f 61 64 5f 69 | can|t_load_i|
|00004060| 6e 5f 77 69 6c 64 63 61 | 72 64 20 20 20 3b 20 4e |n_wildca|rd ; N|
|00004070| 6f 20 21 0d 11 e4 2a 20 | 20 20 20 20 20 20 20 41 |o !...* | A|
|00004080| 44 44 20 20 20 20 20 52 | 30 2c 20 6c 6f 63 61 6c |DD R|0, local|
|00004090| 2c 20 23 4c 5f 66 69 6c | 65 6e 61 6d 65 0d 11 ee |, #L_fil|ename...|
|000040a0| 29 20 20 20 20 20 20 20 | 20 a4 61 64 72 6c 28 22 |) | .adrl("|
|000040b0| 22 2c 20 31 2c 20 42 53 | 53 5f 6e 61 6d 65 5f 62 |", 1, BS|S_name_b|
|000040c0| 75 66 66 65 72 29 0d 11 | f8 23 20 20 20 20 20 20 |uffer)..|.# |
|000040d0| 20 20 4d 4f 56 20 20 20 | 20 20 52 32 2c 20 23 46 | MOV | R2, #F|
|000040e0| 50 53 49 5a 45 20 2d 20 | 31 0d 12 02 1b 20 20 20 |PSIZE - |1.... |
|000040f0| 20 20 20 20 20 42 4c 20 | 20 20 20 20 20 73 74 72 | BL | str|
|00004100| 63 70 79 6e 0d 12 0c 1a | 20 20 20 20 20 20 20 20 |cpyn....| |
|00004110| 42 4c 20 20 20 20 20 20 | 73 74 72 6c 65 6e 0d 12 |BL |strlen..|
|00004120| 16 42 20 20 20 20 20 20 | 20 20 52 53 42 20 20 20 |.B | RSB |
|00004130| 20 20 52 32 2c 20 52 30 | 2c 20 23 46 50 53 49 5a | R2, R0|, #FPSIZ|
|00004140| 45 20 2d 20 31 20 20 20 | 20 20 3b 20 42 79 74 65 |E - 1 | ; Byte|
|00004150| 73 20 6c 65 66 74 20 69 | 6e 20 62 75 66 66 65 72 |s left i|n buffer|
|00004160| 0d 12 20 2a 20 20 20 20 | 20 20 20 20 41 44 44 20 |.. * | ADD |
|00004170| 20 20 20 20 6c 72 2c 20 | 6c 6f 63 61 6c 2c 20 23 | lr, |local, #|
|00004180| 4c 5f 66 69 6c 65 6e 61 | 6d 65 0d 12 2a 1e 20 20 |L_filena|me..*. |
|00004190| 20 20 20 20 20 20 41 44 | 44 20 20 20 20 20 52 30 | AD|D R0|
|000041a0| 2c 20 6c 72 2c 20 52 30 | 0d 12 34 22 20 20 20 20 |, lr, R0|..4" |
|000041b0| 20 20 20 20 a4 61 64 72 | 6c 28 22 22 2c 20 31 2c | .adr|l("", 1,|
|000041c0| 20 64 6f 74 5f 73 74 61 | 72 29 0d 12 3e 39 20 20 | dot_sta|r)..>9 |
|000041d0| 20 20 20 20 20 20 42 4c | 20 20 20 20 20 20 73 74 | BL| st|
|000041e0| 72 63 70 79 6e 20 20 20 | 20 20 20 20 20 20 20 20 |rcpyn | |
|000041f0| 20 20 20 20 20 20 3b 20 | 43 6f 6e 63 61 74 61 6e | ; |Concatan|
|00004200| 61 74 65 0d 12 48 2a 20 | 20 20 20 20 20 20 20 41 |ate..H* | A|
|00004210| 44 44 20 20 20 20 20 52 | 30 2c 20 6c 6f 63 61 6c |DD R|0, local|
|00004220| 2c 20 23 4c 5f 66 69 6c | 65 6e 61 6d 65 0d 12 52 |, #L_fil|ename..R|
|00004230| 1a 20 20 20 20 20 20 20 | 20 4d 4f 56 20 20 20 20 |. | MOV |
|00004240| 20 52 31 2c 20 72 65 0d | 12 5c 21 20 20 20 20 20 | R1, re.|.\! |
|00004250| 20 20 20 4d 4f 56 20 20 | 20 20 20 52 32 2c 20 76 | MOV | R2, v|
|00004260| 65 72 62 6f 73 69 74 79 | 0d 12 66 1d 20 20 20 20 |erbosity|..f. |
|00004270| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 33 2c 20 | MOV | R3, |
|00004280| 66 6c 61 67 73 0d 12 70 | 35 20 20 20 20 20 20 20 |flags..p|5 |
|00004290| 20 42 4c 20 20 20 20 20 | 20 66 72 65 5f 77 69 6c | BL | fre_wil|
|000042a0| 64 63 61 72 64 20 20 20 | 20 20 20 20 20 20 20 20 |dcard | |
|000042b0| 20 3b 20 52 65 63 75 72 | 73 65 0d 12 7a 29 20 20 | ; Recur|se..z) |
|000042c0| 20 20 20 20 20 20 4c 44 | 52 20 20 20 20 20 6c 72 | LD|R lr|
|000042d0| 2c 20 5b 6c 6f 63 61 6c | 2c 20 23 4c 5f 63 6f 75 |, [local|, #L_cou|
|000042e0| 6e 74 5d 0d 12 84 1e 20 | 20 20 20 20 20 20 20 41 |nt].... | A|
|000042f0| 44 44 20 20 20 20 20 6c | 72 2c 20 6c 72 2c 20 52 |DD l|r, lr, R|
|00004300| 30 0d 12 8e 29 20 20 20 | 20 20 20 20 20 53 54 52 |0...) | STR|
|00004310| 20 20 20 20 20 6c 72 2c | 20 5b 6c 6f 63 61 6c 2c | lr,| [local,|
|00004320| 20 23 4c 5f 63 6f 75 6e | 74 5d 0d 12 98 29 20 20 | #L_coun|t]...) |
|00004330| 20 20 20 20 20 20 42 20 | 20 20 20 20 20 20 63 61 | B | ca|
|00004340| 6e 74 5f 6c 6f 61 64 5f | 69 6e 5f 77 69 6c 64 63 |nt_load_|in_wildc|
|00004350| 61 72 64 0d 12 a2 15 2e | 69 73 5f 61 5f 66 69 6c |ard.....|is_a_fil|
|00004360| 65 5f 6f 62 6a 65 63 74 | 0d 12 ac 29 20 20 20 20 |e_object|...) |
|00004370| 20 20 20 20 a4 61 64 72 | 6c 28 22 22 2c 20 30 2c | .adr|l("", 0,|
|00004380| 20 42 53 53 5f 6e 61 6d | 65 5f 62 75 66 66 65 72 | BSS_nam|e_buffer|
|00004390| 29 0d 12 b6 25 20 20 20 | 20 20 20 20 20 4d 4f 56 |)...% | MOV|
|000043a0| 20 20 20 20 20 52 31 2c | 20 23 5f 54 45 58 54 49 | R1,| #_TEXTI|
|000043b0| 4f 5f 52 45 41 44 0d 12 | c0 45 20 20 20 20 20 20 |O_READ..|.E |
|000043c0| 20 20 54 53 54 20 20 20 | 20 20 66 6c 61 67 73 2c | TST | flags,|
|000043d0| 20 23 46 6c 61 67 5f 41 | 6c 6c 20 20 20 20 20 20 | #Flag_A|ll |
|000043e0| 20 20 3b 20 52 65 61 64 | 20 69 6e 20 61 6c 6c 20 | ; Read| in all |
|000043f0| 66 69 6c 65 74 79 70 65 | 73 20 3f 0d 12 ca 2b 20 |filetype|s ?...+ |
|00004400| 20 20 20 20 20 20 20 84 | 52 6e 65 20 20 20 52 31 | .|Rne R1|
|00004410| 2c 20 52 31 2c 20 23 5f | 54 45 58 54 49 4f 5f 41 |, R1, #_|TEXTIO_A|
|00004420| 4c 4c 54 45 58 54 0d 12 | d4 41 20 20 20 20 20 20 |LLTEXT..|.A |
|00004430| 20 20 54 53 54 20 20 20 | 20 20 66 6c 61 67 73 2c | TST | flags,|
|00004440| 20 23 46 6c 61 67 5f 42 | 61 73 69 63 20 20 20 20 | #Flag_B|asic |
|00004450| 20 20 3b 20 50 72 65 2d | 70 72 6f 63 65 73 73 20 | ; Pre-|process |
|00004460| 62 61 73 69 63 20 3f 0d | 12 de 2b 20 20 20 20 20 |basic ?.|..+ |
|00004470| 20 20 20 84 52 6e 65 20 | 20 20 52 31 2c 20 52 31 | .Rne | R1, R1|
|00004480| 2c 20 23 5f 54 45 58 54 | 49 4f 5f 42 41 53 54 45 |, #_TEXT|IO_BASTE|
|00004490| 58 54 0d 12 e8 42 20 20 | 20 20 20 20 20 20 42 4c |XT...B | BL|
|000044a0| 20 20 20 20 20 20 78 74 | 65 78 74 6f 70 65 6e 20 | xt|extopen |
|000044b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|000044c0| 4f 70 65 6e 20 75 70 20 | 66 69 6c 65 20 74 6f 20 |Open up |file to |
|000044d0| 72 65 61 64 0d 12 f2 26 | 20 20 20 20 20 20 20 20 |read...&| |
|000044e0| 53 57 49 76 73 20 20 20 | 22 4f 53 5f 47 65 6e 65 |SWIvs |"OS_Gene|
|000044f0| 72 61 74 65 45 72 72 6f | 72 22 0d 12 fc 41 20 20 |rateErro|r"...A |
|00004500| 20 20 20 20 20 20 4d 4f | 56 53 20 20 20 20 66 68 | MO|VS fh|
|00004510| 2c 20 52 30 20 20 20 20 | 20 20 20 20 20 20 20 20 |, R0 | |
|00004520| 20 20 20 20 20 20 3b 20 | 53 65 65 20 69 66 20 6d | ; |See if m|
|00004530| 69 73 6d 61 74 63 68 65 | 64 20 21 0d 13 06 29 20 |ismatche|d !...) |
|00004540| 20 20 20 20 20 20 20 42 | 65 71 20 20 20 20 20 63 | B|eq c|
|00004550| 61 6e 74 5f 6c 6f 61 64 | 5f 69 6e 5f 77 69 6c 64 |ant_load|_in_wild|
|00004560| 63 61 72 64 0d 13 10 3b | 20 20 20 20 20 20 20 20 |card...;| |
|00004570| a4 53 75 62 74 72 61 63 | 74 49 6d 6d 65 64 69 61 |.Subtrac|tImmedia|
|00004580| 74 65 28 22 22 2c 20 30 | 2c 20 31 2c 20 46 69 6c |te("", 0|, 1, Fil|
|00004590| 65 54 79 70 65 5f 42 61 | 73 69 63 2c 20 b9 29 0d |eType_Ba|sic, .).|
|000045a0| 13 1a 28 20 20 20 20 20 | 20 20 20 4d 4f 56 6e 65 |..( | MOVne|
|000045b0| 20 20 20 52 30 2c 20 23 | 52 45 5f 44 45 46 41 55 | R0, #|RE_DEFAU|
|000045c0| 4c 54 5f 57 4f 52 44 0d | 13 24 2a 20 20 20 20 20 |LT_WORD.|.$* |
|000045d0| 20 20 20 a4 61 64 72 6c | 28 22 65 71 22 2c 20 30 | .adrl|("eq", 0|
|000045e0| 2c 20 42 53 53 5f 77 6f | 72 64 5f 74 61 62 6c 65 |, BSS_wo|rd_table|
|000045f0| 29 0d 13 2e 3c 20 20 20 | 20 20 20 20 20 42 4c 20 |)...< | BL |
|00004600| 20 20 20 20 20 72 65 5f | 69 73 77 6f 72 64 20 20 | re_|isword |
|00004610| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 53 | | ; S|
|00004620| 65 74 20 77 6f 72 64 20 | 74 61 62 6c 65 0d 13 38 |et word |table..8|
|00004630| 25 20 20 20 20 20 20 20 | 20 54 53 54 20 20 20 20 |% | TST |
|00004640| 20 66 6c 61 67 73 2c 20 | 23 46 6c 61 67 5f 53 63 | flags, |#Flag_Sc|
|00004650| 61 6e 0d 13 42 20 20 20 | 20 20 20 20 20 20 42 4c |an..B | BL|
|00004660| 6e 65 20 20 20 20 63 6c | 65 61 72 5f 74 6f 5f 65 |ne cl|ear_to_e|
|00004670| 6f 6c 0d 13 4c 22 20 20 | 20 20 20 20 20 20 a4 61 |ol..L" | .a|
|00004680| 64 72 6c 28 22 6e 65 22 | 2c 20 30 2c 20 73 63 61 |drl("ne"|, 0, sca|
|00004690| 6e 5f 66 29 0d 13 56 2b | 20 20 20 20 20 20 20 20 |n_f)..V+| |
|000046a0| a4 61 64 72 6c 28 22 6e | 65 22 2c 20 31 2c 20 42 |.adrl("n|e", 1, B|
|000046b0| 53 53 5f 6e 61 6d 65 5f | 62 75 66 66 65 72 29 0d |SS_name_|buffer).|
|000046c0| 13 60 28 20 20 20 20 20 | 20 20 20 53 57 49 6e 65 |.`( | SWIne|
|000046d0| 20 20 20 22 43 41 73 73 | 65 6d 62 6c 65 72 5f 43 | "CAss|embler_C|
|000046e0| 50 72 69 6e 74 66 22 0d | 13 6a 4b 20 20 20 20 20 |Printf".|.jK |
|000046f0| 20 20 20 42 49 43 20 20 | 20 20 20 66 6c 61 67 73 | BIC | flags|
|00004700| 2c 20 66 6c 61 67 73 2c | 20 23 46 6c 61 67 5f 4d |, flags,| #Flag_M|
|00004710| 61 74 63 68 3b 20 46 6c | 61 67 20 6e 6f 20 6d 61 |atch; Fl|ag no ma|
|00004720| 74 63 68 65 73 20 69 6e | 20 74 68 69 73 20 66 69 |tches in| this fi|
|00004730| 6c 65 0d 13 74 3c 20 20 | 20 20 20 20 20 20 54 53 |le..t< | TS|
|00004740| 54 20 20 20 20 20 66 6c | 61 67 73 2c 20 23 46 6c |T fl|ags, #Fl|
|00004750| 61 67 5f 48 6f 75 72 47 | 6c 61 73 73 20 84 20 46 |ag_HourG|lass . F|
|00004760| 6c 61 67 5f 48 6f 75 72 | 47 6c 61 73 73 50 0d 13 |lag_Hour|GlassP..|
|00004770| 7e 38 20 20 20 20 20 20 | 20 20 4d 4f 56 6e 65 20 |~8 | MOVne |
|00004780| 20 20 52 30 2c 20 23 48 | 6f 75 72 47 6c 61 73 73 | R0, #H|ourGlass|
|00004790| 5f 54 6f 70 4c 45 44 20 | 20 20 3b 20 54 6f 67 67 |_TopLED | ; Togg|
|000047a0| 6c 65 20 74 6f 70 0d 13 | 88 24 20 20 20 20 20 20 |le top..|.$ |
|000047b0| 20 20 42 4c 6e 65 20 20 | 20 20 68 6f 75 72 67 6c | BLne | hourgl|
|000047c0| 61 73 73 5f 74 6f 67 67 | 6c 65 0d 13 92 1a 20 20 |ass_togg|le.... |
|000047d0| 20 20 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 30 | MO|V R0|
|000047e0| 2c 20 66 68 0d 13 9c 1f | 20 20 20 20 20 20 20 20 |, fh....| |
|000047f0| 42 4c 20 20 20 20 20 20 | 78 74 65 78 74 6c 65 6e |BL |xtextlen|
|00004800| 67 74 68 0d 13 a6 26 20 | 20 20 20 20 20 20 20 53 |gth...& | S|
|00004810| 57 49 76 73 20 20 20 22 | 4f 53 5f 47 65 6e 65 72 |WIvs "|OS_Gener|
|00004820| 61 74 65 45 72 72 6f 72 | 22 0d 13 b0 26 20 20 20 |ateError|"...& |
|00004830| 20 20 20 20 20 53 54 52 | 20 20 20 20 20 52 30 2c | STR| R0,|
|00004840| 20 42 53 53 5f 46 69 6c | 65 4c 65 6e 67 74 68 0d | BSS_Fil|eLength.|
|00004850| 13 ba 0e 2e 6e 65 78 74 | 5f 6c 69 6e 65 0d 13 c4 |....next|_line...|
|00004860| 2b 20 20 20 20 20 20 20 | 20 54 53 54 20 20 20 20 |+ | TST |
|00004870| 20 66 6c 61 67 73 2c 20 | 23 46 6c 61 67 5f 48 6f | flags, |#Flag_Ho|
|00004880| 75 72 47 6c 61 73 73 50 | 0d 13 ce 1a 20 20 20 20 |urGlassP|.... |
|00004890| 20 20 20 20 4d 4f 56 6e | 65 20 20 20 52 30 2c 20 | MOVn|e R0, |
|000048a0| 66 68 0d 13 d8 1c 20 20 | 20 20 20 20 20 20 42 4c |fh.... | BL|
|000048b0| 6e 65 20 20 20 20 74 65 | 78 74 74 65 6c 6c 0d 13 |ne te|xttell..|
|000048c0| e2 26 20 20 20 20 20 20 | 20 20 4c 44 52 6e 65 20 |.& | LDRne |
|000048d0| 20 20 52 31 2c 20 42 53 | 53 5f 46 69 6c 65 4c 65 | R1, BS|S_FileLe|
|000048e0| 6e 67 74 68 0d 13 ec 45 | 20 20 20 20 20 20 20 20 |ngth...E| |
|000048f0| 42 4c 6e 65 20 20 20 20 | 68 6f 75 72 67 6c 61 73 |BLne |hourglas|
|00004900| 73 5f 70 65 72 63 65 6e | 74 61 67 65 20 20 20 20 |s_percen|tage |
|00004910| 3b 20 4f 6e 6c 79 20 69 | 66 20 77 61 6e 74 20 70 |; Only i|f want p|
|00004920| 65 72 63 65 6e 74 61 67 | 65 0d 13 f6 1a 20 20 20 |ercentag|e.... |
|00004930| 20 20 20 20 20 4d 4f 56 | 20 20 20 20 20 52 30 2c | MOV| R0,|
|00004940| 20 66 68 0d 14 00 3e 20 | 20 20 20 20 20 20 20 42 | fh...> | B|
|00004950| 4c 20 20 20 20 20 20 78 | 74 65 78 74 67 65 74 73 |L x|textgets|
|00004960| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00004970| 20 52 65 61 64 20 6c 69 | 6e 65 20 6e 75 6d 62 65 | Read li|ne numbe|
|00004980| 72 0d 14 0a 26 20 20 20 | 20 20 20 20 20 53 57 49 |r...& | SWI|
|00004990| 76 73 20 20 20 22 4f 53 | 5f 47 65 6e 65 72 61 74 |vs "OS|_Generat|
|000049a0| 65 45 72 72 6f 72 22 0d | 14 14 1a 20 20 20 20 20 |eError".|... |
|000049b0| 20 20 20 43 4d 50 20 20 | 20 20 20 52 30 2c 20 23 | CMP | R0, #|
|000049c0| 30 0d 14 1e 1d 20 20 20 | 20 20 20 20 20 42 65 71 |0.... | Beq|
|000049d0| 20 20 20 20 20 64 6f 6e | 65 5f 66 69 6c 65 0d 14 | don|e_file..|
|000049e0| 28 3e 20 20 20 20 20 20 | 20 20 4d 4f 56 20 20 20 |(> | MOV |
|000049f0| 20 20 70 63 2c 20 52 34 | 20 20 20 20 20 20 20 20 | pc, R4| |
|00004a00| 20 20 20 20 20 20 20 20 | 20 20 3b 20 47 6f 74 6f | | ; Goto|
|00004a10| 20 73 75 62 2d 72 6f 75 | 74 69 6e 65 0d 14 32 0e | sub-rou|tine..2.|
|00004a20| 2e 64 6f 6e 65 5f 66 69 | 6c 65 0d 14 3c 1a 20 20 |.done_fi|le..<. |
|00004a30| 20 20 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 30 | MO|V R0|
|00004a40| 2c 20 66 68 0d 14 46 38 | 20 20 20 20 20 20 20 20 |, fh..F8| |
|00004a50| 42 4c 20 20 20 20 20 20 | 78 74 65 78 74 63 6c 6f |BL |xtextclo|
|00004a60| 73 65 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |se | |
|00004a70| 3b 20 43 6c 6f 73 65 20 | 66 69 6c 65 0d 14 50 26 |; Close |file..P&|
|00004a80| 20 20 20 20 20 20 20 20 | 53 57 49 76 73 20 20 20 | |SWIvs |
|00004a90| 22 4f 53 5f 47 65 6e 65 | 72 61 74 65 45 72 72 6f |"OS_Gene|rateErro|
|00004aa0| 72 22 0d 14 5a 48 20 20 | 20 20 20 20 20 20 54 53 |r"..ZH | TS|
|00004ab0| 54 20 20 20 20 20 66 6c | 61 67 73 2c 20 23 46 6c |T fl|ags, #Fl|
|00004ac0| 61 67 5f 4d 61 74 63 68 | 20 20 20 20 20 20 3b 20 |ag_Match| ; |
|00004ad0| 41 6e 79 20 6d 61 74 63 | 68 65 73 20 69 6e 20 74 |Any matc|hes in t|
|00004ae0| 68 69 73 20 66 69 6c 65 | 20 3f 0d 14 64 29 20 20 |his file| ?..d) |
|00004af0| 20 20 20 20 20 20 4c 44 | 52 6e 65 20 20 20 52 30 | LD|Rne R0|
|00004b00| 2c 20 5b 6c 6f 63 61 6c | 2c 20 23 4c 5f 63 6f 75 |, [local|, #L_cou|
|00004b10| 6e 74 5d 0d 14 6e 31 20 | 20 20 20 20 20 20 20 41 |nt]..n1 | A|
|00004b20| 44 44 6e 65 20 20 20 52 | 30 2c 20 52 30 2c 20 23 |DDne R|0, R0, #|
|00004b30| 31 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |1 | ;|
|00004b40| 20 59 65 73 0d 14 78 29 | 20 20 20 20 20 20 20 20 | Yes..x)| |
|00004b50| 53 54 52 6e 65 20 20 20 | 52 30 2c 20 5b 6c 6f 63 |STRne |R0, [loc|
|00004b60| 61 6c 2c 20 23 4c 5f 63 | 6f 75 6e 74 5d 0d 14 82 |al, #L_c|ount]...|
|00004b70| 1a 2e 63 61 6e 74 5f 6c | 6f 61 64 5f 69 6e 5f 77 |..cant_l|oad_in_w|
|00004b80| 69 6c 64 63 61 72 64 0d | 14 8c 4d 20 20 20 20 20 |ildcard.|..M |
|00004b90| 20 20 20 41 44 44 20 20 | 20 20 20 52 30 2c 20 6c | ADD | R0, l|
|00004ba0| 6f 63 61 6c 2c 20 23 4c | 5f 66 69 6e 66 6f 20 20 |ocal, #L|_finfo |
|00004bb0| 20 20 20 3b 20 46 69 6e | 64 20 6e 65 78 74 20 66 | ; Fin|d next f|
|00004bc0| 69 6c 65 20 74 68 61 74 | 20 6d 61 74 63 68 65 73 |ile that| matches|
|00004bd0| 20 74 68 65 0d 14 96 36 | 20 20 20 20 20 20 20 20 | the...6| |
|00004be0| 42 4c 20 20 20 20 20 20 | 78 64 6e 65 78 74 20 20 |BL |xdnext |
|00004bf0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00004c00| 3b 20 77 69 6c 64 63 61 | 72 64 0d 14 a0 1d 20 20 |; wildca|rd.... |
|00004c10| 20 20 20 20 20 20 42 20 | 20 20 20 20 20 20 6e 65 | B | ne|
|00004c20| 78 74 5f 66 69 6c 65 0d | 14 aa 05 3b 0d 14 b4 05 |xt_file.|...;....|
|00004c30| 3b 0d 14 be 12 2e 66 72 | 65 5f 6d 61 74 63 68 6c |;.....fr|e_matchl|
|00004c40| 69 6e 65 0d 14 c8 3b 20 | 20 20 20 20 20 20 20 4d |ine...; | M|
|00004c50| 4f 56 20 20 20 20 20 6c | 69 6e 65 2c 20 52 30 20 |OV l|ine, R0 |
|00004c60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00004c70| 20 52 65 6d 65 6d 62 65 | 72 20 6c 69 6e 65 0d 14 | Remembe|r line..|
|00004c80| d2 1a 20 20 20 20 20 20 | 20 20 4d 4f 56 20 20 20 |.. | MOV |
|00004c90| 20 20 52 30 2c 20 72 65 | 0d 14 dc 39 20 20 20 20 | R0, re|...9 |
|00004ca0| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 31 2c 20 | MOV | R1, |
|00004cb0| 6c 69 6e 65 20 20 20 20 | 20 20 20 20 20 20 20 20 |line | |
|00004cc0| 20 20 20 20 3b 20 52 31 | 20 3d 20 73 74 72 69 6e | ; R1| = strin|
|00004cd0| 67 0d 14 e6 41 20 20 20 | 20 20 20 20 20 4d 56 4e |g...A | MVN|
|00004ce0| 20 20 20 20 20 52 32 2c | 20 23 ac 28 2d 31 29 20 | R2,| #.(-1) |
|00004cf0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 55 6e 6b | | ; Unk|
|00004d00| 6e 6f 77 6e 20 73 74 72 | 69 6e 67 20 6c 65 6e 67 |nown str|ing leng|
|00004d10| 74 68 0d 14 f0 24 20 20 | 20 20 20 20 20 20 a4 61 |th...$ | .a|
|00004d20| 64 72 6c 28 22 22 2c 20 | 33 2c 20 42 53 53 5f 72 |drl("", |3, BSS_r|
|00004d30| 65 67 6d 65 6d 29 0d 14 | fa 36 20 20 20 20 20 20 |egmem)..|.6 |
|00004d40| 20 20 42 4c 20 20 20 20 | 20 20 78 72 65 5f 6d 61 | BL | xre_ma|
|00004d50| 74 63 68 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |tch | |
|00004d60| 20 20 3b 20 4d 61 74 63 | 68 20 52 45 0d 15 04 26 | ; Matc|h RE...&|
|00004d70| 20 20 20 20 20 20 20 20 | 53 57 49 76 73 20 20 20 | |SWIvs |
|00004d80| 22 4f 53 5f 47 65 6e 65 | 72 61 74 65 45 72 72 6f |"OS_Gene|rateErro|
|00004d90| 72 22 0d 15 0e 3d 20 20 | 20 20 20 20 20 20 43 4d |r"...= | CM|
|00004da0| 4e 20 20 20 20 20 52 30 | 2c 20 23 2d 52 45 5f 46 |N R0|, #-RE_F|
|00004db0| 41 49 4c 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 |AIL | ; |
|00004dc0| 44 6f 65 73 20 69 74 20 | 6d 61 74 63 68 20 3f 0d |Does it |match ?.|
|00004dd0| 15 18 24 20 20 20 20 20 | 20 20 20 82 65 71 20 20 |..$ | .eq |
|00004de0| 20 52 30 2c 20 66 6c 61 | 67 73 2c 20 23 30 20 3c | R0, fla|gs, #0 <|
|00004df0| 3c 20 30 0d 15 22 29 20 | 20 20 20 20 20 20 20 82 |< 0..") | .|
|00004e00| 6e 65 20 20 20 52 30 2c | 20 66 6c 61 67 73 2c 20 |ne R0,| flags, |
|00004e10| 23 46 6c 61 67 5f 49 6e | 76 65 72 74 0d 15 2c 3f |#Flag_In|vert..,?|
|00004e20| 20 20 20 20 20 20 20 20 | 54 53 54 20 20 20 20 20 | |TST |
|00004e30| 52 30 2c 20 23 46 6c 61 | 67 5f 49 6e 76 65 72 74 |R0, #Fla|g_Invert|
|00004e40| 20 20 20 20 20 20 20 20 | 3b 20 49 73 20 69 74 20 | |; Is it |
|00004e50| 61 20 73 75 63 63 65 73 | 73 20 3f 0d 15 36 32 20 |a succes|s ?..62 |
|00004e60| 20 20 20 20 20 20 20 42 | 65 71 20 20 20 20 20 6e | B|eq n|
|00004e70| 65 78 74 5f 6c 69 6e 65 | 20 20 20 20 20 20 20 20 |ext_line| |
|00004e80| 20 20 20 20 20 20 20 3b | 20 4e 6f 70 65 0d 15 40 | ;| Nope..@|
|00004e90| 25 20 20 20 20 20 20 20 | 20 54 53 54 20 20 20 20 |% | TST |
|00004ea0| 20 66 6c 61 67 73 2c 20 | 23 46 6c 61 67 5f 53 63 | flags, |#Flag_Sc|
|00004eb0| 61 6e 0d 15 4a 20 20 20 | 20 20 20 20 20 20 42 4c |an..J | BL|
|00004ec0| 6e 65 20 20 20 20 63 6c | 65 61 72 5f 74 6f 5f 65 |ne cl|ear_to_e|
|00004ed0| 6f 6c 0d 15 54 2c 20 20 | 20 20 20 20 20 20 84 52 |ol..T, | .R|
|00004ee0| 20 20 20 20 20 66 6c 61 | 67 73 2c 20 66 6c 61 67 | fla|gs, flag|
|00004ef0| 73 2c 20 23 46 6c 61 67 | 5f 4d 61 74 63 68 0d 15 |s, #Flag|_Match..|
|00004f00| 5e 21 20 20 20 20 20 20 | 20 20 43 4d 50 20 20 20 |^! | CMP |
|00004f10| 20 20 76 65 72 62 6f 73 | 69 74 79 2c 20 23 31 0d | verbos|ity, #1.|
|00004f20| 15 68 20 20 20 20 20 20 | 20 20 20 42 6c 73 20 20 |.h | Bls |
|00004f30| 20 20 20 74 65 72 73 65 | 5f 6f 75 74 70 75 74 0d | terse|_output.|
|00004f40| 15 72 1a 20 20 20 20 20 | 20 20 20 4d 4f 56 20 20 |.r. | MOV |
|00004f50| 20 20 20 52 30 2c 20 66 | 68 0d 15 7c 1e 20 20 20 | R0, f|h..|. |
|00004f60| 20 20 20 20 20 42 4c 20 | 20 20 20 20 20 74 65 78 | BL | tex|
|00004f70| 74 6c 69 6e 65 6e 6f 0d | 15 86 39 20 20 20 20 20 |tlineno.|..9 |
|00004f80| 20 20 20 4d 4f 56 20 20 | 20 20 20 52 32 2c 20 52 | MOV | R2, R|
|00004f90| 30 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |0 | |
|00004fa0| 20 20 20 3b 20 4c 69 6e | 65 20 6e 75 6d 62 65 72 | ; Lin|e number|
|00004fb0| 0d 15 90 21 20 20 20 20 | 20 20 20 20 43 4d 50 20 |...! | CMP |
|00004fc0| 20 20 20 20 76 65 72 62 | 6f 73 69 74 79 2c 20 23 | verb|osity, #|
|00004fd0| 33 0d 15 9a 23 20 20 20 | 20 20 20 20 20 a4 61 64 |3...# | .ad|
|00004fe0| 72 6c 28 22 67 65 22 2c | 20 30 2c 20 66 6f 72 6d |rl("ge",| 0, form|
|00004ff0| 61 74 33 29 0d 15 a4 23 | 20 20 20 20 20 20 20 20 |at3)...#| |
|00005000| a4 61 64 72 6c 28 22 6c | 74 22 2c 20 30 2c 20 66 |.adrl("l|t", 0, f|
|00005010| 6f 72 6d 61 74 32 29 0d | 15 ae 3a 20 20 20 20 20 |ormat2).|..: |
|00005020| 20 20 20 a4 61 64 72 6c | 28 22 22 2c 20 31 2c 20 | .adrl|("", 1, |
|00005030| 42 53 53 5f 6e 61 6d 65 | 5f 62 75 66 66 65 72 29 |BSS_name|_buffer)|
|00005040| 20 20 3b 20 46 75 6c 6c | 20 66 69 6c 65 6e 61 6d | ; Full| filenam|
|00005050| 65 0d 15 b8 32 20 20 20 | 20 20 20 20 20 4d 4f 56 |e...2 | MOV|
|00005060| 20 20 20 20 20 52 33 2c | 20 6c 69 6e 65 20 20 20 | R3,| line |
|00005070| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 4c | | ; L|
|00005080| 69 6e 65 0d 15 c2 28 20 | 20 20 20 20 20 20 20 53 |ine...( | S|
|00005090| 57 49 20 20 20 20 20 22 | 43 41 73 73 65 6d 62 6c |WI "|CAssembl|
|000050a0| 65 72 5f 43 50 72 69 6e | 74 66 22 0d 15 cc 1d 20 |er_CPrin|tf".... |
|000050b0| 20 20 20 20 20 20 20 42 | 20 20 20 20 20 20 20 6e | B| n|
|000050c0| 65 78 74 5f 6c 69 6e 65 | 0d 15 d6 11 2e 74 65 72 |ext_line|.....ter|
|000050d0| 73 65 5f 6f 75 74 70 75 | 74 0d 15 e0 3a 20 20 20 |se_outpu|t...: |
|000050e0| 20 20 20 20 20 a4 61 64 | 72 6c 28 22 65 71 22 2c | .ad|rl("eq",|
|000050f0| 20 31 2c 20 42 53 53 5f | 6e 61 6d 65 5f 62 75 66 | 1, BSS_|name_buf|
|00005100| 66 65 72 29 3b 20 46 75 | 6c 6c 20 66 69 6c 65 6e |fer); Fu|ll filen|
|00005110| 61 6d 65 0d 15 ea 23 20 | 20 20 20 20 20 20 20 a4 |ame...# | .|
|00005120| 61 64 72 6c 28 22 65 71 | 22 2c 20 30 2c 20 66 6f |adrl("eq|", 0, fo|
|00005130| 72 6d 61 74 31 29 0d 15 | f4 4a 20 20 20 20 20 20 |rmat1)..|.J |
|00005140| 20 20 53 57 49 65 71 20 | 20 20 22 43 41 73 73 65 | SWIeq | "CAsse|
|00005150| 6d 62 6c 65 72 5f 43 50 | 72 69 6e 74 66 22 20 20 |mbler_CP|rintf" |
|00005160| 20 20 3b 20 4f 75 74 70 | 75 74 20 6e 61 6d 65 20 | ; Outp|ut name |
|00005170| 69 66 20 76 65 72 62 6f | 73 69 74 79 20 3d 20 31 |if verbo|sity = 1|
|00005180| 0d 15 fe 1d 20 20 20 20 | 20 20 20 20 42 20 20 20 |.... | B |
|00005190| 20 20 20 20 64 6f 6e 65 | 5f 66 69 6c 65 0d 16 08 | done|_file...|
|000051a0| 05 3b 0d 16 12 05 3b 0d | 16 1c 10 2e 66 72 65 5f |.;....;.|....fre_|
|000051b0| 76 69 61 6c 69 6e 65 0d | 16 26 28 20 20 20 20 20 |vialine.|.&( |
|000051c0| 20 20 20 a4 61 64 72 6c | 28 22 22 2c 20 31 2c 20 | .adrl|("", 1, |
|000051d0| 42 53 53 5f 76 69 61 5f | 62 75 66 66 65 72 29 0d |BSS_via_|buffer).|
|000051e0| 16 30 2e 20 20 20 20 20 | 20 20 20 4d 4f 56 20 20 |.0. | MOV |
|000051f0| 20 20 20 52 32 2c 20 23 | 73 69 7a 65 6f 66 5f 42 | R2, #|sizeof_B|
|00005200| 53 53 5f 76 69 61 5f 62 | 75 66 66 65 72 0d 16 3a |SS_via_b|uffer..:|
|00005210| 38 20 20 20 20 20 20 20 | 20 53 57 49 20 20 20 20 |8 | SWI |
|00005220| 20 22 4f 53 5f 47 53 54 | 72 61 6e 73 22 20 20 20 | "OS_GST|rans" |
|00005230| 20 20 20 20 20 20 20 20 | 20 3b 20 43 6f 6e 76 65 | | ; Conve|
|00005240| 72 74 20 69 74 0d 16 44 | 28 20 20 20 20 20 20 20 |rt it..D|( |
|00005250| 20 a4 61 64 72 6c 28 22 | 22 2c 20 30 2c 20 42 53 | .adrl("|", 0, BS|
|00005260| 53 5f 76 69 61 5f 62 75 | 66 66 65 72 29 0d 16 4e |S_via_bu|ffer)..N|
|00005270| 20 20 20 20 20 20 20 20 | 20 4c 44 52 42 20 20 20 | | LDRB |
|00005280| 20 52 31 2c 20 5b 52 30 | 2c 20 23 30 5d 0d 16 58 | R1, [R0|, #0]..X|
|00005290| 1f 20 20 20 20 20 20 20 | 20 54 45 51 20 20 20 20 |. | TEQ |
|000052a0| 20 52 31 2c 20 23 97 28 | 22 23 22 29 0d 16 62 1f | R1, #.(|"#")..b.|
|000052b0| 20 20 20 20 20 20 20 20 | 54 45 51 6e 65 20 20 20 | |TEQne |
|000052c0| 52 31 2c 20 23 97 28 22 | 3b 22 29 0d 16 6c 1f 20 |R1, #.("|;")..l. |
|000052d0| 20 20 20 20 20 20 20 54 | 45 51 6e 65 20 20 20 52 | T|EQne R|
|000052e0| 31 2c 20 23 97 28 22 2d | 22 29 0d 16 76 40 20 20 |1, #.("-|")..v@ |
|000052f0| 20 20 20 20 20 20 54 45 | 51 6e 65 20 20 20 52 31 | TE|Qne R1|
|00005300| 2c 20 23 97 28 22 3e 22 | 29 20 20 20 20 20 20 20 |, #.(">"|) |
|00005310| 20 20 20 20 3b 20 49 67 | 6e 6f 72 65 20 63 6f 6d | ; Ig|nore com|
|00005320| 6d 65 6e 74 20 6c 69 6e | 65 73 0d 16 80 1d 20 20 |ment lin|es.... |
|00005330| 20 20 20 20 20 20 42 65 | 71 20 20 20 20 20 6e 65 | Be|q ne|
|00005340| 78 74 5f 6c 69 6e 65 0d | 16 8a 1a 20 20 20 20 20 |xt_line.|... |
|00005350| 20 20 20 4d 4f 56 20 20 | 20 20 20 52 31 2c 20 72 | MOV | R1, r|
|00005360| 65 0d 16 94 21 20 20 20 | 20 20 20 20 20 4d 4f 56 |e...! | MOV|
|00005370| 20 20 20 20 20 52 32 2c | 20 76 65 72 62 6f 73 69 | R2,| verbosi|
|00005380| 74 79 0d 16 9e 1d 20 20 | 20 20 20 20 20 20 4d 4f |ty.... | MO|
|00005390| 56 20 20 20 20 20 52 33 | 2c 20 66 6c 61 67 73 0d |V R3|, flags.|
|000053a0| 16 a8 25 20 20 20 20 20 | 20 20 20 41 44 52 20 20 |..% | ADR |
|000053b0| 20 20 20 52 34 2c 20 66 | 72 65 5f 6d 61 74 63 68 | R4, f|re_match|
|000053c0| 6c 69 6e 65 0d 16 b2 21 | 20 20 20 20 20 20 20 20 |line...!| |
|000053d0| 42 4c 20 20 20 20 20 20 | 66 72 65 5f 63 6f 6d 6d |BL |fre_comm|
|000053e0| 61 6c 69 73 74 0d 16 bc | 29 20 20 20 20 20 20 20 |alist...|) |
|000053f0| 20 4c 44 52 20 20 20 20 | 20 6c 72 2c 20 5b 6c 6f | LDR | lr, [lo|
|00005400| 63 61 6c 2c 20 23 4c 5f | 63 6f 75 6e 74 5d 0d 16 |cal, #L_|count]..|
|00005410| c6 3a 20 20 20 20 20 20 | 20 20 41 44 44 20 20 20 |.: | ADD |
|00005420| 20 20 6c 72 2c 20 6c 72 | 2c 20 52 30 20 20 20 20 | lr, lr|, R0 |
|00005430| 20 20 20 20 20 20 20 20 | 20 20 3b 20 55 70 64 61 | | ; Upda|
|00005440| 74 65 20 63 6f 75 6e 74 | 0d 16 d0 29 20 20 20 20 |te count|...) |
|00005450| 20 20 20 20 53 54 52 20 | 20 20 20 20 6c 72 2c 20 | STR | lr, |
|00005460| 5b 6c 6f 63 61 6c 2c 20 | 23 4c 5f 63 6f 75 6e 74 |[local, |#L_count|
|00005470| 5d 0d 16 da 38 20 20 20 | 20 20 20 20 20 41 44 52 |]...8 | ADR|
|00005480| 20 20 20 20 20 52 34 2c | 20 66 72 65 5f 76 69 61 | R4,| fre_via|
|00005490| 6c 69 6e 65 20 20 20 20 | 20 20 20 20 20 3b 20 52 |line | ; R|
|000054a0| 65 73 74 6f 72 65 20 52 | 34 0d 16 e4 1d 20 20 20 |estore R|4.... |
|000054b0| 20 20 20 20 20 42 20 20 | 20 20 20 20 20 6e 65 78 | B | nex|
|000054c0| 74 5f 6c 69 6e 65 0d 16 | ee 04 0d 16 f8 11 2e 63 |t_line..|.......c|
|000054d0| 6c 65 61 72 5f 74 6f 5f | 65 6f 6c 0d 17 02 21 20 |lear_to_|eol...! |
|000054e0| 20 20 20 20 20 20 20 43 | 4d 50 20 20 20 20 20 76 | C|MP v|
|000054f0| 65 72 62 6f 73 69 74 79 | 2c 20 23 31 0d 17 0c 21 |erbosity|, #1...!|
|00005500| 20 20 20 20 20 20 20 20 | 42 67 65 20 20 20 20 20 | |Bge |
|00005510| 78 76 64 75 5f 63 6c 72 | 74 6f 65 6f 6c 0d 17 16 |xvdu_clr|toeol...|
|00005520| 1a 20 20 20 20 20 20 20 | 20 4d 4f 56 53 20 20 20 |. | MOVS |
|00005530| 20 70 63 2c 20 6c 72 0d | 17 20 04 0d 17 2a 26 2e | pc, lr.|. ...*&.|
|00005540| 74 61 62 6c 65 20 20 45 | 51 55 42 20 32 33 3a 45 |table E|QUB 23:E|
|00005550| 51 55 42 20 38 20 20 3a | f4 20 63 6f 6d 6d 61 6e |QUB 8 :|. comman|
|00005560| 64 0d 17 34 2e 20 20 20 | 20 20 20 20 20 45 51 55 |d..4. | EQU|
|00005570| 42 20 35 20 20 20 20 20 | 20 20 20 20 20 3a f4 20 |B 5 | :. |
|00005580| 73 74 61 72 74 20 61 74 | 20 63 75 72 73 6f 72 0d |start at| cursor.|
|00005590| 17 3e 3b 20 20 20 20 20 | 20 20 20 45 51 55 42 20 |.>; | EQUB |
|000055a0| 36 20 20 20 20 20 20 20 | 20 20 20 3a f4 20 65 6e |6 | :. en|
|000055b0| 64 20 61 74 20 72 69 67 | 68 74 2b 31 20 6f 66 20 |d at rig|ht+1 of |
|000055c0| 63 75 72 73 6f 72 20 72 | 6f 77 0d 17 48 32 20 20 |cursor r|ow..H2 |
|000055d0| 20 20 20 20 20 20 45 51 | 55 42 20 30 3a 45 51 55 | EQ|UB 0:EQU|
|000055e0| 42 20 30 20 20 20 3a f4 | 20 73 74 61 72 74 20 6f |B 0 :.| start o|
|000055f0| 66 66 73 65 74 20 28 6e | 6f 6e 65 29 0d 17 52 30 |ffset (n|one)..R0|
|00005600| 20 20 20 20 20 20 20 20 | 45 51 55 42 20 30 3a 45 | |EQUB 0:E|
|00005610| 51 55 42 20 30 20 20 20 | 3a f4 20 65 6e 64 20 6f |QUB 0 |:. end o|
|00005620| 66 66 73 65 74 20 28 6e | 6f 6e 65 29 0d 17 5c 26 |ffset (n|one)..\&|
|00005630| 20 20 20 20 20 20 20 20 | 45 51 55 42 20 30 3a 45 | |EQUB 0:E|
|00005640| 51 55 42 20 30 20 20 20 | 3a f4 20 70 61 64 64 69 |QUB 0 |:. paddi|
|00005650| 6e 67 0d 17 66 05 3b 0d | 17 70 11 20 20 20 20 20 |ng..f.;.|.p. |
|00005660| 20 20 20 41 4c 49 47 4e | 0d 17 7a 12 2e 78 76 64 | ALIGN|..z..xvd|
|00005670| 75 5f 63 6c 72 74 6f 65 | 6f 6c 0d 17 84 1a 20 20 |u_clrtoe|ol.... |
|00005680| 20 20 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 32 | MO|V R2|
|00005690| 2c 20 6c 72 0d 17 8e 1b | 20 20 20 20 20 20 20 20 |, lr....| |
|000056a0| 4d 4f 56 20 20 20 20 20 | 52 31 2c 20 23 31 30 0d |MOV |R1, #10.|
|000056b0| 17 98 1d 20 20 20 20 20 | 20 20 20 41 44 52 20 20 |... | ADR |
|000056c0| 20 20 20 52 30 2c 20 74 | 61 62 6c 65 0d 17 a2 20 | R0, t|able... |
|000056d0| 20 20 20 20 20 20 20 20 | 53 57 49 20 20 20 20 20 | |SWI |
|000056e0| 22 58 4f 53 5f 57 72 69 | 74 65 4e 22 0d 17 ac 22 |"XOS_Wri|teN"..."|
|000056f0| 20 20 20 20 20 20 20 20 | 42 49 43 76 63 53 20 20 | |BICvcS |
|00005700| 70 63 2c 20 52 32 2c 20 | 23 50 53 52 5f 56 0d 17 |pc, R2, |#PSR_V..|
|00005710| b6 1a 20 20 20 20 20 20 | 20 20 4d 4f 56 20 20 20 |.. | MOV |
|00005720| 20 20 6c 72 2c 20 52 32 | 0d 17 c0 1e 20 20 20 20 | lr, R2|.... |
|00005730| 20 20 20 20 42 20 20 20 | 20 20 20 20 78 5f 6f 73 | B | x_os|
|00005740| 5f 65 72 72 6f 72 0d 17 | ca 05 5d 0d 17 d4 05 e1 |_error..|..].....|
|00005750| 0d 17 de 05 3a 0d 17 e8 | 29 f4 20 20 4c 61 73 74 |....:...|). Last|
|00005760| 20 6c 69 6e 65 20 6f 66 | 20 3c 42 61 73 43 6f 6d | line of| <BasCom|
|00005770| 70 72 65 73 73 24 44 69 | 72 3e 2e 66 72 65 0d ff |press$Di|r>.fre..|
+--------+-------------------------+-------------------------+--------+--------+