home *** CD-ROM | disk | FTP | other *** search
Unknown | 1997-04-10 | 9.6 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.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
| |
100%
| xdgMime
| image/x-tga
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 11 f4 20 3e 45 | 78 61 6d 70 6c 65 53 52 |..... >E|xampleSR|
|00000010| 53 0d 00 14 05 f4 0d 00 | 1e 3a f4 20 20 20 20 20 |S.......|.:. |
|00000020| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 45 78 61 | | Exa|
|00000030| 6d 70 6c 65 20 70 72 6f | 67 72 61 6d 20 66 6f 72 |mple pro|gram for|
|00000040| 20 75 73 65 20 62 79 20 | 53 74 72 6f 6e 67 42 53 | use by |StrongBS|
|00000050| 0d 00 28 3a f4 20 20 20 | 20 20 20 20 20 20 20 20 |..(:. | |
|00000060| 20 20 20 20 20 20 20 20 | 20 a9 20 4d 6f 68 73 65 | | . Mohse|
|00000070| 6e 20 41 6c 73 68 61 79 | 65 66 20 32 37 74 68 20 |n Alshay|ef 27th |
|00000080| 4d 61 72 63 68 20 31 39 | 39 37 0d 00 32 05 f4 0d |March 19|97..2...|
|00000090| 00 3c 54 f4 20 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.<T. ===|========|
|000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000e0| 3d 3d 3d 0d 00 46 4a f4 | 20 54 68 69 73 20 69 73 |===..FJ.| This is|
|000000f0| 20 61 6e 20 65 78 61 6d | 70 6c 65 20 63 6f 64 65 | an exam|ple code|
|00000100| 20 74 68 61 74 20 62 61 | 73 69 63 61 6c 6c 79 20 | that ba|sically |
|00000110| 73 63 61 6e 73 20 61 20 | 42 41 53 49 43 20 70 72 |scans a |BASIC pr|
|00000120| 6f 67 72 61 6d 20 66 6f | 72 20 74 68 65 0d 00 50 |ogram fo|r the..P|
|00000130| 4f f4 20 77 6f 72 64 20 | 22 4f 50 54 22 2c 20 69 |O. word |"OPT", i|
|00000140| 66 20 69 74 20 66 69 6e | 64 73 20 6f 6e 65 2c 20 |f it fin|ds one, |
|00000150| 69 74 20 77 69 6c 6c 20 | 63 68 61 6e 67 65 20 69 |it will |change i|
|00000160| 74 20 74 6f 20 22 6f 70 | 74 22 2c 20 69 2e 65 2e |t to "op|t", i.e.|
|00000170| 20 6c 6f 77 65 72 20 63 | 61 73 65 2e 0d 00 5a 4c | lower c|ase...ZL|
|00000180| f4 20 49 74 20 69 73 20 | 6f 6e 6c 79 20 61 20 64 |. It is |only a d|
|00000190| 65 6d 6f 20 6f 66 20 68 | 6f 77 20 74 6f 20 77 72 |emo of h|ow to wr|
|000001a0| 69 74 65 20 61 20 63 6f | 64 65 20 74 68 61 74 20 |ite a co|de that |
|000001b0| 53 74 72 6f 6e 67 42 53 | 20 63 61 6e 20 75 6e 64 |StrongBS| can und|
|000001c0| 65 72 73 74 61 6e 64 2e | 0d 00 64 4a f4 20 4d 61 |erstand.|..dJ. Ma|
|000001d0| 6b 65 20 61 20 6e 6f 74 | 65 20 6f 66 20 52 30 20 |ke a not|e of R0 |
|000001e0| 61 6e 64 20 52 31 20 6f | 6e 20 65 6e 74 72 79 20 |and R1 o|n entry |
|000001f0| 74 6f 20 74 68 65 20 63 | 6f 64 65 2e 20 41 6e 64 |to the c|ode. And|
|00000200| 20 73 65 65 20 74 68 61 | 74 20 77 68 65 6e 20 74 | see tha|t when t|
|00000210| 68 65 0d 00 6e 51 f4 20 | 70 72 6f 67 72 61 6d 20 |he..nQ. |program |
|00000220| 65 78 69 74 73 20 69 74 | 20 72 65 74 75 72 6e 73 |exits it| returns|
|00000230| 20 74 68 65 20 65 6e 64 | 20 61 64 64 72 65 73 73 | the end| address|
|00000240| 20 6f 66 20 74 68 65 20 | 72 65 73 75 6c 74 20 28 | of the |result (|
|00000250| 54 61 72 67 65 74 29 20 | 66 69 6c 65 20 69 6e 20 |Target) |file in |
|00000260| 52 30 2e 0d 00 78 05 f4 | 0d 00 82 4d f4 20 54 68 |R0...x..|...M. Th|
|00000270| 65 20 63 6f 64 65 20 74 | 6f 20 64 6f 20 74 68 69 |e code t|o do thi|
|00000280| 73 20 6a 6f 62 20 63 6f | 75 6c 64 20 68 61 76 65 |s job co|uld have|
|00000290| 20 62 65 65 6e 20 77 72 | 69 74 74 65 6e 20 77 69 | been wr|itten wi|
|000002a0| 74 68 20 68 61 6c 66 20 | 74 68 65 20 73 69 7a 65 |th half |the size|
|000002b0| 21 20 62 75 74 0d 00 8c | 4c f4 20 49 20 68 61 76 |! but...|L. I hav|
|000002c0| 65 20 75 73 65 64 20 61 | 20 67 65 6e 65 72 61 6c |e used a| general|
|000002d0| 20 63 6f 64 65 20 74 68 | 61 74 20 69 6e 63 6c 75 | code th|at inclu|
|000002e0| 64 65 73 20 61 20 64 65 | 62 75 67 20 63 68 65 63 |des a de|bug chec|
|000002f0| 6b 2e 20 49 6e 20 6f 74 | 68 65 72 20 77 6f 72 64 |k. In ot|her word|
|00000300| 73 0d 00 96 47 f4 20 61 | 20 73 75 62 2d 72 6f 75 |s...G. a| sub-rou|
|00000310| 74 69 6e 65 20 69 73 20 | 63 61 6c 6c 65 64 20 66 |tine is |called f|
|00000320| 6f 72 20 65 61 63 68 20 | 42 41 53 49 43 20 6c 69 |or each |BASIC li|
|00000330| 6e 65 2e 20 57 68 65 6e | 20 74 68 65 20 73 75 62 |ne. When| the sub|
|00000340| 2d 72 6f 75 74 69 6e 65 | 0d 00 a0 4b f4 20 72 65 |-routine|...K. re|
|00000350| 74 75 72 6e 73 2c 20 74 | 68 65 20 6d 61 69 6e 20 |turns, t|he main |
|00000360| 63 6f 64 65 20 63 68 65 | 63 6b 73 20 74 68 61 74 |code che|cks that|
|00000370| 20 74 68 65 20 73 75 62 | 2d 72 6f 75 74 69 6e 65 | the sub|-routine|
|00000380| 20 64 69 64 6e 27 74 20 | 73 63 72 65 77 2d 75 70 | didn't |screw-up|
|00000390| 20 62 79 0d 00 aa 4d f4 | 20 65 6e 73 75 72 69 6e | by...M.| ensurin|
|000003a0| 67 20 74 68 61 74 20 74 | 68 65 20 6e 65 77 20 72 |g that t|he new r|
|000003b0| 65 73 75 6c 74 20 6c 69 | 6e 65 20 63 72 65 61 74 |esult li|ne creat|
|000003c0| 65 64 20 69 73 20 76 61 | 6c 69 64 20 28 69 2e 65 |ed is va|lid (i.e|
|000003d0| 2e 20 63 6f 72 72 65 63 | 74 20 6c 65 6e 67 74 68 |. correc|t length|
|000003e0| 0d 00 b4 2e f4 20 61 6e | 64 20 68 61 73 20 74 68 |..... an|d has th|
|000003f0| 65 20 63 6f 64 65 20 26 | 44 20 61 74 20 74 68 65 |e code &|D at the|
|00000400| 20 72 69 67 68 74 20 70 | 6c 61 63 65 29 2e 0d 00 | right p|lace)...|
|00000410| be 05 f4 0d 00 c8 4d f4 | 20 59 6f 75 20 63 6f 75 |......M.| You cou|
|00000420| 6c 64 20 75 73 65 20 74 | 68 69 73 20 63 6f 64 65 |ld use t|his code|
|00000430| 20 61 73 20 61 20 74 65 | 6d 70 6c 61 74 65 2e 20 | as a te|mplate. |
|00000440| 59 6f 75 20 77 69 6c 6c | 20 6f 6e 6c 79 20 6e 65 |You will| only ne|
|00000450| 65 64 20 74 6f 20 63 68 | 61 6e 67 65 20 74 68 65 |ed to ch|ange the|
|00000460| 0d 00 d2 47 f4 20 63 6f | 64 65 20 69 6e 20 74 68 |...G. co|de in th|
|00000470| 65 20 73 75 62 2d 72 6f | 75 74 69 6e 65 2c 20 64 |e sub-ro|utine, d|
|00000480| 6f 20 6e 6f 74 20 63 68 | 61 6e 67 65 20 61 6e 79 |o not ch|ange any|
|00000490| 74 68 69 6e 67 20 69 6e | 20 74 68 65 20 6d 61 69 |thing in| the mai|
|000004a0| 6e 20 63 6f 64 65 2e 0d | 00 dc 05 f4 0d 00 e6 4a |n code..|.......J|
|000004b0| f4 20 59 6f 75 20 6d 61 | 79 20 6e 6f 74 69 63 65 |. You ma|y notice|
|000004c0| 20 74 68 61 74 20 49 20 | 61 6d 20 75 73 69 6e 67 | that I |am using|
|000004d0| 20 52 45 4d 20 69 6e 73 | 69 64 65 20 61 73 73 65 | REM ins|ide asse|
|000004e0| 6d 62 6c 79 20 69 6e 73 | 74 65 61 64 20 6f 66 20 |mbly ins|tead of |
|000004f0| 3b 20 6f 72 20 5c 0d 00 | f0 52 f4 20 74 68 65 20 |; or \..|.R. the |
|00000500| 72 65 61 73 6f 6e 20 69 | 73 20 74 68 61 74 20 61 |reason i|s that a|
|00000510| 6e 79 74 68 69 6e 67 20 | 61 66 74 65 72 20 74 68 |nything |after th|
|00000520| 65 20 74 6f 6b 65 6e 20 | 52 45 4d 20 77 69 6c 6c |e token |REM will|
|00000530| 20 62 65 20 73 68 6f 77 | 6e 20 69 6e 20 61 20 64 | be show|n in a d|
|00000540| 69 66 66 65 72 65 6e 74 | 0d 00 fa 4d f4 20 63 6f |ifferent|...M. co|
|00000550| 6c 6f 72 20 77 68 65 6e | 20 75 73 69 6e 67 20 21 |lor when| using !|
|00000560| 5a 61 70 20 42 41 53 49 | 43 20 65 64 69 74 6f 72 |Zap BASI|C editor|
|00000570| 20 28 54 68 65 20 62 65 | 73 74 20 42 41 53 49 43 | (The be|st BASIC|
|00000580| 20 65 64 69 74 6f 72 20 | 74 6f 20 64 61 74 65 2e | editor |to date.|
|00000590| 2e 2e 2e 2e 29 0d 01 04 | 05 f4 0d 01 0e 54 f4 20 |....)...|.....T. |
|000005a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 01 |========|======..|
|000005f0| 18 4d f4 20 49 74 20 73 | 68 6f 75 6c 64 20 62 65 |.M. It s|hould be|
|00000600| 20 6e 6f 74 65 64 20 74 | 68 61 74 20 74 68 65 72 | noted t|hat ther|
|00000610| 65 20 61 72 65 20 62 65 | 74 74 65 72 20 63 6f 64 |e are be|tter cod|
|00000620| 69 6e 67 20 6d 65 74 68 | 6f 64 73 20 77 68 69 63 |ing meth|ods whic|
|00000630| 68 20 6d 61 79 20 67 69 | 76 65 20 0d 01 22 4e f4 |h may gi|ve .."N.|
|00000640| 20 66 61 73 74 65 72 20 | 72 65 73 75 6c 74 73 20 | faster |results |
|00000650| 74 68 61 6e 20 74 68 65 | 20 63 6f 64 65 20 70 72 |than the| code pr|
|00000660| 65 73 65 6e 74 65 64 20 | 68 65 72 65 2e 20 54 68 |esented |here. Th|
|00000670| 65 20 63 6f 64 65 20 67 | 69 76 65 6e 20 68 65 72 |e code g|iven her|
|00000680| 65 20 69 73 20 6f 6e 6c | 79 0d 01 2c 3a f4 20 6f |e is onl|y..,:. o|
|00000690| 6e 65 20 70 6f 73 73 69 | 62 6c 65 20 77 61 79 20 |ne possi|ble way |
|000006a0| 6f 66 20 74 68 65 20 6d | 61 6e 79 20 77 61 79 73 |of the m|any ways|
|000006b0| 20 6f 66 20 64 6f 69 6e | 67 20 74 68 69 6e 67 73 | of doin|g things|
|000006c0| 21 21 21 0d 01 36 05 f4 | 0d 01 40 04 0d 01 4a 04 |!!!..6..|..@...J.|
|000006d0| 0d 01 54 44 f2 61 73 73 | 65 6d 20 20 20 20 20 20 |..TD.ass|em |
|000006e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000700| 3a f4 20 41 73 73 65 6d | 62 6c 65 20 74 68 65 20 |:. Assem|ble the |
|00000710| 63 6f 64 65 0d 01 5e 04 | 0d 01 68 46 66 69 6c 65 |code..^.|..hFfile|
|00000720| 24 3d 22 45 78 61 6d 70 | 6c 65 22 20 20 20 20 20 |$="Examp|le" |
|00000730| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000740| 20 20 20 20 20 20 20 20 | 20 20 20 3a f4 20 44 65 | | :. De|
|00000750| 66 61 75 6c 74 20 66 69 | 6c 65 6e 61 6d 65 0d 01 |fault fi|lename..|
|00000760| 72 04 0d 01 7c 46 f1 22 | 53 61 76 65 20 63 6f 64 |r...|F."|Save cod|
|00000770| 65 20 61 73 20 22 3b 66 | 69 6c 65 24 3b 22 20 28 |e as ";f|ile$;" (|
|00000780| 59 2f 4e 29 20 3f 22 3b | 20 20 20 20 20 20 20 20 |Y/N) ?";| |
|00000790| 20 3a f4 20 52 65 71 75 | 65 73 74 20 74 6f 20 73 | :. Requ|est to s|
|000007a0| 61 76 65 20 66 69 6c 65 | 0d 01 86 45 f5 3a 47 3d |ave file|...E.:G=|
|000007b0| a5 3a fd 20 47 3d 97 22 | 59 22 20 84 20 47 3d 97 |.:. G=."|Y" . G=.|
|000007c0| 22 4e 22 20 20 20 20 20 | 20 20 20 3a f4 20 77 61 |"N" | :. wa|
|000007d0| 69 74 20 66 6f 72 20 61 | 20 6b 65 79 20 28 6e 6f |it for a| key (no|
|000007e0| 20 6c 6f 77 65 72 20 63 | 61 73 65 21 29 0d 01 90 | lower c|ase!)...|
|000007f0| 0e e7 20 47 3d 97 22 59 | 22 20 8c 0d 01 9a 26 ff |.. G=."Y|" ....&.|
|00000800| 22 53 41 56 45 20 22 2b | 66 69 6c 65 24 2b 22 20 |"SAVE "+|file$+" |
|00000810| 22 2b c3 7e 63 6f 64 65 | 2b 22 20 22 2b c3 7e 50 |"+.~code|+" "+.~P|
|00000820| 25 0d 01 a4 05 cd 0d 01 | ae 04 0d 01 b8 04 0d 01 |%.......|........|
|00000830| c2 4c de 20 61 72 65 61 | 25 20 32 30 30 3c 3c 31 |.L. area|% 200<<1|
|00000840| 30 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |0 | |
|00000850| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3a | | :|
|00000860| f4 20 44 69 6d 65 6e 73 | 69 6f 6e 20 61 20 6d 65 |. Dimens|ion a me|
|00000870| 6d 6f 72 79 20 62 6c 6f | 63 6b 0d 01 cc 54 61 72 |mory blo|ck...Tar|
|00000880| 65 61 25 3d 61 72 65 61 | 25 2b 32 35 35 20 20 20 |ea%=area|%+255 |
|00000890| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000008a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3a f4 20 | | :. |
|000008b0| 41 6c 69 67 6e 20 69 74 | 20 74 6f 20 32 35 36 20 |Align it| to 256 |
|000008c0| 62 79 74 65 20 62 6f 75 | 6e 64 61 72 79 2e 0d 01 |byte bou|ndary...|
|000008d0| d6 1b 61 72 65 61 25 3d | 61 72 65 61 25 20 80 20 |..area%=|area% . |
|000008e0| 26 46 46 46 46 46 46 30 | 30 0d 01 e0 04 0d 01 ea |&FFFFFF0|0.......|
|000008f0| 4e 53 6f 75 72 63 65 5f | 50 72 6f 67 25 3d 61 72 |NSource_|Prog%=ar|
|00000900| 65 61 25 2b 28 32 30 3c | 3c 31 30 29 20 20 20 20 |ea%+(20<|<10) |
|00000910| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000920| 3a f4 20 41 72 65 61 20 | 74 6f 20 6c 6f 61 64 20 |:. Area |to load |
|00000930| 53 6f 75 72 63 65 20 66 | 69 6c 65 0d 01 f4 4f 54 |Source f|ile...OT|
|00000940| 61 72 67 65 74 5f 50 72 | 6f 67 25 3d 61 72 65 61 |arget_Pr|og%=area|
|00000950| 25 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |% | |
|00000960| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3a f4 | | :.|
|00000970| 20 41 72 65 61 20 74 6f | 20 73 74 6f 72 65 20 54 | Area to| store T|
|00000980| 61 72 67 65 74 20 63 6f | 64 65 0d 01 fe 04 0d 02 |arget co|de......|
|00000990| 08 08 2a 43 41 54 0d 02 | 12 27 e8 27 22 45 6e 74 |..*CAT..|.'.'"Ent|
|000009a0| 65 72 20 66 69 6c 65 6e | 61 6d 65 20 74 6f 20 70 |er filen|ame to p|
|000009b0| 72 6f 63 65 73 73 20 22 | 66 69 6c 65 24 0d 02 1c |rocess "|file$...|
|000009c0| 25 ff 22 4c 4f 41 44 20 | 22 2b 66 69 6c 65 24 2b |%."LOAD |"+file$+|
|000009d0| 22 20 22 2b c3 7e 53 6f | 75 72 63 65 5f 50 72 6f |" "+.~So|urce_Pro|
|000009e0| 67 25 0d 02 26 37 e7 3f | 53 6f 75 72 63 65 5f 50 |g%..&7.?|Source_P|
|000009f0| 72 6f 67 25 3c 3e 31 33 | 85 32 35 35 2c 22 4e 6f |rog%<>13|.255,"No|
|00000a00| 74 20 61 20 74 6f 6b 65 | 6e 69 73 65 64 20 42 41 |t a toke|nised BA|
|00000a10| 53 49 43 20 66 69 6c 65 | 22 0d 02 30 3b f4 2d 2d |SIC file|"..0;.--|
|00000a20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a50| 2d 2d 2d 2d 0d 02 3a 04 | 0d 02 44 04 0d 02 4e 3d |----..:.|..D...N=|
|00000a60| 41 25 3d 53 6f 75 72 63 | 65 5f 50 72 6f 67 25 20 |A%=Sourc|e_Prog% |
|00000a70| 20 20 20 20 20 3a f4 20 | 52 30 20 2d 20 53 6f 75 | :. |R0 - Sou|
|00000a80| 72 63 65 20 70 72 6f 67 | 72 61 6d 20 73 74 61 72 |rce prog|ram star|
|00000a90| 74 20 61 64 64 72 65 73 | 73 0d 02 58 3b 42 25 3d |t addres|s..X;B%=|
|00000aa0| 54 61 72 67 65 74 5f 50 | 72 6f 67 25 20 20 20 20 |Target_P|rog% |
|00000ab0| 20 20 3a f4 20 52 31 20 | 2d 20 41 64 72 73 20 74 | :. R1 |- Adrs t|
|00000ac0| 6f 20 73 74 6f 72 65 20 | 6e 65 77 20 70 72 6f 67 |o store |new prog|
|00000ad0| 72 61 6d 2e 0d 02 62 46 | 45 6e 64 25 3d ba 20 28 |ram...bF|End%=. (|
|00000ae0| 63 6f 64 65 2b 34 29 20 | 20 20 20 3a f4 20 52 65 |code+4) | :. Re|
|00000af0| 74 75 72 6e 20 52 30 20 | 61 73 20 74 68 65 20 65 |turn R0 |as the e|
|00000b00| 6e 64 20 61 64 72 73 20 | 6f 66 20 74 68 65 20 72 |nd adrs |of the r|
|00000b10| 65 73 75 6c 74 20 66 69 | 6c 65 0d 02 6c 04 0d 02 |esult fi|le..l...|
|00000b20| 76 2c f4 20 43 61 6c 63 | 75 6c 61 74 65 20 74 68 |v,. Calc|ulate th|
|00000b30| 65 20 6e 65 77 20 73 69 | 7a 65 20 6f 66 20 74 68 |e new si|ze of th|
|00000b40| 65 20 70 72 6f 67 72 61 | 6d 2e 0d 02 80 1e 4e 65 |e progra|m.....Ne|
|00000b50| 77 53 69 7a 65 25 3d 45 | 6e 64 25 2d 54 61 72 67 |wSize%=E|nd%-Targ|
|00000b60| 65 74 5f 50 72 6f 67 25 | 0d 02 8a 26 f1 22 4e 65 |et_Prog%|...&."Ne|
|00000b70| 77 20 73 69 7a 65 20 6f | 66 20 70 72 6f 67 72 61 |w size o|f progra|
|00000b80| 6d 20 3d 20 22 3b 4e 65 | 77 53 69 7a 65 25 0d 02 |m = ";Ne|wSize%..|
|00000b90| 94 04 0d 02 9e 05 e0 0d | 02 a8 04 0d 02 b2 40 f4 |........|......@.|
|00000ba0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000bb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000bc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000bd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 0d 02 bc 0b dd |========|===.....|
|00000be0| f2 61 73 73 65 6d 0d 02 | c6 1b f4 20 44 65 66 69 |.assem..|... Defi|
|00000bf0| 6e 65 20 73 6f 6d 65 20 | 72 65 67 69 73 74 65 72 |ne some |register|
|00000c00| 73 0d 02 d0 15 53 6f 75 | 72 63 65 20 20 20 20 20 |s....Sou|rce |
|00000c10| 20 20 3d 20 20 35 0d 02 | da 15 54 61 72 67 65 74 | = 5..|..Target|
|00000c20| 20 20 20 20 20 20 20 3d | 20 20 37 0d 02 e4 15 54 | =| 7....T|
|00000c30| 72 67 4c 65 6e 41 64 72 | 20 20 20 20 3d 20 20 36 |rgLenAdr| = 6|
|00000c40| 0d 02 ee 15 46 6c 61 67 | 73 20 20 20 20 20 20 20 |....Flag|s |
|00000c50| 20 3d 20 20 38 0d 02 f8 | 15 4c 69 6e 65 53 74 61 | = 8...|.LineSta|
|00000c60| 72 74 20 20 20 20 3d 20 | 20 39 0d 03 02 16 4c 69 |rt = | 9....Li|
|00000c70| 6e 65 45 6e 64 20 20 20 | 20 20 20 3d 20 20 31 30 |neEnd | = 10|
|00000c80| 0d 03 0c 16 53 6f 75 72 | 63 65 4c 69 6e 65 4e 6f |....Sour|ceLineNo|
|00000c90| 20 3d 20 20 31 31 0d 03 | 16 04 0d 03 20 3c f4 20 | = 11..|.... <. |
|00000ca0| 52 65 67 69 73 74 65 72 | 73 20 52 30 2c 20 52 31 |Register|s R0, R1|
|00000cb0| 2c 20 52 32 2c 20 52 33 | 2c 20 52 34 2c 20 61 6e |, R2, R3|, R4, an|
|00000cc0| 64 20 52 31 32 20 61 72 | 65 20 66 72 65 65 20 74 |d R12 ar|e free t|
|00000cd0| 6f 20 75 73 65 2e 0d 03 | 2a 04 0d 03 34 19 51 75 |o use...|*...4.Qu|
|00000ce0| 6f 74 65 73 5f 42 69 74 | 20 20 20 20 20 3d 31 3c |otes_Bit| =1<|
|00000cf0| 3c 32 39 0d 03 3e 04 0d | 03 48 10 de 20 63 6f 64 |<29..>..|.H.. cod|
|00000d00| 65 20 26 32 30 30 30 0d | 03 52 04 0d 03 5c 16 e3 |e &2000.|.R...\..|
|00000d10| 20 70 61 73 73 20 3d 20 | 30 20 b8 20 32 20 88 20 | pass = |0 . 2 . |
|00000d20| 32 0d 03 66 0b 50 25 3d | 63 6f 64 65 0d 03 70 04 |2..f.P%=|code..p.|
|00000d30| 0d 03 7a 0d 5b 4f 50 54 | 20 70 61 73 73 0d 03 84 |..z.[OPT| pass...|
|00000d40| 04 0d 03 8e 45 45 51 55 | 44 20 20 20 26 30 30 30 |....EEQU|D &000|
|00000d50| 30 30 30 30 30 20 20 20 | 20 20 20 20 20 20 20 f4 |00000 | .|
|00000d60| 20 54 68 69 73 20 69 73 | 20 74 68 65 20 34 20 62 | This is| the 4 b|
|00000d70| 79 74 65 20 69 6e 66 6f | 72 6d 61 74 69 6f 6e 20 |yte info|rmation |
|00000d80| 62 6c 6f 63 6b 2e 0d 03 | 98 46 20 20 20 20 20 20 |block...|.F |
|00000d90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000da0| 20 20 20 20 f4 20 53 74 | 72 6f 6e 67 42 53 20 72 | . St|rongBS r|
|00000db0| 65 61 64 73 20 74 68 65 | 73 65 20 34 20 62 79 74 |eads the|se 4 byt|
|00000dc0| 65 73 20 62 65 66 6f 72 | 65 20 69 74 0d 03 a2 46 |es befor|e it...F|
|00000dd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000de0| 20 20 20 20 20 20 20 20 | 20 20 f4 20 63 61 6c 6c | | . call|
|00000df0| 73 20 79 6f 75 72 20 63 | 6f 64 65 2e 20 53 6f 20 |s your c|ode. So |
|00000e00| 70 6c 61 63 65 20 61 6e | 79 20 69 6e 66 6f 20 79 |place an|y info y|
|00000e10| 6f 75 0d 03 ac 4b 20 20 | 20 20 20 20 20 20 20 20 |ou...K | |
|00000e20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000e30| f4 20 77 61 6e 74 20 74 | 6f 20 70 61 73 73 20 69 |. want t|o pass i|
|00000e40| 6e 20 68 65 72 65 2e 20 | 53 65 65 20 74 68 65 20 |n here. |See the |
|00000e50| 64 6f 63 75 6d 65 6e 74 | 61 74 69 6f 6e 0d 03 b6 |document|ation...|
|00000e60| 2e 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | |
|00000e70| 20 20 20 20 20 20 20 20 | 20 20 20 f4 20 66 6f 72 | | . for|
|00000e80| 20 6d 6f 72 65 20 69 6e | 66 6f 2e 0d 03 c0 1e 20 | more in|fo..... |
|00000e90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000ea0| 20 20 20 20 20 20 20 20 | 20 0d 03 ca 14 f4 20 43 | | ..... C|
|00000eb0| 6f 64 65 20 73 74 61 72 | 74 20 6e 6f 77 0d 03 d4 |ode star|t now...|
|00000ec0| 04 0d 03 de 20 f4 20 6f | 6e 20 65 6e 74 72 79 20 |.... . o|n entry |
|00000ed0| 52 30 3d 73 6f 75 72 63 | 65 20 61 64 64 72 65 73 |R0=sourc|e addres|
|00000ee0| 73 0d 03 e8 20 f4 20 20 | 20 20 20 20 20 20 20 20 |s... . | |
|00000ef0| 52 31 3d 74 61 72 67 65 | 74 20 61 64 64 72 65 73 |R1=targe|t addres|
|00000f00| 73 0d 03 f2 3d f4 20 6f | 6e 20 65 78 69 74 20 20 |s...=. o|n exit |
|00000f10| 52 30 3d 65 6e 64 20 61 | 64 72 73 20 6f 66 20 6e |R0=end a|drs of n|
|00000f20| 65 77 20 70 72 6f 67 72 | 61 6d 20 6f 72 20 70 6f |ew progr|am or po|
|00000f30| 69 6e 74 65 72 20 74 6f | 20 65 72 72 6f 72 0d 03 |inter to| error..|
|00000f40| fc 04 0d 04 06 1e 53 54 | 4d 46 44 20 20 20 20 52 |......ST|MFD R|
|00000f50| 31 33 21 2c 7b 52 30 2d | 52 31 32 2c 52 31 34 7d |13!,{R0-|R12,R14}|
|00000f60| 0d 04 10 40 4d 4f 56 20 | 20 20 20 20 20 53 6f 75 |...@MOV | Sou|
|00000f70| 72 63 65 2c 52 30 20 20 | 20 20 20 20 20 20 20 20 |rce,R0 | |
|00000f80| 20 20 20 20 20 20 f4 20 | 53 6f 75 72 63 65 3d 73 | . |Source=s|
|00000f90| 6f 75 72 63 65 20 20 52 | 30 20 61 6e 64 20 52 31 |ource R|0 and R1|
|00000fa0| 0d 04 1a 35 4d 4f 56 20 | 20 20 20 20 20 54 61 72 |...5MOV | Tar|
|00000fb0| 67 65 74 2c 52 31 20 20 | 20 20 20 20 20 20 20 20 |get,R1 | |
|00000fc0| 20 20 20 20 20 20 f4 20 | 54 61 72 67 65 74 3d 74 | . |Target=t|
|00000fd0| 72 61 67 65 74 0d 04 24 | 38 4d 4f 56 20 20 20 20 |raget..$|8MOV |
|00000fe0| 20 20 46 6c 61 67 73 2c | 23 30 20 20 20 20 20 20 | Flags,|#0 |
|00000ff0| 20 20 20 20 20 20 20 20 | 20 20 20 f4 20 49 6e 69 | | . Ini|
|00001000| 74 69 61 6c 69 73 65 20 | 66 6c 61 67 73 0d 04 2e |tialise |flags...|
|00001010| 36 4c 44 52 42 20 20 20 | 20 20 52 30 2c 5b 53 6f |6LDRB | R0,[So|
|00001020| 75 72 63 65 5d 2c 23 31 | 20 20 20 20 20 20 20 20 |urce],#1| |
|00001030| 20 20 20 f4 20 63 6f 70 | 79 20 26 44 20 61 63 72 | . cop|y &D acr|
|00001040| 6f 73 73 0d 04 38 1b 53 | 54 52 42 20 20 20 20 20 |oss..8.S|TRB |
|00001050| 52 30 2c 5b 54 61 72 67 | 65 74 5d 2c 23 31 0d 04 |R0,[Targ|et],#1..|
|00001060| 42 04 0d 04 4c 0e 2e 4d | 61 69 6e 5f 4c 6f 6f 70 |B...L..M|ain_Loop|
|00001070| 0d 04 56 3a 4c 44 52 42 | 20 20 20 20 20 52 31 2c |..V:LDRB| R1,|
|00001080| 5b 53 6f 75 72 63 65 5d | 2c 23 31 20 20 20 20 20 |[Source]|,#1 |
|00001090| 20 20 20 20 20 20 f4 20 | 52 31 3d 6c 69 6e 65 20 | . |R1=line |
|000010a0| 4e 6f 20 48 49 20 62 79 | 74 65 0d 04 60 39 53 54 |No HI by|te..`9ST|
|000010b0| 52 42 20 20 20 20 20 52 | 31 2c 5b 54 61 72 67 65 |RB R|1,[Targe|
|000010c0| 74 5d 2c 23 31 20 20 20 | 20 20 20 20 20 20 20 20 |t],#1 | |
|000010d0| f4 20 43 6f 70 79 20 69 | 74 20 74 6f 20 54 61 72 |. Copy i|t to Tar|
|000010e0| 67 65 74 0d 04 6a 42 54 | 45 51 20 20 20 20 20 20 |get..jBT|EQ |
|000010f0| 52 31 2c 23 26 46 46 20 | 20 20 20 20 20 20 20 20 |R1,#&FF | |
|00001100| 20 20 20 20 20 20 20 20 | 20 f4 20 49 73 20 69 74 | | . Is it|
|00001110| 20 6c 61 73 74 20 62 79 | 74 65 20 6f 66 20 70 72 | last by|te of pr|
|00001120| 6f 67 72 61 6d 0d 04 74 | 49 53 54 52 45 51 20 20 |ogram..t|ISTREQ |
|00001130| 20 20 54 61 72 67 65 74 | 2c 5b 52 31 33 5d 20 20 | Target|,[R13] |
|00001140| 20 20 20 20 20 20 20 20 | 20 20 20 f4 20 54 68 65 | | . The|
|00001150| 6e 20 72 65 74 75 72 6e | 20 54 61 72 67 65 74 20 |n return| Target |
|00001160| 45 6e 64 20 61 64 72 73 | 20 69 6e 20 52 30 0d 04 |End adrs| in R0..|
|00001170| 7e 30 4c 44 4d 45 51 46 | 44 20 20 52 31 33 21 2c |~0LDMEQF|D R13!,|
|00001180| 7b 52 30 2d 52 31 32 2c | 50 43 7d 5e 20 20 20 20 |{R0-R12,|PC}^ |
|00001190| 20 20 20 20 f4 20 61 6e | 64 20 65 78 69 74 0d 04 | . an|d exit..|
|000011a0| 88 04 0d 04 92 3a 4c 44 | 52 42 20 20 20 20 20 52 |.....:LD|RB R|
|000011b0| 30 2c 5b 53 6f 75 72 63 | 65 5d 2c 23 31 20 20 20 |0,[Sourc|e],#1 |
|000011c0| 20 20 20 20 20 20 20 20 | f4 20 52 30 3d 6c 69 6e | |. R0=lin|
|000011d0| 65 20 4e 6f 20 4c 4f 20 | 62 79 74 65 0d 04 9c 39 |e No LO |byte...9|
|000011e0| 53 54 52 42 20 20 20 20 | 20 52 30 2c 5b 54 61 72 |STRB | R0,[Tar|
|000011f0| 67 65 74 5d 2c 23 31 20 | 20 20 20 20 20 20 20 20 |get],#1 | |
|00001200| 20 20 f4 20 43 6f 70 79 | 20 69 74 20 74 6f 20 54 | . Copy| it to T|
|00001210| 61 72 67 65 74 0d 04 a6 | 3d 41 44 44 20 20 20 20 |arget...|=ADD |
|00001220| 20 20 53 6f 75 72 63 65 | 4c 69 6e 65 4e 6f 2c 52 | Source|LineNo,R|
|00001230| 30 2c 52 31 2c 4c 53 4c | 23 38 20 f4 20 43 61 6c |0,R1,LSL|#8 . Cal|
|00001240| 63 75 6c 61 74 65 20 6c | 69 6e 65 20 6e 75 6d 62 |culate l|ine numb|
|00001250| 65 72 0d 04 b0 04 0d 04 | ba 44 4c 44 52 42 20 20 |er......|.DLDRB |
|00001260| 20 20 20 52 30 2c 5b 53 | 6f 75 72 63 65 5d 2c 23 | R0,[S|ource],#|
|00001270| 31 20 20 20 20 20 20 20 | 20 20 20 20 f4 20 47 65 |1 | . Ge|
|00001280| 74 20 73 6f 75 72 63 65 | 20 6c 69 6e 65 20 6c 65 |t source| line le|
|00001290| 6e 67 74 68 20 69 6e 20 | 52 30 0d 04 c4 44 4d 4f |ngth in |R0...DMO|
|000012a0| 56 20 20 20 20 20 20 54 | 72 67 4c 65 6e 41 64 72 |V T|rgLenAdr|
|000012b0| 2c 54 61 72 67 65 74 20 | 20 20 20 20 20 20 20 20 |,Target | |
|000012c0| f4 20 72 65 6d 65 6d 62 | 65 72 20 6c 69 6e 65 20 |. rememb|er line |
|000012d0| 6c 65 6e 67 74 68 20 61 | 64 64 72 65 73 73 0d 04 |length a|ddress..|
|000012e0| ce 48 41 44 44 20 20 20 | 20 20 20 54 61 72 67 65 |.HADD | Targe|
|000012f0| 74 2c 54 61 72 67 65 74 | 2c 23 31 20 20 20 20 20 |t,Target|,#1 |
|00001300| 20 20 20 20 f4 20 53 6b | 69 70 20 74 68 65 20 74 | . Sk|ip the t|
|00001310| 61 72 67 65 74 20 6c 69 | 6e 65 20 6c 65 6e 67 74 |arget li|ne lengt|
|00001320| 68 20 61 64 72 73 0d 04 | d8 04 0d 04 e2 2b f4 20 |h adrs..|.....+. |
|00001330| 63 68 65 63 6b 20 74 6f | 20 73 65 65 20 69 66 20 |check to| see if |
|00001340| 74 68 65 20 6c 69 6e 65 | 20 65 6e 64 73 20 77 69 |the line| ends wi|
|00001350| 74 68 20 26 44 0d 04 ec | 4d f4 20 65 6c 73 65 20 |th &D...|M. else |
|00001360| 62 61 64 20 73 6f 75 72 | 63 65 20 70 72 6f 67 72 |bad sour|ce progr|
|00001370| 61 6d 2e 20 44 6f 20 74 | 68 69 73 20 63 68 65 63 |am. Do t|his chec|
|00001380| 6b 20 66 6f 72 20 65 61 | 63 68 20 6c 69 6e 65 20 |k for ea|ch line |
|00001390| 61 6c 6f 6e 67 20 74 68 | 65 20 74 68 65 20 77 61 |along th|e the wa|
|000013a0| 79 2e 0d 04 f6 04 0d 05 | 00 28 41 44 44 20 20 20 |y.......|.(ADD |
|000013b0| 20 20 20 4c 69 6e 65 45 | 6e 64 2c 53 6f 75 72 63 | LineE|nd,Sourc|
|000013c0| 65 2c 52 30 20 20 20 20 | 20 20 20 20 f4 20 0d 05 |e,R0 | . ..|
|000013d0| 0a 4a 53 55 42 20 20 20 | 20 20 20 4c 69 6e 65 45 |.JSUB | LineE|
|000013e0| 6e 64 2c 4c 69 6e 65 45 | 6e 64 2c 23 33 20 20 20 |nd,LineE|nd,#3 |
|000013f0| 20 20 20 20 f4 20 4c 69 | 6e 65 45 6e 64 3d 65 6e | . Li|neEnd=en|
|00001400| 64 20 61 64 64 72 65 73 | 73 20 6f 66 20 73 6f 75 |d addres|s of sou|
|00001410| 72 63 65 20 6c 69 6e 65 | 0d 05 14 40 4c 44 52 42 |rce line|...@LDRB|
|00001420| 20 20 20 20 20 52 30 2c | 5b 4c 69 6e 65 45 6e 64 | R0,|[LineEnd|
|00001430| 2c 23 2d 31 5d 20 20 20 | 20 20 20 20 20 20 f4 20 |,#-1] | . |
|00001440| 47 65 74 20 74 68 65 20 | 62 79 74 65 20 61 74 20 |Get the |byte at |
|00001450| 6c 69 6e 65 20 65 6e 64 | 0d 05 1e 52 54 45 51 20 |line end|...RTEQ |
|00001460| 20 20 20 20 20 52 30 2c | 23 31 33 20 20 20 20 20 | R0,|#13 |
|00001470| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 f4 20 | | . |
|00001480| 49 66 20 6e 6f 74 20 26 | 44 2c 20 74 68 65 6e 20 |If not &|D, then |
|00001490| 73 75 62 2d 72 6f 75 74 | 69 6e 65 20 68 61 73 20 |sub-rout|ine has |
|000014a0| 73 63 72 65 77 65 64 2d | 75 70 0d 05 28 55 42 4e |screwed-|up..(UBN|
|000014b0| 45 20 20 20 20 20 20 42 | 61 64 50 72 6f 67 20 20 |E B|adProg |
|000014c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000014d0| f4 20 53 6f 20 65 72 72 | 6f 72 2c 20 61 20 62 75 |. So err|or, a bu|
|000014e0| 67 20 69 73 20 64 69 73 | 63 6f 76 65 72 65 64 20 |g is dis|covered |
|000014f0| 69 6e 20 73 75 62 2d 72 | 6f 75 74 69 6e 65 21 0d |in sub-r|outine!.|
|00001500| 05 32 04 0d 05 3c 4f 4d | 4f 56 20 20 20 20 20 20 |.2...<OM|OV |
|00001510| 4c 69 6e 65 53 74 61 72 | 74 2c 53 6f 75 72 63 65 |LineStar|t,Source|
|00001520| 20 20 20 20 20 20 20 20 | 20 f4 20 4c 69 6e 65 53 | | . LineS|
|00001530| 74 61 72 74 20 3d 73 74 | 61 72 74 20 61 64 64 72 |tart =st|art addr|
|00001540| 65 73 73 20 6f 66 20 73 | 6f 75 72 63 65 20 6c 69 |ess of s|ource li|
|00001550| 6e 65 0d 05 46 46 42 4c | 20 20 20 20 20 20 20 43 |ne..FFBL| C|
|00001560| 6f 6e 76 65 72 74 4f 50 | 54 5f 53 75 62 5f 52 6f |onvertOP|T_Sub_Ro|
|00001570| 75 74 69 6e 65 20 20 20 | f4 20 43 61 6c 6c 20 73 |utine |. Call s|
|00001580| 75 62 2d 72 6f 75 74 69 | 6e 65 20 66 6f 72 20 6f |ub-routi|ne for o|
|00001590| 6e 65 20 6c 69 6e 65 2e | 0d 05 50 43 4d 4f 56 20 |ne line.|..PCMOV |
|000015a0| 20 20 20 20 20 53 6f 75 | 72 63 65 2c 4c 69 6e 65 | Sou|rce,Line|
|000015b0| 45 6e 64 20 20 20 20 20 | 20 20 20 20 20 20 f4 20 |End | . |
|000015c0| 73 6f 75 72 63 65 20 61 | 64 64 72 65 73 73 20 6f |source a|ddress o|
|000015d0| 66 20 6e 65 78 74 20 6c | 69 6e 65 0d 05 5a 20 53 |f next l|ine..Z S|
|000015e0| 55 42 20 20 20 20 20 20 | 52 31 2c 54 61 72 67 65 |UB |R1,Targe|
|000015f0| 74 2c 54 72 67 4c 65 6e | 41 64 72 0d 05 64 3d 41 |t,TrgLen|Adr..d=A|
|00001600| 44 44 20 20 20 20 20 20 | 52 31 2c 52 31 2c 23 32 |DD |R1,R1,#2|
|00001610| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001620| 20 f4 20 52 31 3d 74 61 | 72 67 65 74 20 6c 69 6e | . R1=ta|rget lin|
|00001630| 65 20 6c 65 6e 67 74 68 | 0d 05 6e 1b 53 54 52 42 |e length|..n.STRB|
|00001640| 20 20 20 20 20 52 31 2c | 5b 54 72 67 4c 65 6e 41 | R1,|[TrgLenA|
|00001650| 64 72 5d 0d 05 78 16 42 | 20 20 20 20 20 20 20 20 |dr]..x.B| |
|00001660| 4d 61 69 6e 5f 4c 6f 6f | 70 0d 05 82 28 f4 3d 3d |Main_Loo|p...(.==|
|00001670| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001680| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001690| 3d 0d 05 8c 0c 2e 42 61 | 64 50 72 6f 67 0d 05 96 |=.....Ba|dProg...|
|000016a0| 41 4d 4f 56 20 20 20 20 | 20 20 52 31 2c 23 30 20 |AMOV | R1,#0 |
|000016b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000016c0| 20 20 20 f4 20 65 72 72 | 6f 72 20 30 20 3d 20 63 | . err|or 0 = c|
|000016d0| 6f 72 72 75 70 74 20 70 | 72 6f 67 72 61 6d 0d 05 |orrupt p|rogram..|
|000016e0| a0 18 2e 66 61 69 6c 65 | 64 5f 72 65 74 75 72 6e |...faile|d_return|
|000016f0| 5f 65 72 72 6f 72 0d 05 | aa 36 4d 4f 56 20 20 20 |_error..|.6MOV |
|00001700| 20 20 20 52 30 2c 53 6f | 75 72 63 65 4c 69 6e 65 | R0,So|urceLine|
|00001710| 4e 6f 20 20 20 20 20 20 | 20 20 20 20 f4 20 52 30 |No | . R0|
|00001720| 3d 6c 69 6e 65 20 6e 75 | 6d 62 65 72 0d 05 b4 45 |=line nu|mber...E|
|00001730| 4d 4f 56 20 20 20 20 20 | 20 52 30 2c 52 30 2c 4c |MOV | R0,R0,L|
|00001740| 53 4c 20 23 38 20 20 20 | 20 20 20 20 20 20 20 20 |SL #8 | |
|00001750| 20 20 f4 20 4c 69 6e 65 | 20 6e 75 6d 62 65 72 73 | . Line| numbers|
|00001760| 20 69 6e 20 62 79 74 65 | 73 20 31 20 61 6e 64 20 | in byte|s 1 and |
|00001770| 32 0d 05 be 35 84 52 20 | 20 20 20 20 20 52 30 2c |2...5.R | R0,|
|00001780| 52 30 2c 23 31 3c 3c 33 | 31 20 20 20 20 20 20 20 |R0,#1<<3|1 |
|00001790| 20 20 20 20 20 20 f4 20 | 49 6e 64 69 63 61 74 65 | . |Indicate|
|000017a0| 20 65 72 72 6f 72 0d 05 | c8 3a 84 52 20 20 20 20 | error..|.:.R |
|000017b0| 20 20 52 30 2c 52 30 2c | 52 31 20 20 20 20 20 20 | R0,R0,|R1 |
|000017c0| 20 20 20 20 20 20 20 20 | 20 20 20 f4 20 72 65 74 | | . ret|
|000017d0| 75 72 6e 20 65 72 72 6f | 72 20 6e 75 6d 62 65 72 |urn erro|r number|
|000017e0| 0d 05 d2 15 53 54 52 20 | 20 20 20 20 20 52 30 2c |....STR | R0,|
|000017f0| 5b 52 31 33 5d 0d 05 dc | 1e 4c 44 4d 46 44 20 20 |[R13]...|.LDMFD |
|00001800| 20 20 52 31 33 21 2c 7b | 52 30 2d 52 31 32 2c 50 | R13!,{|R0-R12,P|
|00001810| 43 7d 5e 0d 05 e6 56 f4 | 20 3d 3d 3d 3d 3d 3d 3d |C}^...V.| =======|
|00001820| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001830| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001840| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001850| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001860| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 05 f0 4a f4 20 54 |========|=...J. T|
|00001870| 68 65 20 66 6f 6c 6c 6f | 77 69 6e 67 20 69 73 20 |he follo|wing is |
|00001880| 61 20 73 75 62 2d 72 6f | 75 74 69 6e 65 20 74 68 |a sub-ro|utine th|
|00001890| 61 74 20 70 72 6f 63 65 | 73 73 65 73 20 6f 6e 65 |at proce|sses one|
|000018a0| 20 6c 69 6e 65 20 6f 66 | 20 74 68 65 20 73 6f 75 | line of| the sou|
|000018b0| 72 63 65 0d 05 fa 35 f4 | 20 70 72 6f 67 72 61 6d |rce...5.| program|
|000018c0| 2e 20 59 6f 75 20 63 61 | 6e 20 72 65 70 6c 61 63 |. You ca|n replac|
|000018d0| 65 20 69 74 20 77 69 74 | 68 20 79 6f 75 72 20 6f |e it wit|h your o|
|000018e0| 77 6e 20 63 6f 64 65 2e | 0d 06 04 05 f4 0d 06 0e |wn code.|........|
|000018f0| 40 f4 20 4f 6e 20 65 6e | 74 72 79 20 20 20 53 6f |@. On en|try So|
|00001900| 75 72 63 65 20 20 20 20 | 2d 20 70 6f 69 6e 74 73 |urce |- points|
|00001910| 20 61 74 20 74 68 65 20 | 73 74 61 72 74 20 6f 66 | at the |start of|
|00001920| 20 73 6f 75 72 63 65 20 | 6c 69 6e 65 2e 0d 06 18 | source |line....|
|00001930| 56 f4 20 3d 3d 3d 3d 3d | 3d 3d 3d 20 20 20 4c 69 |V. =====|=== Li|
|00001940| 6e 65 53 74 61 72 74 20 | 2d 20 70 6f 69 6e 74 73 |neStart |- points|
|00001950| 20 61 74 20 73 74 61 72 | 74 20 6f 66 20 73 6f 75 | at star|t of sou|
|00001960| 72 63 65 20 6c 69 6e 65 | 20 28 61 66 74 65 72 20 |rce line| (after |
|00001970| 6c 69 6e 65 20 6e 6f 2e | 20 61 6e 64 20 6c 65 6e |line no.| and len|
|00001980| 67 74 68 0d 06 22 3d f4 | 20 20 20 20 20 20 20 20 |gth.."=.| |
|00001990| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000019a0| 62 79 74 65 73 29 2c 69 | 2e 65 20 73 74 61 72 74 |bytes),i|.e start|
|000019b0| 20 6f 66 20 61 63 74 75 | 61 6c 20 64 61 74 61 2e | of actu|al data.|
|000019c0| 0d 06 2c 48 f4 20 20 20 | 20 20 20 20 20 20 20 20 |..,H. | |
|000019d0| 20 4c 69 6e 65 45 6e 64 | 20 20 20 2d 20 70 6f 69 | LineEnd| - poi|
|000019e0| 6e 74 73 20 61 74 20 74 | 68 65 20 65 6e 64 20 6f |nts at t|he end o|
|000019f0| 66 20 73 6f 75 72 63 65 | 20 6c 69 6e 65 20 28 61 |f source| line (a|
|00001a00| 66 74 65 72 20 26 44 29 | 0d 06 36 56 f4 20 20 20 |fter &D)|..6V. |
|00001a10| 20 20 20 20 20 20 20 20 | 20 54 61 72 67 65 74 20 | | Target |
|00001a20| 20 20 20 2d 20 70 6f 69 | 6e 74 73 20 61 74 20 73 | - poi|nts at s|
|00001a30| 74 61 72 74 20 6f 66 20 | 54 61 72 67 65 74 20 6c |tart of |Target l|
|00001a40| 69 6e 65 20 28 61 66 74 | 65 72 20 6c 69 6e 65 20 |ine (aft|er line |
|00001a50| 6e 6f 2e 20 61 6e 64 20 | 6c 65 6e 67 74 68 0d 06 |no. and |length..|
|00001a60| 40 40 f4 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |@@. | |
|00001a70| 20 20 20 20 20 20 20 20 | 20 20 20 62 79 74 65 73 | | bytes|
|00001a80| 29 2c 69 2e 65 20 73 74 | 61 72 74 20 61 64 72 73 |),i.e st|art adrs|
|00001a90| 20 74 6f 20 73 74 6f 72 | 65 20 64 61 74 61 0d 06 | to stor|e data..|
|00001aa0| 4a 05 f4 0d 06 54 40 f4 | 20 4f 6e 20 65 78 69 74 |J....T@.| On exit|
|00001ab0| 20 20 20 20 4c 69 6e 65 | 53 74 61 72 74 20 2d 20 | Line|Start - |
|00001ac0| 55 70 64 61 74 65 64 20 | 74 6f 20 70 6f 69 6e 74 |Updated |to point|
|00001ad0| 20 61 74 20 73 6f 75 72 | 63 65 20 6c 69 6e 65 20 | at sour|ce line |
|00001ae0| 65 6e 64 0d 06 5e 40 f4 | 20 3d 3d 3d 3d 3d 3d 3d |end..^@.| =======|
|00001af0| 20 20 20 20 54 61 72 67 | 65 74 20 20 20 20 2d 20 | Targ|et - |
|00001b00| 55 70 64 61 74 65 64 20 | 74 6f 20 70 6f 69 6e 74 |Updated |to point|
|00001b10| 20 61 74 20 54 61 72 67 | 65 74 20 6c 69 6e 65 20 | at Targ|et line |
|00001b20| 65 6e 64 0d 06 68 26 f4 | 20 20 20 20 20 20 20 20 |end..h&.| |
|00001b30| 20 20 20 20 53 6f 75 72 | 63 65 20 20 20 20 2d 20 | Sour|ce - |
|00001b40| 70 72 65 73 65 72 76 65 | 64 0d 06 72 26 f4 20 20 |preserve|d..r&. |
|00001b50| 20 20 20 20 20 20 20 20 | 20 20 4c 69 6e 65 45 6e | | LineEn|
|00001b60| 64 20 20 20 2d 20 70 72 | 65 73 65 72 76 65 64 0d |d - pr|eserved.|
|00001b70| 06 7c 55 f4 20 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.|U. ===|========|
|00001b80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001b90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001ba0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001bb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001bc0| 3d 3d 3d 3d 0d 06 86 05 | f4 0d 06 90 04 0d 06 9a |====....|........|
|00001bd0| 1b 2e 43 6f 6e 76 65 72 | 74 4f 50 54 5f 53 75 62 |..Conver|tOPT_Sub|
|00001be0| 5f 52 6f 75 74 69 6e 65 | 0d 06 a4 17 53 54 4d 46 |_Routine|....STMF|
|00001bf0| 44 20 20 20 20 52 31 33 | 21 2c 7b 52 31 34 7d 0d |D R13|!,{R14}.|
|00001c00| 06 ae 3d 42 49 43 20 20 | 20 20 20 20 46 6c 61 67 |..=BIC | Flag|
|00001c10| 73 2c 46 6c 61 67 73 2c | 23 51 75 6f 74 65 73 5f |s,Flags,|#Quotes_|
|00001c20| 42 69 74 20 20 f4 20 43 | 6c 65 61 72 20 74 68 65 |Bit . C|lear the|
|00001c30| 20 71 75 6f 74 65 73 20 | 66 6c 61 67 0d 06 b8 04 | quotes |flag....|
|00001c40| 0d 06 c2 16 2e 53 6b 69 | 70 4c 65 61 64 69 6e 67 |.....Ski|pLeading|
|00001c50| 53 70 61 63 65 73 0d 06 | cc 33 4c 44 52 42 20 20 |Spaces..|.3LDRB |
|00001c60| 20 20 20 52 30 2c 5b 4c | 69 6e 65 53 74 61 72 74 | R0,[L|ineStart|
|00001c70| 5d 20 20 20 20 20 20 20 | 20 20 20 20 20 f4 20 67 |] | . g|
|00001c80| 65 74 20 61 20 62 79 74 | 65 0d 06 d6 33 54 45 51 |et a byt|e...3TEQ|
|00001c90| 20 20 20 20 20 20 52 30 | 2c 23 97 22 20 22 20 20 | R0|,#." " |
|00001ca0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 f4 20 | | . |
|00001cb0| 69 73 20 69 74 20 73 70 | 61 63 65 3f 0d 06 e0 1b |is it sp|ace?....|
|00001cc0| 53 54 52 45 51 42 20 20 | 20 52 30 2c 5b 54 61 72 |STREQB | R0,[Tar|
|00001cd0| 67 65 74 5d 2c 23 31 0d | 06 ea 55 41 44 44 45 51 |get],#1.|..UADDEQ|
|00001ce0| 20 20 20 20 4c 69 6e 65 | 53 74 61 72 74 2c 4c 69 | Line|Start,Li|
|00001cf0| 6e 65 53 74 61 72 74 2c | 23 31 20 20 20 20 f4 20 |neStart,|#1 . |
|00001d00| 74 68 65 6e 20 63 6f 70 | 79 20 69 74 20 28 74 68 |then cop|y it (th|
|00001d10| 69 73 20 72 6f 75 74 69 | 6e 65 20 64 6f 65 73 27 |is routi|ne does'|
|00001d20| 6e 74 20 73 6b 69 70 20 | 73 70 73 29 0d 06 f4 1e |nt skip |sps)....|
|00001d30| 42 45 51 20 20 20 20 20 | 20 53 6b 69 70 4c 65 61 |BEQ | SkipLea|
|00001d40| 64 69 6e 67 53 70 61 63 | 65 73 0d 06 fe 04 0d 07 |dingSpac|es......|
|00001d50| 08 35 54 45 51 20 20 20 | 20 20 20 52 30 2c 23 26 |.5TEQ | R0,#&|
|00001d60| 44 43 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |DC | |
|00001d70| 20 20 20 20 20 f4 20 49 | 66 20 44 41 54 41 20 6c | . I|f DATA l|
|00001d80| 69 6e 65 0d 07 12 34 54 | 45 51 4e 45 20 20 20 20 |ine...4T|EQNE |
|00001d90| 52 30 2c 23 26 46 34 20 | 20 20 20 20 20 20 20 20 |R0,#&F4 | |
|00001da0| 20 20 20 20 20 20 20 20 | 20 20 f4 20 6f 72 20 52 | | . or R|
|00001db0| 45 4d 20 6c 69 6e 65 0d | 07 1c 4a 42 45 51 20 20 |EM line.|..JBEQ |
|00001dc0| 20 20 20 20 43 6f 70 79 | 41 6c 6c 4c 69 6e 65 20 | Copy|AllLine |
|00001dd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 f4 20 | | . |
|00001de0| 74 68 65 6e 20 63 6f 70 | 79 20 74 68 65 20 77 68 |then cop|y the wh|
|00001df0| 6f 6c 65 20 6c 69 6e 65 | 20 61 6e 64 20 65 78 69 |ole line| and exi|
|00001e00| 74 0d 07 26 04 0d 07 30 | 11 2e 47 65 74 5f 4f 6e |t..&...0|..Get_On|
|00001e10| 65 5f 42 79 74 65 0d 07 | 3a 34 4c 44 52 42 20 20 |e_Byte..|:4LDRB |
|00001e20| 20 20 20 52 30 2c 5b 4c | 69 6e 65 53 74 61 72 74 | R0,[L|ineStart|
|00001e30| 5d 2c 23 31 20 20 20 20 | 20 20 20 20 20 20 f4 20 |],#1 | . |
|00001e40| 67 65 74 20 61 20 62 79 | 74 65 0d 07 44 3c 53 54 |get a by|te..D<ST|
|00001e50| 52 42 20 20 20 20 20 52 | 30 2c 5b 54 61 72 67 65 |RB R|0,[Targe|
|00001e60| 74 5d 2c 23 31 20 20 20 | 20 20 20 20 20 20 20 20 |t],#1 | |
|00001e70| 20 20 f4 20 53 74 6f 72 | 65 20 69 74 20 69 6e 20 | . Stor|e it in |
|00001e80| 54 61 72 67 65 74 0d 07 | 4e 04 0d 07 58 39 54 45 |Target..|N...X9TE|
|00001e90| 51 20 20 20 20 20 20 52 | 30 2c 23 26 32 32 20 20 |Q R|0,#&22 |
|00001ea0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001eb0| 20 20 f4 20 57 61 73 20 | 69 74 20 61 20 71 75 6f | . Was |it a quo|
|00001ec0| 74 65 3f 0d 07 62 43 82 | 45 51 20 20 20 20 46 6c |te?..bC.|EQ Fl|
|00001ed0| 61 67 73 2c 46 6c 61 67 | 73 2c 23 51 75 6f 74 65 |ags,Flag|s,#Quote|
|00001ee0| 73 5f 42 69 74 20 20 20 | 20 f4 20 59 65 73 2c 20 |s_Bit | . Yes, |
|00001ef0| 74 68 65 6e 20 74 6f 67 | 67 6c 65 20 71 75 6f 74 |then tog|gle quot|
|00001f00| 65 20 66 6c 61 67 0d 07 | 6c 3b 42 45 51 20 20 20 |e flag..|l;BEQ |
|00001f10| 20 20 20 47 65 74 5f 4f | 6e 65 5f 42 79 74 65 20 | Get_O|ne_Byte |
|00001f20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 f4 20 | | . |
|00001f30| 61 6e 64 20 67 65 74 20 | 6e 65 78 74 20 62 79 74 |and get |next byt|
|00001f40| 65 0d 07 76 04 0d 07 80 | 47 54 45 51 20 20 20 20 |e..v....|GTEQ |
|00001f50| 20 20 52 30 2c 23 31 33 | 20 20 20 20 20 20 20 20 | R0,#13| |
|00001f60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 f4 20 57 | | . W|
|00001f70| 61 73 20 69 74 20 65 6e | 64 20 6f 66 20 6c 69 6e |as it en|d of lin|
|00001f80| 65 20 28 69 2e 65 2e 20 | 26 44 29 3f 0d 07 8a 43 |e (i.e. |&D)?...C|
|00001f90| 42 45 51 20 20 20 20 20 | 20 49 73 49 74 45 6e 64 |BEQ | IsItEnd|
|00001fa0| 4f 66 4c 69 6e 65 20 20 | 20 20 20 20 20 20 20 20 |OfLine | |
|00001fb0| 20 20 20 20 f4 20 59 65 | 73 2c 20 73 6f 20 63 68 | . Ye|s, so ch|
|00001fc0| 65 63 6b 20 65 6e 64 20 | 6f 66 20 6c 69 6e 65 0d |eck end |of line.|
|00001fd0| 07 94 04 0d 07 9e 44 54 | 53 54 20 20 20 20 20 20 |......DT|ST |
|00001fe0| 46 6c 61 67 73 2c 23 51 | 75 6f 74 65 73 5f 42 69 |Flags,#Q|uotes_Bi|
|00001ff0| 74 20 20 20 20 20 20 20 | 20 20 20 f4 20 41 72 65 |t | . Are|
|00002000| 20 77 65 20 73 74 69 6c | 6c 20 69 6e 73 69 64 65 | we stil|l inside|
|00002010| 20 71 75 6f 74 65 73 0d | 07 a8 3f 42 4e 45 20 20 | quotes.|..?BNE |
|00002020| 20 20 20 20 47 65 74 5f | 4f 6e 65 5f 42 79 74 65 | Get_|One_Byte|
|00002030| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 f4 | | .|
|00002040| 20 59 65 73 2c 20 73 6f | 20 67 65 74 20 6e 65 78 | Yes, so| get nex|
|00002050| 74 20 62 79 74 65 0d 07 | b2 04 0d 07 bc 2b f4 20 |t byte..|.....+. |
|00002060| 3d 3d 3d 3d 3d 20 54 68 | 69 73 20 69 73 20 6d 79 |===== Th|is is my|
|00002070| 20 73 69 6c 6c 79 20 63 | 6f 64 65 20 3d 3d 3d 3d | silly c|ode ====|
|00002080| 3d 3d 3d 3d 5c 0d 07 c6 | 2b f4 20 43 6f 6e 76 65 |====\...|+. Conve|
|00002090| 72 74 73 20 4f 50 54 20 | 69 6e 74 6f 20 6f 70 74 |rts OPT |into opt|
|000020a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 5c | | \|
|000020b0| 0d 07 d0 2b f4 20 20 20 | 20 20 20 20 20 20 20 20 |...+. | |
|000020c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000020d0| 20 20 20 20 20 20 20 20 | 20 20 5c 0d 07 da 2b 54 | | \...+T|
|000020e0| 45 51 20 20 20 20 20 20 | 52 30 2c 23 97 22 4f 22 |EQ |R0,#."O"|
|000020f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002100| 20 20 20 20 20 5c 0d 07 | e4 2d 4c 44 52 45 51 42 | \..|.-LDREQB|
|00002110| 20 20 20 52 31 2c 5b 4c | 69 6e 65 53 74 61 72 74 | R1,[L|ineStart|
|00002120| 2c 23 30 5d 20 20 20 20 | 20 20 20 20 20 20 20 20 |,#0] | |
|00002130| 20 20 5c 0d 07 ee 2b 54 | 45 51 45 51 20 20 20 20 | \...+T|EQEQ |
|00002140| 52 31 2c 23 97 22 50 22 | 20 20 20 20 20 20 20 20 |R1,#."P"| |
|00002150| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 5c 0d 07 | | \..|
|00002160| f8 2d 4c 44 52 45 51 42 | 20 20 20 52 32 2c 5b 4c |.-LDREQB| R2,[L|
|00002170| 69 6e 65 53 74 61 72 74 | 2c 23 31 5d 20 20 20 20 |ineStart|,#1] |
|00002180| 20 20 20 20 20 20 20 20 | 20 20 5c 0d 08 02 2b 54 | | \...+T|
|00002190| 45 51 45 51 20 20 20 20 | 52 32 2c 23 97 22 54 22 |EQEQ |R2,#."T"|
|000021a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000021b0| 20 20 20 20 20 5c 0d 08 | 0c 2d 42 4e 45 20 20 20 | \..|.-BNE |
|000021c0| 20 20 20 49 73 49 74 45 | 6e 64 4f 66 4c 69 6e 65 | IsItE|ndOfLine|
|000021d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000021e0| 20 20 5c 0d 08 16 2d 20 | 20 20 20 20 20 20 20 20 | \...- | |
|000021f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002200| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 5c | | \|
|00002210| 0d 08 20 2c 84 52 20 20 | 20 20 20 20 52 30 2c 52 |.. ,.R | R0,R|
|00002220| 30 2c 23 31 3c 3c 35 20 | 20 20 20 20 20 20 20 20 |0,#1<<5 | |
|00002230| 20 20 20 20 20 20 20 20 | 20 20 20 5c 0d 08 2a 2c | | \..*,|
|00002240| 84 52 20 20 20 20 20 20 | 52 31 2c 52 31 2c 23 31 |.R |R1,R1,#1|
|00002250| 3c 3c 35 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |<<5 | |
|00002260| 20 20 20 20 20 20 20 5c | 0d 08 34 2c 84 52 20 20 | \|..4,.R |
|00002270| 20 20 20 20 52 32 2c 52 | 32 2c 23 31 3c 3c 35 20 | R2,R|2,#1<<5 |
|00002280| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002290| 20 20 20 5c 0d 08 3e 2d | 20 20 20 20 20 20 20 20 | \..>-| |
|000022a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000022b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000022c0| 5c 0d 08 48 2d 53 54 52 | 42 20 20 20 20 20 52 30 |\..H-STR|B R0|
|000022d0| 2c 5b 54 61 72 67 65 74 | 2c 23 2d 31 5d 20 20 20 |,[Target|,#-1] |
|000022e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 5c 0d 08 | | \..|
|000022f0| 52 2d 53 54 52 42 20 20 | 20 20 20 52 31 2c 5b 54 |R-STRB | R1,[T|
|00002300| 61 72 67 65 74 5d 2c 23 | 31 20 20 20 20 20 20 20 |arget],#|1 |
|00002310| 20 20 20 20 20 20 20 20 | 20 20 5c 0d 08 5c 2d 53 | | \..\-S|
|00002320| 54 52 42 20 20 20 20 20 | 52 32 2c 5b 54 61 72 67 |TRB |R2,[Targ|
|00002330| 65 74 5d 2c 23 31 20 20 | 20 20 20 20 20 20 20 20 |et],#1 | |
|00002340| 20 20 20 20 20 20 20 5c | 0d 08 66 2d 41 44 44 20 | \|..f-ADD |
|00002350| 20 20 20 20 20 4c 69 6e | 65 53 74 61 72 74 2c 4c | Lin|eStart,L|
|00002360| 69 6e 65 53 74 61 72 74 | 2c 23 32 20 20 20 20 20 |ineStart|,#2 |
|00002370| 20 20 20 20 5c 0d 08 70 | 2b f4 3d 3d 3d 3d 3d 3d | \..p|+.======|
|00002380| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002390| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 5c |========|=======\|
|000023a0| 0d 08 7a 04 0d 08 84 04 | 0d 08 8e 12 2e 49 73 49 |..z.....|.....IsI|
|000023b0| 74 45 6e 64 4f 66 4c 69 | 6e 65 0d 08 98 52 43 4d |tEndOfLi|ne...RCM|
|000023c0| 50 20 20 20 20 20 20 4c | 69 6e 65 53 74 61 72 74 |P L|ineStart|
|000023d0| 2c 4c 69 6e 65 45 6e 64 | 20 20 20 20 20 20 20 20 |,LineEnd| |
|000023e0| 20 20 f4 20 44 69 64 20 | 77 65 20 72 65 61 63 68 | . Did |we reach|
|000023f0| 20 74 68 65 20 65 6e 64 | 20 6f 66 20 74 68 65 20 | the end| of the |
|00002400| 73 6f 75 72 63 65 20 6c | 69 6e 65 3f 0d 08 a2 41 |source l|ine?...A|
|00002410| 42 4c 4f 20 20 20 20 20 | 20 47 65 74 5f 4f 6e 65 |BLO | Get_One|
|00002420| 5f 42 79 74 65 20 20 20 | 20 20 20 20 20 20 20 20 |_Byte | |
|00002430| 20 20 20 20 f4 20 4e 6f | 3f 20 73 6f 20 67 65 74 | . No|? so get|
|00002440| 20 61 6e 6f 74 68 65 72 | 20 62 79 74 65 0d 08 ac | another| byte...|
|00002450| 3f 4c 44 4d 46 44 20 20 | 20 20 52 31 33 21 2c 7b |?LDMFD | R13!,{|
|00002460| 50 43 7d 5e 20 20 20 20 | 20 20 20 20 20 20 20 20 |PC}^ | |
|00002470| 20 20 20 20 20 f4 20 45 | 6c 73 65 20 6f 6e 65 20 | . E|lse one |
|00002480| 6c 69 6e 65 20 69 73 20 | 64 6f 6e 65 0d 08 b6 04 |line is |done....|
|00002490| 0d 08 c0 2a f4 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...*. --|--------|
|000024a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000024b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 0d 08 ca 27 f4 20 |--------|--...'. |
|000024c0| 54 68 65 20 66 6f 6c 6c | 6f 77 69 6e 67 20 73 75 |The foll|owing su|
|000024d0| 62 2d 72 6f 75 74 69 6e | 65 20 69 73 20 75 73 65 |b-routin|e is use|
|000024e0| 64 0d 08 d4 29 f4 20 74 | 6f 20 63 6f 70 79 20 74 |d...). t|o copy t|
|000024f0| 68 65 20 72 65 73 74 20 | 6f 66 20 74 68 65 20 73 |he rest |of the s|
|00002500| 6f 75 72 63 65 20 6c 69 | 6e 65 0d 08 de 2b f4 20 |ource li|ne...+. |
|00002510| 74 6f 20 74 68 65 20 54 | 61 72 67 65 74 20 61 6e |to the T|arget an|
|00002520| 64 20 72 65 74 75 72 6e | 73 20 74 6f 20 74 68 65 |d return|s to the|
|00002530| 20 6d 61 69 6e 0d 08 e8 | 0e f4 20 70 72 6f 67 72 | main...|.. progr|
|00002540| 61 6d 2e 0d 08 f2 28 f4 | 20 55 73 65 20 69 74 20 |am....(.| Use it |
|00002550| 77 68 65 6e 20 79 6f 75 | 20 65 6e 63 6f 75 6e 74 |when you| encount|
|00002560| 65 72 20 61 20 52 45 4d | 20 6f 72 0d 08 fc 28 f4 |er a REM| or...(.|
|00002570| 20 44 41 54 41 20 73 74 | 61 74 65 6d 65 6e 74 20 | DATA st|atement |
|00002580| 69 6e 20 74 68 65 20 73 | 6f 75 72 63 65 20 6c 69 |in the s|ource li|
|00002590| 6e 65 2e 0d 09 06 2a f4 | 20 2d 2d 2d 2d 2d 2d 2d |ne....*.| -------|
|000025a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000025b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0d 09 10 |--------|-----...|
|000025c0| 04 0d 09 1a 10 2e 43 6f | 70 79 41 6c 6c 4c 69 6e |......Co|pyAllLin|
|000025d0| 65 0d 09 24 1e 4c 44 52 | 42 20 20 20 20 20 52 30 |e..$.LDR|B R0|
|000025e0| 2c 5b 4c 69 6e 65 53 74 | 61 72 74 5d 2c 23 31 0d |,[LineSt|art],#1.|
|000025f0| 09 2e 1b 53 54 52 42 20 | 20 20 20 20 52 30 2c 5b |...STRB | R0,[|
|00002600| 54 61 72 67 65 74 5d 2c | 23 31 0d 09 38 1e 43 4d |Target],|#1..8.CM|
|00002610| 50 20 20 20 20 20 20 4c | 69 6e 65 53 74 61 72 74 |P L|ineStart|
|00002620| 2c 4c 69 6e 65 45 6e 64 | 0d 09 42 18 42 4c 4f 20 |,LineEnd|..B.BLO |
|00002630| 20 20 20 20 20 43 6f 70 | 79 41 6c 6c 4c 69 6e 65 | Cop|yAllLine|
|00002640| 0d 09 4c 17 4c 44 4d 46 | 44 20 20 20 20 52 31 33 |..L.LDMF|D R13|
|00002650| 21 2c 7b 50 43 7d 5e 0d | 09 56 04 0d 09 60 05 5d |!,{PC}^.|.V...`.]|
|00002660| 0d 09 6a 05 ed 0d 09 74 | 05 e1 0d ff |..j....t|.... |
+--------+-------------------------+-------------------------+--------+--------+