home *** CD-ROM | disk | FTP | other *** search
Unknown | 1995-03-18 | 10.3 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 1c f4 20 3e 20 | 50 61 74 63 68 20 66 6f |..... > |Patch fo|
|00000010| 72 20 54 61 73 6b 4b 69 | 6c 6c 65 72 0d 00 14 37 |r TaskKi|ller...7|
|00000020| f4 20 43 72 65 61 74 65 | 64 20 62 79 20 4a 46 50 |. Create|d by JFP|
|00000030| 61 74 63 68 20 a9 20 4a | 75 73 74 69 6e 20 46 6c |atch . J|ustin Fl|
|00000040| 65 74 63 68 65 72 2c 20 | 32 35 20 46 65 62 20 31 |etcher, |25 Feb 1|
|00000050| 39 39 35 0d 00 1e 30 f4 | 20 49 6e 74 65 72 6d 65 |995...0.| Interme|
|00000060| 64 69 61 74 65 20 63 6f | 64 65 20 66 69 6c 65 20 |diate co|de file |
|00000070| 63 72 65 61 74 65 64 20 | 31 38 20 4d 61 72 20 31 |created |18 Mar 1|
|00000080| 39 39 35 0d 00 28 10 ee | 20 85 20 f2 45 72 72 6f |995..(..| . .Erro|
|00000090| 72 3a e0 0d 00 32 13 f2 | 70 61 74 63 68 5f 6c 6f |r:...2..|patch_lo|
|000000a0| 61 64 66 69 6c 65 0d 00 | 3c 05 3a 0d 00 46 28 f4 |adfile..|<.:..F(.|
|000000b0| 20 2a 2a 2a 2a 2a 2a 2a | 20 55 73 65 72 20 70 72 | *******| User pr|
|000000c0| 65 2d 61 73 73 65 6d 62 | 6c 79 20 2a 2a 2a 2a 2a |e-assemb|ly *****|
|000000d0| 2a 2a 2a 0d 00 50 19 de | 20 6d 65 73 73 61 67 65 |***..P..| message|
|000000e0| 5f 62 75 66 66 65 72 25 | 20 32 35 36 0d 00 5a 21 |_buffer%| 256..Z!|
|000000f0| 2a 7c 20 53 65 74 20 52 | 69 73 63 20 4f 53 20 56 |*| Set R|isc OS V|
|00000100| 65 72 73 69 6f 6e 20 6e | 75 6d 62 65 72 0d 00 64 |ersion n|umber..d|
|00000110| 17 2a 53 65 74 20 52 4f | 24 56 65 72 73 69 6f 6e |.*Set RO|$Version|
|00000120| 20 33 31 31 0d 00 6e 33 | 2a 52 6d 45 6e 73 75 72 | 311..n3|*RmEnsur|
|00000130| 65 20 55 74 69 6c 69 74 | 79 4d 6f 64 75 6c 65 20 |e Utilit|yModule |
|00000140| 33 2e 31 31 20 53 65 74 | 20 52 4f 24 56 65 72 73 |3.11 Set| RO$Vers|
|00000150| 69 6f 6e 20 33 30 30 0d | 00 78 33 2a 52 6d 45 6e |ion 300.|.x3*RmEn|
|00000160| 73 75 72 65 20 55 74 69 | 6c 69 74 79 4d 6f 64 75 |sure Uti|lityModu|
|00000170| 6c 65 20 33 2e 30 30 20 | 53 65 74 20 52 4f 24 56 |le 3.00 |Set RO$V|
|00000180| 65 72 73 69 6f 6e 20 32 | 30 30 0d 00 82 24 72 69 |ersion 2|00...$ri|
|00000190| 73 63 6f 73 24 3d a4 73 | 79 73 74 65 6d 76 61 72 |scos$=.s|ystemvar|
|000001a0| 28 22 52 4f 24 56 65 72 | 73 69 6f 6e 22 29 0d 00 |("RO$Ver|sion")..|
|000001b0| 8c 43 f4 20 54 68 65 73 | 65 20 6e 75 6d 62 65 72 |.C. Thes|e number|
|000001c0| 73 20 63 6f 75 6e 74 20 | 66 72 6f 6d 20 74 6f 70 |s count |from top|
|000001d0| 20 6c 65 66 74 20 6f 66 | 20 6b 65 79 62 6f 61 72 | left of| keyboar|
|000001e0| 64 20 74 6f 20 62 6f 74 | 74 6f 6d 20 72 69 67 68 |d to bot|tom righ|
|000001f0| 74 0d 00 96 43 f4 20 69 | 65 20 45 73 63 20 3d 20 |t...C. i|e Esc = |
|00000200| 30 2c 20 66 31 3d 31 2c | 20 66 32 3d 32 2c 20 66 |0, f1=1,| f2=2, f|
|00000210| 33 3d 33 2c 20 2e 2e 20 | 66 31 32 3d 31 32 2c 20 |3=3, .. |f12=12, |
|00000220| 50 72 69 6e 74 3d 31 33 | 2c 20 53 63 72 4c 6f 63 |Print=13|, ScrLoc|
|00000230| 6b 3d 31 34 0d 00 a0 25 | f4 20 20 20 20 42 72 65 |k=14...%|. Bre|
|00000240| 61 6b 20 3d 31 34 2c 20 | 7e 3d 31 35 2c 20 31 3d |ak =14, |~=15, 1=|
|00000250| 31 36 2c 20 32 3d 31 37 | 2c 0d 00 aa 35 f4 20 20 |16, 2=17|,...5. |
|00000260| 20 20 54 41 42 20 20 20 | 3d 20 33 38 2c 20 4c 43 | TAB |= 38, LC|
|00000270| 74 72 6c 20 3d 20 35 38 | 2c 20 4c 53 68 69 66 74 |trl = 58|, LShift|
|00000280| 3d 20 37 35 2c 20 43 61 | 70 73 3d 20 39 32 0d 00 |= 75, Ca|ps= 92..|
|00000290| b4 05 f4 0d 00 be 1a 6b | 31 3d 26 36 30 3a f4 20 |.......k|1=&60:. |
|000002a0| 52 69 67 68 74 20 41 6c | 74 20 6b 65 79 0d 00 c8 |Right Al|t key...|
|000002b0| 27 e7 20 72 69 73 63 6f | 73 24 3d 22 33 31 31 22 |'. risco|s$="311"|
|000002c0| 20 8c 6b 32 3d 26 46 20 | 3a 6b 32 24 3d 22 42 72 | .k2=&F |:k2$="Br|
|000002d0| 65 61 6b 22 0d 00 d2 2d | e7 20 72 69 73 63 6f 73 |eak"...-|. riscos|
|000002e0| 24 3d 22 33 30 30 22 20 | 8c 6b 32 3d 26 45 20 3a |$="300" |.k2=&E :|
|000002f0| 6b 32 24 3d 22 53 63 72 | 6f 6c 6c 2d 4c 6f 63 6b |k2$="Scr|oll-Lock|
|00000300| 22 0d 00 dc 17 6b 33 3d | 30 20 20 3a f4 20 45 73 |"....k3=|0 :. Es|
|00000310| 63 61 70 65 20 6b 65 79 | 0d 00 e6 15 6b 34 3d 33 |cape key|....k4=3|
|00000320| 36 20 3a f4 20 4b 65 79 | 70 61 64 20 2a 0d 00 f0 |6 :. Key|pad *...|
|00000330| 49 20 f1 20 22 44 6f 20 | 79 6f 75 20 77 61 6e 74 |I . "Do |you want|
|00000340| 20 74 6f 20 61 73 73 65 | 6d 62 6c 65 20 74 68 65 | to asse|mble the|
|00000350| 20 77 69 6d 70 20 63 6f | 6d 6d 61 6e 64 20 70 72 | wimp co|mmand pr|
|00000360| 6f 6d 70 74 20 77 69 6e | 64 6f 77 20 3f 20 28 79 |ompt win|dow ? (y|
|00000370| 2f 6e 29 20 22 3b 0d 00 | fa 1a 20 f5 3a 67 24 3d |/n) ";..|.. .:g$=|
|00000380| be 3a fd a7 22 79 59 6e | 4e 22 2c 67 24 29 3e 30 |.:.."yYn|N",g$)>0|
|00000390| 0d 01 04 08 20 f1 67 24 | 0d 01 0e 20 20 63 6f 6e |.... .g$|... con|
|000003a0| 64 5f 65 6e 61 62 6c 65 | 77 69 6d 70 3d a7 22 79 |d_enable|wimp=."y|
|000003b0| 59 22 2c 67 24 29 3e 30 | 0d 01 18 21 f4 20 23 20 |Y",g$)>0|...!. # |
|000003c0| 43 4f 4e 44 20 53 45 54 | 20 65 6e 61 62 6c 65 77 |COND SET| enablew|
|000003d0| 69 6d 70 20 46 41 4c 53 | 45 0d 01 22 05 3a 0d 01 |imp FALS|E..".:..|
|000003e0| 2c 28 f4 20 2a 2a 2a 2a | 2a 2a 2a 20 4d 61 69 6e |,(. ****|*** Main|
|000003f0| 20 61 73 73 65 6d 62 6c | 79 20 72 6f 75 74 69 6e | assembl|y routin|
|00000400| 65 20 2a 2a 2a 2a 0d 01 | 36 24 73 70 3d 31 33 3a |e ****..|6$sp=13:|
|00000410| 6c 69 6e 6b 3d 31 34 3a | 70 63 3d 31 35 3a 50 25 |link=14:|pc=15:P%|
|00000420| 3d 26 30 3a 4f 25 3d 4d | 43 25 0d 01 40 14 e3 20 |=&0:O%=M|C%..@.. |
|00000430| 70 61 73 73 25 3d 34 20 | b8 20 36 20 88 32 0d 01 |pass%=4 |. 6 .2..|
|00000440| 4a 28 f4 20 2a 2a 2a 2a | 2a 2a 2a 20 53 74 61 72 |J(. ****|*** Star|
|00000450| 74 20 6f 66 20 6d 61 69 | 6e 20 63 6f 64 65 20 2a |t of mai|n code *|
|00000460| 2a 2a 2a 2a 2a 2a 0d 01 | 54 13 f2 70 61 74 63 68 |******..|T..patch|
|00000470| 5f 73 65 74 70 63 28 30 | 29 0d 01 5e 0e 5b 4f 50 |_setpc(0|)..^.[OP|
|00000480| 54 20 70 61 73 73 25 0d | 01 68 2d 20 20 20 45 51 |T pass%.|.h- EQ|
|00000490| 55 44 20 30 20 20 20 20 | 20 20 20 20 20 20 20 20 |UD 0 | |
|000004a0| 20 20 20 20 20 20 3b 20 | 53 74 61 72 74 20 6f 66 | ; |Start of|
|000004b0| 66 73 65 74 0d 01 72 36 | 20 20 20 45 51 55 44 20 |fset..r6| EQUD |
|000004c0| 69 6e 69 74 63 6f 64 65 | 25 20 20 20 20 20 20 20 |initcode|% |
|000004d0| 20 20 20 3b 20 49 6e 69 | 74 69 61 6c 69 73 61 74 | ; Ini|tialisat|
|000004e0| 69 6f 6e 20 6f 66 66 73 | 65 74 0d 01 7c 34 20 20 |ion offs|et..|4 |
|000004f0| 20 45 51 55 44 20 66 69 | 6e 61 6c 63 6f 64 65 25 | EQUD fi|nalcode%|
|00000500| 20 20 20 20 20 20 20 20 | 20 3b 20 46 69 6e 61 6c | | ; Final|
|00000510| 69 73 61 74 69 6f 6e 20 | 6f 66 66 73 65 74 0d 01 |isation |offset..|
|00000520| 86 37 20 20 20 45 51 55 | 44 20 73 72 76 63 6f 64 |.7 EQU|D srvcod|
|00000530| 65 25 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 53 |e% | ; S|
|00000540| 65 72 76 69 63 65 20 72 | 65 71 75 65 73 74 20 6f |ervice r|equest o|
|00000550| 66 66 73 65 74 0d 01 90 | 34 20 20 20 45 51 55 44 |ffset...|4 EQUD|
|00000560| 20 6d 6f 64 75 6c 65 5f | 74 69 74 6c 65 20 20 20 | module_|title |
|00000570| 20 20 20 20 3b 20 54 69 | 74 6c 65 20 73 74 72 69 | ; Ti|tle stri|
|00000580| 6e 67 20 6f 66 66 73 65 | 74 0d 01 9a 33 20 20 20 |ng offse|t...3 |
|00000590| 45 51 55 44 20 6d 6f 64 | 75 6c 65 5f 68 65 6c 70 |EQUD mod|ule_help|
|000005a0| 20 20 20 20 20 20 20 20 | 3b 20 48 65 6c 70 20 73 | |; Help s|
|000005b0| 74 72 69 6e 67 20 6f 66 | 66 73 65 74 0d 01 a4 46 |tring of|fset...F|
|000005c0| 20 20 20 45 51 55 44 20 | 6d 6f 64 75 6c 65 5f 63 | EQUD |module_c|
|000005d0| 6f 6d 6d 61 6e 64 73 20 | 20 20 20 3b 20 48 65 6c |ommands | ; Hel|
|000005e0| 70 20 61 6e 64 20 63 6f | 6d 6d 61 6e 64 20 6b 65 |p and co|mmand ke|
|000005f0| 79 77 6f 72 64 20 74 61 | 62 6c 65 20 6f 66 66 73 |yword ta|ble offs|
|00000600| 65 74 0d 01 ae 05 3a 0d | 01 b8 11 2e 6d 6f 64 75 |et....:.|....modu|
|00000610| 6c 65 5f 74 69 74 6c 65 | 0d 01 c2 1b 20 20 20 45 |le_title|.... E|
|00000620| 51 55 53 20 22 54 61 73 | 6b 4b 69 6c 6c 65 72 22 |QUS "Tas|kKiller"|
|00000630| 2b bd 30 0d 01 cc 0c 20 | 20 20 41 4c 49 47 4e 0d |+.0.... | ALIGN.|
|00000640| 01 d6 05 3a 0d 01 e0 10 | 2e 6d 6f 64 75 6c 65 5f |...:....|.module_|
|00000650| 68 65 6c 70 0d 01 ea 47 | 20 20 20 45 51 55 53 20 |help...G| EQUS |
|00000660| 22 54 61 73 6b 4b 69 6c | 6c 65 72 22 2b bd 39 2b |"TaskKil|ler"+.9+|
|00000670| 22 31 2e 30 35 20 28 22 | 2b c1 91 24 2c 35 2c 31 |"1.05 ("|+..$,5,1|
|00000680| 31 29 2b 22 29 20 a9 20 | 4a 75 73 74 69 6e 20 46 |1)+") . |Justin F|
|00000690| 6c 65 74 63 68 65 72 22 | 2b bd 30 0d 01 f4 0c 20 |letcher"|+.0.... |
|000006a0| 20 20 41 4c 49 47 4e 0d | 01 fe 05 3a 0d 02 08 21 | ALIGN.|...:...!|
|000006b0| 3b 20 2a 2a 2a 2a 2a 20 | 4d 6f 64 75 6c 65 20 63 |; ***** |Module c|
|000006c0| 6f 6d 6d 61 6e 64 73 20 | 74 61 62 6c 65 0d 02 12 |ommands |table...|
|000006d0| 14 2e 6d 6f 64 75 6c 65 | 5f 63 6f 6d 6d 61 6e 64 |..module|_command|
|000006e0| 73 0d 02 1c 2d 20 20 20 | 45 51 55 53 20 22 54 61 |s...- |EQUS "Ta|
|000006f0| 73 6b 4b 69 6c 6c 65 72 | 22 20 20 20 20 20 20 20 |skKiller|" |
|00000700| 3b 20 43 6f 6d 6d 61 6e | 64 20 6e 61 6d 65 0d 02 |; Comman|d name..|
|00000710| 26 13 20 20 20 45 51 55 | 42 20 30 3a 41 4c 49 47 |&. EQU|B 0:ALIG|
|00000720| 4e 0d 02 30 2d 20 20 20 | 45 51 55 44 20 30 20 20 |N..0- |EQUD 0 |
|00000730| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000740| 3b 20 43 6f 64 65 20 74 | 6f 20 63 61 6c 6c 0d 02 |; Code t|o call..|
|00000750| 3a 26 20 20 20 45 51 55 | 44 20 26 30 20 20 20 20 |:& EQU|D &0 |
|00000760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 46 | | ; F|
|00000770| 6c 61 67 73 0d 02 44 2f | 20 20 20 45 51 55 44 20 |lags..D/| EQUD |
|00000780| 30 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |0 | |
|00000790| 20 20 20 3b 20 53 79 6e | 74 61 78 20 70 6f 69 6e | ; Syn|tax poin|
|000007a0| 74 65 72 0d 02 4e 2d 20 | 20 20 45 51 55 44 20 68 |ter..N- | EQUD h|
|000007b0| 65 6c 70 5f 74 61 73 6b | 6b 69 6c 6c 65 72 20 20 |elp_task|killer |
|000007c0| 20 20 3b 20 48 65 6c 70 | 20 70 6f 69 6e 74 65 72 | ; Help| pointer|
|000007d0| 0d 02 58 0d 20 20 20 45 | 51 55 42 20 30 0d 02 62 |..X. E|QUB 0..b|
|000007e0| 0c 20 20 20 41 4c 49 47 | 4e 0d 02 6c 05 3a 0d 02 |. ALIG|N..l.:..|
|000007f0| 76 24 3b 20 2a 2a 2a 2a | 2a 20 48 65 6c 70 20 61 |v$; ****|* Help a|
|00000800| 6e 64 20 53 79 6e 74 61 | 78 20 6d 65 73 73 61 67 |nd Synta|x messag|
|00000810| 65 73 0d 02 80 14 2e 68 | 65 6c 70 5f 74 61 73 6b |es.....h|elp_task|
|00000820| 6b 69 6c 6c 65 72 0d 02 | 8a 54 20 20 20 45 51 55 |killer..|.T EQU|
|00000830| 53 20 22 54 68 65 20 54 | 61 73 6b 20 6b 69 6c 6c |S "The T|ask kill|
|00000840| 65 72 20 6d 6f 64 75 6c | 65 20 77 69 6c 6c 20 61 |er modul|e will a|
|00000850| 74 74 65 6d 70 74 20 74 | 6f 20 6b 69 6c 6c 20 61 |ttempt t|o kill a|
|00000860| 20 74 61 73 6b 20 77 68 | 69 63 68 20 68 61 73 20 | task wh|ich has |
|00000870| 63 72 61 73 68 65 64 2e | 20 22 0d 02 94 56 20 20 |crashed.| "...V |
|00000880| 20 45 51 55 53 20 22 57 | 68 65 6e 20 61 20 74 61 | EQUS "W|hen a ta|
|00000890| 73 6b 20 73 74 6f 70 73 | 20 72 65 73 70 6f 6e 64 |sk stops| respond|
|000008a0| 69 6e 67 2c 20 75 73 65 | 20 74 68 65 73 65 20 6b |ing, use| these k|
|000008b0| 65 79 73 2c 20 69 6e 20 | 6f 72 64 65 72 20 6f 66 |eys, in |order of|
|000008c0| 20 70 72 69 6f 72 69 74 | 79 20 3a 22 2b bd 31 33 | priorit|y :"+.13|
|000008d0| 0d 02 9e 4a 20 20 20 45 | 51 55 53 20 22 a0 31 2e |...J E|QUS ".1.|
|000008e0| 20 55 73 65 20 52 69 67 | 68 74 2d 41 6c 74 20 61 | Use Rig|ht-Alt a|
|000008f0| 6e 64 20 45 73 63 61 70 | 65 20 74 6f 20 65 78 69 |nd Escap|e to exi|
|00000900| 74 20 75 73 69 6e 67 20 | 65 72 72 6f 72 20 68 61 |t using |error ha|
|00000910| 6e 64 6c 65 72 22 2b bd | 31 33 0d 02 a8 55 20 20 |ndler"+.|13...U |
|00000920| 20 45 51 55 53 20 22 a0 | 32 2e 20 55 73 65 20 52 | EQUS ".|2. Use R|
|00000930| 69 67 68 74 2d 41 6c 74 | 20 61 6e 64 20 22 2b 6b |ight-Alt| and "+k|
|00000940| 32 24 2b 22 20 74 6f 20 | 6b 69 6c 6c 20 74 68 65 |2$+" to |kill the|
|00000950| 20 74 61 73 6b 20 77 69 | 74 68 20 61 20 6d 61 63 | task wi|th a mac|
|00000960| 68 65 74 74 65 21 22 2b | bd 31 33 2b bd 31 33 0d |hette!"+|.13+.13.|
|00000970| 02 b2 54 20 20 20 45 51 | 55 53 20 22 a0 57 41 52 |..T EQ|US ".WAR|
|00000980| 4e 49 4e 47 20 3a 20 44 | 6f 20 4e 4f 54 20 75 73 |NING : D|o NOT us|
|00000990| 65 20 74 68 65 73 65 20 | 69 6e 20 61 20 63 6f 72 |e these |in a cor|
|000009a0| 72 65 63 74 6c 79 20 66 | 75 6e 63 74 69 6f 6e 69 |rectly f|unctioni|
|000009b0| 6e 67 20 64 65 73 6b 74 | 6f 70 22 2b bd 31 33 2b |ng deskt|op"+.13+|
|000009c0| bd 31 33 0d 02 bc 53 20 | 20 20 45 51 55 53 20 22 |.13...S | EQUS "|
|000009d0| 54 68 65 20 54 61 73 6b | 20 6b 69 6c 6c 65 72 20 |The Task| killer |
|000009e0| 6d 6f 64 75 6c 65 20 63 | 61 6e 20 61 6c 73 6f 20 |module c|an also |
|000009f0| 62 65 20 75 73 65 64 20 | 74 6f 20 69 6e 69 74 69 |be used |to initi|
|00000a00| 61 74 65 20 61 20 63 6f | 6d 6d 61 6e 64 20 70 72 |ate a co|mmand pr|
|00000a10| 6f 6d 70 74 20 22 0d 02 | c6 24 20 20 20 45 51 55 |ompt "..|.$ EQU|
|00000a20| 53 20 22 62 79 20 52 69 | 67 68 74 2d 41 6c 74 2d |S "by Ri|ght-Alt-|
|00000a30| 4b 65 79 70 61 64 20 2a | 2e 22 0d 02 d0 0d 20 20 |Keypad *|.".... |
|00000a40| 20 45 51 55 42 20 30 0d | 02 da 0c 20 20 20 41 4c | EQUB 0.|... AL|
|00000a50| 49 47 4e 0d 02 e4 05 3a | 0d 02 ee 0e 2e 69 6e 69 |IGN....:|.....ini|
|00000a60| 74 63 6f 64 65 25 0d 02 | f8 1c 20 20 20 20 53 54 |tcode%..|.. ST|
|00000a70| 4d 46 44 20 20 20 28 73 | 70 29 21 2c 7b 6c 69 6e |MFD (s|p)!,{lin|
|00000a80| 6b 7d 0d 03 02 17 20 20 | 20 20 42 4c 20 20 20 20 |k}.... | BL |
|00000a90| 20 20 64 6f 63 6c 61 69 | 6d 0d 03 0c 1a 20 20 20 | doclai|m.... |
|00000aa0| 20 4c 44 4d 46 44 20 20 | 20 28 73 70 29 21 2c 7b | LDMFD | (sp)!,{|
|00000ab0| 70 63 7d 0d 03 16 05 3a | 0d 03 20 0d 2e 73 72 76 |pc}....:|.. ..srv|
|00000ac0| 63 6f 64 65 25 0d 03 2a | 33 20 20 20 20 4d 4f 56 |code%..*|3 MOV|
|00000ad0| 20 20 20 20 20 70 63 2c | 6c 69 6e 6b 20 20 20 20 | pc,|link |
|00000ae0| 20 3b 20 69 65 20 72 65 | 74 75 72 6e 20 69 6d 6d | ; ie re|turn imm|
|00000af0| 65 64 69 61 74 65 6c 79 | 0d 03 34 2a 3b 20 20 20 |ediately|..4*; |
|00000b00| 20 54 45 51 20 20 20 20 | 20 52 31 2c 23 26 32 37 | TEQ | R1,#&27|
|00000b10| 20 20 20 20 3b 20 72 65 | 73 65 74 20 6d 6f 64 75 | ; re|set modu|
|00000b20| 6c 65 0d 03 3e 18 3b 20 | 20 20 20 4d 4f 56 4e 45 |le..>.; | MOVNE|
|00000b30| 20 20 20 70 63 2c 6c 69 | 6e 6b 0d 03 48 05 3a 0d | pc,li|nk..H.:.|
|00000b40| 03 52 0c 2e 64 6f 63 6c | 61 69 6d 0d 03 5c 22 20 |.R..docl|aim..\" |
|00000b50| 20 20 20 53 54 4d 46 44 | 20 20 20 28 73 70 29 21 | STMFD| (sp)!|
|00000b60| 2c 7b 52 30 2d 52 32 2c | 6c 69 6e 6b 7d 0d 03 66 |,{R0-R2,|link}..f|
|00000b70| 17 20 20 20 20 4d 4f 56 | 20 20 20 20 20 6c 69 6e |. MOV| lin|
|00000b80| 6b 2c 23 30 0d 03 70 1d | 20 20 20 20 53 54 52 20 |k,#0..p.| STR |
|00000b90| 20 20 20 20 6c 69 6e 6b | 2c 64 6f 69 6e 67 6e 6f | link|,doingno|
|00000ba0| 77 0d 03 7a 20 20 20 20 | 20 53 54 52 20 20 20 20 |w..z | STR |
|00000bb0| 20 6c 69 6e 6b 2c 6b 65 | 79 31 70 72 65 73 73 65 | link,ke|y1presse|
|00000bc0| 64 0d 03 84 20 20 20 20 | 20 53 54 52 20 20 20 20 |d... | STR |
|00000bd0| 20 6c 69 6e 6b 2c 6b 65 | 79 32 70 72 65 73 73 65 | link,ke|y2presse|
|00000be0| 64 0d 03 8e 20 20 20 20 | 20 53 54 52 20 20 20 20 |d... | STR |
|00000bf0| 20 6c 69 6e 6b 2c 6b 65 | 79 33 70 72 65 73 73 65 | link,ke|y3presse|
|00000c00| 64 0d 03 98 20 20 20 20 | 20 53 54 52 20 20 20 20 |d... | STR |
|00000c10| 20 6c 69 6e 6b 2c 6b 65 | 79 34 70 72 65 73 73 65 | link,ke|y4presse|
|00000c20| 64 0d 03 a2 34 20 20 20 | 20 4d 4f 56 20 20 20 20 |d...4 | MOV |
|00000c30| 20 52 30 2c 23 26 31 30 | 20 20 20 20 20 20 20 20 | R0,#&10| |
|00000c40| 20 20 20 20 20 20 20 3b | 20 76 65 63 74 6f 72 20 | ;| vector |
|00000c50| 26 31 30 20 3f 0d 03 ac | 45 20 20 20 20 41 44 52 |&10 ?...|E ADR|
|00000c60| 20 20 20 20 20 52 31 2c | 6e 65 77 76 65 63 74 6f | R1,|newvecto|
|00000c70| 72 25 20 20 20 20 20 20 | 20 20 20 3b 20 74 6f 20 |r% | ; to |
|00000c80| 62 65 20 70 72 6f 63 65 | 73 73 65 64 20 61 74 20 |be proce|ssed at |
|00000c90| 6e 65 77 76 65 63 74 6f | 72 25 0d 03 b6 1c 20 20 |newvecto|r%.... |
|00000ca0| 20 20 42 4c 20 20 20 20 | 20 20 63 6c 61 69 6d 76 | BL | claimv|
|00000cb0| 65 63 74 6f 72 25 0d 03 | c0 17 20 20 20 20 4d 4f |ector%..|.. MO|
|00000cc0| 56 20 20 20 20 20 52 30 | 2c 23 26 30 45 0d 03 ca |V R0|,#&0E...|
|00000cd0| 17 20 20 20 20 4d 4f 56 | 20 20 20 20 20 52 31 2c |. MOV| R1,|
|00000ce0| 23 26 30 42 0d 03 d4 3e | 20 20 20 20 53 57 49 20 |#&0B...>| SWI |
|00000cf0| 20 20 20 20 22 58 4f 53 | 5f 42 79 74 65 22 20 20 | "XOS|_Byte" |
|00000d00| 20 20 20 20 20 20 20 20 | 20 20 3b 20 65 6e 61 62 | | ; enab|
|00000d10| 6c 65 20 6b 65 79 70 72 | 65 73 73 20 76 65 63 74 |le keypr|ess vect|
|00000d20| 6f 72 0d 03 de 15 20 20 | 20 20 4d 4f 56 20 20 20 |or.... | MOV |
|00000d30| 20 20 52 30 2c 23 30 0d | 03 e8 1b 20 20 20 20 53 | R0,#0.|... S|
|00000d40| 54 52 42 20 20 20 20 52 | 30 2c 5b 52 31 32 2c 23 |TRB R|0,[R12,#|
|00000d50| 38 5d 0d 03 f2 20 20 20 | 20 20 4c 44 4d 46 44 20 |8]... | LDMFD |
|00000d60| 20 20 28 73 70 29 21 2c | 7b 52 30 2d 52 32 2c 70 | (sp)!,|{R0-R2,p|
|00000d70| 63 7d 0d 04 06 0f 2e 66 | 69 6e 61 6c 63 6f 64 65 |c}.....f|inalcode|
|00000d80| 25 0d 04 10 22 20 20 20 | 20 53 54 4d 46 44 20 20 |%..." | STMFD |
|00000d90| 20 28 73 70 29 21 2c 7b | 52 30 2d 52 32 2c 6c 69 | (sp)!,{|R0-R2,li|
|00000da0| 6e 6b 7d 0d 04 1a 17 20 | 20 20 20 4d 4f 56 20 20 |nk}.... | MOV |
|00000db0| 20 20 20 52 30 2c 23 26 | 30 44 0d 04 24 17 20 20 | R0,#&|0D..$. |
|00000dc0| 20 20 4d 4f 56 20 20 20 | 20 20 52 31 2c 23 26 30 | MOV | R1,#&0|
|00000dd0| 42 0d 04 2e 3f 20 20 20 | 20 53 57 49 20 20 20 20 |B...? | SWI |
|00000de0| 20 22 58 4f 53 5f 42 79 | 74 65 22 20 20 20 20 20 | "XOS_By|te" |
|00000df0| 20 20 20 20 20 20 20 3b | 20 64 69 73 61 62 6c 65 | ;| disable|
|00000e00| 20 6b 65 79 70 72 65 73 | 73 20 76 65 63 74 6f 72 | keypres|s vector|
|00000e10| 0d 04 38 1c 20 20 20 20 | 4c 44 52 20 20 20 20 20 |..8. |LDR |
|00000e20| 52 31 32 2c 5b 52 31 32 | 2c 23 30 5d 0d 04 42 17 |R12,[R12|,#0]..B.|
|00000e30| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 30 2c 23 | MOV | R0,#|
|00000e40| 26 31 30 0d 04 4c 1d 20 | 20 20 20 41 44 52 20 20 |&10..L. | ADR |
|00000e50| 20 20 20 52 31 2c 6e 65 | 77 76 65 63 74 6f 72 25 | R1,ne|wvector%|
|00000e60| 0d 04 56 1e 20 20 20 20 | 42 4c 20 20 20 20 20 20 |..V. |BL |
|00000e70| 72 65 6c 65 61 73 65 76 | 65 63 74 6f 72 25 0d 04 |releasev|ector%..|
|00000e80| 60 20 20 20 20 20 4c 44 | 4d 46 44 20 20 20 28 73 |` LD|MFD (s|
|00000e90| 70 29 21 2c 7b 52 30 2d | 52 32 2c 70 63 7d 0d 04 |p)!,{R0-|R2,pc}..|
|00000ea0| 74 11 2e 63 6c 61 69 6d | 76 65 63 74 6f 72 25 0d |t..claim|vector%.|
|00000eb0| 04 7e 1f 20 20 20 20 53 | 54 4d 46 44 20 20 20 28 |.~. S|TMFD (|
|00000ec0| 73 70 29 21 2c 7b 52 32 | 2c 6c 69 6e 6b 7d 0d 04 |sp)!,{R2|,link}..|
|00000ed0| 88 1e 20 20 20 20 42 4c | 20 20 20 20 20 20 72 65 |.. BL| re|
|00000ee0| 6c 65 61 73 65 76 65 63 | 74 6f 72 25 0d 04 92 15 |leasevec|tor%....|
|00000ef0| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 32 2c 23 | MOV | R2,#|
|00000f00| 30 0d 04 9c 1b 20 20 20 | 20 53 57 49 20 20 20 20 |0.... | SWI |
|00000f10| 20 22 58 4f 53 5f 43 6c | 61 69 6d 22 0d 04 a6 1e | "XOS_Cl|aim"....|
|00000f20| 20 20 20 20 4c 44 4d 46 | 44 20 20 20 28 73 70 29 | LDMF|D (sp)|
|00000f30| 21 2c 7b 52 32 2c 70 63 | 7d 5e 0d 04 ba 13 2e 72 |!,{R2,pc|}^.....r|
|00000f40| 65 6c 65 61 73 65 76 65 | 63 74 6f 72 25 0d 04 c4 |eleaseve|ctor%...|
|00000f50| 22 20 20 20 20 53 54 4d | 46 44 20 20 20 28 73 70 |" STM|FD (sp|
|00000f60| 29 21 2c 7b 52 30 2d 52 | 32 2c 6c 69 6e 6b 7d 0d |)!,{R0-R|2,link}.|
|00000f70| 04 ce 12 2e 72 65 74 72 | 79 72 65 6c 65 61 73 65 |....retr|yrelease|
|00000f80| 25 0d 04 d8 1a 20 20 20 | 20 4c 44 4d 46 44 20 20 |%.... | LDMFD |
|00000f90| 20 73 70 2c 7b 52 30 2c | 52 31 7d 0d 04 e2 15 20 | sp,{R0,|R1}.... |
|00000fa0| 20 20 20 4d 4f 56 20 20 | 20 20 20 52 32 2c 23 30 | MOV | R2,#0|
|00000fb0| 0d 04 ec 1d 20 20 20 20 | 53 57 49 20 20 20 20 20 |.... |SWI |
|00000fc0| 22 58 4f 53 5f 52 65 6c | 65 61 73 65 22 0d 04 f6 |"XOS_Rel|ease"...|
|00000fd0| 1d 20 20 20 20 42 56 43 | 20 20 20 20 20 72 65 74 |. BVC| ret|
|00000fe0| 72 79 72 65 6c 65 61 73 | 65 25 0d 05 00 15 20 20 |ryreleas|e%.... |
|00000ff0| 20 20 43 4d 50 20 20 20 | 20 20 70 63 2c 23 30 0d | CMP | pc,#0.|
|00001000| 05 0a 20 20 20 20 20 4c | 44 4d 46 44 20 20 20 28 |.. L|DMFD (|
|00001010| 73 70 29 21 2c 7b 52 30 | 2d 52 32 2c 70 63 7d 0d |sp)!,{R0|-R2,pc}.|
|00001020| 05 1e 0f 2e 6e 65 77 76 | 65 63 74 6f 72 25 0d 05 |....newv|ector%..|
|00001030| 28 3d 20 20 20 20 43 4d | 50 20 20 20 20 20 52 30 |(= CM|P R0|
|00001040| 2c 23 26 30 42 20 20 20 | 20 20 20 20 20 20 20 20 |,#&0B | |
|00001050| 20 20 20 20 20 3b 20 69 | 73 20 74 68 69 73 20 61 | ; i|s this a|
|00001060| 20 6b 65 79 70 72 65 73 | 73 20 3f 0d 05 32 35 20 | keypres|s ?..25 |
|00001070| 20 20 20 4d 4f 56 4e 45 | 20 20 20 70 63 2c 6c 69 | MOVNE| pc,li|
|00001080| 6e 6b 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |nk | |
|00001090| 20 20 20 3b 20 69 66 20 | 6e 6f 74 20 65 78 69 74 | ; if |not exit|
|000010a0| 0d 05 3c 35 20 20 20 20 | 53 54 4d 46 44 20 20 20 |..<5 |STMFD |
|000010b0| 28 73 70 29 21 2c 7b 52 | 30 2d 72 32 2c 52 34 2c |(sp)!,{R|0-r2,R4,|
|000010c0| 52 35 2c 6c 69 6e 6b 7d | 20 3b 20 73 74 61 63 6b |R5,link}| ; stack|
|000010d0| 20 72 65 67 73 0d 05 46 | 15 20 20 20 20 4d 4f 56 | regs..F|. MOV|
|000010e0| 20 20 20 20 20 72 34 2c | 23 30 0d 05 50 49 20 20 | r4,|#0..PI |
|000010f0| 20 20 43 4d 50 20 20 20 | 20 20 52 32 2c 23 6b 31 | CMP | R2,#k1|
|00001100| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001110| 20 3b 20 63 6f 64 65 20 | 66 6f 72 20 6b 65 79 20 | ; code |for key |
|00001120| 31 20 28 63 6f 6e 74 72 | 6f 6c 6c 69 6e 67 20 6b |1 (contr|olling k|
|00001130| 65 79 29 0d 05 5a 1e 20 | 20 20 20 53 54 52 45 51 |ey)..Z. | STREQ|
|00001140| 20 20 20 52 31 2c 6b 65 | 79 31 70 72 65 73 73 65 | R1,ke|y1presse|
|00001150| 64 0d 05 64 12 20 20 20 | 20 ec 51 20 20 20 72 34 |d..d. | .Q r4|
|00001160| 2c 23 31 0d 05 6e 1a 20 | 20 20 20 42 45 51 20 20 |,#1..n. | BEQ |
|00001170| 20 20 20 77 68 69 63 68 | 6b 65 79 73 25 0d 05 78 | which|keys%..x|
|00001180| 43 20 20 20 20 43 4d 50 | 20 20 20 20 20 52 32 2c |C CMP| R2,|
|00001190| 23 6b 32 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |#k2 | |
|000011a0| 20 20 20 20 3b 20 63 6f | 64 65 20 66 6f 72 20 6b | ; co|de for k|
|000011b0| 65 79 20 32 20 28 4b 69 | 6c 6c 20 74 61 73 6b 29 |ey 2 (Ki|ll task)|
|000011c0| 0d 05 82 1e 20 20 20 20 | 53 54 52 45 51 20 20 20 |.... |STREQ |
|000011d0| 52 31 2c 6b 65 79 32 70 | 72 65 73 73 65 64 0d 05 |R1,key2p|ressed..|
|000011e0| 8c 12 20 20 20 20 ec 51 | 20 20 20 72 34 2c 23 31 |.. .Q| r4,#1|
|000011f0| 0d 05 96 3f 20 20 20 20 | 43 4d 50 20 20 20 20 20 |...? |CMP |
|00001200| 52 32 2c 23 6b 33 20 20 | 20 20 20 20 20 20 20 20 |R2,#k3 | |
|00001210| 20 20 20 20 20 20 20 3b | 20 63 6f 64 65 20 66 6f | ;| code fo|
|00001220| 72 20 6b 65 79 20 33 20 | 28 45 72 72 6f 72 29 0d |r key 3 |(Error).|
|00001230| 05 a0 1e 20 20 20 20 53 | 54 52 45 51 20 20 20 52 |... S|TREQ R|
|00001240| 31 2c 6b 65 79 33 70 72 | 65 73 73 65 64 0d 05 aa |1,key3pr|essed...|
|00001250| 12 20 20 20 20 ec 51 20 | 20 20 72 34 2c 23 31 0d |. .Q | r4,#1.|
|00001260| 05 b4 3b 20 20 20 20 43 | 4d 50 20 20 20 20 20 52 |..; C|MP R|
|00001270| 32 2c 23 6b 34 20 20 20 | 20 20 20 20 20 20 20 20 |2,#k4 | |
|00001280| 20 20 20 20 20 20 3b 20 | 63 6f 64 65 20 66 6f 72 | ; |code for|
|00001290| 20 6b 65 79 20 34 20 28 | ff 29 0d 05 be 1e 20 20 | key 4 (|.).... |
|000012a0| 20 20 53 54 52 45 51 20 | 20 20 52 31 2c 6b 65 79 | STREQ | R1,key|
|000012b0| 34 70 72 65 73 73 65 64 | 0d 05 c8 12 20 20 20 20 |4pressed|.... |
|000012c0| ec 51 20 20 20 72 34 2c | 23 31 0d 05 d2 15 20 20 |.Q r4,|#1.... |
|000012d0| 20 20 43 4d 50 20 20 20 | 20 20 72 34 2c 23 31 0d | CMP | r4,#1.|
|000012e0| 05 dc 26 20 20 20 20 4c | 44 4d 4e 45 46 44 20 28 |..& L|DMNEFD (|
|000012f0| 73 70 29 21 2c 7b 52 30 | 2d 52 32 2c 52 34 2c 52 |sp)!,{R0|-R2,R4,R|
|00001300| 35 2c 70 63 7d 0d 05 e6 | 05 3a 0d 05 f0 0f 2e 77 |5,pc}...|.:.....w|
|00001310| 68 69 63 68 6b 65 79 73 | 25 0d 05 fa 1e 20 20 20 |hichkeys|%.... |
|00001320| 20 4c 44 52 20 20 20 20 | 20 52 32 2c 6b 65 79 31 | LDR | R2,key1|
|00001330| 70 72 65 73 73 65 64 0d | 06 04 15 20 20 20 20 54 |pressed.|... T|
|00001340| 45 51 20 20 20 20 20 52 | 32 2c 23 30 0d 06 0e 26 |EQ R|2,#0...&|
|00001350| 20 20 20 20 4c 44 4d 45 | 51 46 44 20 28 73 70 29 | LDME|QFD (sp)|
|00001360| 21 2c 7b 52 30 2d 52 32 | 2c 52 34 2c 52 35 2c 70 |!,{R0-R2|,R4,R5,p|
|00001370| 63 7d 0d 06 18 1e 20 20 | 20 20 4c 44 52 20 20 20 |c}.... | LDR |
|00001380| 20 20 52 32 2c 6b 65 79 | 32 70 72 65 73 73 65 64 | R2,key|2pressed|
|00001390| 0d 06 22 15 20 20 20 20 | 54 45 51 20 20 20 20 20 |..". |TEQ |
|000013a0| 52 32 2c 23 30 0d 06 2c | 1b 20 20 20 20 42 45 51 |R2,#0..,|. BEQ|
|000013b0| 20 20 20 20 20 74 65 73 | 74 66 6f 72 6b 65 79 33 | tes|tforkey3|
|000013c0| 0d 06 36 3e 20 20 20 20 | 41 44 52 20 20 20 20 20 |..6> |ADR |
|000013d0| 72 31 2c 64 6f 65 78 69 | 74 63 6f 64 65 25 20 20 |r1,doexi|tcode% |
|000013e0| 20 20 20 20 20 20 20 3b | 20 72 31 3d 61 64 64 72 | ;| r1=addr|
|000013f0| 65 73 73 20 74 6f 20 6a | 75 6d 70 20 74 6f 0d 06 |ess to j|ump to..|
|00001400| 40 0e 2e 73 65 74 75 70 | 6a 75 6d 70 0d 06 4a 15 |@..setup|jump..J.|
|00001410| 20 20 20 20 4d 4f 56 20 | 20 20 20 20 52 35 2c 70 | MOV | R5,p|
|00001420| 63 0d 06 54 18 20 20 20 | 20 42 49 43 20 20 20 20 |c..T. | BIC |
|00001430| 20 52 34 2c 52 35 2c 23 | 31 0d 06 5e 15 20 20 20 | R4,R5,#|1..^. |
|00001440| 20 54 45 51 50 20 20 20 | 20 52 34 2c 23 31 0d 06 | TEQP | R4,#1..|
|00001450| 68 15 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 30 |h. MO|V R0|
|00001460| 2c 52 30 0d 06 72 1c 20 | 20 20 20 53 54 4d 46 44 |,R0..r. | STMFD|
|00001470| 20 20 20 28 73 70 29 21 | 2c 7b 6c 69 6e 6b 7d 0d | (sp)!|,{link}.|
|00001480| 06 7c 1b 20 20 20 20 4c | 44 52 42 20 20 20 20 52 |.|. L|DRB R|
|00001490| 30 2c 64 6f 69 6e 67 6e | 6f 77 0d 06 86 15 20 20 |0,doingn|ow.... |
|000014a0| 20 20 54 45 51 20 20 20 | 20 20 52 30 2c 23 30 0d | TEQ | R0,#0.|
|000014b0| 06 90 1c 20 20 20 20 42 | 4e 45 20 20 20 20 20 61 |... B|NE a|
|000014c0| 6c 72 65 61 64 79 64 6f | 69 6e 67 0d 06 9a 33 20 |lreadydo|ing...3 |
|000014d0| 20 20 20 4d 4f 56 20 20 | 20 20 20 72 30 2c 72 31 | MOV | r0,r1|
|000014e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000014f0| 20 20 3b 20 72 30 3d 61 | 64 64 72 65 73 73 0d 06 | ; r0=a|ddress..|
|00001500| a4 15 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 31 |.. MO|V R1|
|00001510| 2c 23 30 0d 06 ae 21 20 | 20 20 20 53 57 49 20 20 |,#0...! | SWI |
|00001520| 20 20 20 22 58 4f 53 5f | 41 64 64 43 61 6c 6c 42 | "XOS_|AddCallB|
|00001530| 61 63 6b 22 0d 06 b8 15 | 20 20 20 20 4d 4f 56 56 |ack"....| MOVV|
|00001540| 43 20 20 20 52 30 2c 23 | 31 0d 06 c2 3b 20 20 20 |C R0,#|1...; |
|00001550| 20 53 54 52 56 43 42 20 | 20 52 30 2c 64 6f 69 6e | STRVCB | R0,doin|
|00001560| 67 6e 6f 77 20 20 20 20 | 20 20 20 20 20 20 3b 20 |gnow | ; |
|00001570| 69 66 20 6f 6b 20 74 68 | 65 6e 20 73 65 74 20 64 |if ok th|en set d|
|00001580| 6f 69 6e 67 0d 06 cc 11 | 2e 61 6c 72 65 61 64 79 |oing....|.already|
|00001590| 64 6f 69 6e 67 0d 06 d6 | 1c 20 20 20 20 4c 44 4d |doing...|. LDM|
|000015a0| 46 44 20 20 20 28 73 70 | 29 21 2c 7b 6c 69 6e 6b |FD (sp|)!,{link|
|000015b0| 7d 0d 06 e0 15 20 20 20 | 20 54 45 51 50 20 20 20 |}.... | TEQP |
|000015c0| 20 52 35 2c 23 30 0d 06 | ea 15 20 20 20 20 4d 4f | R5,#0..|.. MO|
|000015d0| 56 20 20 20 20 20 52 30 | 2c 52 30 0d 06 f4 26 20 |V R0|,R0...& |
|000015e0| 20 20 20 4c 44 4d 46 44 | 20 20 20 28 73 70 29 21 | LDMFD| (sp)!|
|000015f0| 2c 7b 52 30 2d 52 32 2c | 52 34 2c 52 35 2c 70 63 |,{R0-R2,|R4,R5,pc|
|00001600| 7d 0d 06 fe 4a 2e 74 65 | 73 74 66 6f 72 6b 65 79 |}...J.te|stforkey|
|00001610| 33 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |3 | |
|00001620| 20 20 20 20 20 20 3b 20 | 63 68 65 63 6b 20 74 68 | ; |check th|
|00001630| 61 74 20 6b 65 79 20 33 | 20 69 73 20 70 72 65 73 |at key 3| is pres|
|00001640| 73 65 64 20 28 45 72 72 | 6f 72 29 0d 07 08 1e 20 |sed (Err|or).... |
|00001650| 20 20 20 4c 44 52 20 20 | 20 20 20 52 32 2c 6b 65 | LDR | R2,ke|
|00001660| 79 33 70 72 65 73 73 65 | 64 0d 07 12 15 20 20 20 |y3presse|d.... |
|00001670| 20 54 45 51 20 20 20 20 | 20 52 32 2c 23 30 0d 07 | TEQ | R2,#0..|
|00001680| 1c 1b 20 20 20 20 42 45 | 51 20 20 20 20 20 74 65 |.. BE|Q te|
|00001690| 73 74 66 6f 72 6b 65 79 | 34 0d 07 26 1f 20 20 20 |stforkey|4..&. |
|000016a0| 20 41 44 52 20 20 20 20 | 20 72 31 2c 64 6f 65 72 | ADR | r1,doer|
|000016b0| 72 6f 72 63 6f 64 65 25 | 0d 07 30 19 20 20 20 20 |rorcode%|..0. |
|000016c0| 42 20 20 20 20 20 20 20 | 73 65 74 75 70 6a 75 6d |B |setupjum|
|000016d0| 70 0d 07 3a 05 3a 0d 07 | 44 46 2e 74 65 73 74 66 |p..:.:..|DF.testf|
|000016e0| 6f 72 6b 65 79 34 20 20 | 20 20 20 20 20 20 20 20 |orkey4 | |
|000016f0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 63 68 65 | | ; che|
|00001700| 63 6b 20 74 68 61 74 20 | 6b 65 79 20 34 20 69 73 |ck that |key 4 is|
|00001710| 20 70 72 65 73 73 65 64 | 20 28 ff 29 0d 07 4e 1e | pressed| (.)..N.|
|00001720| 20 20 20 20 4c 44 52 20 | 20 20 20 20 52 32 2c 6b | LDR | R2,k|
|00001730| 65 79 34 70 72 65 73 73 | 65 64 0d 07 58 15 20 20 |ey4press|ed..X. |
|00001740| 20 20 54 45 51 20 20 20 | 20 20 52 32 2c 23 30 0d | TEQ | R2,#0.|
|00001750| 07 62 26 20 20 20 20 4c | 44 4d 45 51 46 44 20 28 |.b& L|DMEQFD (|
|00001760| 73 70 29 21 2c 7b 52 30 | 2d 52 32 2c 52 34 2c 52 |sp)!,{R0|-R2,R4,R|
|00001770| 35 2c 70 63 7d 0d 07 6c | 1f 20 20 20 20 41 44 52 |5,pc}..l|. ADR|
|00001780| 20 20 20 20 20 72 31 2c | 64 6f 6f 73 63 6c 69 63 | r1,|doosclic|
|00001790| 6f 64 65 25 0d 07 76 19 | 20 20 20 20 42 20 20 20 |ode%..v.| B |
|000017a0| 20 20 20 20 73 65 74 75 | 70 6a 75 6d 70 0d 07 80 | setu|pjump...|
|000017b0| 05 3a 0d 07 8a 10 2e 64 | 6f 65 78 69 74 63 6f 64 |.:.....d|oexitcod|
|000017c0| 65 25 0d 07 94 1c 20 20 | 20 20 53 54 4d 46 44 20 |e%.... | STMFD |
|000017d0| 20 20 28 73 70 29 21 2c | 7b 6c 69 6e 6b 7d 0d 07 | (sp)!,|{link}..|
|000017e0| 9e 15 20 20 20 20 4d 4f | 56 20 20 20 20 20 52 30 |.. MO|V R0|
|000017f0| 2c 23 30 0d 07 a8 1b 20 | 20 20 20 53 54 52 42 20 |,#0.... | STRB |
|00001800| 20 20 20 52 30 2c 64 6f | 69 6e 67 6e 6f 77 0d 07 | R0,do|ingnow..|
|00001810| b2 1c 20 20 20 20 42 4c | 20 20 20 20 20 20 72 65 |.. BL| re|
|00001820| 73 74 6f 72 65 62 72 65 | 61 6b 0d 07 bc 16 3b 20 |storebre|ak....; |
|00001830| 63 6f 64 65 20 67 6f 65 | 73 20 68 65 72 65 20 2d |code goe|s here -|
|00001840| 0d 07 c6 1c 3b 20 20 20 | 53 57 49 20 20 20 20 20 |....; |SWI |
|00001850| 22 4f 53 5f 45 6e 74 65 | 72 4f 53 22 0d 07 d0 19 |"OS_Ente|rOS"....|
|00001860| 20 20 20 20 53 57 49 20 | 20 20 20 20 22 4f 53 5f | SWI | "OS_|
|00001870| 45 78 69 74 22 0d 07 da | 0f 3b 20 2d 20 74 6f 20 |Exit"...|.; - to |
|00001880| 68 65 72 65 0d 07 e4 1a | 20 20 20 20 4c 44 4d 46 |here....| LDMF|
|00001890| 44 20 20 20 28 73 70 29 | 21 2c 7b 70 63 7d 0d 07 |D (sp)|!,{pc}..|
|000018a0| ee 05 3a 0d 07 f8 11 2e | 64 6f 65 72 72 6f 72 63 |..:.....|doerrorc|
|000018b0| 6f 64 65 25 0d 08 02 1c | 20 20 20 20 53 54 4d 46 |ode%....| STMF|
|000018c0| 44 20 20 20 28 73 70 29 | 21 2c 7b 6c 69 6e 6b 7d |D (sp)|!,{link}|
|000018d0| 0d 08 0c 15 20 20 20 20 | 4d 4f 56 20 20 20 20 20 |.... |MOV |
|000018e0| 52 30 2c 23 30 0d 08 16 | 1b 20 20 20 20 53 54 52 |R0,#0...|. STR|
|000018f0| 42 20 20 20 20 52 30 2c | 64 6f 69 6e 67 6e 6f 77 |B R0,|doingnow|
|00001900| 0d 08 20 1c 20 20 20 20 | 42 4c 20 20 20 20 20 20 |.. . |BL |
|00001910| 72 65 73 74 6f 72 65 62 | 72 65 61 6b 0d 08 2a 16 |restoreb|reak..*.|
|00001920| 3b 20 63 6f 64 65 20 67 | 6f 65 73 20 68 65 72 65 |; code g|oes here|
|00001930| 20 2d 0d 08 34 21 20 a4 | 65 72 72 6f 72 28 22 50 | -..4! .|error("P|
|00001940| 72 6f 67 72 61 6d 20 74 | 65 72 6d 69 6e 61 74 65 |rogram t|erminate|
|00001950| 64 22 29 0d 08 3e 0f 3b | 20 2d 20 74 6f 20 68 65 |d")..>.;| - to he|
|00001960| 72 65 0d 08 48 1a 20 20 | 20 20 4c 44 4d 46 44 20 |re..H. | LDMFD |
|00001970| 20 20 28 73 70 29 21 2c | 7b 70 63 7d 0d 08 52 05 | (sp)!,|{pc}..R.|
|00001980| 3a 0d 08 5c 05 3a 0d 08 | 66 11 2e 64 6f 6f 73 63 |:..\.:..|f..doosc|
|00001990| 6c 69 63 6f 64 65 25 0d | 08 70 23 20 20 20 20 53 |licode%.|.p# S|
|000019a0| 54 4d 46 44 20 20 20 28 | 73 70 29 21 2c 7b 72 30 |TMFD (|sp)!,{r0|
|000019b0| 2d 72 31 32 2c 6c 69 6e | 6b 7d 0d 08 7a 1c 20 20 |-r12,lin|k}..z. |
|000019c0| 20 20 42 4c 20 20 20 20 | 20 20 72 65 73 74 6f 72 | BL | restor|
|000019d0| 65 62 72 65 61 6b 0d 08 | 84 42 20 20 20 20 41 44 |ebreak..|.B AD|
|000019e0| 52 20 20 20 20 20 72 30 | 2c 77 69 6d 70 76 61 72 |R r0|,wimpvar|
|000019f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00001a00| 61 64 64 72 65 73 73 20 | 6f 66 20 77 69 6d 70 20 |address |of wimp |
|00001a10| 76 61 72 69 61 62 6c 65 | 0d 08 8e 3b 20 20 20 20 |variable|...; |
|00001a20| 41 44 52 20 20 20 20 20 | 72 31 2c 6f 73 63 6c 69 |ADR |r1,oscli|
|00001a30| 6c 69 6e 65 20 20 20 20 | 20 20 20 20 20 20 20 20 |line | |
|00001a40| 3b 20 61 64 64 72 65 73 | 73 20 6f 66 20 62 75 66 |; addres|s of buf|
|00001a50| 66 65 72 0d 08 98 37 20 | 20 20 20 4d 4f 56 20 20 |fer...7 | MOV |
|00001a60| 20 20 20 72 32 2c 23 32 | 35 35 20 20 20 20 20 20 | r2,#2|55 |
|00001a70| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 62 75 66 | | ; buf|
|00001a80| 66 65 72 20 6c 65 6e 67 | 74 68 0d 08 a2 2b 20 20 |fer leng|th...+ |
|00001a90| 20 20 4d 4f 56 20 20 20 | 20 20 72 33 2c 23 30 20 | MOV | r3,#0 |
|00001aa0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001ab0| 20 20 3b 20 3f 0d 08 ac | 2b 20 20 20 20 4d 4f 56 | ; ?...|+ MOV|
|00001ac0| 20 20 20 20 20 72 34 2c | 23 33 20 20 20 20 20 20 | r4,|#3 |
|00001ad0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 3f | | ; ?|
|00001ae0| 0d 08 b6 37 20 20 20 20 | 53 57 49 20 20 20 20 20 |...7 |SWI |
|00001af0| 22 58 4f 53 5f 52 65 61 | 64 56 61 72 56 61 6c 22 |"XOS_Rea|dVarVal"|
|00001b00| 20 20 20 20 20 20 20 20 | 3b 20 72 65 61 64 20 76 | |; read v|
|00001b10| 61 72 69 61 62 6c 65 0d | 08 c0 37 20 20 20 20 42 |ariable.|..7 B|
|00001b20| 56 53 20 20 20 20 20 65 | 78 69 74 6f 73 63 6c 69 |VS e|xitoscli|
|00001b30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00001b40| 20 65 78 69 74 20 69 66 | 20 65 72 72 6f 72 0d 08 | exit if| error..|
|00001b50| ca 17 3b 20 20 20 20 20 | 4d 4f 56 20 20 20 20 20 |..; |MOV |
|00001b60| 72 30 2c 72 31 0d 08 d4 | 1d 3b 20 20 20 20 20 53 |r0,r1...|.; S|
|00001b70| 57 49 20 20 20 20 20 22 | 4f 53 5f 57 72 69 74 65 |WI "|OS_Write|
|00001b80| 30 22 0d 08 de 38 20 20 | 20 20 4c 44 52 20 20 20 |0"...8 | LDR |
|00001b90| 20 20 72 30 2c 5b 72 31 | 2c 23 30 5d 20 20 20 20 | r0,[r1|,#0] |
|00001ba0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 67 65 74 20 | | ; get |
|00001bb0| 66 69 72 73 74 20 77 6f | 72 64 0d 08 e8 49 20 20 |first wo|rd...I |
|00001bc0| 20 20 4c 44 52 20 20 20 | 20 20 72 32 2c 63 6f 6d | LDR | r2,com|
|00001bd0| 6d 61 6e 64 73 74 72 69 | 6e 67 20 20 20 20 20 20 |mandstri|ng |
|00001be0| 20 20 3b 20 72 65 61 64 | 20 77 68 61 74 20 69 74 | ; read| what it|
|00001bf0| 20 73 68 6f 75 6c 64 20 | 62 65 20 66 6f 72 20 63 | should |be for c|
|00001c00| 6f 6d 6d 0d 08 f2 31 20 | 20 20 20 43 4d 50 20 20 |omm...1 | CMP |
|00001c10| 20 20 20 72 30 2c 72 32 | 20 20 20 20 20 20 20 20 | r0,r2| |
|00001c20| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 63 6f 6d | | ; com|
|00001c30| 70 61 72 65 0d 08 fc 39 | 20 20 20 20 4c 44 52 4e |pare...9| LDRN|
|00001c40| 45 20 20 20 72 30 2c 5b | 72 31 2c 23 30 5d 20 20 |E r0,[|r1,#0] |
|00001c50| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 67 65 | | ; ge|
|00001c60| 74 20 73 65 63 6f 6e 64 | 20 77 6f 72 64 0d 09 06 |t second| word...|
|00001c70| 49 20 20 20 20 4c 44 52 | 4e 45 20 20 20 72 32 2c |I LDR|NE r2,|
|00001c80| 63 6f 6d 6d 61 6e 64 73 | 74 72 69 6e 67 2b 34 20 |commands|tring+4 |
|00001c90| 20 20 20 20 20 3b 20 72 | 65 61 64 20 77 68 61 74 | ; r|ead what|
|00001ca0| 20 69 74 20 73 68 6f 75 | 6c 64 20 62 65 20 66 6f | it shou|ld be fo|
|00001cb0| 72 20 61 6e 64 73 0d 09 | 10 31 20 20 20 20 43 4d |r ands..|.1 CM|
|00001cc0| 50 4e 45 20 20 20 72 30 | 2c 72 32 20 20 20 20 20 |PNE r0|,r2 |
|00001cd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00001ce0| 63 6f 6d 70 61 72 65 0d | 09 1a 1b 20 20 20 20 42 |compare.|... B|
|00001cf0| 4e 45 20 20 20 20 20 77 | 69 6d 70 72 75 6e 6e 69 |NE w|imprunni|
|00001d00| 6e 67 0d 09 24 16 3b 20 | 63 6f 64 65 20 67 6f 65 |ng..$.; |code goe|
|00001d10| 73 20 68 65 72 65 20 2d | 0d 09 2e 0e 2e 6f 73 63 |s here -|.....osc|
|00001d20| 6c 69 6c 6f 6f 70 0d 09 | 38 1b 20 20 20 20 53 57 |liloop..|8. SW|
|00001d30| 49 20 20 20 20 20 26 31 | 30 30 2b 97 28 22 2a 22 |I &1|00+.("*"|
|00001d40| 29 0d 09 42 34 20 20 20 | 20 41 44 52 20 20 20 20 |)..B4 | ADR |
|00001d50| 20 72 30 2c 6f 73 63 6c | 69 6c 69 6e 65 20 20 20 | r0,oscl|iline |
|00001d60| 20 20 20 20 20 3b 20 61 | 64 64 72 20 6f 66 20 62 | ; a|ddr of b|
|00001d70| 75 66 66 65 72 0d 09 4c | 36 20 20 20 20 4d 4f 56 |uffer..L|6 MOV|
|00001d80| 20 20 20 20 20 72 31 2c | 23 26 31 30 30 20 20 20 | r1,|#&100 |
|00001d90| 20 20 20 20 20 20 20 20 | 20 3b 20 6c 65 6e 67 74 | | ; lengt|
|00001da0| 68 20 6f 66 20 62 75 66 | 66 65 72 0d 09 56 38 20 |h of buf|fer..V8 |
|00001db0| 20 20 20 4d 4f 56 20 20 | 20 20 20 72 32 2c 23 26 | MOV | r2,#&|
|00001dc0| 32 30 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |20 | ;|
|00001dd0| 20 6d 69 6e 20 61 73 63 | 69 69 20 61 63 63 65 70 | min asc|ii accep|
|00001de0| 74 65 64 0d 09 60 38 20 | 20 20 20 4d 4f 56 20 20 |ted..`8 | MOV |
|00001df0| 20 20 20 72 33 2c 23 26 | 46 46 20 20 20 20 20 20 | r3,#&|FF |
|00001e00| 20 20 20 20 20 20 20 3b | 20 6d 61 78 20 61 73 63 | ;| max asc|
|00001e10| 69 69 20 61 63 63 65 70 | 74 65 64 0d 09 6a 1e 20 |ii accep|ted..j. |
|00001e20| 20 20 20 53 57 49 20 20 | 20 20 20 22 58 4f 53 5f | SWI | "XOS_|
|00001e30| 52 65 61 64 4c 69 6e 65 | 22 0d 09 74 3b 20 20 20 |ReadLine|"..t; |
|00001e40| 20 42 56 53 20 20 20 20 | 20 6f 73 63 6c 69 65 72 | BVS | osclier|
|00001e50| 72 6f 72 20 20 20 20 20 | 20 20 20 20 20 3b 20 69 |ror | ; i|
|00001e60| 66 20 65 72 72 6f 72 20 | 74 68 65 6e 20 70 72 6f |f error |then pro|
|00001e70| 63 65 73 73 0d 09 7e 46 | 20 20 20 20 43 4d 50 20 |cess..~F| CMP |
|00001e80| 20 20 20 20 72 31 2c 23 | 30 20 20 20 20 20 20 20 | r1,#|0 |
|00001e90| 20 20 20 20 20 20 20 20 | 3b 20 69 66 20 6e 6f 20 | |; if no |
|00001ea0| 63 68 61 72 61 63 74 65 | 72 73 20 74 79 70 65 64 |characte|rs typed|
|00001eb0| 20 74 68 65 6e 20 65 78 | 69 74 0d 09 88 19 20 20 | then ex|it.... |
|00001ec0| 20 20 42 45 51 20 20 20 | 20 20 65 78 69 74 6f 73 | BEQ | exitos|
|00001ed0| 63 6c 69 0d 09 92 30 20 | 20 20 20 53 57 49 20 20 |cli...0 | SWI |
|00001ee0| 20 20 20 22 58 4f 53 5f | 43 4c 49 22 20 20 20 20 | "XOS_|CLI" |
|00001ef0| 20 20 20 20 20 20 20 3b | 20 64 6f 20 63 6f 6d 6d | ;| do comm|
|00001f00| 61 6e 64 0d 09 9c 42 20 | 20 20 20 42 56 43 20 20 |and...B | BVC |
|00001f10| 20 20 20 6f 73 63 6c 69 | 6c 6f 6f 70 20 20 20 20 | oscli|loop |
|00001f20| 20 20 20 20 20 20 20 3b | 20 69 66 20 6e 6f 20 65 | ;| if no e|
|00001f30| 72 72 6f 72 20 74 68 65 | 6e 20 6c 6f 6f 70 20 61 |rror the|n loop a|
|00001f40| 72 6f 75 6e 64 0d 09 a6 | 0f 2e 6f 73 63 6c 69 65 |round...|..osclie|
|00001f50| 72 72 6f 72 0d 09 b0 3a | 20 20 20 20 41 44 44 20 |rror...:| ADD |
|00001f60| 20 20 20 20 72 30 2c 72 | 30 2c 23 34 20 20 20 20 | r0,r|0,#4 |
|00001f70| 20 20 20 20 20 20 20 20 | 3b 20 73 6b 69 70 20 65 | |; skip e|
|00001f80| 72 72 6f 72 20 63 6f 64 | 65 20 62 79 74 65 0d 09 |rror cod|e byte..|
|00001f90| ba 35 20 20 20 20 53 57 | 49 20 20 20 20 20 22 4f |.5 SW|I "O|
|00001fa0| 53 5f 57 72 69 74 65 30 | 22 20 20 20 20 20 20 20 |S_Write0|" |
|00001fb0| 20 20 3b 20 77 72 69 74 | 65 20 74 6f 20 73 63 72 | ; writ|e to scr|
|00001fc0| 65 65 6e 0d 09 c4 1c 20 | 20 20 20 53 57 49 20 20 |een.... | SWI |
|00001fd0| 20 20 20 22 4f 53 5f 4e | 65 77 4c 69 6e 65 22 0d | "OS_N|ewLine".|
|00001fe0| 09 ce 19 20 20 20 20 42 | 20 20 20 20 20 20 20 6f |... B| o|
|00001ff0| 73 63 6c 69 6c 6f 6f 70 | 0d 09 d8 0e 2e 65 78 69 |scliloop|.....exi|
|00002000| 74 6f 73 63 6c 69 0d 09 | e2 15 20 20 20 20 4d 4f |toscli..|.. MO|
|00002010| 56 20 20 20 20 20 52 30 | 2c 23 30 0d 09 ec 1b 20 |V R0|,#0.... |
|00002020| 20 20 20 53 54 52 42 20 | 20 20 20 52 30 2c 64 6f | STRB | R0,do|
|00002030| 69 6e 67 6e 6f 77 0d 09 | f6 0f 3b 20 2d 20 74 6f |ingnow..|..; - to|
|00002040| 20 68 65 72 65 0d 0a 00 | 22 20 20 20 20 4c 44 4d | here...|" LDM|
|00002050| 46 44 20 20 20 28 73 70 | 29 21 2c 7b 72 30 2d 72 |FD (sp|)!,{r0-r|
|00002060| 31 32 2c 70 63 7d 5e 0d | 0a 0a 05 3a 0d 0a 14 10 |12,pc}^.|...:....|
|00002070| 2e 77 69 6d 70 72 75 6e | 6e 69 6e 67 0d 0a 1e 05 |.wimprun|ning....|
|00002080| 5d 0d 0a 28 17 e7 20 63 | 6f 6e 64 5f 65 6e 61 62 |]..(.. c|ond_enab|
|00002090| 6c 65 77 69 6d 70 20 8c | 0d 0a 32 0f 5b 20 4f 50 |lewimp .|..2.[ OP|
|000020a0| 54 20 70 61 73 73 25 0d | 0a 3c 1e 20 20 20 20 41 |T pass%.|.<. A|
|000020b0| 44 52 20 20 20 20 20 72 | 30 2c 77 69 6d 70 63 6f |DR r|0,wimpco|
|000020c0| 6d 6d 61 6e 64 0d 0a 46 | 20 20 20 20 20 53 57 49 |mmand..F| SWI|
|000020d0| 20 20 20 20 20 22 57 69 | 6d 70 5f 53 74 61 72 74 | "Wi|mp_Start|
|000020e0| 54 61 73 6b 22 0d 0a 50 | 05 5d 0d 0a 5a 05 cd 0d |Task"..P|.]..Z...|
|000020f0| 0a 64 0f 5b 20 4f 50 54 | 20 70 61 73 73 25 0d 0a |.d.[ OPT| pass%..|
|00002100| 6e 19 20 20 20 20 42 20 | 20 20 20 20 20 20 65 78 |n. B | ex|
|00002110| 69 74 6f 73 63 6c 69 0d | 0a 78 05 3a 0d 0a 82 11 |itoscli.|.x.:....|
|00002120| 2e 72 65 73 74 6f 72 65 | 62 72 65 61 6b 0d 0a 8c |.restore|break...|
|00002130| 1c 20 20 20 20 53 54 4d | 46 44 20 20 20 28 73 70 |. STM|FD (sp|
|00002140| 29 21 2c 7b 6c 69 6e 6b | 7d 0d 0a 96 17 20 20 20 |)!,{link|}.... |
|00002150| 20 4d 4f 56 20 20 20 20 | 20 72 30 2c 23 32 30 30 | MOV | r0,#200|
|00002160| 0d 0a a0 15 20 20 20 20 | 4d 4f 56 20 20 20 20 20 |.... |MOV |
|00002170| 72 31 2c 23 30 0d 0a aa | 42 20 20 20 20 53 57 49 |r1,#0...|B SWI|
|00002180| 20 20 20 20 20 22 4f 53 | 5f 42 79 74 65 22 20 20 | "OS|_Byte" |
|00002190| 20 20 20 20 20 20 20 20 | 20 20 3b 20 43 6c 65 61 | | ; Clea|
|000021a0| 72 20 42 72 65 61 6b 2f | 45 73 63 61 70 65 20 64 |r Break/|Escape d|
|000021b0| 69 73 61 62 6c 65 64 0d | 0a b4 17 20 20 20 20 4d |isabled.|... M|
|000021c0| 4f 56 20 20 20 20 20 72 | 30 2c 23 32 32 39 0d 0a |OV r|0,#229..|
|000021d0| be 15 20 20 20 20 4d 4f | 56 20 20 20 20 20 72 31 |.. MO|V r1|
|000021e0| 2c 23 30 0d 0a c8 34 20 | 20 20 20 53 57 49 20 20 |,#0...4 | SWI |
|000021f0| 20 20 20 22 4f 53 5f 42 | 79 74 65 22 20 20 20 20 | "OS_B|yte" |
|00002200| 20 20 20 20 20 20 20 20 | 3b 20 45 6e 61 62 6c 65 | |; Enable|
|00002210| 20 45 73 63 61 70 65 0d | 0a d2 1a 20 20 20 20 4c | Escape.|... L|
|00002220| 44 4d 46 44 20 20 20 28 | 73 70 29 21 2c 7b 70 63 |DMFD (|sp)!,{pc|
|00002230| 7d 0d 0a dc 05 3a 0d 0a | e6 0f 3b 20 76 61 72 69 |}....:..|..; vari|
|00002240| 61 62 6c 65 73 0d 0a f0 | 17 2e 64 6f 69 6e 67 6e |ables...|..doingn|
|00002250| 6f 77 20 20 20 3a 45 51 | 55 44 20 30 0d 0a fa 17 |ow :EQ|UD 0....|
|00002260| 2e 6b 65 79 31 70 72 65 | 73 73 65 64 3a 45 51 55 |.key1pre|ssed:EQU|
|00002270| 44 20 30 0d 0b 04 17 2e | 6b 65 79 32 70 72 65 73 |D 0.....|key2pres|
|00002280| 73 65 64 3a 45 51 55 44 | 20 30 0d 0b 0e 17 2e 6b |sed:EQUD| 0.....k|
|00002290| 65 79 33 70 72 65 73 73 | 65 64 3a 45 51 55 44 20 |ey3press|ed:EQUD |
|000022a0| 30 0d 0b 18 17 2e 6b 65 | 79 34 70 72 65 73 73 65 |0.....ke|y4presse|
|000022b0| 64 3a 45 51 55 44 20 30 | 0d 0b 22 0e 2e 6f 73 63 |d:EQUD 0|.."..osc|
|000022c0| 6c 69 6c 69 6e 65 0d 0b | 2c 12 20 a4 72 65 73 65 |liline..|,. .rese|
|000022d0| 72 76 65 28 32 35 36 29 | 0d 0b 36 24 2e 77 69 6d |rve(256)|..6$.wim|
|000022e0| 70 63 6f 6d 6d 61 6e 64 | 3a 45 51 55 53 20 22 47 |pcommand|:EQUS "G|
|000022f0| 4f 53 22 2b bd 30 3a 41 | 4c 49 47 4e 0d 0b 40 2b |OS"+.0:A|LIGN..@+|
|00002300| 2e 77 69 6d 70 76 61 72 | 20 20 20 20 3a 45 51 55 |.wimpvar| :EQU|
|00002310| 53 20 22 57 69 6d 70 24 | 53 74 61 74 65 22 2b bd |S "Wimp$|State"+.|
|00002320| 30 3a 41 4c 49 47 4e 0d | 0b 4a 28 2e 63 6f 6d 6d |0:ALIGN.|.J(.comm|
|00002330| 61 6e 64 73 74 72 69 6e | 67 3a 45 51 55 53 20 22 |andstrin|g:EQUS "|
|00002340| 63 6f 6d 6d 61 6e 64 73 | 22 3a 41 4c 49 47 4e 0d |commands|":ALIGN.|
|00002350| 0b 5e 05 5d 0d 0b 68 28 | f4 20 2a 2a 2a 2a 2a 2a |.^.]..h(|. ******|
|00002360| 2a 20 45 6e 64 20 6f 66 | 20 6d 61 69 6e 20 63 6f |* End of| main co|
|00002370| 64 65 20 2a 2a 2a 2a 2a | 2a 2a 2a 2a 0d 0b 72 36 |de *****|****..r6|
|00002380| f4 20 53 65 74 20 66 69 | 6e 61 6c 20 70 6f 69 6e |. Set fi|nal poin|
|00002390| 74 65 72 20 74 6f 20 66 | 69 6e 64 20 74 68 65 20 |ter to f|ind the |
|000023a0| 6c 65 6e 67 74 68 20 6f | 66 20 74 68 65 20 63 6f |length o|f the co|
|000023b0| 64 65 0d 0b 7c 13 f2 70 | 61 74 63 68 5f 73 65 74 |de..|..p|atch_set|
|000023c0| 70 63 28 30 29 0d 0b 86 | 0b ed 20 70 61 73 73 25 |pc(0)...|.. pass%|
|000023d0| 0d 0b 90 13 f2 70 61 74 | 63 68 5f 73 61 76 65 66 |.....pat|ch_savef|
|000023e0| 69 6c 65 0d 0b ae 28 f4 | 20 2a 2a 2a 2a 20 50 6f |ile...(.| **** Po|
|000023f0| 73 74 2d 61 73 73 65 6d | 62 6c 79 20 75 73 65 72 |st-assem|bly user|
|00002400| 20 63 6f 64 65 20 2a 2a | 2a 2a 2a 0d 0b b8 24 2a | code **|***...$*|
|00002410| 52 75 6e 20 3c 54 61 73 | 6b 4b 69 6c 6c 65 72 24 |Run <Tas|kKiller$|
|00002420| 44 69 72 3e 2e 54 61 73 | 6b 4b 69 6c 6c 65 72 0d |Dir>.Tas|kKiller.|
|00002430| 0b c2 05 e0 0d 0b cc 05 | 3a 0d 0b d6 05 3a 0d 0b |........|:....:..|
|00002440| e0 40 f4 20 46 4e 73 79 | 73 74 65 6d 76 61 72 20 |.@. FNsy|stemvar |
|00002450| 3a 20 52 65 74 75 72 6e | 20 74 68 65 20 63 6f 6e |: Return| the con|
|00002460| 74 65 6e 74 73 20 6f 66 | 20 61 6e 79 20 73 74 72 |tents of| any str|
|00002470| 69 6e 67 20 73 79 73 74 | 65 6d 20 76 61 72 0d 0b |ing syst|em var..|
|00002480| ea 1c dd a4 73 79 73 74 | 65 6d 76 61 72 28 56 61 |....syst|emvar(Va|
|00002490| 72 24 29 3a ea 20 61 64 | 64 72 0d 0b f4 3a c8 99 |r$):. ad|dr...:..|
|000024a0| 20 22 58 4f 53 5f 52 65 | 61 64 56 61 72 56 61 6c | "XOS_Re|adVarVal|
|000024b0| 22 2c 56 61 72 24 2c 6d | 65 73 73 61 67 65 5f 62 |",Var$,m|essage_b|
|000024c0| 75 66 66 65 72 25 2c 32 | 35 35 2c 30 2c 33 b8 2c |uffer%,2|55,0,3.,|
|000024d0| 2c 6c 65 6e 0d 0b fe 1a | 6d 65 73 73 61 67 65 5f |,len....|message_|
|000024e0| 62 75 66 66 65 72 25 3f | 6c 65 6e 3d 31 33 0d 0c |buffer%?|len=13..|
|000024f0| 08 15 3d 24 6d 65 73 73 | 61 67 65 5f 62 75 66 66 |..=$mess|age_buff|
|00002500| 65 72 25 0d 0c 1c 28 f4 | 20 2a 2a 2a 2a 2a 2a 2a |er%...(.| *******|
|00002510| 20 46 69 6c 69 6e 67 20 | 70 72 6f 63 65 64 75 72 | Filing |procedur|
|00002520| 65 73 20 2a 2a 2a 2a 2a | 2a 2a 2a 0d 0c 26 05 3a |es *****|***..&.:|
|00002530| 0d 0c 30 15 dd 20 f2 70 | 61 74 63 68 5f 6c 6f 61 |..0.. .p|atch_loa|
|00002540| 64 66 69 6c 65 0d 0c 3a | 0d 63 6f 64 65 6c 65 6e |dfile..:|.codelen|
|00002550| 3d 30 0d 0c 44 0f de 20 | 4d 43 25 20 26 31 34 30 |=0..D.. |MC% &140|
|00002560| 30 0d 0c 4e 24 65 6e 64 | 6f 66 63 6f 64 65 3d 63 |0..N$end|ofcode=c|
|00002570| 6f 64 65 6c 65 6e 2b 26 | 30 3a 6d 61 78 3d 63 6f |odelen+&|0:max=co|
|00002580| 64 65 6c 65 6e 0d 0c 58 | 10 4c 25 3d 65 6e 64 6f |delen..X|.L%=endo|
|00002590| 66 63 6f 64 65 0d 0c bc | 05 e1 0d 0c c6 05 3a 0d |fcode...|......:.|
|000025a0| 0c d0 15 dd 20 f2 70 61 | 74 63 68 5f 73 61 76 65 |.... .pa|tch_save|
|000025b0| 66 69 6c 65 0d 0c da 2a | 6f 75 74 66 69 6c 65 24 |file...*|outfile$|
|000025c0| 3d 22 3c 54 61 73 6b 4b | 69 6c 6c 65 72 24 44 69 |="<TaskK|iller$Di|
|000025d0| 72 3e 2e 54 61 73 6b 4b | 69 6c 6c 65 72 22 0d 0c |r>.TaskK|iller"..|
|000025e0| e4 31 ff 28 22 53 61 76 | 65 20 22 2b 6f 75 74 66 |.1.("Sav|e "+outf|
|000025f0| 69 6c 65 24 2b 22 20 22 | 2b c3 7e 4d 43 25 2b 22 |ile$+" "|+.~MC%+"|
|00002600| 20 22 2b c3 7e 28 6d 61 | 78 2b 4d 43 25 29 29 0d | "+.~(ma|x+MC%)).|
|00002610| 0c ee 24 ff 28 22 53 65 | 74 74 79 70 65 20 22 2b |..$.("Se|ttype "+|
|00002620| 6f 75 74 66 69 6c 65 24 | 2b 22 20 4d 6f 64 75 6c |outfile$|+" Modul|
|00002630| 65 22 29 0d 0c f8 20 70 | 61 74 63 68 64 69 72 24 |e")... p|atchdir$|
|00002640| 3d 22 3c 54 61 73 6b 4b | 69 6c 6c 65 72 24 44 69 |="<TaskK|iller$Di|
|00002650| 72 3e 22 0d 0d 20 05 e1 | 0d 0d 2a 05 3a 0d 0d 34 |r>".. ..|..*.:..4|
|00002660| 28 f4 20 2a 2a 2a 2a 2a | 2a 2a 20 45 72 72 6f 72 |(. *****|** Error|
|00002670| 20 48 61 6e 64 6c 65 72 | 20 2a 2a 2a 2a 2a 2a 2a | Handler| *******|
|00002680| 2a 2a 2a 2a 2a 0d 0d 3e | 05 3a 0d 0d 48 0b dd f2 |*****..>|.:..H...|
|00002690| 45 72 72 6f 72 0d 0d 98 | 1b 85 20 a2 20 9f 2c f6 |Error...|.. . .,.|
|000026a0| 24 2b 22 20 61 74 20 6c | 69 6e 65 20 22 2b c3 9e |$+" at l|ine "+..|
|000026b0| 0d 0d a2 05 e1 0d 0d ac | 05 3a 0d 0d b6 28 f4 20 |........|.:...(. |
|000026c0| 2a 2a 2a 2a 2a 2a 2a 20 | 55 74 69 6c 69 74 79 20 |******* |Utility |
|000026d0| 70 72 6f 63 65 64 75 72 | 65 73 20 2a 2a 2a 2a 2a |procedur|es *****|
|000026e0| 2a 2a 0d 0d c0 05 3a 0d | 0d ca 14 dd f2 70 61 74 |**....:.|.....pat|
|000026f0| 63 68 5f 73 65 74 70 63 | 28 6e 29 0d 0d d4 1a e7 |ch_setpc|(n).....|
|00002700| 20 50 25 2d 26 30 3e 6d | 61 78 20 8c 6d 61 78 3d | P%-&0>m|ax .max=|
|00002710| 50 25 2d 26 30 0d 0d de | 14 50 25 3d 6e 3a 4f 25 |P%-&0...|.P%=n:O%|
|00002720| 3d 4d 43 25 2b 6e 2d 26 | 30 0d 0d e8 05 e1 0d 0d |=MC%+n-&|0.......|
|00002730| f2 05 3a 0d 0d fc 22 dd | a4 66 69 6e 64 66 72 65 |..:...".|.findfre|
|00002740| 65 72 65 67 28 61 2c 62 | 2c 63 2c 64 29 3a ea 20 |ereg(a,b|,c,d):. |
|00002750| 6e 3a 6e 3d 30 0d 0e 06 | 1c c8 95 20 6e 3d 61 20 |n:n=0...|... n=a |
|00002760| 84 20 6e 3d 62 20 84 20 | 6e 3d 63 20 84 20 6e 3d |. n=b . |n=c . n=|
|00002770| 64 0d 0e 10 09 20 6e 2b | 3d 31 0d 0e 1a 05 ce 0d |d.... n+|=1......|
|00002780| 0e 24 06 3d 6e 0d 0e 2e | 05 3a 0d 0e 38 2b f4 20 |.$.=n...|.:..8+. |
|00002790| 46 4e 72 65 73 65 72 76 | 65 20 3a 20 52 65 73 65 |FNreserv|e : Rese|
|000027a0| 72 76 65 20 73 70 61 63 | 65 20 66 6f 72 20 78 20 |rve spac|e for x |
|000027b0| 62 79 74 65 73 0d 0e 42 | 29 dd a4 72 65 73 65 72 |bytes..B|)..reser|
|000027c0| 76 65 28 62 79 74 65 73 | 29 3a 62 79 74 65 73 3d |ve(bytes|):bytes=|
|000027d0| 28 62 79 74 65 73 2b 33 | 29 20 80 20 2d 34 0d 0e |(bytes+3|) . -4..|
|000027e0| 4c 15 e7 20 28 70 61 73 | 73 25 20 80 20 32 29 3d |L.. (pas|s% . 2)=|
|000027f0| 32 20 8c 0d 0e 56 22 20 | ea 20 49 3a e3 20 49 3d |2 ...V" |. I:. I=|
|00002800| 30 b8 62 79 74 65 73 2d | 34 20 88 34 3a 4f 25 21 |0.bytes-|4 .4:O%!|
|00002810| 49 3d 30 3a ed 0d 0e 60 | 05 cd 0d 0e 6a 17 50 25 |I=0:...`|....j.P%|
|00002820| 2b 3d 62 79 74 65 73 3a | 4f 25 2b 3d 62 79 74 65 |+=bytes:|O%+=byte|
|00002830| 73 0d 0e 74 06 3d 30 0d | 0e 7e 05 3a 0d 0e 88 28 |s..t.=0.|.~.:...(|
|00002840| f4 20 2a 2a 2a 2a 2a 2a | 2a 20 45 52 52 20 6d 61 |. ******|* ERR ma|
|00002850| 63 72 6f 20 70 72 6f 63 | 65 64 75 72 65 20 2a 2a |cro proc|edure **|
|00002860| 2a 2a 2a 2a 0d 0e 92 05 | 3a 0d 0e 9c 32 f4 20 46 |****....|:...2. F|
|00002870| 4e 65 72 72 6f 72 20 3a | 20 43 72 65 61 74 65 20 |Nerror :| Create |
|00002880| 61 6e 20 65 72 72 6f 72 | 20 77 68 69 63 68 20 69 |an error| which i|
|00002890| 73 20 72 65 70 6f 72 74 | 65 64 2e 0d 0e a6 0f dd |s report|ed......|
|000028a0| a4 65 72 72 6f 72 28 61 | 24 29 0d 0e b0 0e 5b 4f |.error(a|$)....[O|
|000028b0| 50 54 20 70 61 73 73 25 | 0d 0e ba 15 20 20 41 44 |PT pass%|.... AD|
|000028c0| 44 20 20 20 20 72 30 2c | 70 63 2c 23 30 0d 0e c4 |D r0,|pc,#0...|
|000028d0| 1f 20 20 53 57 49 20 20 | 20 20 22 4f 53 5f 47 65 |. SWI | "OS_Ge|
|000028e0| 6e 65 72 61 74 65 45 72 | 72 6f 72 22 0d 0e ce 0e |nerateEr|ror"....|
|000028f0| 20 20 45 51 55 44 20 20 | 20 31 0d 0e d8 12 20 20 | EQUD | 1.... |
|00002900| 45 51 55 53 20 20 20 61 | 24 2b bd 30 0d 0e e2 0b |EQUS a|$+.0....|
|00002910| 20 20 41 4c 49 47 4e 0d | 0e ec 05 5d 0d 0e f6 06 | ALIGN.|...]....|
|00002920| 3d 30 0d 0f 00 05 3a 0d | 7f 7f 0d f4 20 4a 46 50 |=0....:.|.... JFP|
|00002930| 61 74 63 68 0d ff | |atch.. | |
+--------+-------------------------+-------------------------+--------+--------+