home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / utilities / utilsp / replaytool / CropReplay < prev    next >
Unknown  |  1995-03-31  |  7.1 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


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

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 12 f4 20 3e 20 | 43 72 6f 70 52 65 70 6c |..... > |CropRepl|
|00000010| 61 79 0d 00 14 05 f4 0d | 00 1e 2b f4 20 28 63 29 |ay......|..+. (c)|
|00000020| 20 48 65 6e 72 69 6b 20 | 42 6a 65 72 72 65 67 61 | Henrik |Bjerrega|
|00000030| 61 72 64 20 50 65 64 65 | 72 73 65 6e 2c 20 31 39 |ard Pede|rsen, 19|
|00000040| 39 35 0d 00 28 05 f4 0d | 00 32 36 f4 20 43 61 6c |95..(...|.26. Cal|
|00000050| 6c 20 61 73 20 2a 43 72 | 6f 70 52 65 70 6c 61 79 |l as *Cr|opReplay|
|00000060| 20 3c 69 6e 70 75 74 20 | 6d 6f 76 69 65 3e 20 3c | <input |movie> <|
|00000070| 6f 75 74 70 75 74 20 6d | 6f 76 69 65 3e 0d 00 3c |output m|ovie>..<|
|00000080| 42 f4 20 54 68 65 20 69 | 6e 70 75 74 20 6d 6f 76 |B. The i|nput mov|
|00000090| 69 65 20 63 61 6e 20 62 | 65 20 61 6e 79 20 66 6f |ie can b|e any fo|
|000000a0| 72 6d 61 74 2c 20 6f 75 | 74 70 75 74 20 69 73 20 |rmat, ou|tput is |
|000000b0| 61 6c 77 61 79 73 20 66 | 6f 72 6d 61 74 20 32 0d |always f|ormat 2.|
|000000c0| 00 46 04 0d 00 50 46 50 | 69 78 65 6c 73 4c 65 66 |.F...PFP|ixelsLef|
|000000d0| 74 25 3d 34 20 20 20 20 | 20 20 20 20 20 20 20 3a |t%=4 | :|
|000000e0| f4 20 4e 75 6d 62 65 72 | 20 6f 66 20 70 69 78 65 |. Number| of pixe|
|000000f0| 6c 73 20 74 6f 20 72 65 | 6d 6f 76 65 20 69 6e 20 |ls to re|move in |
|00000100| 6c 65 66 74 20 73 69 64 | 65 0d 00 5a 47 50 69 78 |left sid|e..ZGPix|
|00000110| 65 6c 73 52 69 67 68 74 | 25 3d 34 20 20 20 20 20 |elsRight|%=4 |
|00000120| 20 20 20 20 20 3a f4 20 | 4e 75 6d 62 65 72 20 6f | :. |Number o|
|00000130| 66 20 70 69 78 65 6c 73 | 20 74 6f 20 72 65 6d 6f |f pixels| to remo|
|00000140| 76 65 20 69 6e 20 72 69 | 67 68 74 20 73 69 64 65 |ve in ri|ght side|
|00000150| 0d 00 64 46 50 69 78 65 | 6c 73 54 6f 70 25 3d 34 |..dFPixe|lsTop%=4|
|00000160| 20 20 20 20 20 20 20 20 | 20 20 20 20 3a f4 20 4e | | :. N|
|00000170| 75 6d 62 65 72 20 6f 66 | 20 70 69 78 65 6c 73 20 |umber of| pixels |
|00000180| 74 6f 20 72 65 6d 6f 76 | 65 20 66 72 6f 6d 20 74 |to remov|e from t|
|00000190| 68 65 20 74 6f 70 0d 00 | 6e 49 50 69 78 65 6c 73 |he top..|nIPixels|
|000001a0| 42 6f 74 74 6f 6d 25 3d | 34 20 20 20 20 20 20 20 |Bottom%=|4 |
|000001b0| 20 20 3a f4 20 4e 75 6d | 62 65 72 20 6f 66 20 70 | :. Num|ber of p|
|000001c0| 69 78 65 6c 73 20 74 6f | 20 72 65 6d 6f 76 65 20 |ixels to| remove |
|000001d0| 66 72 6f 6d 20 74 68 65 | 20 62 6f 74 74 6f 6d 0d |from the| bottom.|
|000001e0| 00 78 4f f4 20 41 6c 74 | 68 6f 75 67 68 20 74 68 |.xO. Alt|hough th|
|000001f0| 65 20 52 65 70 6c 61 79 | 20 66 6f 72 6d 61 74 20 |e Replay| format |
|00000200| 32 20 28 61 63 63 6f 72 | 64 69 6e 67 20 74 6f 20 |2 (accor|ding to |
|00000210| 74 68 65 20 21 41 52 4d | 6f 76 69 65 2e 44 65 63 |the !ARM|ovie.Dec|
|00000220| 6f 6d 70 2e 49 6e 66 6f | 20 66 69 6c 65 29 0d 00 |omp.Info| file)..|
|00000230| 82 4c f4 20 73 68 6f 75 | 6c 64 20 62 65 20 61 62 |.L. shou|ld be ab|
|00000240| 6c 65 20 74 6f 20 68 61 | 6e 64 6c 65 20 61 6c 6c |le to ha|ndle all|
|00000250| 20 66 72 61 6d 65 77 69 | 64 74 68 73 20 74 68 61 | framewi|dths tha|
|00000260| 74 20 61 72 65 20 61 20 | 6d 75 6c 74 69 70 6c 65 |t are a |multiple|
|00000270| 20 6f 66 20 34 2c 20 74 | 68 65 0d 00 8c 3e f4 20 | of 4, t|he...>. |
|00000280| 64 65 63 6f 6d 70 72 65 | 73 73 6f 72 20 63 72 61 |decompre|ssor cra|
|00000290| 73 68 65 73 20 69 66 20 | 74 68 65 20 77 69 64 74 |shes if |the widt|
|000002a0| 68 20 69 73 20 6e 6f 74 | 20 61 20 6d 75 6c 74 69 |h is not| a multi|
|000002b0| 70 6c 65 20 6f 66 20 38 | 0d 00 96 04 0d 00 a0 27 |ple of 8|.......'|
|000002c0| de 20 50 25 20 35 31 32 | 2c 43 68 75 6e 6b 73 25 |. P% 512|,Chunks%|
|000002d0| 28 34 30 30 30 2c 34 29 | 2c 43 6f 64 65 25 20 32 |(4000,4)|,Code% 2|
|000002e0| 30 30 30 0d 00 aa 04 0d | 00 b4 1b c8 99 22 4f 53 |000.....|....."OS|
|000002f0| 5f 47 65 74 45 6e 76 22 | 20 b8 20 53 74 72 69 6e |_GetEnv"| . Strin|
|00000300| 67 24 0d 00 be 04 0d 00 | c8 29 53 74 72 69 6e 67 |g$......|.)String|
|00000310| 24 3d c1 53 74 72 69 6e | 67 24 2c a7 53 74 72 69 |$=.Strin|g$,.Stri|
|00000320| 6e 67 24 2c 22 2d 71 75 | 69 74 22 29 2b 38 29 0d |ng$,"-qu|it")+8).|
|00000330| 00 d2 26 53 74 72 69 6e | 67 24 3d c1 53 74 72 69 |..&Strin|g$=.Stri|
|00000340| 6e 67 24 2c a7 53 74 72 | 69 6e 67 24 2c 22 22 22 |ng$,.Str|ing$,"""|
|00000350| 22 29 2b 31 29 0d 00 dc | 04 0d 00 e6 2a c8 99 22 |")+1)...|....*.."|
|00000360| 4f 53 5f 52 65 61 64 41 | 72 67 73 22 2c 22 2f 41 |OS_ReadA|rgs","/A|
|00000370| 2c 2f 41 22 2c 53 74 72 | 69 6e 67 24 2c 50 25 2c |,/A",Str|ing$,P%,|
|00000380| 35 31 32 0d 00 f0 04 0d | 00 fa 0e 46 72 6f 6d 25 |512.....|...From%|
|00000390| 3d 50 25 21 30 0d 01 04 | 0c 54 6f 25 3d 50 25 21 |=P%!0...|.To%=P%!|
|000003a0| 34 0d 01 0e 10 46 6f 72 | 6d 61 74 25 3d 50 25 21 |4....For|mat%=P%!|
|000003b0| 38 0d 01 18 25 e7 20 46 | 72 6f 6d 25 3c 3d 30 20 |8...%. F|rom%<=0 |
|000003c0| 8c 20 85 20 31 2c 22 4e | 6f 20 69 6e 70 75 74 20 |. . 1,"N|o input |
|000003d0| 66 69 6c 65 2e 22 0d 01 | 22 24 e7 20 54 6f 25 3c |file."..|"$. To%<|
|000003e0| 3d 30 20 8c 20 85 20 31 | 2c 22 4e 6f 20 6f 75 74 |=0 . . 1|,"No out|
|000003f0| 70 75 74 20 66 69 6c 65 | 2e 22 0d 01 2c 11 49 6e |put file|."..,.In|
|00000400| 24 3d a4 73 28 46 72 6f | 6d 25 29 0d 01 36 10 4f |$=.s(Fro|m%)..6.O|
|00000410| 75 74 24 3d a4 73 28 54 | 6f 25 29 0d 01 40 04 0d |ut$=.s(T|o%)..@..|
|00000420| 01 4a 25 f4 20 4f 70 65 | 6e 20 74 68 65 20 69 6e |.J%. Ope|n the in|
|00000430| 70 75 74 20 61 6e 64 20 | 6f 75 74 70 75 74 20 66 |put and |output f|
|00000440| 69 6c 65 73 0d 01 54 0e | 49 6e 25 3d 8e 28 49 6e |iles..T.|In%=.(In|
|00000450| 24 29 0d 01 5e 10 4f 75 | 74 25 3d ae 28 4f 75 74 |$)..^.Ou|t%=.(Out|
|00000460| 24 29 0d 01 68 04 0d 01 | 72 1d f4 20 52 65 61 64 |$)..h...|r.. Read|
|00000470| 20 61 6e 64 20 70 72 6f | 63 65 73 73 20 68 65 61 | and pro|cess hea|
|00000480| 64 65 72 0d 01 7c 23 61 | 24 3d be 23 49 6e 25 20 |der..|#a|$=.#In% |
|00000490| 20 20 20 20 20 20 20 20 | 20 20 20 20 3a d5 23 4f | | :.#O|
|000004a0| 75 74 25 2c 61 24 0d 01 | 86 23 61 24 3d be 23 49 |ut%,a$..|.#a$=.#I|
|000004b0| 6e 25 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3a |n% | :|
|000004c0| d5 23 4f 75 74 25 2c 61 | 24 0d 01 90 23 61 24 3d |.#Out%,a|$...#a$=|
|000004d0| be 23 49 6e 25 20 20 20 | 20 20 20 20 20 20 20 20 |.#In% | |
|000004e0| 20 20 3a d5 23 4f 75 74 | 25 2c 61 24 0d 01 9a 23 | :.#Out|%,a$...#|
|000004f0| 61 24 3d be 23 49 6e 25 | 20 20 20 20 20 20 20 20 |a$=.#In%| |
|00000500| 20 20 20 20 20 3a d5 23 | 4f 75 74 25 2c 61 24 0d | :.#|Out%,a$.|
|00000510| 01 a4 22 49 6e 46 6f 72 | 6d 61 74 25 3d bb 28 be |.."InFor|mat%=.(.|
|00000520| 23 49 6e 25 29 20 3a d5 | 23 4f 75 74 25 2c 22 32 |#In%) :.|#Out%,"2|
|00000530| 22 0d 01 ae 3d 58 25 3d | bb 28 be 23 49 6e 25 29 |"...=X%=|.(.#In%)|
|00000540| 20 20 20 20 20 20 20 20 | 3a d5 23 4f 75 74 25 2c | |:.#Out%,|
|00000550| c3 28 58 25 2d 50 69 78 | 65 6c 73 4c 65 66 74 25 |.(X%-Pix|elsLeft%|
|00000560| 2d 50 69 78 65 6c 73 52 | 69 67 68 74 25 29 0d 01 |-PixelsR|ight%)..|
|00000570| b8 3d 59 25 3d bb 28 be | 23 49 6e 25 29 20 20 20 |.=Y%=.(.|#In%) |
|00000580| 20 20 20 20 20 3a d5 23 | 4f 75 74 25 2c c3 28 59 | :.#|Out%,.(Y|
|00000590| 25 2d 50 69 78 65 6c 73 | 54 6f 70 25 2d 50 69 78 |%-Pixels|Top%-Pix|
|000005a0| 65 6c 73 42 6f 74 74 6f | 6d 25 29 0d 01 c2 25 42 |elsBotto|m%)...%B|
|000005b0| 50 50 24 3d be 23 49 6e | 25 20 20 20 20 20 20 20 |PP$=.#In|% |
|000005c0| 20 20 20 20 3a d5 23 4f | 75 74 25 2c 42 50 50 24 | :.#O|ut%,BPP$|
|000005d0| 0d 01 cc 21 61 24 3d be | 23 49 6e 25 3a 46 50 53 |...!a$=.|#In%:FPS|
|000005e0| 3d bb 28 61 24 29 20 3a | d5 23 4f 75 74 25 2c 61 |=.(a$) :|.#Out%,a|
|000005f0| 24 0d 01 d6 23 61 24 3d | be 23 49 6e 25 20 20 20 |$...#a$=|.#In% |
|00000600| 20 20 20 20 20 20 20 20 | 20 20 3a d5 23 4f 75 74 | | :.#Out|
|00000610| 25 2c 61 24 0d 01 e0 23 | 61 24 3d be 23 49 6e 25 |%,a$...#|a$=.#In%|
|00000620| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3a d5 23 | | :.#|
|00000630| 4f 75 74 25 2c 61 24 0d | 01 ea 23 61 24 3d be 23 |Out%,a$.|..#a$=.#|
|00000640| 49 6e 25 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |In% | |
|00000650| 3a d5 23 4f 75 74 25 2c | 61 24 0d 01 f4 23 61 24 |:.#Out%,|a$...#a$|
|00000660| 3d be 23 49 6e 25 20 20 | 20 20 20 20 20 20 20 20 |=.#In% | |
|00000670| 20 20 20 3a d5 23 4f 75 | 74 25 2c 61 24 0d 01 fe | :.#Ou|t%,a$...|
|00000680| 24 46 50 43 25 3d bb 28 | be 23 49 6e 25 29 20 20 |$FPC%=.(|.#In%) |
|00000690| 20 20 20 20 3a d5 23 4f | 75 74 25 2c c3 46 50 43 | :.#O|ut%,.FPC|
|000006a0| 25 0d 02 08 23 4e 43 25 | 3d bb 28 be 23 49 6e 25 |%...#NC%|=.(.#In%|
|000006b0| 29 20 20 20 20 20 20 20 | 3a d5 23 4f 75 74 25 2c |) |:.#Out%,|
|000006c0| c3 4e 43 25 0d 02 12 04 | 0d 02 1c 32 20 20 20 20 |.NC%....|...2 |
|000006d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006e0| 20 20 20 20 50 74 72 5f | 43 68 75 6e 6b 53 69 7a | Ptr_|ChunkSiz|
|000006f0| 65 73 25 3d 8f 23 4f 75 | 74 25 0d 02 26 2d 61 24 |es%=.#Ou|t%..&-a$|
|00000700| 3d be 23 49 6e 25 20 20 | 20 20 20 20 20 20 20 20 |=.#In% | |
|00000710| 20 20 20 3a d5 23 4f 75 | 74 25 2c 22 30 30 30 30 | :.#Ou|t%,"0000|
|00000720| 30 30 30 30 20 20 22 0d | 02 30 2d 61 24 3d be 23 |0000 ".|.0-a$=.#|
|00000730| 49 6e 25 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |In% | |
|00000740| 3a d5 23 4f 75 74 25 2c | 22 30 30 30 30 30 30 30 |:.#Out%,|"0000000|
|00000750| 30 20 20 22 0d 02 3a 2b | 43 61 74 61 6c 6f 67 75 |0 "..:+|Catalogu|
|00000760| 65 25 3d bb 28 be 23 49 | 6e 25 29 3a d5 23 4f 75 |e%=.(.#I|n%):.#Ou|
|00000770| 74 25 2c 22 30 30 30 30 | 30 30 30 30 20 20 22 0d |t%,"0000|0000 ".|
|00000780| 02 44 2b 53 70 72 69 74 | 65 25 3d bb 28 be 23 49 |.D+Sprit|e%=.(.#I|
|00000790| 6e 25 29 20 20 20 3a d5 | 23 4f 75 74 25 2c 22 30 |n%) :.|#Out%,"0|
|000007a0| 30 30 30 30 30 30 30 20 | 20 22 0d 02 4e 2a 53 70 |0000000 | "..N*Sp|
|000007b0| 72 69 74 65 4c 65 6e 25 | 3d bb 28 be 23 49 6e 25 |riteLen%|=.(.#In%|
|000007c0| 29 3a d5 23 4f 75 74 25 | 2c c3 53 70 72 69 74 65 |):.#Out%|,.Sprite|
|000007d0| 4c 65 6e 25 0d 02 58 32 | 61 24 3d be 23 49 6e 25 |Len%..X2|a$=.#In%|
|000007e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3a d5 23 | | :.#|
|000007f0| 4f 75 74 25 2c 22 2d 31 | 20 20 20 20 20 20 6e 6f |Out%,"-1| no|
|00000800| 20 6b 65 79 73 22 0d 02 | 62 04 0d 02 6c 25 f4 20 | keys"..|b...l%. |
|00000810| 43 6f 70 79 20 27 75 73 | 65 66 75 6c 27 20 73 70 |Copy 'us|eful' sp|
|00000820| 72 69 74 65 20 69 66 20 | 70 72 65 73 65 6e 74 0d |rite if |present.|
|00000830| 02 76 2e 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |.v. | |
|00000840| 20 20 20 20 20 20 20 20 | 20 20 20 50 74 72 5f 53 | | Ptr_S|
|00000850| 70 72 69 74 65 25 3d 8f | 23 4f 75 74 25 0d 02 80 |prite%=.|#Out%...|
|00000860| 11 cf 23 49 6e 25 3d 53 | 70 72 69 74 65 25 0d 02 |..#In%=S|prite%..|
|00000870| 8a 14 e7 20 53 70 72 69 | 74 65 4c 65 6e 25 3e 30 |... Spri|teLen%>0|
|00000880| 20 8c 0d 02 94 18 20 e3 | 20 49 25 3d 31 20 b8 20 | ..... .| I%=1 . |
|00000890| 53 70 72 69 74 65 4c 65 | 6e 25 0d 02 9e 12 20 20 |SpriteLe|n%.... |
|000008a0| d5 23 4f 75 74 25 2c 9a | 23 49 6e 25 0d 02 a8 06 |.#Out%,.|#In%....|
|000008b0| 20 ed 0d 02 b2 05 cc 0d | 02 bc 12 20 50 74 72 5f | .......|... Ptr_|
|000008c0| 53 70 72 69 74 65 25 3d | 30 0d 02 c6 05 cd 0d 02 |Sprite%=|0.......|
|000008d0| d0 30 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |.0 | |
|000008e0| 20 20 20 20 20 20 20 20 | 20 20 50 74 72 5f 43 68 | | Ptr_Ch|
|000008f0| 75 6e 6b 43 61 74 25 3d | 8f 23 4f 75 74 25 0d 02 |unkCat%=|.#Out%..|
|00000900| da 04 0d 02 e4 14 f4 20 | 52 65 61 64 20 63 61 74 |....... |Read cat|
|00000910| 61 6c 6f 67 75 65 0d 02 | ee 14 cf 23 49 6e 25 3d |alogue..|...#In%=|
|00000920| 43 61 74 61 6c 6f 67 75 | 65 25 0d 02 f8 13 4d 61 |Catalogu|e%....Ma|
|00000930| 78 43 68 75 6e 6b 53 69 | 7a 65 25 3d 30 0d 03 02 |xChunkSi|ze%=0...|
|00000940| 13 4d 61 78 41 75 64 69 | 6f 53 69 7a 65 25 3d 30 |.MaxAudi|oSize%=0|
|00000950| 0d 03 0c 14 e3 20 43 68 | 75 6e 6b 25 3d 30 20 b8 |..... Ch|unk%=0 .|
|00000960| 20 4e 43 25 0d 03 16 0d | 20 61 24 3d be 23 49 6e | NC%....| a$=.#In|
|00000970| 25 0d 03 20 1c 20 43 68 | 75 6e 6b 73 25 28 43 68 |%.. . Ch|unks%(Ch|
|00000980| 75 6e 6b 25 2c 31 29 3d | bb 28 61 24 29 0d 03 2a |unk%,1)=|.(a$)..*|
|00000990| 29 20 43 68 75 6e 6b 73 | 25 28 43 68 75 6e 6b 25 |) Chunks|%(Chunk%|
|000009a0| 2c 32 29 3d bb 28 c1 61 | 24 2c a7 61 24 2c 22 2c |,2)=.(.a|$,.a$,",|
|000009b0| 22 29 2b 31 29 29 0d 03 | 34 29 20 43 68 75 6e 6b |")+1))..|4) Chunk|
|000009c0| 73 25 28 43 68 75 6e 6b | 25 2c 33 29 3d bb 28 c1 |s%(Chunk|%,3)=.(.|
|000009d0| 61 24 2c a7 61 24 2c 22 | 3b 22 29 2b 31 29 29 0d |a$,.a$,"|;")+1)).|
|000009e0| 03 3e 48 20 e7 20 43 68 | 75 6e 6b 73 25 28 43 68 |.>H . Ch|unks%(Ch|
|000009f0| 75 6e 6b 25 2c 32 29 3e | 4d 61 78 43 68 75 6e 6b |unk%,2)>|MaxChunk|
|00000a00| 53 69 7a 65 25 20 8c 20 | 4d 61 78 43 68 75 6e 6b |Size% . |MaxChunk|
|00000a10| 53 69 7a 65 25 3d 43 68 | 75 6e 6b 73 25 28 43 68 |Size%=Ch|unks%(Ch|
|00000a20| 75 6e 6b 25 2c 32 29 0d | 03 48 48 20 e7 20 43 68 |unk%,2).|.HH . Ch|
|00000a30| 75 6e 6b 73 25 28 43 68 | 75 6e 6b 25 2c 33 29 3e |unks%(Ch|unk%,3)>|
|00000a40| 4d 61 78 41 75 64 69 6f | 53 69 7a 65 25 20 8c 20 |MaxAudio|Size% . |
|00000a50| 4d 61 78 41 75 64 69 6f | 53 69 7a 65 25 3d 43 68 |MaxAudio|Size%=Ch|
|00000a60| 75 6e 6b 73 25 28 43 68 | 75 6e 6b 25 2c 33 29 0d |unks%(Ch|unk%,3).|
|00000a70| 03 52 05 ed 0d 03 5c 04 | 0d 03 66 4c 46 72 61 6d |.R....\.|..fLFram|
|00000a80| 65 53 69 7a 65 25 3d 32 | 2a 28 58 25 2d 50 69 78 |eSize%=2|*(X%-Pix|
|00000a90| 65 6c 73 4c 65 66 74 25 | 2d 50 69 78 65 6c 73 52 |elsLeft%|-PixelsR|
|00000aa0| 69 67 68 74 25 29 2a 28 | 59 25 2d 50 69 78 65 6c |ight%)*(|Y%-Pixel|
|00000ab0| 73 54 6f 70 25 2d 50 69 | 78 65 6c 73 42 6f 74 74 |sTop%-Pi|xelsBott|
|00000ac0| 6f 6d 25 29 0d 03 70 04 | 0d 03 7a 2d f4 20 43 61 |om%)..p.|..z-. Ca|
|00000ad0| 6c 63 75 6c 61 74 65 20 | 61 6e 64 20 77 72 69 74 |lculate |and writ|
|00000ae0| 65 20 74 68 65 20 63 68 | 75 6e 6b 20 63 61 74 61 |e the ch|unk cata|
|00000af0| 6c 6f 67 75 65 0d 03 84 | 16 4d 61 78 43 68 75 6e |logue...|.MaxChun|
|00000b00| 6b 53 69 7a 65 4f 75 74 | 25 3d 30 0d 03 8e 31 43 |kSizeOut|%=0...1C|
|00000b10| 68 75 6e 6b 53 74 61 72 | 74 25 3d 28 50 74 72 5f |hunkStar|t%=(Ptr_|
|00000b20| 43 68 75 6e 6b 43 61 74 | 25 2b 33 32 2a 4e 43 25 |ChunkCat|%+32*NC%|
|00000b30| 2b 31 30 32 33 29 80 ac | 31 30 32 33 0d 03 98 1e |+1023)..|1023....|
|00000b40| 56 69 64 65 6f 53 69 7a | 65 25 3d 46 50 43 25 2a |VideoSiz|e%=FPC%*|
|00000b50| 46 72 61 6d 65 53 69 7a | 65 25 0d 03 a2 14 e3 20 |FrameSiz|e%..... |
|00000b60| 43 68 75 6e 6b 25 3d 30 | 20 b8 20 4e 43 25 0d 03 |Chunk%=0| . NC%..|
|00000b70| ac 21 20 41 75 64 69 6f | 53 69 7a 65 25 3d 43 68 |.! Audio|Size%=Ch|
|00000b80| 75 6e 6b 73 25 28 43 68 | 75 6e 6b 25 2c 33 29 0d |unks%(Ch|unk%,3).|
|00000b90| 03 b6 38 20 d5 23 4f 75 | 74 25 2c c3 43 68 75 6e |..8 .#Ou|t%,.Chun|
|00000ba0| 6b 53 74 61 72 74 25 2b | 22 2c 22 2b c3 56 69 64 |kStart%+|","+.Vid|
|00000bb0| 65 6f 53 69 7a 65 25 2b | 22 3b 22 2b c3 41 75 64 |eoSize%+|";"+.Aud|
|00000bc0| 69 6f 53 69 7a 65 25 0d | 03 c0 22 20 43 68 75 6e |ioSize%.|.." Chun|
|00000bd0| 6b 73 25 28 43 68 75 6e | 6b 25 2c 30 29 3d 43 68 |ks%(Chun|k%,0)=Ch|
|00000be0| 75 6e 6b 53 74 61 72 74 | 25 0d 03 ca 2c 20 43 68 |unkStart|%..., Ch|
|00000bf0| 75 6e 6b 73 25 28 43 68 | 75 6e 6b 25 2c 34 29 3d |unks%(Ch|unk%,4)=|
|00000c00| 56 69 64 65 6f 53 69 7a | 65 25 2b 41 75 64 69 6f |VideoSiz|e%+Audio|
|00000c10| 53 69 7a 65 25 0d 03 d4 | 34 20 43 68 75 6e 6b 53 |Size%...|4 ChunkS|
|00000c20| 74 61 72 74 25 2b 3d 28 | 56 69 64 65 6f 53 69 7a |tart%+=(|VideoSiz|
|00000c30| 65 25 2b 41 75 64 69 6f | 53 69 7a 65 25 2b 31 30 |e%+Audio|Size%+10|
|00000c40| 32 33 29 80 ac 31 30 32 | 33 0d 03 de 56 20 e7 20 |23)..102|3...V . |
|00000c50| 56 69 64 65 6f 53 69 7a | 65 25 2b 41 75 64 69 6f |VideoSiz|e%+Audio|
|00000c60| 53 69 7a 65 25 3e 4d 61 | 78 43 68 75 6e 6b 53 69 |Size%>Ma|xChunkSi|
|00000c70| 7a 65 4f 75 74 25 20 8c | 20 4d 61 78 43 68 75 6e |zeOut% .| MaxChun|
|00000c80| 6b 53 69 7a 65 4f 75 74 | 25 3d 56 69 64 65 6f 53 |kSizeOut|%=VideoS|
|00000c90| 69 7a 65 25 2b 41 75 64 | 69 6f 53 69 7a 65 25 0d |ize%+Aud|ioSize%.|
|00000ca0| 03 e8 05 ed 0d 03 f2 04 | 0d 03 fc 4f f4 20 46 69 |........|...O. Fi|
|00000cb0| 6c 6c 20 74 68 65 20 73 | 70 61 63 65 20 62 65 74 |ll the s|pace bet|
|00000cc0| 77 65 65 6e 20 74 68 65 | 20 65 6e 64 20 6f 66 20 |ween the| end of |
|00000cd0| 74 68 65 20 63 68 75 6e | 6b 20 63 61 74 61 6c 6f |the chun|k catalo|
|00000ce0| 67 75 65 20 61 6e 64 20 | 74 68 65 20 66 69 72 73 |gue and |the firs|
|00000cf0| 74 20 63 68 75 6e 6b 0d | 04 06 05 f5 0d 04 10 0d |t chunk.|........|
|00000d00| 20 d5 23 4f 75 74 25 2c | 30 0d 04 1a 19 fd 20 a2 | .#Out%,|0..... .|
|00000d10| 23 4f 75 74 25 3d 43 68 | 75 6e 6b 73 25 28 30 2c |#Out%=Ch|unks%(0,|
|00000d20| 30 29 0d 04 24 04 0d 04 | 2e 1d f4 20 47 65 74 20 |0)..$...|... Get |
|00000d30| 6d 65 6d 6f 72 79 20 66 | 6f 72 20 74 68 65 20 64 |memory f|or the d|
|00000d40| 61 74 61 0d 04 38 20 de | 20 43 68 75 6e 6b 42 75 |ata..8 .| ChunkBu|
|00000d50| 66 66 65 72 25 20 4d 61 | 78 43 68 75 6e 6b 53 69 |ffer% Ma|xChunkSi|
|00000d60| 7a 65 25 0d 04 42 25 de | 20 46 72 61 6d 65 31 25 |ze%..B%.| Frame1%|
|00000d70| 20 34 2a 58 25 2a 59 25 | 2c 46 72 61 6d 65 32 25 | 4*X%*Y%|,Frame2%|
|00000d80| 20 34 2a 58 25 2a 59 25 | 0d 04 4c 1a de 20 4f 75 | 4*X%*Y%|..L.. Ou|
|00000d90| 74 46 72 61 6d 65 25 20 | 46 72 61 6d 65 53 69 7a |tFrame% |FrameSiz|
|00000da0| 65 25 0d 04 56 20 de 20 | 41 75 64 69 6f 42 75 66 |e%..V . |AudioBuf|
|00000db0| 66 65 72 25 20 4d 61 78 | 41 75 64 69 6f 53 69 7a |fer% Max|AudioSiz|
|00000dc0| 65 25 0d 04 60 04 0d 04 | 6a 29 f4 20 46 69 6e 64 |e%..`...|j). Find|
|00000dd0| 20 61 6e 64 20 6c 6f 61 | 64 20 74 68 65 20 64 65 | and loa|d the de|
|00000de0| 63 6f 6d 70 72 65 73 73 | 6f 72 20 63 6f 64 65 0d |compress|or code.|
|00000df0| 04 74 46 e7 20 49 6e 46 | 6f 72 6d 61 74 25 3d 31 |.tF. InF|ormat%=1|
|00000e00| 20 8c 20 44 65 63 6f 6d | 70 24 3d 22 4d 6f 76 69 | . Decom|p$="Movi|
|00000e10| 6e 67 4c 69 6e 65 22 20 | 8b 20 44 65 63 6f 6d 70 |ngLine" |. Decomp|
|00000e20| 24 3d 22 44 65 63 6f 6d | 70 22 2b c3 49 6e 46 6f |$="Decom|p"+.InFo|
|00000e30| 72 6d 61 74 25 0d 04 7e | 43 c8 99 22 4f 53 5f 46 |rmat%..~|C.."OS_F|
|00000e40| 69 6c 65 22 2c 35 2c 22 | 3c 41 52 4d 6f 76 69 65 |ile",5,"|<ARMovie|
|00000e50| 24 44 69 72 3e 2e 22 2b | 44 65 63 6f 6d 70 24 2b |$Dir>."+|Decomp$+|
|00000e60| 22 2e 44 65 63 6f 6d 70 | 72 65 73 73 22 20 b8 20 |".Decomp|ress" . |
|00000e70| 2c 2c 2c 2c 4c 65 6e 25 | 0d 04 88 12 de 20 44 65 |,,,,Len%|..... De|
|00000e80| 63 6f 6d 70 25 20 4c 65 | 6e 25 0d 04 92 42 c8 99 |comp% Le|n%...B..|
|00000e90| 22 4f 53 5f 46 69 6c 65 | 22 2c 32 35 35 2c 22 3c |"OS_File|",255,"<|
|00000ea0| 41 52 4d 6f 76 69 65 24 | 44 69 72 3e 2e 22 2b 44 |ARMovie$|Dir>."+D|
|00000eb0| 65 63 6f 6d 70 24 2b 22 | 2e 44 65 63 6f 6d 70 72 |ecomp$+"|.Decompr|
|00000ec0| 65 73 73 22 2c 44 65 63 | 6f 6d 70 25 0d 04 9c 04 |ess",Dec|omp%....|
|00000ed0| 0d 04 a6 21 f4 20 49 6e | 69 74 69 61 6c 69 73 65 |...!. In|itialise|
|00000ee0| 20 74 68 65 20 64 65 63 | 6f 6d 70 72 65 73 73 6f | the dec|ompresso|
|00000ef0| 72 0d 04 b0 0f 41 25 3d | 58 25 3a 42 25 3d 59 25 |r....A%=|X%:B%=Y%|
|00000f00| 0d 04 ba 0f d6 20 44 65 | 63 6f 6d 70 25 2b 34 0d |..... De|comp%+4.|
|00000f10| 04 c4 04 0d 04 ce 4e f4 | 20 57 65 20 63 6f 75 6c |......N.| We coul|
|00000f20| 64 6e 27 74 20 61 73 73 | 65 6d 62 6c 65 20 74 68 |dn't ass|emble th|
|00000f30| 65 20 63 6f 64 65 20 62 | 65 66 6f 72 65 20 6e 6f |e code b|efore no|
|00000f40| 77 20 61 73 20 69 74 20 | 6e 65 65 64 73 20 74 68 |w as it |needs th|
|00000f50| 65 20 76 61 72 69 6f 75 | 73 20 62 75 66 66 65 72 |e variou|s buffer|
|00000f60| 73 0d 04 d8 11 f2 41 73 | 73 65 6d 62 6c 65 72 28 |s.....As|sembler(|
|00000f70| 30 29 0d 04 e2 11 f2 41 | 73 73 65 6d 62 6c 65 72 |0).....A|ssembler|
|00000f80| 28 32 29 0d 04 ec 04 0d | 04 f6 04 0d 05 00 14 c8 |(2).....|........|
|00000f90| 99 22 48 6f 75 72 67 6c | 61 73 73 5f 4f 6e 22 0d |."Hourgl|ass_On".|
|00000fa0| 05 0a 14 e3 20 43 68 75 | 6e 6b 25 3d 30 20 b8 20 |.... Chu|nk%=0 . |
|00000fb0| 4e 43 25 0d 05 14 1b f4 | 20 52 65 61 64 20 63 6f |NC%.....| Read co|
|00000fc0| 6d 70 72 65 73 73 65 64 | 20 63 68 75 6e 6b 0d 05 |mpressed| chunk..|
|00000fd0| 1e 47 20 c8 99 22 4f 53 | 5f 47 42 50 42 22 2c 33 |.G .."OS|_GBPB",3|
|00000fe0| 2c 49 6e 25 2c 43 68 75 | 6e 6b 42 75 66 66 65 72 |,In%,Chu|nkBuffer|
|00000ff0| 25 2c 43 68 75 6e 6b 73 | 25 28 43 68 75 6e 6b 25 |%,Chunks|%(Chunk%|
|00001000| 2c 32 29 2c 43 68 75 6e | 6b 73 25 28 43 68 75 6e |,2),Chun|ks%(Chun|
|00001010| 6b 25 2c 31 29 0d 05 28 | 26 f4 20 52 65 73 65 74 |k%,1)..(|&. Reset|
|00001020| 20 74 68 65 20 63 68 75 | 6e 6b 20 70 6f 73 69 74 | the chu|nk posit|
|00001030| 69 6f 6e 20 70 6f 69 6e | 74 65 72 0d 05 32 10 20 |ion poin|ter..2. |
|00001040| 21 70 6f 73 69 74 69 6f | 6e 3d 30 0d 05 3c 16 20 |!positio|n=0..<. |
|00001050| e3 20 46 72 61 6d 65 25 | 3d 31 20 b8 20 46 50 43 |. Frame%|=1 . FPC|
|00001060| 25 0d 05 46 47 20 20 c8 | 99 22 48 6f 75 72 67 6c |%..FG .|."Hourgl|
|00001070| 61 73 73 5f 50 65 72 63 | 65 6e 74 61 67 65 22 2c |ass_Perc|entage",|
|00001080| 31 30 30 2a 28 43 68 75 | 6e 6b 25 2a 46 50 43 25 |100*(Chu|nk%*FPC%|
|00001090| 2b 46 72 61 6d 65 25 29 | 2f 28 4e 43 25 2a 46 50 |+Frame%)|/(NC%*FP|
|000010a0| 43 25 2b 46 50 43 25 29 | 0d 05 50 1f f4 20 44 65 |C%+FPC%)|..P.. De|
|000010b0| 63 6f 6d 70 72 65 73 73 | 20 61 20 73 69 6e 67 6c |compress| a singl|
|000010c0| 65 20 66 72 61 6d 65 0d | 05 5a 12 20 20 d6 20 44 |e frame.|.Z. . D|
|000010d0| 65 63 6f 6d 70 72 65 73 | 73 0d 05 64 0f 20 20 d6 |ecompres|s..d. .|
|000010e0| 20 43 6f 6e 76 65 72 74 | 0d 05 6e 17 f4 20 53 61 | Convert|..n.. Sa|
|000010f0| 76 65 20 74 68 65 20 72 | 61 77 20 64 61 74 61 0d |ve the r|aw data.|
|00001100| 05 78 2d 20 20 c8 99 22 | 4f 53 5f 47 42 50 42 22 |.x- .."|OS_GBPB"|
|00001110| 2c 32 2c 4f 75 74 25 2c | 4f 75 74 46 72 61 6d 65 |,2,Out%,|OutFrame|
|00001120| 25 2c 46 72 61 6d 65 53 | 69 7a 65 25 0d 05 82 58 |%,FrameS|ize%...X|
|00001130| f4 20 41 74 20 74 68 65 | 20 65 6e 64 20 6f 66 20 |. At the| end of |
|00001140| 65 61 63 68 20 63 68 75 | 6e 6b 2c 20 63 6f 70 79 |each chu|nk, copy|
|00001150| 20 61 75 64 69 6f 20 61 | 6e 64 20 70 61 64 20 77 | audio a|nd pad w|
|00001160| 69 74 68 20 7a 65 72 6f | 73 20 75 6e 74 69 6c 20 |ith zero|s until |
|00001170| 31 30 32 34 20 62 79 74 | 65 73 20 62 6f 75 6e 64 |1024 byt|es bound|
|00001180| 72 61 72 79 0d 05 8c 15 | 20 20 e7 20 46 72 61 6d |rary....| . Fram|
|00001190| 65 25 3d 46 50 43 25 20 | 8c 0d 05 96 37 20 20 20 |e%=FPC% |....7 |
|000011a0| c8 99 22 4f 53 5f 47 42 | 50 42 22 2c 34 2c 49 6e |.."OS_GB|PB",4,In|
|000011b0| 25 2c 41 75 64 69 6f 42 | 75 66 66 65 72 25 2c 43 |%,AudioB|uffer%,C|
|000011c0| 68 75 6e 6b 73 25 28 43 | 68 75 6e 6b 25 2c 33 29 |hunks%(C|hunk%,3)|
|000011d0| 0d 05 a0 38 20 20 20 c8 | 99 22 4f 53 5f 47 42 50 |...8 .|."OS_GBP|
|000011e0| 42 22 2c 32 2c 4f 75 74 | 25 2c 41 75 64 69 6f 42 |B",2,Out|%,AudioB|
|000011f0| 75 66 66 65 72 25 2c 43 | 68 75 6e 6b 73 25 28 43 |uffer%,C|hunks%(C|
|00001200| 68 75 6e 6b 25 2c 33 29 | 0d 05 aa 16 20 20 20 e7 |hunk%,3)|.... .|
|00001210| 20 43 68 75 6e 6b 25 3c | 3e 4e 43 25 20 8c 0d 05 | Chunk%<|>NC% ...|
|00001220| b4 15 f4 20 46 69 6c 6c | 20 77 69 74 68 20 7a 65 |... Fill| with ze|
|00001230| 72 6f 73 0d 05 be 23 20 | 20 20 20 c8 95 20 a2 23 |ros...# | .. .#|
|00001240| 4f 75 74 25 3c 43 68 75 | 6e 6b 73 25 28 43 68 75 |Out%<Chu|nks%(Chu|
|00001250| 6e 6b 25 2c 30 29 0d 05 | c8 11 20 20 20 20 20 d5 |nk%,0)..|.. .|
|00001260| 23 4f 75 74 25 2c 30 0d | 05 d2 09 20 20 20 20 ce |#Out%,0.|... .|
|00001270| 0d 05 dc 08 20 20 20 cd | 0d 05 e6 07 20 20 cd 0d |.... .|.... ..|
|00001280| 05 f0 06 20 ed 0d 05 fa | 05 ed 0d 06 04 15 c8 99 |... ....|........|
|00001290| 22 48 6f 75 72 67 6c 61 | 73 73 5f 4f 66 66 22 0d |"Hourgla|ss_Off".|
|000012a0| 06 0e 04 0d 06 18 16 f4 | 20 46 69 6e 64 20 63 68 |........| Find ch|
|000012b0| 75 6e 6b 20 73 69 7a 65 | 73 0d 06 22 0f 45 76 65 |unk size|s..".Eve|
|000012c0| 6e 53 69 7a 65 25 3d 30 | 0d 06 2c 0e 4f 64 64 53 |nSize%=0|..,.OddS|
|000012d0| 69 7a 65 25 3d 30 0d 06 | 36 14 e3 20 43 68 75 6e |ize%=0..|6.. Chun|
|000012e0| 6b 25 3d 30 20 b8 20 4e | 43 25 0d 06 40 16 20 e7 |k%=0 . N|C%..@. .|
|000012f0| 20 28 43 68 75 6e 6b 25 | 20 80 31 29 3d 30 20 8c | (Chunk%| .1)=0 .|
|00001300| 0d 06 4a 41 20 20 e7 20 | 43 68 75 6e 6b 73 25 28 |..JA . |Chunks%(|
|00001310| 43 68 75 6e 6b 25 2c 34 | 29 3e 45 76 65 6e 53 69 |Chunk%,4|)>EvenSi|
|00001320| 7a 65 25 20 8c 20 45 76 | 65 6e 53 69 7a 65 25 3d |ze% . Ev|enSize%=|
|00001330| 43 68 75 6e 6b 73 25 28 | 43 68 75 6e 6b 25 2c 34 |Chunks%(|Chunk%,4|
|00001340| 29 0d 06 54 06 20 cc 0d | 06 5e 3f 20 20 e7 20 43 |)..T. ..|.^? . C|
|00001350| 68 75 6e 6b 73 25 28 43 | 68 75 6e 6b 25 2c 34 29 |hunks%(C|hunk%,4)|
|00001360| 3e 4f 64 64 53 69 7a 65 | 25 20 8c 20 4f 64 64 53 |>OddSize|% . OddS|
|00001370| 69 7a 65 25 3d 43 68 75 | 6e 6b 73 25 28 43 68 75 |ize%=Chu|nks%(Chu|
|00001380| 6e 6b 25 2c 34 29 0d 06 | 68 06 20 cd 0d 06 72 05 |nk%,4)..|h. ...r.|
|00001390| ed 0d 06 7c 04 0d 06 86 | 19 f4 20 43 6f 6d 70 6c |...|....|.. Compl|
|000013a0| 65 74 65 20 74 68 65 20 | 68 65 61 64 65 72 0d 06 |ete the |header..|
|000013b0| 90 1a cf 23 4f 75 74 25 | 3d 50 74 72 5f 43 68 75 |...#Out%|=Ptr_Chu|
|000013c0| 6e 6b 53 69 7a 65 73 25 | 0d 06 9a 11 61 24 3d c3 |nkSizes%|....a$=.|
|000013d0| 45 76 65 6e 53 69 7a 65 | 25 0d 06 a4 1a d5 23 4f |EvenSize|%.....#O|
|000013e0| 75 74 25 2c 61 24 2b c4 | 31 30 2d a9 61 24 2c 22 |ut%,a$+.|10-.a$,"|
|000013f0| 20 22 29 0d 06 ae 10 61 | 24 3d c3 4f 64 64 53 69 | ")....a|$=.OddSi|
|00001400| 7a 65 25 0d 06 b8 1a d5 | 23 4f 75 74 25 2c 61 24 |ze%.....|#Out%,a$|
|00001410| 2b c4 31 30 2d a9 61 24 | 2c 22 20 22 29 0d 06 c2 |+.10-.a$|," ")...|
|00001420| 15 61 24 3d c3 50 74 72 | 5f 43 68 75 6e 6b 43 61 |.a$=.Ptr|_ChunkCa|
|00001430| 74 25 0d 06 cc 1a d5 23 | 4f 75 74 25 2c 61 24 2b |t%.....#|Out%,a$+|
|00001440| c4 31 30 2d a9 61 24 2c | 22 20 22 29 0d 06 d6 13 |.10-.a$,|" ")....|
|00001450| 61 24 3d c3 50 74 72 5f | 53 70 72 69 74 65 25 0d |a$=.Ptr_|Sprite%.|
|00001460| 06 e0 1a d5 23 4f 75 74 | 25 2c 61 24 2b c4 31 30 |....#Out|%,a$+.10|
|00001470| 2d a9 61 24 2c 22 20 22 | 29 0d 06 ea 04 0d 06 f4 |-.a$," "|).......|
|00001480| 1c f4 20 43 6c 6f 73 65 | 20 61 6e 64 20 73 65 74 |.. Close| and set|
|00001490| 20 66 69 6c 65 74 79 70 | 65 0d 06 fe 09 d9 23 49 | filetyp|e.....#I|
|000014a0| 6e 25 0d 07 08 0a d9 23 | 4f 75 74 25 0d 07 12 1c |n%.....#|Out%....|
|000014b0| c8 99 22 4f 53 5f 46 69 | 6c 65 22 2c 31 38 2c 4f |.."OS_Fi|le",18,O|
|000014c0| 75 74 24 2c 26 41 45 37 | 0d 07 1c 04 0d 07 26 06 |ut$,&AE7|......&.|
|000014d0| c8 98 0d 07 30 04 0d 07 | 3a 32 dd a4 73 28 61 25 |....0...|:2..s(a%|
|000014e0| 29 3a 61 24 3d 22 22 3a | c8 95 20 3f 61 25 3e 33 |):a$="":|.. ?a%>3|
|000014f0| 31 3a 61 24 2b 3d bd 28 | 3f 61 25 29 3a 61 25 2b |1:a$+=.(|?a%):a%+|
|00001500| 3d 31 3a ce 3a 3d 61 24 | 0d 07 44 04 0d 07 4e 16 |=1:.:=a$|..D...N.|
|00001510| dd f2 41 73 73 65 6d 62 | 6c 65 72 28 70 61 73 73 |..Assemb|ler(pass|
|00001520| 25 29 0d 07 58 0d 20 50 | 25 3d 43 6f 64 65 25 0d |%)..X. P|%=Code%.|
|00001530| 07 62 0f 20 5b 4f 50 54 | 20 70 61 73 73 25 0d 07 |.b. [OPT| pass%..|
|00001540| 6c 0f 2e 44 65 63 6f 6d | 70 72 65 73 73 0d 07 76 |l..Decom|press..v|
|00001550| 1c 20 53 54 4d 46 44 20 | 52 31 33 21 2c 7b 52 30 |. STMFD |R13!,{R0|
|00001560| 2d 52 31 32 2c 52 31 34 | 7d 0d 07 80 36 20 4c 44 |-R12,R14|}...6 LD|
|00001570| 52 20 52 30 2c 70 6f 73 | 69 74 69 6f 6e 20 20 20 |R R0,pos|ition |
|00001580| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 70 6f | | ;po|
|00001590| 73 69 74 69 6f 6e 20 69 | 6e 20 63 68 75 6e 6b 0d |sition i|n chunk.|
|000015a0| 07 8a 38 20 4c 44 52 20 | 52 35 2c 63 68 75 6e 6b |..8 LDR |R5,chunk|
|000015b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000015c0| 20 20 20 3b 63 68 75 6e | 6b 20 73 74 61 72 74 20 | ;chun|k start |
|000015d0| 61 64 64 72 65 73 73 0d | 07 94 11 20 41 44 44 20 |address.|... ADD |
|000015e0| 52 30 2c 52 30 2c 52 35 | 0d 07 9e 04 0d 07 a8 11 |R0,R0,R5|........|
|000015f0| 20 4c 44 52 20 52 35 2c | 66 72 61 6d 65 0d 07 b2 | LDR R5,|frame...|
|00001600| 0e 20 43 4d 50 20 52 35 | 2c 23 30 0d 07 bc 24 20 |. CMP R5|,#0...$ |
|00001610| 4c 44 52 45 51 20 52 31 | 2c 66 72 61 6d 65 31 3a |LDREQ R1|,frame1:|
|00001620| 4c 44 52 45 51 20 52 32 | 2c 66 72 61 6d 65 32 0d |LDREQ R2|,frame2.|
|00001630| 07 c6 24 20 4c 44 52 4e | 45 20 52 31 2c 66 72 61 |..$ LDRN|E R1,fra|
|00001640| 6d 65 32 3a 4c 44 52 4e | 45 20 52 32 2c 66 72 61 |me2:LDRN|E R2,fra|
|00001650| 6d 65 31 0d 07 d0 11 20 | 52 53 42 20 52 35 2c 52 |me1.... |RSB R5,R|
|00001660| 35 2c 23 31 0d 07 da 11 | 20 53 54 52 20 52 35 2c |5,#1....| STR R5,|
|00001670| 66 72 61 6d 65 0d 07 e4 | 04 0d 07 ee 0e 20 4d 4f |frame...|..... MO|
|00001680| 56 20 52 33 2c 23 30 0d | 07 f8 04 0d 08 02 33 20 |V R3,#0.|......3 |
|00001690| 41 44 52 20 52 34 2c 72 | 65 74 75 72 6e 20 20 20 |ADR R4,r|eturn |
|000016a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|000016b0| 72 65 74 75 72 6e 20 61 | 64 64 72 65 73 73 0d 08 |return a|ddress..|
|000016c0| 0c 3f 20 4c 44 52 20 52 | 35 2c 64 65 63 6f 6d 70 |.? LDR R|5,decomp|
|000016d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000016e0| 20 20 3b 73 74 61 72 74 | 20 6f 66 20 64 65 63 6f | ;start| of deco|
|000016f0| 6d 70 72 65 73 73 6f 72 | 20 63 6f 64 65 0d 08 16 |mpressor| code...|
|00001700| 2d 20 41 44 44 20 52 35 | 2c 52 35 2c 23 38 20 20 |- ADD R5|,R5,#8 |
|00001710| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001720| 20 3b 33 72 64 20 77 6f | 72 64 0d 08 20 36 20 4d | ;3rd wo|rd.. 6 M|
|00001730| 4f 56 20 50 43 2c 52 35 | 20 20 20 20 20 20 20 20 |OV PC,R5| |
|00001740| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 63 | | ;c|
|00001750| 61 6c 6c 20 64 65 63 6f | 6d 70 72 65 73 73 65 64 |all deco|mpressed|
|00001760| 0d 08 2a 0b 2e 72 65 74 | 75 72 6e 0d 08 34 11 20 |..*..ret|urn..4. |
|00001770| 4c 44 52 20 52 31 2c 63 | 68 75 6e 6b 0d 08 3e 11 |LDR R1,c|hunk..>.|
|00001780| 20 53 55 42 20 52 30 2c | 52 30 2c 52 31 0d 08 48 | SUB R0,|R0,R1..H|
|00001790| 33 20 53 54 52 20 52 30 | 2c 70 6f 73 69 74 69 6f |3 STR R0|,positio|
|000017a0| 6e 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |n | |
|000017b0| 20 3b 75 70 64 61 74 65 | 20 70 6f 69 6e 74 65 72 | ;update| pointer|
|000017c0| 0d 08 52 1b 20 4c 44 4d | 46 44 20 52 31 33 21 2c |..R. LDM|FD R13!,|
|000017d0| 7b 52 30 2d 52 31 32 2c | 50 43 7d 0d 08 5c 04 0d |{R0-R12,|PC}..\..|
|000017e0| 08 66 25 2e 63 68 75 6e | 6b 20 20 20 20 20 20 20 |.f%.chun|k |
|000017f0| 20 20 20 45 51 55 44 20 | 43 68 75 6e 6b 42 75 66 | EQUD |ChunkBuf|
|00001800| 66 65 72 25 0d 08 70 20 | 2e 66 72 61 6d 65 31 20 |fer%..p |.frame1 |
|00001810| 20 20 20 20 20 20 20 20 | 45 51 55 44 20 46 72 61 | |EQUD Fra|
|00001820| 6d 65 31 25 0d 08 7a 20 | 2e 66 72 61 6d 65 32 20 |me1%..z |.frame2 |
|00001830| 20 20 20 20 20 20 20 20 | 45 51 55 44 20 46 72 61 | |EQUD Fra|
|00001840| 6d 65 32 25 0d 08 84 20 | 2e 64 65 63 6f 6d 70 20 |me2%... |.decomp |
|00001850| 20 20 20 20 20 20 20 20 | 45 51 55 44 20 44 65 63 | |EQUD Dec|
|00001860| 6f 6d 70 25 0d 08 8e 1a | 2e 70 6f 73 69 74 69 6f |omp%....|.positio|
|00001870| 6e 20 20 20 20 20 20 20 | 45 51 55 44 20 30 0d 08 |n |EQUD 0..|
|00001880| 98 04 0d 08 a2 04 0d 08 | ac 0c 2e 43 6f 6e 76 65 |........|...Conve|
|00001890| 72 74 0d 08 b6 1c 20 53 | 54 4d 46 44 20 52 31 33 |rt.... S|TMFD R13|
|000018a0| 21 2c 7b 52 30 2d 52 31 | 32 2c 52 31 34 7d 0d 08 |!,{R0-R1|2,R14}..|
|000018b0| c0 11 20 4c 44 52 20 52 | 35 2c 66 72 61 6d 65 0d |.. LDR R|5,frame.|
|000018c0| 08 ca 0e 20 43 4d 50 20 | 52 35 2c 23 30 0d 08 d4 |... CMP |R5,#0...|
|000018d0| 3f 20 4c 44 52 45 51 20 | 52 31 2c 66 72 61 6d 65 |? LDREQ |R1,frame|
|000018e0| 32 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |2 | |
|000018f0| 20 20 20 20 20 20 20 20 | 20 3b 77 68 65 72 65 20 | | ;where |
|00001900| 66 72 6f 6d 20 74 6f 20 | 72 65 61 64 0d 08 de 14 |from to |read....|
|00001910| 20 4c 44 52 4e 45 20 52 | 31 2c 66 72 61 6d 65 31 | LDRNE R|1,frame1|
|00001920| 0d 08 e8 3b 20 4c 44 52 | 20 52 30 2c 6f 75 74 66 |...; LDR| R0,outf|
|00001930| 72 61 6d 65 20 20 20 20 | 20 20 20 20 20 20 20 20 |rame | |
|00001940| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 77 68 65 | | ;whe|
|00001950| 72 65 20 74 6f 20 77 72 | 69 74 65 0d 08 f2 11 20 |re to wr|ite.... |
|00001960| 4c 44 52 20 52 33 2c 73 | 69 7a 65 79 0d 08 fc 1a |LDR R3,s|izey....|
|00001970| 20 53 55 42 20 52 33 2c | 52 33 2c 23 50 69 78 65 | SUB R3,|R3,#Pixe|
|00001980| 6c 73 54 6f 70 25 0d 09 | 06 1d 20 53 55 42 20 52 |lsTop%..|.. SUB R|
|00001990| 33 2c 52 33 2c 23 50 69 | 78 65 6c 73 42 6f 74 74 |3,R3,#Pi|xelsBott|
|000019a0| 6f 6d 25 0d 09 10 17 20 | 4d 4f 56 20 52 32 2c 23 |om%.... |MOV R2,#|
|000019b0| 50 69 78 65 6c 73 54 6f | 70 25 0d 09 1a 11 20 4c |PixelsTo|p%.... L|
|000019c0| 44 52 20 52 35 2c 73 69 | 7a 65 78 0d 09 24 30 20 |DR R5,si|zex..$0 |
|000019d0| 4d 4f 56 20 52 35 2c 52 | 35 2c 4c 53 4c 23 32 20 |MOV R5,R|5,LSL#2 |
|000019e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000019f0| 20 20 20 20 20 20 20 3b | 62 70 6c 0d 09 2e 37 20 | ;|bpl...7 |
|00001a00| 4d 4c 41 20 52 31 2c 52 | 32 2c 52 35 2c 52 31 20 |MLA R1,R|2,R5,R1 |
|00001a10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001a20| 20 20 20 20 20 20 20 3b | 73 6b 69 70 20 6c 69 6e | ;|skip lin|
|00001a30| 65 73 0d 09 38 0a 2e 4c | 6f 6f 70 59 0d 09 42 12 |es..8..L|oopY..B.|
|00001a40| 20 20 4c 44 52 20 52 32 | 2c 73 69 7a 65 78 0d 09 | LDR R2|,sizex..|
|00001a50| 4c 31 20 20 53 55 42 20 | 52 32 2c 52 32 2c 23 28 |L1 SUB |R2,R2,#(|
|00001a60| 50 69 78 65 6c 73 4c 65 | 66 74 25 2b 50 69 78 65 |PixelsLe|ft%+Pixe|
|00001a70| 6c 73 52 69 67 68 74 25 | 29 20 3b 73 6b 69 70 0d |lsRight%|) ;skip.|
|00001a80| 09 56 1e 20 20 41 44 44 | 20 52 31 2c 52 31 2c 23 |.V. ADD| R1,R1,#|
|00001a90| 34 2a 50 69 78 65 6c 73 | 4c 65 66 74 25 0d 09 60 |4*Pixels|Left%..`|
|00001aa0| 0a 2e 4c 6f 6f 70 58 0d | 09 6a 37 20 20 20 4c 44 |..LoopX.|.j7 LD|
|00001ab0| 52 20 52 35 2c 5b 52 31 | 5d 2c 23 34 20 20 20 20 |R R5,[R1|],#4 |
|00001ac0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001ad0| 20 20 20 3b 72 65 61 64 | 20 70 69 78 65 6c 0d 09 | ;read| pixel..|
|00001ae0| 74 40 20 20 20 53 54 52 | 42 20 52 35 2c 5b 52 30 |t@ STR|B R5,[R0|
|00001af0| 5d 2c 23 31 20 20 20 20 | 20 20 20 20 20 20 20 20 |],#1 | |
|00001b00| 20 20 20 20 20 20 20 20 | 20 20 3b 77 72 69 74 65 | | ;write|
|00001b10| 20 62 6f 74 74 6f 6d 20 | 38 20 62 69 74 73 0d 09 | bottom |8 bits..|
|00001b20| 7e 3d 20 20 20 4d 4f 56 | 20 52 35 2c 52 35 2c 4c |~= MOV| R5,R5,L|
|00001b30| 53 52 23 38 3a 53 54 52 | 42 20 52 35 2c 5b 52 30 |SR#8:STR|B R5,[R0|
|00001b40| 5d 2c 23 31 20 20 20 20 | 20 20 3b 77 72 69 74 65 |],#1 | ;write|
|00001b50| 20 74 6f 70 20 38 20 62 | 69 74 73 0d 09 88 13 20 | top 8 b|its.... |
|00001b60| 20 53 55 42 53 20 52 32 | 2c 52 32 2c 23 31 0d 09 | SUBS R2|,R2,#1..|
|00001b70| 92 0f 20 20 42 47 54 20 | 4c 6f 6f 70 58 0d 09 9c |.. BGT |LoopX...|
|00001b80| 1f 20 20 41 44 44 20 52 | 31 2c 52 31 2c 23 34 2a |. ADD R|1,R1,#4*|
|00001b90| 50 69 78 65 6c 73 52 69 | 67 68 74 25 0d 09 a6 12 |PixelsRi|ght%....|
|00001ba0| 20 53 55 42 53 20 52 33 | 2c 52 33 2c 23 31 0d 09 | SUBS R3|,R3,#1..|
|00001bb0| b0 0e 20 42 47 54 20 4c | 6f 6f 70 59 0d 09 ba 1b |.. BGT L|oopY....|
|00001bc0| 20 4c 44 4d 46 44 20 52 | 31 33 21 2c 7b 52 30 2d | LDMFD R|13!,{R0-|
|00001bd0| 52 31 32 2c 50 43 7d 0d | 09 c4 04 0d 09 ce 1a 2e |R12,PC}.|........|
|00001be0| 66 72 61 6d 65 20 20 20 | 20 20 20 20 20 20 20 45 |frame | E|
|00001bf0| 51 55 44 20 30 0d 09 d8 | 22 2e 69 6e 66 6f 72 6d |QUD 0...|".inform|
|00001c00| 61 74 20 20 20 20 20 20 | 20 45 51 55 44 20 49 6e |at | EQUD In|
|00001c10| 46 6f 72 6d 61 74 25 0d | 09 e2 22 2e 6f 75 74 66 |Format%.|..".outf|
|00001c20| 72 61 6d 65 20 20 20 20 | 20 20 20 45 51 55 44 20 |rame | EQUD |
|00001c30| 4f 75 74 46 72 61 6d 65 | 25 0d 09 ec 1b 2e 73 69 |OutFrame|%.....si|
|00001c40| 7a 65 78 20 20 20 20 20 | 20 20 20 20 20 45 51 55 |zex | EQU|
|00001c50| 44 20 58 25 0d 09 f6 1b | 2e 73 69 7a 65 79 20 20 |D X%....|.sizey |
|00001c60| 20 20 20 20 20 20 20 20 | 45 51 55 44 20 59 25 0d | |EQUD Y%.|
|00001c70| 0a 00 04 0d 0a 0a 06 20 | 5d 0d 0a 14 05 e1 0d ff |....... |].......|
+--------+-------------------------+-------------------------+--------+--------+