home *** CD-ROM | disk | FTP | other *** search
/ EuroCD 3 / EuroCD 3.iso / Programming / BlitzBasic / XprExample / XPR_Example.BB2 < prev   
Unknown  |  1998-06-24  |  18.2 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



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 20 24 56 45 52 3a 20 | 58 50 52 5f 45 78 61 6d |; $VER: |XPR_Exam|
|00000010| 70 6c 65 20 31 2e 30 20 | 28 31 2e 31 31 2e 39 34 |ple 1.0 |(1.11.94|
|00000020| 29 00 3b 20 41 55 54 48 | 4f 52 3a 20 52 6f 62 65 |).; AUTH|OR: Robe|
|00000030| 72 74 20 4e 65 77 6d 61 | 6e 00 3b 00 3b 20 54 68 |rt Newma|n.;.; Th|
|00000040| 69 73 20 63 6f 64 65 20 | 52 45 51 55 49 52 45 53 |is code |REQUIRES|
|00000050| 20 57 42 32 2e 30 2b 20 | 61 6e 64 20 70 6f 73 73 | WB2.0+ |and poss|
|00000060| 69 62 6c 79 20 42 6c 69 | 74 7a 20 76 31 2e 39 2e |ibly Bli|tz v1.9.|
|00000070| 00 3b 00 3b 20 54 68 69 | 73 20 70 72 6f 67 72 61 |.;.; Thi|s progra|
|00000080| 6d 20 64 65 6d 6f 6e 73 | 74 61 74 65 73 20 68 6f |m demons|tates ho|
|00000090| 77 20 74 68 65 20 58 50 | 52 20 70 72 6f 74 6f 63 |w the XP|R protoc|
|000000a0| 6f 6c 20 6c 69 62 72 61 | 72 69 65 73 00 3b 20 63 |ol libra|ries.; c|
|000000b0| 61 6e 20 62 65 20 61 63 | 63 65 73 73 65 64 20 66 |an be ac|cessed f|
|000000c0| 72 6f 6d 20 77 69 74 68 | 69 6e 20 42 6c 69 74 7a |rom with|in Blitz|
|000000d0| 2e 00 3b 00 3b 20 49 27 | 76 65 20 69 6d 70 6c 65 |..;.; I'|ve imple|
|000000e0| 6d 65 6e 74 65 64 20 61 | 6c 6c 20 74 68 65 20 63 |mented a|ll the c|
|000000f0| 61 6c 6c 62 61 63 6b 73 | 20 6e 65 63 65 73 73 61 |allbacks| necessa|
|00000100| 72 79 20 66 6f 72 20 5a | 4d 6f 64 65 6d 00 3b 20 |ry for Z|Modem.; |
|00000110| 74 6f 20 66 75 6e 63 74 | 69 6f 6e 20 69 6e 20 73 |to funct|ion in s|
|00000120| 65 6e 64 20 61 6e 64 20 | 72 65 63 65 69 76 65 20 |end and |receive |
|00000130| 6d 6f 64 65 2e 00 3b 00 | 3b 20 4d 6f 73 74 20 6f |mode..;.|; Most o|
|00000140| 66 20 74 68 69 73 20 63 | 6f 64 65 20 77 61 73 20 |f this c|ode was |
|00000150| 70 75 6c 6c 65 64 20 66 | 72 6f 6d 20 61 20 46 49 |pulled f|rom a FI|
|00000160| 44 4f 20 70 6f 69 6e 74 | 20 6d 61 69 6c 65 72 20 |DO point| mailer |
|00000170| 49 27 6d 00 3b 20 77 72 | 69 74 69 6e 67 2c 20 73 |I'm.; wr|iting, s|
|00000180| 6f 20 69 66 20 79 6f 75 | 20 73 70 6f 74 20 61 6e |o if you| spot an|
|00000190| 79 20 62 75 67 73 20 6f | 72 20 69 6d 70 72 6f 76 |y bugs o|r improv|
|000001a0| 65 20 6f 6e 20 74 68 69 | 73 20 70 72 6f 67 72 61 |e on thi|s progra|
|000001b0| 6d 00 3b 20 49 20 77 6f | 75 6c 64 20 6c 69 6b 65 |m.; I wo|uld like|
|000001c0| 20 74 6f 20 68 65 72 65 | 20 61 62 6f 75 74 20 69 | to here| about i|
|000001d0| 74 2e 00 3b 00 3b 20 49 | 20 77 6f 75 6c 64 27 76 |t..;.; I| would'v|
|000001e0| 65 20 62 72 6f 6b 65 6e | 20 74 68 69 73 20 65 78 |e broken| this ex|
|000001f0| 61 6d 70 6c 65 20 75 70 | 20 69 6e 74 6f 20 6d 6f |ample up| into mo|
|00000200| 72 65 20 6d 61 6e 61 67 | 61 62 6c 65 20 66 75 6e |re manag|able fun|
|00000210| 63 74 69 6f 6e 73 00 3b | 20 62 75 74 20 47 65 74 |ctions.;| but Get|
|00000220| 52 65 67 20 64 6f 65 73 | 6e 27 74 20 77 6f 72 6b |Reg does|n't work|
|00000230| 20 74 6f 20 77 65 6c 6c | 20 69 6e 20 61 20 66 75 | to well| in a fu|
|00000240| 6e 63 74 69 6f 6e 2e 00 | 3b 00 3b 20 54 68 69 73 |nction..|;.; This|
|00000250| 20 65 78 61 6d 70 6c 65 | 20 75 73 65 73 20 6d 79 | example| uses my|
|00000260| 20 6f 77 6e 20 73 65 72 | 69 61 6c 20 63 6f 6d 6d | own ser|ial comm|
|00000270| 61 6e 64 73 20 73 69 6d | 70 6c 79 20 62 65 63 61 |ands sim|ply beca|
|00000280| 75 73 65 00 3b 20 77 68 | 65 6e 20 49 20 73 74 61 |use.; wh|en I sta|
|00000290| 72 74 65 64 20 77 72 69 | 74 69 6e 67 20 6d 79 20 |rted wri|ting my |
|000002a0| 6d 61 69 6c 65 72 20 42 | 6c 69 74 7a 27 73 20 6f |mailer B|litz's o|
|000002b0| 77 6e 20 63 6f 6d 6d 61 | 6e 64 73 00 3b 20 77 65 |wn comma|nds.; we|
|000002c0| 72 65 20 62 75 67 67 65 | 64 2e 20 20 49 20 68 61 |re bugge|d. I ha|
|000002d0| 76 65 6e 27 74 20 74 72 | 69 65 64 20 75 73 69 6e |ven't tr|ied usin|
|000002e0| 67 20 42 6c 69 74 7a 27 | 73 20 73 65 72 69 61 6c |g Blitz'|s serial|
|000002f0| 20 63 6f 6d 6d 61 6e 64 | 73 00 3b 20 73 69 6e 63 | command|s.; sinc|
|00000300| 65 20 76 31 2e 37 20 73 | 6f 20 79 6f 75 20 4d 41 |e v1.7 s|o you MA|
|00000310| 59 20 62 65 20 61 62 6c | 65 20 74 6f 20 67 65 74 |Y be abl|e to get|
|00000320| 20 74 68 65 20 70 72 6f | 67 72 61 6d 20 74 6f 20 | the pro|gram to |
|00000330| 72 75 6e 00 3b 20 77 69 | 74 68 20 74 68 65 6d 2e |run.; wi|th them.|
|00000340| 20 20 49 66 20 79 6f 75 | 20 73 75 63 63 65 65 64 | If you| succeed|
|00000350| 20 6c 65 74 20 6d 65 20 | 6b 6e 6f 77 2e 00 3b 00 | let me |know..;.|
|00000360| 3b 20 45 4d 61 69 6c 20 | 20 3a 20 72 6f 62 40 66 |; EMail | : rob@f|
|00000370| 72 6f 6e 74 69 65 72 2e | 64 75 6e 67 65 6f 6e 2e |rontier.|dungeon.|
|00000380| 63 6f 6d 00 3b 20 46 69 | 64 6f 4e 65 74 3a 20 32 |com.; Fi|doNet: 2|
|00000390| 3a 32 35 30 31 2f 33 30 | 37 2e 33 37 00 3b 00 3b |:2501/30|7.37.;.;|
|000003a0| 20 53 70 65 63 73 20 66 | 6f 72 20 58 50 52 20 6c | Specs f|or XPR l|
|000003b0| 69 62 72 61 72 69 65 73 | 2f 68 6f 73 74 73 20 61 |ibraries|/hosts a|
|000003c0| 72 65 20 61 76 61 69 6c | 61 62 6c 65 20 66 72 6f |re avail|able fro|
|000003d0| 6d 20 61 6d 69 6e 65 74 | 3a 00 3b 20 2f 70 75 62 |m aminet|:.; /pub|
|000003e0| 2f 61 6d 69 6e 65 74 2f | 63 6f 6d 6d 2f 74 65 72 |/aminet/|comm/ter|
|000003f0| 6d 2f 78 70 72 32 30 30 | 31 2e 6c 68 61 00 00 00 |m/xpr200|1.lha...|
|00000400| 80 12 20 22 52 6f 62 53 | 65 72 69 61 6c 2e 62 62 |.. "RobS|erial.bb|
|00000410| 32 22 00 23 74 61 67 20 | 3d 20 24 38 30 30 38 30 |2".#tag |= $80080|
|00000420| 30 30 30 00 23 47 54 54 | 58 5f 54 65 78 74 20 3d |000.#GTT|X_Text =|
|00000430| 20 23 74 61 67 2b 31 31 | 00 23 47 54 4e 4d 5f 4e | #tag+11|.#GTNM_N|
|00000440| 75 6d 62 65 72 20 3d 20 | 23 74 61 67 2b 31 33 00 |umber = |#tag+13.|
|00000450| 00 80 08 20 4f 70 65 6e | 54 72 61 6e 73 66 65 72 |... Open|Transfer|
|00000460| 57 69 6e 64 6f 77 7b 7d | 00 20 20 3b 20 4f 70 65 |Window{}|. ; Ope|
|00000470| 6e 20 61 20 77 69 6e 64 | 6f 77 20 66 6f 72 20 73 |n a wind|ow for s|
|00000480| 68 6f 77 69 6e 67 20 74 | 72 61 6e 73 66 65 72 00 |howing t|ransfer.|
|00000490| 20 20 3b 20 70 72 6f 67 | 72 65 73 73 2e 00 00 20 | ; prog|ress... |
|000004a0| 20 66 6f 6e 74 77 69 64 | 74 68 2e 77 20 20 3d 20 | fontwid|th.w = |
|000004b0| 38 00 20 20 66 6f 6e 74 | 68 65 69 67 68 74 2e 77 |8. font|height.w|
|000004c0| 20 3d 20 38 00 20 20 47 | 61 64 67 65 74 48 65 69 | = 8. G|adgetHei|
|000004d0| 67 68 74 2e 77 20 3d 20 | 66 6f 6e 74 68 65 69 67 |ght.w = |fontheig|
|000004e0| 68 74 2b 33 00 00 20 20 | 78 6c 69 6e 65 75 70 2e |ht+3.. |xlineup.|
|000004f0| 77 20 3d 20 31 32 30 00 | 00 20 20 63 75 72 72 65 |w = 120.|. curre|
|00000500| 6e 74 59 2e 77 20 3d 20 | 31 00 00 20 20 3b 20 50 |ntY.w = |1.. ; P|
|00000510| 72 6f 74 6f 63 6f 6c 00 | 20 20 c6 8d 20 30 2c 35 |rotocol.| .. 0,5|
|00000520| 30 2c 78 6c 69 6e 65 75 | 70 2c 63 75 72 72 65 6e |0,xlineu|p,curren|
|00000530| 74 59 2c 66 6f 6e 74 77 | 69 64 74 68 2a 35 30 2c |tY,fontw|idth*50,|
|00000540| 47 61 64 67 65 74 48 65 | 69 67 68 74 2c 22 50 72 |GadgetHe|ight,"Pr|
|00000550| 6f 74 6f 63 6f 6c 22 2c | 31 2c 22 22 00 20 20 63 |otocol",|1,"". c|
|00000560| 75 72 72 65 6e 74 59 2b | 47 61 64 67 65 74 48 65 |urrentY+|GadgetHe|
|00000570| 69 67 68 74 2b 31 00 00 | 20 20 3b 20 46 69 6c 65 |ight+1..| ; File|
|00000580| 6e 61 6d 65 00 20 20 c6 | 8d 20 30 2c 35 31 2c 78 |name. .|. 0,51,x|
|00000590| 6c 69 6e 65 75 70 2c 63 | 75 72 72 65 6e 74 59 2c |lineup,c|urrentY,|
|000005a0| 66 6f 6e 74 77 69 64 74 | 68 2a 35 30 2c 47 61 64 |fontwidt|h*50,Gad|
|000005b0| 67 65 74 48 65 69 67 68 | 74 2c 22 46 69 6c 65 4e |getHeigh|t,"FileN|
|000005c0| 61 6d 65 22 2c 31 2c 22 | 22 00 20 20 63 75 72 72 |ame",1,"|". curr|
|000005d0| 65 6e 74 59 2b 47 61 64 | 67 65 74 48 65 69 67 68 |entY+Gad|getHeigh|
|000005e0| 74 2b 31 00 00 20 20 3b | 20 46 69 6c 65 53 69 7a |t+1.. ;| FileSiz|
|000005f0| 65 00 20 20 c6 88 20 30 | 2c 35 32 2c 78 6c 69 6e |e. .. 0|,52,xlin|
|00000600| 65 75 70 2c 63 75 72 72 | 65 6e 74 59 2c 66 6f 6e |eup,curr|entY,fon|
|00000610| 74 77 69 64 74 68 2a 35 | 30 2c 47 61 64 67 65 74 |twidth*5|0,Gadget|
|00000620| 48 65 69 67 68 74 2c 22 | 46 69 6c 65 53 69 7a 65 |Height,"|FileSize|
|00000630| 22 2c 31 2c 30 00 20 20 | 63 75 72 72 65 6e 74 59 |",1,0. |currentY|
|00000640| 2b 47 61 64 67 65 74 48 | 65 69 67 68 74 2b 31 00 |+GadgetH|eight+1.|
|00000650| 00 20 20 3b 20 4d 65 73 | 73 61 67 65 00 20 20 c6 |. ; Mes|sage. .|
|00000660| 8d 20 30 2c 35 33 2c 78 | 6c 69 6e 65 75 70 2c 63 |. 0,53,x|lineup,c|
|00000670| 75 72 72 65 6e 74 59 2c | 66 6f 6e 74 77 69 64 74 |urrentY,|fontwidt|
|00000680| 68 2a 35 30 2c 47 61 64 | 67 65 74 48 65 69 67 68 |h*50,Gad|getHeigh|
|00000690| 74 2c 22 4d 65 73 73 61 | 67 65 22 2c 31 2c 22 22 |t,"Messa|ge",1,""|
|000006a0| 00 20 20 63 75 72 72 65 | 6e 74 59 2b 47 61 64 67 |. curre|ntY+Gadg|
|000006b0| 65 74 48 65 69 67 68 74 | 2b 31 00 00 20 20 3b 20 |etHeight|+1.. ; |
|000006c0| 45 72 72 6f 72 20 4d 65 | 73 73 61 67 65 00 20 20 |Error Me|ssage. |
|000006d0| c6 8d 20 30 2c 35 34 2c | 78 6c 69 6e 65 75 70 2c |.. 0,54,|xlineup,|
|000006e0| 63 75 72 72 65 6e 74 59 | 2c 66 6f 6e 74 77 69 64 |currentY|,fontwid|
|000006f0| 74 68 2a 35 30 2c 47 61 | 64 67 65 74 48 65 69 67 |th*50,Ga|dgetHeig|
|00000700| 68 74 2c 22 45 72 72 6f | 72 20 4d 53 47 22 2c 31 |ht,"Erro|r MSG",1|
|00000710| 2c 22 22 00 20 20 63 75 | 72 72 65 6e 74 59 2b 47 |,"". cu|rrentY+G|
|00000720| 61 64 67 65 74 48 65 69 | 67 68 74 2b 31 00 00 20 |adgetHei|ght+1.. |
|00000730| 20 3b 20 42 6c 6f 63 6b | 73 00 20 20 c6 88 20 30 | ; Block|s. .. 0|
|00000740| 2c 35 35 2c 78 6c 69 6e | 65 75 70 2c 63 75 72 72 |,55,xlin|eup,curr|
|00000750| 65 6e 74 59 2c 66 6f 6e | 74 77 69 64 74 68 2a 35 |entY,fon|twidth*5|
|00000760| 30 2c 47 61 64 67 65 74 | 48 65 69 67 68 74 2c 22 |0,Gadget|Height,"|
|00000770| 42 6c 6f 63 6b 73 22 2c | 31 2c 30 00 20 20 63 75 |Blocks",|1,0. cu|
|00000780| 72 72 65 6e 74 59 2b 47 | 61 64 67 65 74 48 65 69 |rrentY+G|adgetHei|
|00000790| 67 68 74 2b 31 00 00 20 | 20 3b 20 42 6c 6f 63 6b |ght+1.. | ; Block|
|000007a0| 20 53 69 7a 65 00 20 20 | c6 88 20 30 2c 35 36 2c | Size. |.. 0,56,|
|000007b0| 78 6c 69 6e 65 75 70 2c | 63 75 72 72 65 6e 74 59 |xlineup,|currentY|
|000007c0| 2c 66 6f 6e 74 77 69 64 | 74 68 2a 35 30 2c 47 61 |,fontwid|th*50,Ga|
|000007d0| 64 67 65 74 48 65 69 67 | 68 74 2c 22 42 6c 6f 63 |dgetHeig|ht,"Bloc|
|000007e0| 6b 20 53 69 7a 65 22 2c | 31 2c 30 00 20 20 63 75 |k Size",|1,0. cu|
|000007f0| 72 72 65 6e 74 59 2b 47 | 61 64 67 65 74 48 65 69 |rrentY+G|adgetHei|
|00000800| 67 68 74 2b 31 00 00 20 | 20 3b 20 42 79 74 65 73 |ght+1.. | ; Bytes|
|00000810| 00 20 20 c6 88 20 30 2c | 35 37 2c 78 6c 69 6e 65 |. .. 0,|57,xline|
|00000820| 75 70 2c 63 75 72 72 65 | 6e 74 59 2c 66 6f 6e 74 |up,curre|ntY,font|
|00000830| 77 69 64 74 68 2a 35 30 | 2c 47 61 64 67 65 74 48 |width*50|,GadgetH|
|00000840| 65 69 67 68 74 2c 22 42 | 79 74 65 73 22 2c 31 2c |eight,"B|ytes",1,|
|00000850| 30 00 20 20 63 75 72 72 | 65 6e 74 59 2b 47 61 64 |0. curr|entY+Gad|
|00000860| 67 65 74 48 65 69 67 68 | 74 2b 31 00 00 20 20 3b |getHeigh|t+1.. ;|
|00000870| 20 45 72 72 6f 72 73 00 | 20 20 c6 88 20 30 2c 35 | Errors.| .. 0,5|
|00000880| 38 2c 78 6c 69 6e 65 75 | 70 2c 63 75 72 72 65 6e |8,xlineu|p,curren|
|00000890| 74 59 2c 66 6f 6e 74 77 | 69 64 74 68 2a 35 30 2c |tY,fontw|idth*50,|
|000008a0| 47 61 64 67 65 74 48 65 | 69 67 68 74 2c 22 45 72 |GadgetHe|ight,"Er|
|000008b0| 72 6f 72 73 22 2c 31 2c | 30 00 20 20 63 75 72 72 |rors",1,|0. curr|
|000008c0| 65 6e 74 59 2b 47 61 64 | 67 65 74 48 65 69 67 68 |entY+Gad|getHeigh|
|000008d0| 74 2b 31 00 00 20 20 3b | 20 54 69 6d 65 6f 75 74 |t+1.. ;| Timeout|
|000008e0| 73 00 20 20 c6 88 20 30 | 2c 35 39 2c 78 6c 69 6e |s. .. 0|,59,xlin|
|000008f0| 65 75 70 2c 63 75 72 72 | 65 6e 74 59 2c 66 6f 6e |eup,curr|entY,fon|
|00000900| 74 77 69 64 74 68 2a 35 | 30 2c 47 61 64 67 65 74 |twidth*5|0,Gadget|
|00000910| 48 65 69 67 68 74 2c 22 | 54 69 6d 65 6f 75 74 73 |Height,"|Timeouts|
|00000920| 22 2c 31 2c 30 00 20 20 | 63 75 72 72 65 6e 74 59 |",1,0. |currentY|
|00000930| 2b 47 61 64 67 65 74 48 | 65 69 67 68 74 2b 31 00 |+GadgetH|eight+1.|
|00000940| 00 20 20 3b 20 50 4b 54 | 20 54 79 70 65 00 20 20 |. ; PKT| Type. |
|00000950| c6 8d 20 30 2c 36 30 2c | 78 6c 69 6e 65 75 70 2c |.. 0,60,|xlineup,|
|00000960| 63 75 72 72 65 6e 74 59 | 2c 66 6f 6e 74 77 69 64 |currentY|,fontwid|
|00000970| 74 68 2a 35 30 2c 47 61 | 64 67 65 74 48 65 69 67 |th*50,Ga|dgetHeig|
|00000980| 68 74 2c 22 50 4b 54 20 | 54 79 70 65 22 2c 31 2c |ht,"PKT |Type",1,|
|00000990| 22 22 00 20 20 63 75 72 | 72 65 6e 74 59 2b 47 61 |"". cur|rentY+Ga|
|000009a0| 64 67 65 74 48 65 69 67 | 68 74 2b 31 00 00 20 20 |dgetHeig|ht+1.. |
|000009b0| 3b 20 50 4b 54 20 44 65 | 6c 61 79 00 20 20 c6 88 |; PKT De|lay. ..|
|000009c0| 20 30 2c 36 31 2c 78 6c | 69 6e 65 75 70 2c 63 75 | 0,61,xl|ineup,cu|
|000009d0| 72 72 65 6e 74 59 2c 66 | 6f 6e 74 77 69 64 74 68 |rrentY,f|ontwidth|
|000009e0| 2a 35 30 2c 47 61 64 67 | 65 74 48 65 69 67 68 74 |*50,Gadg|etHeight|
|000009f0| 2c 22 50 4b 54 20 44 65 | 6c 61 79 22 2c 31 2c 30 |,"PKT De|lay",1,0|
|00000a00| 00 20 20 63 75 72 72 65 | 6e 74 59 2b 47 61 64 67 |. curre|ntY+Gadg|
|00000a10| 65 74 48 65 69 67 68 74 | 2b 31 00 00 20 20 3b 20 |etHeight|+1.. ; |
|00000a20| 43 48 41 52 20 44 65 6c | 61 79 00 20 20 c6 88 20 |CHAR Del|ay. .. |
|00000a30| 30 2c 36 32 2c 78 6c 69 | 6e 65 75 70 2c 63 75 72 |0,62,xli|neup,cur|
|00000a40| 72 65 6e 74 59 2c 66 6f | 6e 74 77 69 64 74 68 2a |rentY,fo|ntwidth*|
|00000a50| 35 30 2c 47 61 64 67 65 | 74 48 65 69 67 68 74 2c |50,Gadge|tHeight,|
|00000a60| 22 43 48 41 52 20 44 65 | 6c 61 79 22 2c 31 2c 30 |"CHAR De|lay",1,0|
|00000a70| 00 20 20 63 75 72 72 65 | 6e 74 59 2b 47 61 64 67 |. curre|ntY+Gadg|
|00000a80| 65 74 48 65 69 67 68 74 | 2b 31 00 00 20 20 3b 20 |etHeight|+1.. ; |
|00000a90| 42 4c 4f 43 4b 20 43 48 | 45 43 4b 00 20 20 c6 8d |BLOCK CH|ECK. ..|
|00000aa0| 20 30 2c 36 33 2c 78 6c | 69 6e 65 75 70 2c 63 75 | 0,63,xl|ineup,cu|
|00000ab0| 72 72 65 6e 74 59 2c 66 | 6f 6e 74 77 69 64 74 68 |rrentY,f|ontwidth|
|00000ac0| 2a 35 30 2c 47 61 64 67 | 65 74 48 65 69 67 68 74 |*50,Gadg|etHeight|
|00000ad0| 2c 22 42 6c 6f 63 6b 20 | 43 68 65 63 6b 22 2c 31 |,"Block |Check",1|
|00000ae0| 2c 22 22 00 20 20 63 75 | 72 72 65 6e 74 59 2b 47 |,"". cu|rrentY+G|
|00000af0| 61 64 67 65 74 48 65 69 | 67 68 74 2b 31 00 00 20 |adgetHei|ght+1.. |
|00000b00| 20 3b 20 45 58 50 45 43 | 54 45 44 20 54 49 4d 45 | ; EXPEC|TED TIME|
|00000b10| 00 20 20 c6 8d 20 30 2c | 36 34 2c 78 6c 69 6e 65 |. .. 0,|64,xline|
|00000b20| 75 70 2c 63 75 72 72 65 | 6e 74 59 2c 66 6f 6e 74 |up,curre|ntY,font|
|00000b30| 77 69 64 74 68 2a 35 30 | 2c 47 61 64 67 65 74 48 |width*50|,GadgetH|
|00000b40| 65 69 67 68 74 2c 22 45 | 78 70 65 63 74 65 64 22 |eight,"E|xpected"|
|00000b50| 2c 31 2c 22 22 00 20 20 | 63 75 72 72 65 6e 74 59 |,1,"". |currentY|
|00000b60| 2b 47 61 64 67 65 74 48 | 65 69 67 68 74 2b 31 00 |+GadgetH|eight+1.|
|00000b70| 00 20 20 3b 20 45 4c 41 | 50 53 45 44 20 54 49 4d |. ; ELA|PSED TIM|
|00000b80| 45 00 20 20 c6 8d 20 30 | 2c 36 35 2c 78 6c 69 6e |E. .. 0|,65,xlin|
|00000b90| 65 75 70 2c 63 75 72 72 | 65 6e 74 59 2c 66 6f 6e |eup,curr|entY,fon|
|00000ba0| 74 77 69 64 74 68 2a 35 | 30 2c 47 61 64 67 65 74 |twidth*5|0,Gadget|
|00000bb0| 48 65 69 67 68 74 2c 22 | 45 6c 61 70 73 65 64 22 |Height,"|Elapsed"|
|00000bc0| 2c 31 2c 22 22 00 20 20 | 63 75 72 72 65 6e 74 59 |,1,"". |currentY|
|00000bd0| 2b 47 61 64 67 65 74 48 | 65 69 67 68 74 2b 31 00 |+GadgetH|eight+1.|
|00000be0| 00 20 20 3b 20 44 61 74 | 61 20 52 61 74 65 00 20 |. ; Dat|a Rate. |
|00000bf0| 20 c6 88 20 30 2c 36 36 | 2c 78 6c 69 6e 65 75 70 | .. 0,66|,xlineup|
|00000c00| 2c 63 75 72 72 65 6e 74 | 59 2c 66 6f 6e 74 77 69 |,current|Y,fontwi|
|00000c10| 64 74 68 2a 35 30 2c 47 | 61 64 67 65 74 48 65 69 |dth*50,G|adgetHei|
|00000c20| 67 68 74 2c 22 44 61 74 | 61 20 52 61 74 65 22 2c |ght,"Dat|a Rate",|
|00000c30| 31 2c 30 00 20 20 63 75 | 72 72 65 6e 74 59 2b 47 |1,0. cu|rrentY+G|
|00000c40| 61 64 67 65 74 48 65 69 | 67 68 74 2b 31 00 00 20 |adgetHei|ght+1.. |
|00000c50| 20 c5 45 20 30 2c 24 32 | 7c 24 34 7c 24 38 7c 24 | .E 0,$2||$4|$8|$|
|00000c60| 31 30 30 30 2c 22 58 50 | 52 22 2c 23 57 41 5f 49 |1000,"XP|R",#WA_I|
|00000c70| 44 43 4d 50 2c 23 49 44 | 43 4d 50 5f 43 4c 4f 53 |DCMP,#ID|CMP_CLOS|
|00000c80| 45 57 49 4e 44 4f 57 2c | 23 57 41 5f 49 6e 6e 65 |EWINDOW,|#WA_Inne|
|00000c90| 72 57 69 64 74 68 2c 66 | 6f 6e 74 77 69 64 74 68 |rWidth,f|ontwidth|
|00000ca0| 2a 37 30 2c 23 57 41 5f | 49 6e 6e 65 72 48 65 69 |*70,#WA_|InnerHei|
|00000cb0| 67 68 74 2c 63 75 72 72 | 65 6e 74 59 00 20 20 c5 |ght,curr|entY. .|
|00000cc0| 0a 20 30 00 20 20 d2 02 | 00 20 20 c6 8e 20 30 2c |. 0. ..|. .. 0,|
|00000cd0| 30 00 80 02 20 80 08 00 | 00 3b 2d 2d 2d 2d 2d 2d |0... ...|.;------|
|00000ce0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000cf0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000d00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000d10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 00 3b 20 54 |--------|----.; T|
|00000d20| 68 65 73 65 20 4e 45 57 | 54 59 50 45 73 2f 43 4f |hese NEW|TYPEs/CO|
|00000d30| 4e 53 54 41 4e 54 53 20 | 61 72 65 20 72 65 71 75 |NSTANTS |are requ|
|00000d40| 69 72 65 64 20 62 79 20 | 58 50 52 20 6c 69 62 72 |ired by |XPR libr|
|00000d50| 61 72 69 65 73 2e 00 3b | 20 43 6f 6e 76 65 72 74 |aries..;| Convert|
|00000d60| 65 64 20 66 72 6f 6d 20 | 78 70 72 6f 74 6f 2e 68 |ed from |xproto.h|
|00000d70| 00 00 80 01 20 2e 58 50 | 52 5f 49 4f 00 20 20 78 |.... .XP|R_IO. x|
|00000d80| 70 72 5f 66 69 6c 65 6e | 61 6d 65 2e 6c 20 20 20 |pr_filen|ame.l |
|00000d90| 3b 46 69 6c 65 20 6e 61 | 6d 65 28 73 29 00 20 20 |;File na|me(s). |
|00000da0| 78 70 72 5f 66 6f 70 65 | 6e 2e 6c 20 20 20 20 20 |xpr_fope|n.l |
|00000db0| 20 3b 4f 70 65 6e 20 66 | 69 6c 65 00 20 20 78 70 | ;Open f|ile. xp|
|00000dc0| 72 5f 66 63 6c 6f 73 65 | 2e 6c 20 20 20 20 20 3b |r_fclose|.l ;|
|00000dd0| 43 6c 6f 73 65 20 66 69 | 6c 65 00 20 20 78 70 72 |Close fi|le. xpr|
|00000de0| 5f 66 72 65 61 64 2e 6c | 20 20 20 20 20 20 3b 47 |_fread.l| ;G|
|00000df0| 65 74 20 55 42 59 54 45 | 20 66 72 6f 6d 20 66 69 |et UBYTE| from fi|
|00000e00| 6c 65 00 20 20 78 70 72 | 5f 66 77 72 69 74 65 2e |le. xpr|_fwrite.|
|00000e10| 6c 20 20 20 20 20 3b 50 | 75 74 20 73 74 72 69 6e |l ;P|ut strin|
|00000e20| 67 20 74 6f 20 66 69 6c | 65 00 20 20 78 70 72 5f |g to fil|e. xpr_|
|00000e30| 73 72 65 61 64 2e 6c 20 | 20 20 20 20 20 3b 47 65 |sread.l | ;Ge|
|00000e40| 74 20 55 42 59 54 45 20 | 66 72 6f 6d 20 73 65 72 |t UBYTE |from ser|
|00000e50| 69 61 6c 00 20 20 78 70 | 72 5f 73 77 72 69 74 65 |ial. xp|r_swrite|
|00000e60| 2e 6c 20 20 20 20 20 3b | 50 75 74 20 73 74 72 69 |.l ;|Put stri|
|00000e70| 6e 67 20 74 6f 20 73 65 | 72 69 61 6c 00 20 20 78 |ng to se|rial. x|
|00000e80| 70 72 5f 73 66 6c 75 73 | 68 2e 6c 20 20 20 20 20 |pr_sflus|h.l |
|00000e90| 3b 46 6c 75 73 68 20 73 | 65 72 69 61 6c 20 69 6e |;Flush s|erial in|
|00000ea0| 70 75 74 20 62 75 66 66 | 65 72 00 20 20 78 70 72 |put buff|er. xpr|
|00000eb0| 5f 75 70 64 61 74 65 2e | 6c 20 20 20 20 20 3b 50 |_update.|l ;P|
|00000ec0| 72 69 6e 74 20 73 74 75 | 66 66 00 20 20 78 70 72 |rint stu|ff. xpr|
|00000ed0| 5f 63 68 6b 61 62 6f 72 | 74 2e 6c 20 20 20 3b 43 |_chkabor|t.l ;C|
|00000ee0| 68 65 63 6b 20 66 6f 72 | 20 61 62 6f 72 74 00 20 |heck for| abort. |
|00000ef0| 20 78 70 72 5f 63 68 6b | 6d 69 73 63 2e 6c 20 20 | xpr_chk|misc.l |
|00000f00| 20 20 3b 43 68 65 63 6b | 20 6d 69 73 63 2e 20 73 | ;Check| misc. s|
|00000f10| 74 75 66 66 00 20 20 78 | 70 72 5f 67 65 74 73 2e |tuff. x|pr_gets.|
|00000f20| 6c 20 20 20 20 20 20 20 | 3b 47 65 74 20 73 74 72 |l |;Get str|
|00000f30| 69 6e 67 20 69 6e 74 65 | 72 61 63 74 69 76 65 6c |ing inte|ractivel|
|00000f40| 79 00 20 20 78 70 72 5f | 73 65 74 73 65 72 69 61 |y. xpr_|setseria|
|00000f50| 6c 2e 6c 20 20 3b 53 65 | 74 20 61 6e 64 20 47 65 |l.l ;Se|t and Ge|
|00000f60| 74 20 73 65 72 69 61 6c | 20 69 6e 66 6f 00 20 20 |t serial| info. |
|00000f70| 78 70 72 5f 66 66 69 72 | 73 74 2e 6c 20 20 20 20 |xpr_ffir|st.l |
|00000f80| 20 3b 46 69 6e 64 20 66 | 69 72 73 74 20 66 69 6c | ;Find f|irst fil|
|00000f90| 65 20 6e 61 6d 65 00 20 | 20 78 70 72 5f 66 6e 65 |e name. | xpr_fne|
|00000fa0| 78 74 2e 6c 20 20 20 20 | 20 20 3b 46 69 6e 64 20 |xt.l | ;Find |
|00000fb0| 6e 65 78 74 20 66 69 6c | 65 20 6e 61 6d 65 00 20 |next fil|e name. |
|00000fc0| 20 78 70 72 5f 66 69 6e | 66 6f 2e 6c 20 20 20 20 | xpr_fin|fo.l |
|00000fd0| 20 20 3b 52 65 74 75 72 | 6e 20 66 69 6c 65 20 69 | ;Retur|n file i|
|00000fe0| 6e 66 6f 00 20 20 78 70 | 72 5f 66 73 65 65 6b 2e |nfo. xp|r_fseek.|
|00000ff0| 6c 20 20 20 20 20 20 3b | 53 65 65 6b 20 69 6e 20 |l ;|Seek in |
|00001000| 61 20 66 69 6c 65 00 20 | 20 78 70 72 5f 65 78 74 |a file. | xpr_ext|
|00001010| 65 6e 73 69 6f 6e 2e 6c | 20 20 3b 4e 75 6d 62 65 |ension.l| ;Numbe|
|00001020| 72 20 6f 66 20 65 78 74 | 65 6e 73 69 6f 6e 73 00 |r of ext|ensions.|
|00001030| 20 20 78 70 72 5f 64 61 | 74 61 2e 6c 20 20 20 20 | xpr_da|ta.l |
|00001040| 20 20 20 3b 49 6e 69 74 | 69 61 6c 69 7a 65 64 20 | ;Init|ialized |
|00001050| 62 79 20 53 65 74 75 70 | 2e 00 20 20 78 70 72 5f |by Setup|.. xpr_|
|00001060| 6f 70 74 69 6f 6e 73 2e | 6c 20 20 20 20 3b 4d 75 |options.|l ;Mu|
|00001070| 6c 74 69 70 6c 65 20 58 | 50 52 20 6f 70 74 69 6f |ltiple X|PR optio|
|00001080| 6e 73 2e 00 20 20 78 70 | 72 5f 75 6e 6c 69 6e 6b |ns.. xp|r_unlink|
|00001090| 2e 6c 20 20 20 20 20 3b | 44 65 6c 65 74 65 20 61 |.l ;|Delete a|
|000010a0| 20 66 69 6c 65 2e 00 20 | 20 78 70 72 5f 73 71 75 | file.. | xpr_squ|
|000010b0| 65 72 79 2e 6c 20 20 20 | 20 20 3b 51 75 65 72 79 |ery.l | ;Query|
|000010c0| 20 73 65 72 69 61 6c 20 | 64 65 76 69 63 65 00 20 | serial |device. |
|000010d0| 20 78 70 72 5f 67 65 74 | 70 74 72 2e 6c 20 20 20 | xpr_get|ptr.l |
|000010e0| 20 20 3b 47 65 74 20 76 | 61 72 69 6f 75 73 20 68 | ;Get v|arious h|
|000010f0| 6f 73 74 20 70 74 72 73 | 00 80 02 20 80 01 00 00 |ost ptrs|... ....|
|00001100| 80 01 20 2e 58 50 52 5f | 55 50 44 41 54 45 00 20 |.. .XPR_|UPDATE. |
|00001110| 20 78 70 72 75 5f 75 70 | 64 61 74 65 6d 61 73 6b | xpru_up|datemask|
|00001120| 2e 6c 20 20 20 20 20 3b | 00 20 20 2a 78 70 72 75 |.l ;|. *xpru|
|00001130| 5f 70 72 6f 74 6f 63 6f | 6c 20 20 20 20 20 20 20 |_protoco|l |
|00001140| 20 3b 00 20 20 2a 78 70 | 72 75 5f 66 69 6c 65 6e | ;. *xp|ru_filen|
|00001150| 61 6d 65 20 20 20 20 20 | 20 20 20 3b 00 20 20 78 |ame | ;. x|
|00001160| 70 72 75 5f 66 69 6c 65 | 73 69 7a 65 2e 6c 20 20 |pru_file|size.l |
|00001170| 20 20 20 20 20 3b 00 20 | 20 2a 78 70 72 75 5f 6d | ;. | *xpru_m|
|00001180| 73 67 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |sg | ;|
|00001190| 00 20 20 2a 78 70 72 75 | 5f 65 72 72 6f 72 6d 73 |. *xpru|_errorms|
|000011a0| 67 20 20 20 20 20 20 20 | 20 3b 00 20 20 78 70 72 |g | ;. xpr|
|000011b0| 75 5f 62 6c 6f 63 6b 73 | 2e 6c 20 20 20 20 20 20 |u_blocks|.l |
|000011c0| 20 20 20 3b 00 20 20 78 | 70 72 75 5f 62 6c 6f 63 | ;. x|pru_bloc|
|000011d0| 6b 73 69 7a 65 2e 6c 20 | 20 20 20 20 20 3b 00 20 |ksize.l | ;. |
|000011e0| 20 78 70 72 75 5f 62 79 | 74 65 73 2e 6c 20 20 20 | xpru_by|tes.l |
|000011f0| 20 20 20 20 20 20 20 3b | 00 20 20 78 70 72 75 5f | ;|. xpru_|
|00001200| 65 72 72 6f 72 73 2e 6c | 20 20 20 20 20 20 20 20 |errors.l| |
|00001210| 20 3b 00 20 20 78 70 72 | 75 5f 74 69 6d 65 6f 75 | ;. xpr|u_timeou|
|00001220| 74 73 2e 6c 20 20 20 20 | 20 20 20 3b 00 20 20 78 |ts.l | ;. x|
|00001230| 70 72 75 5f 70 61 63 6b | 65 74 74 79 70 65 2e 6c |pru_pack|ettype.l|
|00001240| 20 20 20 20 20 3b 00 20 | 20 78 70 72 75 5f 70 61 | ;. | xpru_pa|
|00001250| 63 6b 65 74 64 65 6c 61 | 79 2e 6c 20 20 20 20 3b |cketdela|y.l ;|
|00001260| 00 20 20 78 70 72 75 5f | 63 68 61 72 64 65 6c 61 |. xpru_|chardela|
|00001270| 79 2e 6c 20 20 20 20 20 | 20 3b 00 20 20 2a 78 70 |y.l | ;. *xp|
|00001280| 72 75 5f 62 6c 6f 63 6b | 63 68 65 63 6b 2e 6c 20 |ru_block|check.l |
|00001290| 20 20 20 3b 00 20 20 2a | 78 70 72 75 5f 65 78 70 | ;. *|xpru_exp|
|000012a0| 65 63 74 74 69 6d 65 2e | 6c 20 20 20 20 3b 00 20 |ecttime.|l ;. |
|000012b0| 20 2a 78 70 72 75 5f 65 | 6c 61 70 73 65 64 74 69 | *xpru_e|lapsedti|
|000012c0| 6d 65 2e 6c 20 20 20 3b | 00 20 20 78 70 72 75 5f |me.l ;|. xpru_|
|000012d0| 64 61 74 61 72 61 74 65 | 2e 6c 20 20 20 20 20 20 |datarate|.l |
|000012e0| 20 3b 00 20 20 78 70 72 | 75 5f 72 65 73 65 72 76 | ;. xpr|u_reserv|
|000012f0| 65 64 31 2e 6c 20 20 20 | 20 20 20 3b 00 20 20 78 |ed1.l | ;. x|
|00001300| 70 72 75 5f 72 65 73 65 | 72 76 65 64 32 2e 6c 20 |pru_rese|rved2.l |
|00001310| 20 20 20 20 20 3b 00 20 | 20 78 70 72 75 5f 72 65 | ;. | xpru_re|
|00001320| 73 65 72 76 65 64 33 2e | 6c 20 20 20 20 20 20 3b |served3.|l ;|
|00001330| 00 20 20 78 70 72 75 5f | 72 65 73 65 72 76 65 64 |. xpru_|reserved|
|00001340| 34 2e 6c 20 20 20 20 20 | 20 3b 00 20 20 78 70 72 |4.l | ;. xpr|
|00001350| 75 5f 72 65 73 65 72 76 | 65 64 35 2e 6c 20 20 20 |u_reserv|ed5.l |
|00001360| 20 20 20 3b 00 80 02 20 | 80 01 00 00 23 58 50 52 | ;... |....#XPR|
|00001370| 55 5f 50 52 4f 54 4f 43 | 4f 4c 20 20 20 20 20 3d |U_PROTOC|OL =|
|00001380| 24 30 30 30 30 30 30 30 | 31 00 23 58 50 52 55 5f |$0000000|1.#XPRU_|
|00001390| 46 49 4c 45 4e 41 4d 45 | 20 20 20 20 20 3d 24 30 |FILENAME| =$0|
|000013a0| 30 30 30 30 30 30 32 00 | 23 58 50 52 55 5f 46 49 |0000002.|#XPRU_FI|
|000013b0| 4c 45 53 49 5a 45 20 20 | 20 20 20 3d 24 30 30 30 |LESIZE | =$000|
|000013c0| 30 30 30 30 34 00 23 58 | 50 52 55 5f 4d 53 47 20 |00004.#X|PRU_MSG |
|000013d0| 20 20 20 20 20 20 20 20 | 20 3d 24 30 30 30 30 30 | | =$00000|
|000013e0| 30 30 38 00 23 58 50 52 | 55 5f 45 52 52 4f 52 4d |008.#XPR|U_ERRORM|
|000013f0| 53 47 20 20 20 20 20 3d | 24 30 30 30 30 30 30 31 |SG =|$0000001|
|00001400| 30 00 23 58 50 52 55 5f | 42 4c 4f 43 4b 53 20 20 |0.#XPRU_|BLOCKS |
|00001410| 20 20 20 20 20 3d 24 30 | 30 30 30 30 30 32 30 00 | =$0|0000020.|
|00001420| 23 58 50 52 55 5f 42 4c | 4f 43 4b 53 49 5a 45 20 |#XPRU_BL|OCKSIZE |
|00001430| 20 20 20 3d 24 30 30 30 | 30 30 30 34 30 00 23 58 | =$000|00040.#X|
|00001440| 50 52 55 5f 42 59 54 45 | 53 20 20 20 20 20 20 20 |PRU_BYTE|S |
|00001450| 20 3d 24 30 30 30 30 30 | 30 38 30 00 23 58 50 52 | =$00000|080.#XPR|
|00001460| 55 5f 45 52 52 4f 52 53 | 20 20 20 20 20 20 20 3d |U_ERRORS| =|
|00001470| 24 30 30 30 30 30 31 30 | 30 00 23 58 50 52 55 5f |$0000010|0.#XPRU_|
|00001480| 54 49 4d 45 4f 55 54 53 | 20 20 20 20 20 3d 24 30 |TIMEOUTS| =$0|
|00001490| 30 30 30 30 32 30 30 00 | 23 58 50 52 55 5f 50 41 |0000200.|#XPRU_PA|
|000014a0| 43 4b 45 54 54 59 50 45 | 20 20 20 3d 24 30 30 30 |CKETTYPE| =$000|
|000014b0| 30 30 34 30 30 00 23 58 | 50 52 55 5f 50 41 43 4b |00400.#X|PRU_PACK|
|000014c0| 45 54 44 45 4c 41 59 20 | 20 3d 24 30 30 30 30 30 |ETDELAY | =$00000|
|000014d0| 38 30 30 00 23 58 50 52 | 55 5f 43 48 41 52 44 45 |800.#XPR|U_CHARDE|
|000014e0| 4c 41 59 20 20 20 20 3d | 24 30 30 30 30 31 30 30 |LAY =|$0000100|
|000014f0| 30 00 23 58 50 52 55 5f | 42 4c 4f 43 4b 43 48 45 |0.#XPRU_|BLOCKCHE|
|00001500| 43 4b 20 20 20 3d 24 30 | 30 30 30 32 30 30 30 00 |CK =$0|0002000.|
|00001510| 23 58 50 52 55 5f 45 58 | 50 45 43 54 54 49 4d 45 |#XPRU_EX|PECTTIME|
|00001520| 20 20 20 3d 24 30 30 30 | 30 34 30 30 30 00 23 58 | =$000|04000.#X|
|00001530| 50 52 55 5f 45 4c 41 50 | 53 45 44 54 49 4d 45 20 |PRU_ELAP|SEDTIME |
|00001540| 20 3d 24 30 30 30 30 38 | 30 30 30 00 23 58 50 52 | =$00008|000.#XPR|
|00001550| 55 5f 44 41 54 41 52 41 | 54 45 20 20 20 20 20 3d |U_DATARA|TE =|
|00001560| 24 30 30 30 31 30 30 30 | 30 00 00 23 58 50 72 6f |$0001000|0..#XPro|
|00001570| 74 6f 63 6f 6c 43 6c 65 | 61 6e 75 70 20 20 3d 2d |tocolCle|anup =-|
|00001580| 24 31 65 00 23 58 50 72 | 6f 74 6f 63 6f 6c 53 65 |$1e.#XPr|otocolSe|
|00001590| 74 75 70 20 20 20 20 3d | 2d 24 32 34 00 23 58 50 |tup =|-$24.#XP|
|000015a0| 72 6f 74 6f 63 6f 6c 53 | 65 6e 64 20 20 20 20 20 |rotocolS|end |
|000015b0| 3d 2d 24 32 61 00 23 58 | 50 72 6f 74 6f 63 6f 6c |=-$2a.#X|Protocol|
|000015c0| 52 65 63 65 69 76 65 20 | 20 3d 2d 24 33 30 00 23 |Receive | =-$30.#|
|000015d0| 58 50 72 6f 74 6f 63 6f | 6c 48 6f 73 74 4d 6f 6e |XProtoco|lHostMon|
|000015e0| 20 20 3d 2d 24 33 36 00 | 23 58 50 72 6f 74 6f 63 | =-$36.|#XProtoc|
|000015f0| 6f 6c 55 73 65 72 4d 6f | 6e 20 20 3d 2d 24 33 63 |olUserMo|n =-$3c|
|00001600| 00 00 80 01 20 2e 58 50 | 52 48 4f 53 54 00 20 20 |.... .XP|RHOST. |
|00001610| 2a 58 50 52 42 61 73 65 | 2e 4c 69 62 72 61 72 79 |*XPRBase|.Library|
|00001620| 00 20 20 58 50 52 43 6f | 6d 6d 61 6e 64 2e 6c 00 |. XPRCo|mmand.l.|
|00001630| 20 20 58 50 52 44 61 74 | 61 24 00 20 20 58 50 52 | XPRDat|a$. XPR|
|00001640| 52 65 73 75 6c 74 2e 6c | 00 20 20 58 50 52 57 69 |Result.l|. XPRWi|
|00001650| 6e 64 6f 77 4f 70 65 6e | 2e 62 00 80 02 20 80 01 |ndowOpen|.b... ..|
|00001660| 00 00 3b 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |..;-----|--------|
|00001670| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001680| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001690| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000016a0| 2d 2d 2d 2d 00 3b 20 4d | 61 69 6e 20 70 72 6f 67 |----.; M|ain prog|
|000016b0| 72 61 6d 20 73 74 61 72 | 74 73 20 68 65 72 65 00 |ram star|ts here.|
|000016c0| 2e 4d 41 49 4e 5f 50 52 | 4f 47 52 41 4d 00 00 80 |.MAIN_PR|OGRAM...|
|000016d0| c3 00 cf 02 20 30 00 00 | c3 01 20 30 2c 22 74 6f |.... 0..|.. 0,"to|
|000016e0| 70 61 7a 2e 66 6f 6e 74 | 22 2c 38 00 00 00 3b 20 |paz.font|",8...; |
|000016f0| 54 68 69 73 20 6c 69 73 | 74 20 73 74 6f 72 65 73 |This lis|t stores|
|00001700| 20 6e 61 6d 65 73 20 6f | 66 20 66 69 6c 65 73 20 | names o|f files |
|00001710| 74 6f 20 62 65 20 73 65 | 6e 74 00 80 04 20 80 b3 |to be se|nt... ..|
|00001720| 20 53 65 6e 64 24 28 31 | 30 30 29 00 00 00 3b 49 | Send$(1|00)...;I|
|00001730| 6e 69 74 69 61 6c 69 7a | 65 20 58 50 52 5f 49 4f |nitializ|e XPR_IO|
|00001740| 20 73 74 72 75 63 74 75 | 72 65 20 66 6f 72 20 6c | structu|re for l|
|00001750| 69 62 72 61 72 79 00 00 | 3b 58 50 52 20 64 65 66 |ibrary..|;XPR def|
|00001760| 61 75 6c 74 73 00 00 80 | 33 20 2e 58 50 52 5f 49 |aults...|3 .XPR_I|
|00001770| 4f 20 58 50 52 43 6f 6e | 66 69 67 00 80 ca 20 58 |O XPRCon|fig... X|
|00001780| 50 52 43 6f 6e 66 69 67 | 2e 58 50 52 5f 49 4f 00 |PRConfig|.XPR_IO.|
|00001790| 00 5c 78 70 72 5f 66 69 | 6c 65 6e 61 6d 65 20 20 |.\xpr_fi|lename |
|000017a0| 3d 20 30 00 5c 78 70 72 | 5f 66 6f 70 65 6e 20 20 |= 0.\xpr|_fopen |
|000017b0| 20 20 20 3d 20 3f 78 6c | 69 62 5f 66 6f 70 65 6e | = ?xl|ib_fopen|
|000017c0| 00 5c 78 70 72 5f 66 63 | 6c 6f 73 65 20 20 20 20 |.\xpr_fc|lose |
|000017d0| 3d 20 3f 78 6c 69 62 5f | 66 63 6c 6f 73 65 00 5c |= ?xlib_|fclose.\|
|000017e0| 78 70 72 5f 66 72 65 61 | 64 20 20 20 20 20 3d 20 |xpr_frea|d = |
|000017f0| 3f 78 6c 69 62 5f 66 72 | 65 61 64 00 5c 78 70 72 |?xlib_fr|ead.\xpr|
|00001800| 5f 66 77 72 69 74 65 20 | 20 20 20 3d 20 3f 78 6c |_fwrite | = ?xl|
|00001810| 69 62 5f 66 77 72 69 74 | 65 00 5c 78 70 72 5f 73 |ib_fwrit|e.\xpr_s|
|00001820| 72 65 61 64 20 20 20 20 | 20 3d 20 3f 78 6c 69 62 |read | = ?xlib|
|00001830| 5f 73 72 65 61 64 00 5c | 78 70 72 5f 73 77 72 69 |_sread.\|xpr_swri|
|00001840| 74 65 20 20 20 20 3d 20 | 3f 78 6c 69 62 5f 73 77 |te = |?xlib_sw|
|00001850| 72 69 74 65 00 5c 78 70 | 72 5f 73 66 6c 75 73 68 |rite.\xp|r_sflush|
|00001860| 20 20 20 20 3d 20 3f 78 | 6c 69 62 5f 73 66 6c 75 | = ?x|lib_sflu|
|00001870| 73 68 00 5c 78 70 72 5f | 75 70 64 61 74 65 20 20 |sh.\xpr_|update |
|00001880| 20 20 3d 20 3f 78 6c 69 | 62 5f 75 70 64 61 74 65 | = ?xli|b_update|
|00001890| 00 5c 78 70 72 5f 63 68 | 6b 61 62 6f 72 74 20 20 |.\xpr_ch|kabort |
|000018a0| 3d 20 3f 78 6c 69 62 5f | 63 68 6b 61 62 6f 72 74 |= ?xlib_|chkabort|
|000018b0| 00 5c 78 70 72 5f 63 68 | 6b 6d 69 73 63 20 20 20 |.\xpr_ch|kmisc |
|000018c0| 3d 20 30 00 5c 78 70 72 | 5f 67 65 74 73 20 20 20 |= 0.\xpr|_gets |
|000018d0| 20 20 20 3d 20 3f 78 6c | 69 62 5f 67 65 74 73 00 | = ?xl|ib_gets.|
|000018e0| 5c 78 70 72 5f 73 65 74 | 73 65 72 69 61 6c 20 3d |\xpr_set|serial =|
|000018f0| 20 30 00 5c 78 70 72 5f | 66 66 69 72 73 74 20 20 | 0.\xpr_|ffirst |
|00001900| 20 20 3d 20 3f 78 6c 69 | 62 5f 66 66 69 72 73 74 | = ?xli|b_ffirst|
|00001910| 00 5c 78 70 72 5f 66 6e | 65 78 74 20 20 20 20 20 |.\xpr_fn|ext |
|00001920| 3d 20 3f 78 6c 69 62 5f | 66 66 69 72 73 74 00 5c |= ?xlib_|ffirst.\|
|00001930| 78 70 72 5f 66 69 6e 66 | 6f 20 20 20 20 20 3d 20 |xpr_finf|o = |
|00001940| 3f 78 6c 69 62 5f 66 69 | 6e 66 6f 00 5c 78 70 72 |?xlib_fi|nfo.\xpr|
|00001950| 5f 66 73 65 65 6b 20 20 | 20 20 20 3d 20 3f 78 6c |_fseek | = ?xl|
|00001960| 69 62 5f 66 73 65 65 6b | 00 5c 78 70 72 5f 65 78 |ib_fseek|.\xpr_ex|
|00001970| 74 65 6e 73 69 6f 6e 20 | 3d 20 34 00 5c 78 70 72 |tension |= 4.\xpr|
|00001980| 5f 64 61 74 61 20 20 20 | 20 20 20 3d 20 30 00 5c |_data | = 0.\|
|00001990| 78 70 72 5f 6f 70 74 69 | 6f 6e 73 20 20 20 3d 20 |xpr_opti|ons = |
|000019a0| 30 00 5c 78 70 72 5f 75 | 6e 6c 69 6e 6b 20 20 20 |0.\xpr_u|nlink |
|000019b0| 20 3d 20 3f 78 6c 69 62 | 5f 75 6e 6c 69 6e 6b 00 | = ?xlib|_unlink.|
|000019c0| 5c 78 70 72 5f 73 71 75 | 65 72 79 20 20 20 20 3d |\xpr_squ|ery =|
|000019d0| 20 3f 78 6c 69 62 5f 73 | 71 75 65 72 79 00 5c 78 | ?xlib_s|query.\x|
|000019e0| 70 72 5f 67 65 74 70 74 | 72 20 20 20 20 3d 20 30 |pr_getpt|r = 0|
|000019f0| 00 00 00 3b 20 78 6c 69 | 62 5f 73 72 65 61 64 20 |...; xli|b_sread |
|00001a00| 6e 65 65 64 73 20 61 20 | 74 69 6d 65 72 2c 20 73 |needs a |timer, s|
|00001a10| 6f 20 61 6c 6c 6f 63 61 | 74 65 20 6f 6e 65 20 66 |o alloca|te one f|
|00001a20| 72 6f 6d 20 74 68 65 20 | 74 69 6d 65 72 2e 64 65 |rom the |timer.de|
|00001a30| 76 69 63 65 00 00 80 33 | 20 2e 4d 73 67 50 6f 72 |vice...3| .MsgPor|
|00001a40| 74 20 20 20 20 20 2a 54 | 69 6d 65 72 4d 50 00 80 |t *T|imerMP..|
|00001a50| 33 20 2e 74 69 6d 65 72 | 65 71 75 65 73 74 20 2a |3 .timer|equest *|
|00001a60| 54 69 6d 65 72 49 4f 00 | 00 2a 54 69 6d 65 72 4d |TimerIO.|.*TimerM|
|00001a70| 50 2e 4d 73 67 50 6f 72 | 74 20 3d 20 fe e2 00 80 |P.MsgPor|t = ....|
|00001a80| 0b 20 2a 54 69 6d 65 72 | 4d 50 00 20 20 3b 20 4d |. *Timer|MP. ; M|
|00001a90| 65 73 73 61 67 65 20 70 | 6f 72 74 20 63 72 65 61 |essage p|ort crea|
|00001aa0| 74 65 64 20 4f 4b 00 00 | 20 20 2a 54 69 6d 65 72 |ted OK..| *Timer|
|00001ab0| 49 4f 2e 74 69 6d 65 72 | 65 71 75 65 73 74 20 3d |IO.timer|equest =|
|00001ac0| 20 fe e0 28 2a 54 69 6d | 65 72 4d 50 2c 20 80 2f | ..(*Tim|erMP, ./|
|00001ad0| 20 2e 74 69 6d 65 72 65 | 71 75 65 73 74 29 00 20 | .timere|quest). |
|00001ae0| 20 80 0b 20 2a 54 69 6d | 65 72 49 4f 00 20 20 20 | .. *Tim|erIO. |
|00001af0| 20 3b 20 49 4f 52 65 71 | 75 65 73 74 20 63 72 65 | ; IOReq|uest cre|
|00001b00| 61 74 65 64 20 4f 4b 00 | 00 20 20 20 20 80 0b 20 |ated OK.|. .. |
|00001b10| fe c0 28 22 74 69 6d 65 | 72 2e 64 65 76 69 63 65 |..("time|r.device|
|00001b20| 22 2c 23 55 4e 49 54 5f | 4d 49 43 52 4f 48 5a 2c |",#UNIT_|MICROHZ,|
|00001b30| 2a 54 69 6d 65 72 49 4f | 2c 30 29 00 20 20 20 20 |*TimerIO|,0). |
|00001b40| 20 20 3b 20 64 65 76 69 | 63 65 20 66 61 69 6c 65 | ; devi|ce faile|
|00001b50| 64 20 74 6f 20 6f 70 65 | 6e 00 20 20 20 20 20 20 |d to ope|n. |
|00001b60| 3b 20 73 68 6f 75 6c 64 | 20 6e 65 76 65 72 20 68 |; should| never h|
|00001b70| 61 70 70 65 6e 20 73 6f | 20 49 27 6c 6c 20 69 67 |appen so| I'll ig|
|00001b80| 6e 6f 72 65 20 69 74 21 | 20 3b 2d 29 00 20 20 20 |nore it!| ;-). |
|00001b90| 20 80 c0 00 20 20 80 22 | 00 20 20 20 20 3b 20 43 | ... ."|. ; C|
|00001ba0| 72 65 61 74 65 49 4f 52 | 65 71 75 65 73 74 20 66 |reateIOR|equest f|
|00001bb0| 61 69 6c 65 64 2e 20 52 | 65 6c 65 61 73 65 20 6d |ailed. R|elease m|
|00001bc0| 65 73 73 61 67 65 20 70 | 6f 72 74 00 00 20 20 20 |essage p|ort.. |
|00001bd0| 20 fe e3 28 2a 54 69 6d | 65 72 4d 50 29 00 20 20 | ..(*Tim|erMP). |
|00001be0| 20 20 2a 54 69 6d 65 72 | 4d 50 20 3d 20 30 00 20 | *Timer|MP = 0. |
|00001bf0| 20 80 c0 00 80 c0 00 00 | 80 33 20 2e 58 50 52 48 | .......|.3 .XPRH|
|00001c00| 4f 53 54 20 43 6f 6e 66 | 69 67 00 00 43 6f 6e 66 |OST Conf|ig..Conf|
|00001c10| 69 67 5c 58 50 52 42 61 | 73 65 20 3d 20 30 2c 30 |ig\XPRBa|se = 0,0|
|00001c20| 2c 22 22 2c 30 2c bc 0f | 00 00 00 3b 20 4e 6f 77 |,"",0,..|...; Now|
|00001c30| 20 6f 70 65 6e 20 74 68 | 65 20 73 65 72 69 61 6c | open th|e serial|
|00001c40| 20 64 65 76 69 63 65 00 | 3b 00 3b 20 44 65 76 69 | device.|;.; Devi|
|00001c50| 63 65 20 6e 61 6d 65 20 | 3a 20 73 65 72 69 61 6c |ce name |: serial|
|00001c60| 2e 64 65 76 69 63 65 00 | 3b 20 55 6e 69 74 20 6e |.device.|; Unit n|
|00001c70| 75 6d 62 65 72 20 3a 20 | 30 00 3b 20 53 70 65 65 |umber : |0.; Spee|
|00001c80| 64 28 42 50 53 29 20 20 | 3a 20 31 39 32 30 30 00 |d(BPS) |: 19200.|
|00001c90| 3b 20 49 4f 5f 53 45 52 | 46 4c 41 47 53 20 3a 20 |; IO_SER|FLAGS : |
|00001ca0| 58 44 49 53 41 42 4c 45 | 44 20 20 20 20 3b 20 58 |XDISABLE|D ; X|
|00001cb0| 4f 4e 2f 58 4f 46 46 20 | 64 69 73 61 62 6c 65 64 |ON/XOFF |disabled|
|00001cc0| 2e 00 3b 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |..; | |
|00001cd0| 20 20 37 57 49 52 45 20 | 20 20 20 20 20 20 20 3b | 7WIRE | ;|
|00001ce0| 20 52 54 53 2f 43 54 53 | 20 66 6c 6f 77 20 63 6f | RTS/CTS| flow co|
|00001cf0| 6e 74 72 6f 6c 00 3b 20 | 42 75 66 66 65 72 20 73 |ntrol.; |Buffer s|
|00001d00| 69 7a 65 20 3a 20 38 31 | 39 32 20 62 79 74 65 73 |ize : 81|92 bytes|
|00001d10| 00 00 80 0b 20 80 89 20 | 69 6e 69 74 73 65 72 69 |.... .. |initseri|
|00001d20| 61 6c 7b 22 73 65 72 69 | 61 6c 2e 64 65 76 69 63 |al{"seri|al.devic|
|00001d30| 65 22 2c 30 2c 31 39 32 | 30 30 2c 23 53 45 52 46 |e",0,192|00,#SERF|
|00001d40| 5f 58 44 49 53 41 42 4c | 45 44 7c 23 53 45 52 46 |_XDISABL|ED|#SERF|
|00001d50| 5f 37 57 49 52 45 2c 38 | 31 39 32 7d 00 20 20 74 |_7WIRE,8|192}. t|
|00001d60| 65 6d 70 2e 6c 20 3d 20 | a2 81 28 22 58 50 52 20 |emp.l = |..("XPR |
|00001d70| 45 78 61 6d 70 6c 65 22 | 2c 22 46 61 69 6c 65 64 |Example"|,"Failed|
|00001d80| 20 74 6f 20 6f 70 65 6e | 20 73 65 72 69 61 6c 20 | to open| serial |
|00001d90| 64 65 76 69 63 65 22 2c | 22 4f 4b 22 29 00 80 c0 |device",|"OK")...|
|00001da0| 00 00 3b 20 4f 70 65 6e | 20 74 68 65 20 58 50 52 |..; Open| the XPR|
|00001db0| 20 70 72 6f 74 6f 63 6f | 6c 20 6c 69 62 72 61 72 | protoco|l librar|
|00001dc0| 79 00 3b 20 49 27 6d 20 | 75 73 69 6e 67 20 7a 6d |y.; I'm |using zm|
|00001dd0| 6f 64 65 6d 20 62 75 74 | 20 6f 74 68 65 72 73 20 |odem but| others |
|00001de0| 73 68 6f 75 6c 64 20 77 | 6f 72 6b 2e 00 00 43 6f |should w|ork...Co|
|00001df0| 6e 66 69 67 5c 58 50 52 | 42 61 73 65 20 3d 20 fe |nfig\XPR|Base = .|
|00001e00| cf 28 22 78 70 72 7a 6d | 6f 64 65 6d 2e 6c 69 62 |.("xprzm|odem.lib|
|00001e10| 72 61 72 79 22 2c 30 29 | 00 80 0b 20 43 6f 6e 66 |rary",0)|... Conf|
|00001e20| 69 67 5c 58 50 52 42 61 | 73 65 20 3d 20 30 00 20 |ig\XPRBa|se = 0. |
|00001e30| 20 74 65 6d 70 2e 6c 20 | 3d 20 a2 81 28 22 58 50 | temp.l |= ..("XP|
|00001e40| 52 20 45 78 61 6d 70 6c | 65 22 2c 22 49 20 63 6f |R Exampl|e","I co|
|00001e50| 75 6c 64 6e 27 74 20 6f | 70 65 6e 20 74 68 65 20 |uldn't o|pen the |
|00001e60| 78 70 72 7a 6d 6f 64 65 | 6d 2e 6c 69 62 72 61 72 |xprzmode|m.librar|
|00001e70| 79 22 2c 22 4f 4b 22 29 | 00 80 c0 00 00 00 80 0b |y","OK")|........|
|00001e80| 20 2a 53 65 72 69 61 6c | 49 4f 20 80 42 20 2a 54 | *Serial|IO .B *T|
|00001e90| 69 6d 65 72 49 4f 20 80 | 42 20 43 6f 6e 66 69 67 |imerIO .|B Config|
|00001ea0| 5c 58 50 52 42 61 73 65 | 00 20 20 3b 20 58 50 52 |\XPRBase|. ; XPR|
|00001eb0| 2c 20 73 65 72 69 61 6c | 20 61 6e 64 20 74 69 6d |, serial| and tim|
|00001ec0| 65 72 20 61 72 65 20 4f | 4b 00 00 3b 20 54 68 69 |er are O|K..; Thi|
|00001ed0| 73 20 70 69 65 63 65 20 | 6f 66 20 63 6f 64 65 20 |s piece |of code |
|00001ee0| 77 61 73 20 61 64 64 65 | 64 20 73 6f 20 49 20 63 |was adde|d so I c|
|00001ef0| 6f 75 6c 64 20 74 65 73 | 74 20 74 68 69 73 00 3b |ould tes|t this.;|
|00001f00| 20 70 72 6f 67 72 61 6d | 20 77 69 74 68 20 6e 75 | program| with nu|
|00001f10| 6c 6c 6d 6f 64 65 6d 2e | 64 65 76 69 63 65 2e 00 |llmodem.|device..|
|00001f20| 00 3b 20 20 64 69 61 6c | 24 3d 22 41 54 44 54 31 |.; dial|$="ATDT1|
|00001f30| 32 31 31 32 32 31 22 2b | 43 68 72 24 28 31 33 29 |211221"+|Chr$(13)|
|00001f40| 00 3b 20 20 2a 53 65 72 | 69 61 6c 49 4f 5c 49 4f |.; *Ser|ialIO\IO|
|00001f50| 53 65 72 5c 69 6f 5f 43 | 6f 6d 6d 61 6e 64 20 3d |Ser\io_C|ommand =|
|00001f60| 20 23 43 4d 44 5f 57 52 | 49 54 45 00 3b 20 20 2a | #CMD_WR|ITE.; *|
|00001f70| 53 65 72 69 61 6c 49 4f | 5c 49 4f 53 65 72 5c 69 |SerialIO|\IOSer\i|
|00001f80| 6f 5f 4c 65 6e 67 74 68 | 20 3d 20 2d 31 00 3b 20 |o_Length| = -1.; |
|00001f90| 20 2a 53 65 72 69 61 6c | 49 4f 5c 49 4f 53 65 72 | *Serial|IO\IOSer|
|00001fa0| 5c 69 6f 5f 44 61 74 61 | 20 3d 20 26 64 69 61 6c |\io_Data| = &dial|
|00001fb0| 24 00 3b 20 20 44 6f 49 | 4f 5f 28 2a 53 65 72 69 |$.; DoI|O_(*Seri|
|00001fc0| 61 6c 49 4f 29 00 00 20 | 20 3b 20 43 6f 6e 66 69 |alIO).. | ; Confi|
|00001fd0| 67 75 72 65 20 74 68 65 | 20 58 50 52 20 6c 69 62 |gure the| XPR lib|
|00001fe0| 72 61 72 79 00 00 20 20 | 43 6f 6e 66 69 67 5c 58 |rary.. |Config\X|
|00001ff0| 50 52 43 6f 6d 6d 61 6e | 64 20 3d 20 23 58 50 72 |PRComman|d = #XPr|
|00002000| 6f 74 6f 63 6f 6c 53 65 | 74 75 70 00 00 20 20 3b |otocolSe|tup.. ;|
|00002010| 20 54 68 69 73 20 74 68 | 65 20 74 68 65 20 58 50 | This th|e the XP|
|00002020| 52 20 6c 69 62 72 61 72 | 79 20 63 6f 6e 66 69 67 |R librar|y config|
|00002030| 75 72 61 74 69 6f 6e 20 | 73 74 72 69 6e 67 00 20 |uration |string. |
|00002040| 20 3b 20 43 6f 6e 73 75 | 6c 74 20 6c 69 62 72 61 | ; Consu|lt libra|
|00002050| 72 79 20 64 6f 63 73 00 | 00 20 20 43 6f 6e 66 69 |ry docs.|. Confi|
|00002060| 67 5c 58 50 52 44 61 74 | 61 20 3d 20 22 54 4e 2c |g\XPRDat|a = "TN,|
|00002070| 4f 4e 2c 42 31 36 2c 46 | 30 2c 45 31 30 2c 4d 31 |ON,B16,F|0,E10,M1|
|00002080| 30 32 34 2c 41 4e 2c 44 | 4e 2c 4b 59 2c 52 4e 2c |024,AN,D|N,KY,RN,|
|00002090| 53 4e 2c 50 52 41 4d 3a | 22 00 00 20 20 80 06 20 |SN,PRAM:|".. .. |
|000020a0| 43 41 4c 4c 58 50 52 00 | 00 20 20 80 0b 20 a2 81 |CALLXPR.|. .. ..|
|000020b0| 28 22 58 50 52 20 45 78 | 61 6d 70 6c 65 22 2c 22 |("XPR Ex|ample","|
|000020c0| 57 68 69 63 68 20 77 6f | 75 6c 64 20 79 6f 75 20 |Which wo|uld you |
|000020d0| 6c 69 6b 65 20 74 6f 20 | 64 6f 3f 22 2c 22 53 45 |like to |do?","SE|
|000020e0| 4e 44 20 46 49 4c 45 7c | 52 45 43 45 49 56 45 20 |ND FILE||RECEIVE |
|000020f0| 46 49 4c 45 28 53 29 22 | 29 00 20 20 20 20 3b 20 |FILE(S)"|). ; |
|00002100| 53 65 6e 64 20 66 69 6c | 65 00 00 20 20 20 20 80 |Send fil|e.. .|
|00002110| 32 20 70 61 24 3d 31 39 | 32 00 20 20 20 20 80 32 |2 pa$=19|2. .2|
|00002120| 20 66 69 24 3d 31 39 32 | 00 00 20 20 20 20 c0 07 | fi$=192|.. ..|
|00002130| 20 53 65 6e 64 24 28 29 | 00 00 20 20 20 20 3b 20 | Send$()|.. ; |
|00002140| 79 6f 75 20 63 6f 75 6c | 64 20 61 64 64 20 61 20 |you coul|d add a |
|00002150| 6c 6f 6f 70 20 68 65 72 | 65 20 74 6f 20 61 6c 6c |loop her|e to all|
|00002160| 6f 77 20 6d 75 6c 74 69 | 70 6c 65 20 66 69 6c 65 |ow multi|ple file|
|00002170| 73 00 20 20 20 20 3b 20 | 74 6f 20 62 65 20 73 65 |s. ; |to be se|
|00002180| 6e 74 2e 00 20 20 20 20 | 80 0b 20 c0 02 28 53 65 |nt.. |.. ..(Se|
|00002190| 6e 64 24 28 29 29 00 20 | 20 20 20 20 20 53 65 6e |nd$()). | Sen|
|000021a0| 64 24 28 29 20 3d 20 a8 | 01 28 22 53 65 6c 65 63 |d$() = .|.("Selec|
|000021b0| 74 20 66 69 6c 65 20 74 | 6f 20 73 65 6e 64 22 2c |t file t|o send",|
|000021c0| 70 61 24 2c 66 69 24 29 | 00 20 20 20 20 80 c0 00 |pa$,fi$)|. ...|
|000021d0| 00 20 20 20 20 43 6f 6e | 66 69 67 5c 58 50 52 43 |. Con|fig\XPRC|
|000021e0| 6f 6d 6d 61 6e 64 20 3d | 20 23 58 50 72 6f 74 6f |ommand =| #XProto|
|000021f0| 63 6f 6c 53 65 6e 64 00 | 20 20 20 20 43 6f 6e 66 |colSend.| Conf|
|00002200| 69 67 5c 58 50 52 44 61 | 74 61 20 3d 20 22 22 00 |ig\XPRDa|ta = "".|
|00002210| 00 20 20 20 20 c0 04 20 | 53 65 6e 64 24 28 29 00 |. .. |Send$().|
|00002220| 20 20 20 20 80 06 20 43 | 41 4c 4c 58 50 52 00 00 | .. C|ALLXPR..|
|00002230| 20 20 20 20 dd 82 20 22 | 54 72 61 6e 73 66 65 72 | .. "|Transfer|
|00002240| 20 63 6f 6d 70 6c 65 74 | 65 2e 20 4c 69 62 72 61 | complet|e. Libra|
|00002250| 72 79 20 72 65 74 75 72 | 6e 20 63 6f 64 65 3a 20 |ry retur|n code: |
|00002260| 22 2c 43 6f 6e 66 69 67 | 5c 58 50 52 52 65 73 75 |",Config|\XPRResu|
|00002270| 6c 74 00 00 20 20 80 22 | 00 00 20 20 20 20 3b 20 |lt.. ."|.. ; |
|00002280| 52 65 63 65 69 76 65 20 | 66 69 6c 65 28 73 29 00 |Receive |file(s).|
|00002290| 00 20 20 20 20 43 6f 6e | 66 69 67 5c 58 50 52 43 |. Con|fig\XPRC|
|000022a0| 6f 6d 6d 61 6e 64 20 3d | 20 23 58 50 72 6f 74 6f |ommand =| #XProto|
|000022b0| 63 6f 6c 52 65 63 65 69 | 76 65 00 20 20 20 20 43 |colRecei|ve. C|
|000022c0| 6f 6e 66 69 67 5c 58 50 | 52 44 61 74 61 20 3d 20 |onfig\XP|RData = |
|000022d0| 22 22 00 00 20 20 20 20 | 80 06 20 43 41 4c 4c 58 |"".. |.. CALLX|
|000022e0| 50 52 00 00 20 20 20 20 | dd 82 20 22 54 72 61 6e |PR.. |.. "Tran|
|000022f0| 73 66 65 72 20 63 6f 6d | 70 6c 65 74 65 2e 20 4c |sfer com|plete. L|
|00002300| 69 62 72 61 72 79 20 72 | 65 74 75 72 6e 20 63 6f |ibrary r|eturn co|
|00002310| 64 65 3a 20 22 2c 43 6f | 6e 66 69 67 5c 58 50 52 |de: ",Co|nfig\XPR|
|00002320| 52 65 73 75 6c 74 00 00 | 20 20 80 c0 00 00 80 c0 |Result..| ......|
|00002330| 00 00 3b 20 54 72 61 6e | 73 66 65 72 73 20 63 6f |..; Tran|sfers co|
|00002340| 6d 70 6c 65 74 65 00 3b | 20 52 65 6c 65 61 73 65 |mplete.;| Release|
|00002350| 20 73 79 73 74 65 6d 20 | 72 65 73 6f 75 72 63 65 | system |resource|
|00002360| 73 20 61 6e 64 20 71 75 | 69 74 00 00 80 06 20 54 |s and qu|it.... T|
|00002370| 69 64 79 75 70 00 00 3b | 43 6c 69 63 6b 4d 6f 75 |idyup..;|ClickMou|
|00002380| 73 65 00 80 02 00 00 00 | 2e 43 41 4c 4c 58 50 52 |se......|.CALLXPR|
|00002390| 3a 00 20 20 58 50 52 43 | 6f 6e 66 69 67 5c 78 70 |:. XPRC|onfig\xp|
|000023a0| 72 5f 66 69 6c 65 6e 61 | 6d 65 20 3d 20 26 43 6f |r_filena|me = &Co|
|000023b0| 6e 66 69 67 5c 58 50 52 | 44 61 74 61 00 20 20 80 |nfig\XPR|Data. .|
|000023c0| 29 20 20 64 33 2c 26 58 | 50 52 43 6f 6e 66 69 67 |) d3,&X|PRConfig|
|000023d0| 2e 58 50 52 5f 49 4f 00 | 20 20 80 29 20 20 64 34 |.XPR_IO.| .) d4|
|000023e0| 2c 43 6f 6e 66 69 67 5c | 58 50 52 42 61 73 65 20 |,Config\|XPRBase |
|000023f0| 2b 20 43 6f 6e 66 69 67 | 5c 58 50 52 43 6f 6d 6d |+ Config|\XPRComm|
|00002400| 61 6e 64 00 20 20 80 29 | 20 20 64 36 2c 43 6f 6e |and. .)| d6,Con|
|00002410| 66 69 67 5c 58 50 52 42 | 61 73 65 00 00 20 20 80 |fig\XPRB|ase.. .|
|00002420| 79 20 53 61 76 65 42 6c | 69 74 7a 00 20 20 80 7e |y SaveBl|itz. .~|
|00002430| 2e 6c 20 64 36 2c 61 36 | 00 20 20 80 7e 2e 6c 20 |.l d6,a6|. .~.l |
|00002440| 64 34 2c 61 31 00 20 20 | 80 7e 2e 6c 20 64 33 2c |d4,a1. |.~.l d3,|
|00002450| 61 30 00 20 20 80 79 20 | 28 61 31 29 00 20 20 80 |a0. .y |(a1). .|
|00002460| 79 20 52 65 73 74 6f 72 | 65 42 6c 69 74 7a 00 20 |y Restor|eBlitz. |
|00002470| 20 80 bd 20 64 30 2c 43 | 6f 6e 66 69 67 5c 58 50 | .. d0,C|onfig\XP|
|00002480| 52 52 65 73 75 6c 74 00 | 20 20 c5 3c 20 30 00 20 |RResult.| .< 0. |
|00002490| 20 43 6f 6e 66 69 67 5c | 58 50 52 57 69 6e 64 6f | Config\|XPRWindo|
|000024a0| 77 4f 70 65 6e 20 3d 20 | bc 0f 00 20 20 80 07 00 |wOpen = |... ...|
|000024b0| 00 00 2e 54 69 64 79 75 | 70 3a 00 00 80 0b 20 43 |...Tidyu|p:.... C|
|000024c0| 6f 6e 66 69 67 5c 58 50 | 52 42 61 73 65 00 20 20 |onfig\XP|RBase. |
|000024d0| 3b 20 41 73 6b 20 6c 69 | 62 72 61 72 79 20 74 6f |; Ask li|brary to|
|000024e0| 20 74 69 64 79 75 70 00 | 00 20 20 43 6f 6e 66 69 | tidyup.|. Confi|
|000024f0| 67 5c 58 50 52 43 6f 6d | 6d 61 6e 64 20 3d 20 23 |g\XPRCom|mand = #|
|00002500| 58 50 72 6f 74 6f 63 6f | 6c 43 6c 65 61 6e 75 70 |XProtoco|lCleanup|
|00002510| 00 20 20 43 6f 6e 66 69 | 67 5c 58 50 52 44 61 74 |. Confi|g\XPRDat|
|00002520| 61 20 3d 20 22 22 00 20 | 20 80 06 20 43 41 4c 4c |a = "". | .. CALL|
|00002530| 58 50 52 00 00 20 20 3b | 20 43 6c 6f 73 65 20 58 |XPR.. ;| Close X|
|00002540| 50 52 20 6c 69 62 72 61 | 72 79 00 00 20 20 fe bb |PR libra|ry.. ..|
|00002550| 28 43 6f 6e 66 69 67 5c | 58 50 52 42 61 73 65 29 |(Config\|XPRBase)|
|00002560| 00 20 20 43 6f 6e 66 69 | 67 5c 58 50 52 42 61 73 |. Confi|g\XPRBas|
|00002570| 65 20 3d 20 30 00 80 c0 | 00 00 00 80 0b 20 2a 54 |e = 0...|..... *T|
|00002580| 69 6d 65 72 49 4f 00 20 | 20 3b 20 72 65 6c 65 61 |imerIO. | ; relea|
|00002590| 73 65 20 74 69 6d 65 72 | 00 00 20 20 fe c1 28 2a |se timer|.. ..(*|
|000025a0| 54 69 6d 65 72 49 4f 29 | 00 00 20 20 fe e1 28 2a |TimerIO)|.. ..(*|
|000025b0| 54 69 6d 65 72 49 4f 29 | 00 20 20 2a 54 69 6d 65 |TimerIO)|. *Time|
|000025c0| 72 49 4f 20 3d 20 30 00 | 00 20 20 fe e3 28 2a 54 |rIO = 0.|. ..(*T|
|000025d0| 69 6d 65 72 4d 50 29 00 | 20 20 2a 54 69 6d 65 72 |imerMP).| *Timer|
|000025e0| 4d 50 20 3d 20 30 00 00 | 80 c0 00 00 73 68 75 74 |MP = 0..|....shut|
|000025f0| 64 6f 77 6e 73 65 72 69 | 61 6c 7b 7d 00 00 80 07 |downseri|al{}....|
|00002600| 00 00 00 3b 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...;----|--------|
|00002610| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002620| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002630| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002640| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 00 3b 20 54 68 65 |--------|--.; The|
|00002650| 20 58 50 52 20 63 61 6c | 6c 62 61 63 6b 20 66 75 | XPR cal|lback fu|
|00002660| 6e 63 74 69 6f 6e 73 2e | 20 20 54 68 65 73 65 20 |nctions.| These |
|00002670| 72 6f 75 74 69 6e 65 73 | 20 61 72 65 20 63 61 6c |routines| are cal|
|00002680| 6c 65 64 20 62 79 20 74 | 68 65 20 6c 69 62 72 61 |led by t|he libra|
|00002690| 72 79 00 3b 20 77 68 65 | 6e 20 72 65 71 75 69 72 |ry.; whe|n requir|
|000026a0| 65 64 2e 00 00 2e 78 6c | 69 62 5f 66 6f 70 65 6e |ed....xl|ib_fopen|
|000026b0| 3a 00 20 20 3b 20 4f 70 | 65 6e 20 61 20 66 69 6c |:. ; Op|en a fil|
|000026c0| 65 20 72 65 71 75 65 73 | 74 65 64 20 62 79 20 74 |e reques|ted by t|
|000026d0| 68 65 20 58 50 52 20 6c | 69 62 72 61 72 79 20 61 |he XPR l|ibrary a|
|000026e0| 6e 64 20 72 65 74 75 72 | 6e 20 72 65 73 75 6c 74 |nd retur|n result|
|000026f0| 2e 00 00 20 20 80 82 2e | 6c 20 64 32 2d 64 37 2f |... ...|l d2-d7/|
|00002700| 61 32 2d 61 36 2c 2d 28 | 61 37 29 00 20 20 80 79 |a2-a6,-(|a7). .y|
|00002710| 20 52 65 73 74 6f 72 65 | 42 6c 69 74 7a 00 20 20 | Restore|Blitz. |
|00002720| 80 bd 20 61 31 2c 61 63 | 63 65 73 73 6d 6f 64 65 |.. a1,ac|cessmode|
|00002730| 2e 6c 00 20 20 80 bd 20 | 61 30 2c 66 6e 61 6d 65 |.l. .. |a0,fname|
|00002740| 2e 6c 00 20 20 66 6e 61 | 6d 65 24 3d 20 da 02 24 |.l. fna|me$= ..$|
|00002750| 28 66 6e 61 6d 65 29 00 | 20 20 72 65 73 75 6c 74 |(fname).| result|
|00002760| 2e 6c 20 3d 20 30 00 20 | 20 80 0e 20 dc 98 28 da |.l = 0. | .. ..(.|
|00002770| 02 24 28 61 63 63 65 73 | 73 6d 6f 64 65 29 29 00 |.$(acces|smode)).|
|00002780| 20 20 20 20 80 0f 20 22 | 52 22 00 20 20 20 20 20 | .. "|R". |
|00002790| 20 72 65 73 75 6c 74 2e | 6c 20 3d 20 fe 01 28 26 | result.|l = ..(&|
|000027a0| 66 6e 61 6d 65 24 2c 23 | 4d 4f 44 45 5f 4f 4c 44 |fname$,#|MODE_OLD|
|000027b0| 46 49 4c 45 29 00 20 20 | 20 20 80 0f 20 22 57 22 |FILE). | .. "W"|
|000027c0| 00 20 20 20 20 20 20 72 | 65 73 75 6c 74 2e 6c 20 |. r|esult.l |
|000027d0| 3d 20 fe 01 28 26 66 6e | 61 6d 65 24 2c 23 4d 4f |= ..(&fn|ame$,#MO|
|000027e0| 44 45 5f 4e 45 57 46 49 | 4c 45 29 00 20 20 20 20 |DE_NEWFI|LE). |
|000027f0| 80 0f 20 22 41 22 00 20 | 20 20 20 20 20 72 65 73 |.. "A". | res|
|00002800| 75 6c 74 2e 6c 20 3d 20 | fe 01 28 26 66 6e 61 6d |ult.l = |..(&fnam|
|00002810| 65 24 2c 23 4d 4f 44 45 | 5f 52 45 41 44 57 52 49 |e$,#MODE|_READWRI|
|00002820| 54 45 29 00 20 20 20 20 | 20 20 80 0b 20 72 65 73 |TE). | .. res|
|00002830| 75 6c 74 2e 6c 00 20 20 | 20 20 20 20 20 20 74 65 |ult.l. | te|
|00002840| 6d 70 2e 6c 20 3d 20 fe | 07 28 72 65 73 75 6c 74 |mp.l = .|.(result|
|00002850| 2c 30 2c 23 4f 46 46 53 | 45 54 5f 45 4e 44 29 00 |,0,#OFFS|ET_END).|
|00002860| 20 20 20 20 20 20 80 c0 | 00 20 20 20 20 80 0f 20 | ..|. .. |
|00002870| 22 41 2b 22 00 20 20 20 | 20 20 20 72 65 73 75 6c |"A+". | resul|
|00002880| 74 2e 6c 20 3d 20 fe 01 | 28 26 66 6e 61 6d 65 24 |t.l = ..|(&fname$|
|00002890| 2c 23 4d 4f 44 45 5f 52 | 45 41 44 57 52 49 54 45 |,#MODE_R|EADWRITE|
|000028a0| 29 00 20 20 20 20 20 20 | 80 0b 20 72 65 73 75 6c |). |.. resul|
|000028b0| 74 2e 6c 00 20 20 20 20 | 20 20 20 20 74 65 6d 70 |t.l. | temp|
|000028c0| 2e 6c 20 3d 20 fe 07 28 | 72 65 73 75 6c 74 2c 30 |.l = ..(|result,0|
|000028d0| 2c 23 4f 46 46 53 45 54 | 5f 45 4e 44 29 00 20 20 |,#OFFSET|_END). |
|000028e0| 20 20 20 20 80 c0 00 20 | 20 20 20 80 0f 20 22 52 | ... | .. "R|
|000028f0| 2b 22 00 20 20 20 20 20 | 20 74 65 6d 70 2e 6c 20 |+". | temp.l |
|00002900| 3d 20 fe 0a 28 26 66 6e | 61 6d 65 24 2c 23 41 43 |= ..(&fn|ame$,#AC|
|00002910| 43 45 53 53 5f 52 45 41 | 44 29 00 20 20 20 20 20 |CESS_REA|D). |
|00002920| 20 80 0b 20 74 65 6d 70 | 00 20 20 20 20 20 20 20 | .. temp|. |
|00002930| 20 72 65 73 75 6c 74 2e | 6c 20 3d 20 fe 01 28 26 | result.|l = ..(&|
|00002940| 66 6e 61 6d 65 24 2c 23 | 4d 4f 44 45 5f 52 45 41 |fname$,#|MODE_REA|
|00002950| 44 57 52 49 54 45 29 00 | 20 20 20 20 20 20 20 20 |DWRITE).| |
|00002960| fe 0b 28 74 65 6d 70 29 | 00 20 20 20 20 20 20 80 |..(temp)|. .|
|00002970| c0 00 20 20 20 20 80 0f | 20 22 57 2b 22 00 20 20 |.. ..| "W+". |
|00002980| 20 20 20 20 72 65 73 75 | 6c 74 2e 6c 20 3d 20 fe | resu|lt.l = .|
|00002990| 01 28 26 66 6e 61 6d 65 | 24 2c 23 4d 4f 44 45 5f |.(&fname|$,#MODE_|
|000029a0| 52 45 41 44 57 52 49 54 | 45 29 00 20 20 80 02 20 |READWRIT|E). .. |
|000029b0| 80 0e 00 20 20 80 29 20 | 64 30 2c 72 65 73 75 6c |... .) |d0,resul|
|000029c0| 74 2e 6c 00 20 20 80 79 | 20 53 61 76 65 42 6c 69 |t.l. .y| SaveBli|
|000029d0| 74 7a 00 20 20 80 82 2e | 6c 20 28 61 37 29 2b 2c |tz. ...|l (a7)+,|
|000029e0| 64 32 2d 64 37 2f 61 32 | 2d 61 36 00 20 20 80 94 |d2-d7/a2|-a6. ..|
|000029f0| 00 00 00 2e 78 6c 69 62 | 5f 66 63 6c 6f 73 65 3a |....xlib|_fclose:|
|00002a00| 00 20 20 3b 20 43 6c 6f | 73 65 20 61 20 66 69 6c |. ; Clo|se a fil|
|00002a10| 65 00 00 20 20 80 82 2e | 6c 20 64 32 2d 64 37 2f |e.. ...|l d2-d7/|
|00002a20| 61 32 2d 61 36 2c 2d 28 | 61 37 29 00 20 20 80 79 |a2-a6,-(|a7). .y|
|00002a30| 20 52 65 73 74 6f 72 65 | 42 6c 69 74 7a 00 20 20 | Restore|Blitz. |
|00002a40| 80 bd 20 61 30 2c 66 6e | 75 6d 2e 6c 00 20 20 fe |.. a0,fn|um.l. .|
|00002a50| 02 28 66 6e 75 6d 29 00 | 20 20 80 79 20 53 61 76 |.(fnum).| .y Sav|
|00002a60| 65 42 6c 69 74 7a 00 20 | 20 80 81 2e 6c 20 23 30 |eBlitz. | ...l #0|
|00002a70| 2c 64 30 00 20 20 80 82 | 2e 6c 20 28 61 37 29 2b |,d0. ..|.l (a7)+|
|00002a80| 2c 64 32 2d 64 37 2f 61 | 32 2d 61 36 00 20 20 80 |,d2-d7/a|2-a6. .|
|00002a90| 94 00 00 00 2e 78 6c 69 | 62 5f 66 77 72 69 74 65 |.....xli|b_fwrite|
|00002aa0| 3a 00 20 20 3b 20 57 72 | 69 74 65 20 61 20 62 6c |:. ; Wr|ite a bl|
|00002ab0| 6f 63 6b 20 6f 66 20 6d | 65 6d 6f 72 79 20 74 6f |ock of m|emory to|
|00002ac0| 20 66 69 6c 65 00 00 20 | 20 80 82 2e 6c 20 64 32 | file.. | ...l d2|
|00002ad0| 2d 64 37 2f 61 32 2d 61 | 36 2c 2d 28 61 37 29 00 |-d7/a2-a|6,-(a7).|
|00002ae0| 20 20 80 79 20 52 65 73 | 74 6f 72 65 42 6c 69 74 | .y Res|toreBlit|
|00002af0| 7a 00 20 20 80 bd 20 61 | 30 2c 62 75 66 66 2e 6c |z. .. a|0,buff.l|
|00002b00| 00 20 20 80 bd 20 64 30 | 2c 73 69 7a 65 2e 6c 00 |. .. d0|,size.l.|
|00002b10| 20 20 80 bd 20 64 31 2c | 63 6f 75 6e 74 65 72 2e | .. d1,|counter.|
|00002b20| 6c 00 20 20 80 bd 20 61 | 31 2c 66 6e 75 6d 2e 6c |l. .. a|1,fnum.l|
|00002b30| 00 20 20 80 29 20 64 30 | 2c 28 fe 04 28 66 6e 75 |. .) d0|,(..(fnu|
|00002b40| 6d 2c 62 75 66 66 2c 63 | 6f 75 6e 74 65 72 2a 73 |m,buff,c|ounter*s|
|00002b50| 69 7a 65 29 20 2f 20 73 | 69 7a 65 29 00 20 20 80 |ize) / s|ize). .|
|00002b60| 79 20 53 61 76 65 42 6c | 69 74 7a 00 20 20 80 82 |y SaveBl|itz. ..|
|00002b70| 2e 6c 20 28 61 37 29 2b | 2c 64 32 2d 64 37 2f 61 |.l (a7)+|,d2-d7/a|
|00002b80| 32 2d 61 36 00 20 20 80 | 94 00 00 00 2e 78 6c 69 |2-a6. .|.....xli|
|00002b90| 62 5f 66 72 65 61 64 3a | 00 20 20 3b 20 52 65 61 |b_fread:|. ; Rea|
|00002ba0| 64 20 61 20 62 6c 6f 63 | 6b 20 66 72 6f 6d 20 66 |d a bloc|k from f|
|00002bb0| 69 6c 65 20 74 6f 20 6d | 65 6d 6f 72 79 00 00 20 |ile to m|emory.. |
|00002bc0| 20 80 82 2e 6c 20 64 32 | 2d 64 37 2f 61 32 2d 61 | ...l d2|-d7/a2-a|
|00002bd0| 36 2c 2d 28 61 37 29 00 | 20 20 80 79 20 52 65 73 |6,-(a7).| .y Res|
|00002be0| 74 6f 72 65 42 6c 69 74 | 7a 00 20 20 80 bd 20 61 |toreBlit|z. .. a|
|00002bf0| 30 2c 62 75 66 66 2e 6c | 00 20 20 80 bd 20 64 30 |0,buff.l|. .. d0|
|00002c00| 2c 73 69 7a 65 2e 6c 00 | 20 20 80 bd 20 64 31 2c |,size.l.| .. d1,|
|00002c10| 63 6f 75 6e 74 65 72 2e | 6c 00 20 20 80 bd 20 61 |counter.|l. .. a|
|00002c20| 31 2c 66 6e 75 6d 2e 6c | 00 20 20 80 29 20 64 30 |1,fnum.l|. .) d0|
|00002c30| 2c 28 fe 03 28 66 6e 75 | 6d 2c 62 75 66 66 2c 63 |,(..(fnu|m,buff,c|
|00002c40| 6f 75 6e 74 65 72 2a 73 | 69 7a 65 29 20 2f 20 73 |ounter*s|ize) / s|
|00002c50| 69 7a 65 29 00 20 20 80 | 79 20 53 61 76 65 42 6c |ize). .|y SaveBl|
|00002c60| 69 74 7a 00 20 20 80 82 | 2e 6c 20 28 61 37 29 2b |itz. ..|.l (a7)+|
|00002c70| 2c 64 32 2d 64 37 2f 61 | 32 2d 61 36 00 20 20 80 |,d2-d7/a|2-a6. .|
|00002c80| 94 00 00 00 2e 78 6c 69 | 62 5f 66 73 65 65 6b 3a |.....xli|b_fseek:|
|00002c90| 00 20 20 3b 20 53 65 65 | 6b 20 74 6f 20 61 20 73 |. ; See|k to a s|
|00002ca0| 70 65 63 69 66 69 65 64 | 20 70 6f 69 6e 74 20 77 |pecified| point w|
|00002cb0| 69 74 68 69 6e 20 61 20 | 66 69 6c 65 00 00 20 20 |ithin a |file.. |
|00002cc0| 80 82 2e 6c 20 64 32 2d | 64 37 2f 61 32 2d 61 36 |...l d2-|d7/a2-a6|
|00002cd0| 2c 2d 28 61 37 29 00 20 | 20 80 79 20 52 65 73 74 |,-(a7). | .y Rest|
|00002ce0| 6f 72 65 42 6c 69 74 7a | 00 20 20 80 bd 20 61 30 |oreBlitz|. .. a0|
|00002cf0| 2c 66 6e 75 6d 2e 6c 00 | 20 20 80 bd 20 64 31 2c |,fnum.l.| .. d1,|
|00002d00| 6f 72 69 67 69 6e 2e 6c | 00 20 20 80 bd 20 64 30 |origin.l|. .. d0|
|00002d10| 2c 6f 66 66 73 65 74 2e | 6c 00 20 20 72 65 73 75 |,offset.|l. resu|
|00002d20| 6c 74 2e 6c 20 3d 20 30 | 00 20 20 80 0e 20 6f 72 |lt.l = 0|. .. or|
|00002d30| 69 67 69 6e 00 20 20 20 | 20 80 0f 20 30 00 20 20 |igin. | .. 0. |
|00002d40| 20 20 20 20 72 65 73 75 | 6c 74 2e 6c 20 3d 20 fe | resu|lt.l = .|
|00002d50| 07 28 66 6e 75 6d 2c 6f | 66 66 73 65 74 2c 23 4f |.(fnum,o|ffset,#O|
|00002d60| 46 46 53 45 54 5f 42 45 | 47 49 4e 4e 49 4e 47 29 |FFSET_BE|GINNING)|
|00002d70| 00 20 20 20 20 80 0f 20 | 31 00 20 20 20 20 20 20 |. .. |1. |
|00002d80| 72 65 73 75 6c 74 2e 6c | 20 3d 20 fe 07 28 66 6e |result.l| = ..(fn|
|00002d90| 75 6d 2c 6f 66 66 73 65 | 74 2c 23 4f 46 46 53 45 |um,offse|t,#OFFSE|
|00002da0| 54 5f 43 55 52 52 45 4e | 54 29 00 20 20 20 20 80 |T_CURREN|T). .|
|00002db0| 0f 20 32 00 20 20 20 20 | 20 20 72 65 73 75 6c 74 |. 2. | result|
|00002dc0| 2e 6c 20 3d 20 fe 07 28 | 66 6e 75 6d 2c 6f 66 66 |.l = ..(|fnum,off|
|00002dd0| 73 65 74 2c 23 4f 46 46 | 53 45 54 5f 45 4e 44 29 |set,#OFF|SET_END)|
|00002de0| 00 20 20 20 20 80 10 00 | 20 20 20 20 20 20 72 65 |. ...| re|
|00002df0| 73 75 6c 74 2e 6c 20 3d | 20 2d 31 00 20 20 80 02 |sult.l =| -1. ..|
|00002e00| 20 80 0e 00 20 20 80 29 | 20 64 30 2c 72 65 73 75 | ... .)| d0,resu|
|00002e10| 6c 74 2e 6c 00 20 20 80 | 79 20 53 61 76 65 42 6c |lt.l. .|y SaveBl|
|00002e20| 69 74 7a 00 20 20 80 82 | 2e 6c 20 28 61 37 29 2b |itz. ..|.l (a7)+|
|00002e30| 2c 64 32 2d 64 37 2f 61 | 32 2d 61 36 00 20 20 80 |,d2-d7/a|2-a6. .|
|00002e40| 94 00 00 00 2e 78 6c 69 | 62 5f 66 69 6e 66 6f 3a |.....xli|b_finfo:|
|00002e50| 00 20 20 3b 20 47 65 74 | 20 69 6e 66 6f 72 6d 61 |. ; Get| informa|
|00002e60| 74 69 6f 6e 20 6f 6e 20 | 61 20 67 69 76 65 6e 20 |tion on |a given |
|00002e70| 66 69 6c 65 00 00 20 20 | 80 82 2e 6c 20 64 32 2d |file.. |...l d2-|
|00002e80| 64 37 2f 61 32 2d 61 36 | 2c 2d 28 61 37 29 00 20 |d7/a2-a6|,-(a7). |
|00002e90| 20 80 79 20 52 65 73 74 | 6f 72 65 42 6c 69 74 7a | .y Rest|oreBlitz|
|00002ea0| 00 20 20 80 bd 20 61 30 | 2c 66 6e 61 6d 65 2e 6c |. .. a0|,fname.l|
|00002eb0| 00 20 20 80 bd 20 64 30 | 2c 74 79 70 65 6f 66 69 |. .. d0|,typeofi|
|00002ec0| 6e 66 6f 2e 6c 00 20 20 | 66 6e 61 6d 65 24 3d da |nfo.l. |fname$=.|
|00002ed0| 02 24 28 66 6e 61 6d 65 | 29 00 20 20 80 0e 20 74 |.$(fname|). .. t|
|00002ee0| 79 70 65 6f 66 69 6e 66 | 6f 00 20 20 20 20 80 0f |ypeofinf|o. ..|
|00002ef0| 20 31 00 20 20 20 20 20 | 20 72 65 73 75 6c 74 2e | 1. | result.|
|00002f00| 6c 3d be 15 28 66 6e 61 | 6d 65 24 29 00 20 20 20 |l=..(fna|me$). |
|00002f10| 20 80 0f 20 32 00 20 20 | 20 20 20 20 72 65 73 75 | .. 2. | resu|
|00002f20| 6c 74 2e 6c 3d 31 20 20 | 3b 20 41 4c 57 41 59 53 |lt.l=1 |; ALWAYS|
|00002f30| 20 53 45 4e 44 20 49 4e | 20 42 49 4e 41 52 59 20 | SEND IN| BINARY |
|00002f40| 4d 4f 44 45 00 20 20 20 | 20 80 10 00 20 20 20 20 |MODE. | ... |
|00002f50| 20 20 72 65 73 75 6c 74 | 2e 6c 3d 30 00 20 20 80 | result|.l=0. .|
|00002f60| 02 20 80 0e 00 20 20 80 | 29 20 64 30 2c 72 65 73 |. ... .|) d0,res|
|00002f70| 75 6c 74 2e 6c 00 20 20 | 80 79 20 53 61 76 65 42 |ult.l. |.y SaveB|
|00002f80| 6c 69 74 7a 00 20 20 80 | 82 2e 6c 20 28 61 37 29 |litz. .|..l (a7)|
|00002f90| 2b 2c 64 32 2d 64 37 2f | 61 32 2d 61 36 00 20 20 |+,d2-d7/|a2-a6. |
|00002fa0| 80 94 00 00 00 2e 78 6c | 69 62 5f 73 72 65 61 64 |......xl|ib_sread|
|00002fb0| 3a 00 20 20 3b 20 52 65 | 61 64 20 64 61 74 61 20 |:. ; Re|ad data |
|00002fc0| 66 72 6f 6d 20 73 65 72 | 69 61 6c 20 64 65 76 69 |from ser|ial devi|
|00002fd0| 63 65 00 00 20 20 80 82 | 2e 6c 20 64 32 2d 64 37 |ce.. ..|.l d2-d7|
|00002fe0| 2f 61 32 2d 61 36 2c 2d | 28 61 37 29 00 20 20 80 |/a2-a6,-|(a7). .|
|00002ff0| 79 20 52 65 73 74 6f 72 | 65 42 6c 69 74 7a 00 20 |y Restor|eBlitz. |
|00003000| 20 80 bd 20 61 30 2c 62 | 75 66 66 2e 6c 00 20 20 | .. a0,b|uff.l. |
|00003010| 80 bd 20 64 31 2c 74 69 | 6d 65 6f 75 74 2e 6c 00 |.. d1,ti|meout.l.|
|00003020| 20 20 80 bd 20 64 30 2c | 73 69 7a 65 2e 6c 00 20 | .. d0,|size.l. |
|00003030| 20 80 0b 20 43 68 65 63 | 6b 43 61 72 72 69 65 72 | .. Chec|kCarrier|
|00003040| 7b 7d 00 20 20 20 20 80 | 0b 20 74 69 6d 65 6f 75 |{}. .|. timeou|
|00003050| 74 2e 6c 20 3d 20 30 00 | 20 20 20 20 20 20 3b 20 |t.l = 0.| ; |
|00003060| 72 65 61 64 20 61 6c 6c | 20 61 76 61 69 6c 61 62 |read all| availab|
|00003070| 6c 65 20 63 68 61 72 61 | 63 74 65 72 73 20 69 6e |le chara|cters in|
|00003080| 20 62 75 66 66 65 72 00 | 20 20 20 20 20 20 2a 53 | buffer.| *S|
|00003090| 65 72 69 61 6c 49 4f 5c | 49 4f 53 65 72 5c 69 6f |erialIO\|IOSer\io|
|000030a0| 5f 43 6f 6d 6d 61 6e 64 | 20 3d 20 23 53 44 43 4d |_Command| = #SDCM|
|000030b0| 44 5f 51 55 45 52 59 00 | 20 20 20 20 20 20 fe c2 |D_QUERY.| ..|
|000030c0| 28 2a 53 65 72 69 61 6c | 49 4f 29 00 20 20 20 20 |(*Serial|IO). |
|000030d0| 20 20 80 0b 20 2a 53 65 | 72 69 61 6c 49 4f 5c 49 | .. *Se|rialIO\I|
|000030e0| 4f 53 65 72 5c 69 6f 5f | 41 63 74 75 61 6c 20 3c |OSer\io_|Actual <|
|000030f0| 20 73 69 7a 65 2e 6c 00 | 20 20 20 20 20 20 20 20 | size.l.| |
|00003100| 73 69 7a 65 2e 6c 20 3d | 20 2a 53 65 72 69 61 6c |size.l =| *Serial|
|00003110| 49 4f 5c 49 4f 53 65 72 | 5c 69 6f 5f 41 63 74 75 |IO\IOSer|\io_Actu|
|00003120| 61 6c 00 20 20 20 20 20 | 20 80 c0 00 20 20 20 20 |al. | ... |
|00003130| 20 20 80 0b 20 73 69 7a | 65 2e 6c 00 20 20 20 20 | .. siz|e.l. |
|00003140| 20 20 20 20 2a 53 65 72 | 69 61 6c 49 4f 5c 49 4f | *Ser|ialIO\IO|
|00003150| 53 65 72 5c 69 6f 5f 43 | 6f 6d 6d 61 6e 64 20 3d |Ser\io_C|ommand =|
|00003160| 20 23 43 4d 44 5f 52 45 | 41 44 00 20 20 20 20 20 | #CMD_RE|AD. |
|00003170| 20 20 20 2a 53 65 72 69 | 61 6c 49 4f 5c 49 4f 53 | *Seri|alIO\IOS|
|00003180| 65 72 5c 69 6f 5f 4c 65 | 6e 67 74 68 20 3d 20 73 |er\io_Le|ngth = s|
|00003190| 69 7a 65 2e 6c 00 20 20 | 20 20 20 20 20 20 2a 53 |ize.l. | *S|
|000031a0| 65 72 69 61 6c 49 4f 5c | 49 4f 53 65 72 5c 69 6f |erialIO\|IOSer\io|
|000031b0| 5f 44 61 74 61 20 3d 20 | 62 75 66 66 2e 6c 00 20 |_Data = |buff.l. |
|000031c0| 20 20 20 20 20 20 20 fe | c2 28 2a 53 65 72 69 61 | .|.(*Seria|
|000031d0| 6c 49 4f 29 00 20 20 20 | 20 20 20 80 c0 00 20 20 |lIO). | ... |
|000031e0| 20 20 20 20 72 65 73 75 | 6c 74 2e 6c 20 3d 20 73 | resu|lt.l = s|
|000031f0| 69 7a 65 2e 6c 00 20 20 | 20 20 80 22 00 20 20 20 |ize.l. | .". |
|00003200| 20 20 20 3b 20 72 65 61 | 64 20 66 72 6f 6d 20 73 | ; rea|d from s|
|00003210| 65 72 69 61 6c 20 75 6e | 74 69 6c 20 74 69 6d 65 |erial un|til time|
|00003220| 72 20 65 78 70 69 72 65 | 73 20 6f 72 20 62 75 66 |r expire|s or buf|
|00003230| 66 65 72 20 66 75 6c 6c | 00 00 20 20 20 20 20 20 |fer full|.. |
|00003240| 72 65 73 75 6c 74 2e 6c | 20 3d 20 30 00 00 20 20 |result.l| = 0.. |
|00003250| 20 20 20 20 2a 54 69 6d | 65 72 49 4f 5c 74 72 5f | *Tim|erIO\tr_|
|00003260| 6e 6f 64 65 5c 69 6f 5f | 43 6f 6d 6d 61 6e 64 20 |node\io_|Command |
|00003270| 3d 20 23 54 52 5f 41 44 | 44 52 45 51 55 45 53 54 |= #TR_AD|DREQUEST|
|00003280| 00 20 20 20 20 20 20 2a | 54 69 6d 65 72 49 4f 5c |. *|TimerIO\|
|00003290| 74 72 5f 74 69 6d 65 5c | 74 76 5f 73 65 63 73 20 |tr_time\|tv_secs |
|000032a0| 20 3d 20 74 69 6d 65 6f | 75 74 2f 31 30 30 30 30 | = timeo|ut/10000|
|000032b0| 30 30 00 20 20 20 20 20 | 20 2a 54 69 6d 65 72 49 |00. | *TimerI|
|000032c0| 4f 5c 74 72 5f 74 69 6d | 65 5c 74 76 5f 6d 69 63 |O\tr_tim|e\tv_mic|
|000032d0| 72 6f 20 3d 20 74 69 6d | 65 6f 75 74 20 80 b9 20 |ro = tim|eout .. |
|000032e0| 31 30 30 30 30 30 30 00 | 00 20 20 20 20 20 20 2a |1000000.|. *|
|000032f0| 53 65 72 69 61 6c 49 4f | 5c 49 4f 53 65 72 5c 69 |SerialIO|\IOSer\i|
|00003300| 6f 5f 43 6f 6d 6d 61 6e | 64 20 3d 20 23 43 4d 44 |o_Comman|d = #CMD|
|00003310| 5f 52 45 41 44 00 20 20 | 20 20 20 20 2a 53 65 72 |_READ. | *Ser|
|00003320| 69 61 6c 49 4f 5c 49 4f | 53 65 72 5c 69 6f 5f 4c |ialIO\IO|Ser\io_L|
|00003330| 65 6e 67 74 68 20 3d 20 | 73 69 7a 65 2e 6c 00 20 |ength = |size.l. |
|00003340| 20 20 20 20 20 2a 53 65 | 72 69 61 6c 49 4f 5c 49 | *Se|rialIO\I|
|00003350| 4f 53 65 72 5c 69 6f 5f | 44 61 74 61 20 3d 20 62 |OSer\io_|Data = b|
|00003360| 75 66 66 2e 6c 00 00 20 | 20 20 20 20 20 6d 61 73 |uff.l.. | mas|
|00003370| 6b 2e 6c 20 3d 20 28 31 | 20 80 44 20 2a 53 65 72 |k.l = (1| .D *Ser|
|00003380| 69 61 6c 4d 50 5c 6d 70 | 5f 53 69 67 42 69 74 29 |ialMP\mp|_SigBit)|
|00003390| 20 7c 20 28 31 20 80 44 | 20 2a 54 69 6d 65 72 4d | | (1 .D| *TimerM|
|000033a0| 50 5c 6d 70 5f 53 69 67 | 42 69 74 29 00 20 20 20 |P\mp_Sig|Bit). |
|000033b0| 20 20 20 3b 20 63 6c 65 | 61 72 20 73 69 67 6e 61 | ; cle|ar signa|
|000033c0| 6c 73 00 20 20 20 20 20 | 20 74 65 6d 70 2e 6c 20 |ls. | temp.l |
|000033d0| 3d 20 fe a9 28 20 30 20 | 2c 20 6d 61 73 6b 2e 6c |= ..( 0 |, mask.l|
|000033e0| 29 00 00 20 20 20 20 20 | 20 fe c3 28 2a 53 65 72 |).. | ..(*Ser|
|000033f0| 69 61 6c 49 4f 29 20 20 | 20 3b 20 53 74 61 72 74 |ialIO) | ; Start|
|00003400| 20 73 65 72 69 61 6c 20 | 72 65 61 64 00 20 20 20 | serial |read. |
|00003410| 20 20 20 fe c3 28 2a 54 | 69 6d 65 72 49 4f 29 20 | ..(*T|imerIO) |
|00003420| 20 20 20 3b 20 53 74 61 | 72 74 20 74 69 6d 65 72 | ; Sta|rt timer|
|00003430| 00 00 20 20 20 20 20 20 | 74 65 6d 70 2e 6c 20 3d |.. |temp.l =|
|00003440| 20 fe ab 28 6d 61 73 6b | 2e 6c 29 00 20 20 20 20 | ..(mask|.l). |
|00003450| 20 20 80 0b 20 28 74 65 | 6d 70 2e 6c 20 80 42 20 | .. (te|mp.l .B |
|00003460| 28 31 20 80 44 20 2a 53 | 65 72 69 61 6c 4d 50 5c |(1 .D *S|erialMP\|
|00003470| 6d 70 5f 53 69 67 42 69 | 74 29 29 00 20 20 20 20 |mp_SigBi|t)). |
|00003480| 20 20 20 20 3b 20 42 75 | 66 66 65 72 20 66 75 6c | ; Bu|ffer ful|
|00003490| 6c 00 20 20 20 20 20 20 | 20 20 3b 20 43 6c 65 61 |l. | ; Clea|
|000034a0| 72 20 53 65 72 69 61 6c | 20 6d 65 73 73 61 67 65 |r Serial| message|
|000034b0| 20 70 6f 72 74 00 20 20 | 20 20 20 20 20 20 fe c5 | port. | ..|
|000034c0| 28 2a 53 65 72 69 61 6c | 49 4f 29 00 20 20 20 20 |(*Serial|IO). |
|000034d0| 20 20 20 20 3b 20 61 62 | 6f 72 74 20 74 68 65 20 | ; ab|ort the |
|000034e0| 74 69 6d 65 72 00 20 20 | 20 20 20 20 20 20 80 0b |timer. | ..|
|000034f0| 20 fe c4 20 28 2a 54 69 | 6d 65 72 49 4f 29 3d 30 | .. (*Ti|merIO)=0|
|00003500| 20 80 21 20 fe c6 20 28 | 2a 54 69 6d 65 72 49 4f | .! .. (|*TimerIO|
|00003510| 29 00 20 20 20 20 20 20 | 20 20 fe c5 20 28 2a 54 |). | .. (*T|
|00003520| 69 6d 65 72 49 4f 29 00 | 20 20 20 20 20 20 20 20 |imerIO).| |
|00003530| 72 65 73 75 6c 74 2e 6c | 20 3d 20 2a 53 65 72 69 |result.l| = *Seri|
|00003540| 61 6c 49 4f 5c 49 4f 53 | 65 72 5c 69 6f 5f 41 63 |alIO\IOS|er\io_Ac|
|00003550| 74 75 61 6c 00 20 20 20 | 20 20 20 80 22 00 20 20 |tual. | .". |
|00003560| 20 20 20 20 20 20 80 0b | 20 28 74 65 6d 70 2e 6c | ..| (temp.l|
|00003570| 20 80 42 20 28 31 20 80 | 44 20 2a 54 69 6d 65 72 | .B (1 .|D *Timer|
|00003580| 4d 50 5c 6d 70 5f 53 69 | 67 42 69 74 29 29 00 20 |MP\mp_Si|gBit)). |
|00003590| 20 20 20 20 20 20 20 20 | 20 3b 20 54 69 6d 65 20 | | ; Time |
|000035a0| 75 70 00 20 20 20 20 20 | 20 20 20 20 20 3b 20 61 |up. | ; a|
|000035b0| 62 6f 72 74 20 73 65 72 | 69 61 6c 20 72 65 61 64 |bort ser|ial read|
|000035c0| 00 20 20 20 20 20 20 20 | 20 20 20 80 0b 20 fe c4 |. | .. ..|
|000035d0| 28 2a 53 65 72 69 61 6c | 49 4f 29 20 3d 30 20 80 |(*Serial|IO) =0 .|
|000035e0| 21 20 fe c6 28 2a 53 65 | 72 69 61 6c 49 4f 29 00 |! ..(*Se|rialIO).|
|000035f0| 20 20 20 20 20 20 20 20 | 20 20 fe c5 28 2a 53 65 | | ..(*Se|
|00003600| 72 69 61 6c 49 4f 29 00 | 20 20 20 20 20 20 20 20 |rialIO).| |
|00003610| 20 20 3b 20 43 6c 65 61 | 72 20 74 69 6d 65 72 20 | ; Clea|r timer |
|00003620| 6d 65 73 73 61 67 65 20 | 70 6f 72 74 00 20 20 20 |message |port. |
|00003630| 20 20 20 20 20 20 20 fe | c5 28 2a 54 69 6d 65 72 | .|.(*Timer|
|00003640| 49 4f 29 00 20 20 20 20 | 20 20 20 20 20 20 80 0b |IO). | ..|
|00003650| 20 2a 53 65 72 69 61 6c | 49 4f 5c 49 4f 53 65 72 | *Serial|IO\IOSer|
|00003660| 5c 69 6f 5f 41 63 74 75 | 61 6c 00 20 20 20 20 20 |\io_Actu|al. |
|00003670| 20 20 20 20 20 20 20 3b | 20 64 61 74 61 20 77 61 | ;| data wa|
|00003680| 73 20 72 65 61 64 00 20 | 20 20 20 20 20 20 20 20 |s read. | |
|00003690| 20 20 20 72 65 73 75 6c | 74 2e 6c 20 3d 20 2a 53 | resul|t.l = *S|
|000036a0| 65 72 69 61 6c 49 4f 5c | 49 4f 53 65 72 5c 69 6f |erialIO\|IOSer\io|
|000036b0| 5f 41 63 74 75 61 6c 00 | 20 20 20 20 20 20 20 20 |_Actual.| |
|000036c0| 20 20 80 22 00 20 20 20 | 20 20 20 20 20 20 20 20 | .". | |
|000036d0| 20 3b 20 71 75 65 72 79 | 20 73 65 72 69 61 6c 20 | ; query| serial |
|000036e0| 74 6f 20 62 65 20 73 75 | 72 65 00 20 20 20 20 20 |to be su|re. |
|000036f0| 20 20 20 20 20 20 20 2a | 53 65 72 69 61 6c 49 4f | *|SerialIO|
|00003700| 5c 49 4f 53 65 72 5c 69 | 6f 5f 43 6f 6d 6d 61 6e |\IOSer\i|o_Comman|
|00003710| 64 20 3d 20 23 53 44 43 | 4d 44 5f 51 55 45 52 59 |d = #SDC|MD_QUERY|
|00003720| 00 20 20 20 20 20 20 20 | 20 20 20 20 20 fe c2 28 |. | ..(|
|00003730| 2a 53 65 72 69 61 6c 49 | 4f 29 00 20 20 20 20 20 |*SerialI|O). |
|00003740| 20 20 20 20 20 20 20 80 | 0b 20 28 73 69 7a 65 20 | .|. (size |
|00003750| 3e 20 2a 53 65 72 69 61 | 6c 49 4f 5c 49 4f 53 65 |> *Seria|lIO\IOSe|
|00003760| 72 5c 69 6f 5f 41 63 74 | 75 61 6c 29 00 20 20 20 |r\io_Act|ual). |
|00003770| 20 20 20 20 20 20 20 20 | 20 20 20 73 69 7a 65 2e | | size.|
|00003780| 6c 20 3d 20 2a 53 65 72 | 69 61 6c 49 4f 5c 49 4f |l = *Ser|ialIO\IO|
|00003790| 53 65 72 5c 69 6f 5f 41 | 63 74 75 61 6c 00 20 20 |Ser\io_A|ctual. |
|000037a0| 20 20 20 20 20 20 20 20 | 20 20 80 c0 00 20 20 20 | | ... |
|000037b0| 20 20 20 20 20 20 20 20 | 20 80 0b 20 73 69 7a 65 | | .. size|
|000037c0| 2e 6c 00 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |.l. | |
|000037d0| 20 3b 20 72 65 61 64 20 | 27 65 6d 20 69 6e 21 00 | ; read |'em in!.|
|000037e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 2a 53 | | *S|
|000037f0| 65 72 69 61 6c 49 4f 5c | 49 4f 53 65 72 5c 69 6f |erialIO\|IOSer\io|
|00003800| 5f 43 6f 6d 6d 61 6e 64 | 20 3d 20 23 43 4d 44 5f |_Command| = #CMD_|
|00003810| 52 45 41 44 00 20 20 20 | 20 20 20 20 20 20 20 20 |READ. | |
|00003820| 20 20 20 2a 53 65 72 69 | 61 6c 49 4f 5c 49 4f 53 | *Seri|alIO\IOS|
|00003830| 65 72 5c 69 6f 5f 4c 65 | 6e 67 74 68 20 3d 20 73 |er\io_Le|ngth = s|
|00003840| 69 7a 65 2e 6c 00 20 20 | 20 20 20 20 20 20 20 20 |ize.l. | |
|00003850| 20 20 20 20 2a 53 65 72 | 69 61 6c 49 4f 5c 49 4f | *Ser|ialIO\IO|
|00003860| 53 65 72 5c 69 6f 5f 44 | 61 74 61 20 3d 20 62 75 |Ser\io_D|ata = bu|
|00003870| 66 66 2e 6c 00 20 20 20 | 20 20 20 20 20 20 20 20 |ff.l. | |
|00003880| 20 20 20 fe c2 28 2a 53 | 65 72 69 61 6c 49 4f 29 | ..(*S|erialIO)|
|00003890| 00 20 20 20 20 20 20 20 | 20 20 20 20 20 80 c0 00 |. | ...|
|000038a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 72 65 73 75 | | resu|
|000038b0| 6c 74 2e 6c 20 3d 20 73 | 69 7a 65 2e 6c 00 20 20 |lt.l = s|ize.l. |
|000038c0| 20 20 20 20 20 20 20 20 | 80 c0 00 20 20 20 20 20 | |... |
|000038d0| 20 20 20 80 c0 00 20 20 | 20 20 20 20 80 c0 00 20 | ... | ... |
|000038e0| 20 20 20 80 c0 00 20 20 | 80 22 00 20 20 20 20 72 | ... |.". r|
|000038f0| 65 73 75 6c 74 2e 6c 20 | 3d 20 2d 31 00 20 20 80 |esult.l |= -1. .|
|00003900| c0 00 20 20 80 29 20 64 | 30 2c 72 65 73 75 6c 74 |.. .) d|0,result|
|00003910| 2e 6c 00 20 20 80 79 20 | 53 61 76 65 42 6c 69 74 |.l. .y |SaveBlit|
|00003920| 7a 00 20 20 80 82 2e 6c | 20 28 61 37 29 2b 2c 64 |z. ...l| (a7)+,d|
|00003930| 32 2d 64 37 2f 61 32 2d | 61 36 00 20 20 80 94 00 |2-d7/a2-|a6. ...|
|00003940| 00 00 2e 78 6c 69 62 5f | 67 65 74 73 3a 00 20 20 |...xlib_|gets:. |
|00003950| 80 81 2e 6c 20 23 30 2c | 64 30 00 20 20 80 94 00 |...l #0,|d0. ...|
|00003960| 00 00 2e 78 6c 69 62 5f | 66 66 69 72 73 74 3a 00 |...xlib_|ffirst:.|
|00003970| 20 20 3b 20 52 65 74 75 | 72 6e 20 6e 61 6d 65 20 | ; Retu|rn name |
|00003980| 6f 66 20 66 69 6c 65 20 | 74 6f 20 73 65 6e 64 00 |of file |to send.|
|00003990| 00 20 20 80 82 2e 6c 20 | 64 32 2d 64 37 2f 61 32 |. ...l |d2-d7/a2|
|000039a0| 2d 61 36 2c 2d 28 61 37 | 29 00 20 20 80 79 20 52 |-a6,-(a7|). .y R|
|000039b0| 65 73 74 6f 72 65 42 6c | 69 74 7a 00 20 20 80 bd |estoreBl|itz. ..|
|000039c0| 20 61 30 2c 62 75 66 66 | 2e 6c 00 20 20 80 bd 20 | a0,buff|.l. .. |
|000039d0| 61 31 2c 66 6e 61 6d 65 | 2e 6c 00 00 20 20 80 0b |a1,fname|.l.. ..|
|000039e0| 20 c0 03 28 53 65 6e 64 | 24 28 29 29 00 20 20 20 | ..(Send|$()). |
|000039f0| 20 da 01 24 20 62 75 66 | 66 2c 20 53 65 6e 64 24 | ..$ buf|f, Send$|
|00003a00| 28 29 00 20 20 20 20 72 | 65 73 75 6c 74 2e 6c 20 |(). r|esult.l |
|00003a10| 3d 20 2d 31 00 20 20 80 | 22 00 20 20 20 20 3b 20 |= -1. .|". ; |
|00003a20| 41 6c 6c 20 66 69 6c 65 | 73 20 73 65 6e 74 00 20 |All file|s sent. |
|00003a30| 20 20 20 72 65 73 75 6c | 74 2e 6c 20 3d 20 30 00 | resul|t.l = 0.|
|00003a40| 20 20 80 c0 00 00 20 20 | 80 29 20 64 30 2c 72 65 | .... |.) d0,re|
|00003a50| 73 75 6c 74 2e 6c 00 20 | 20 80 79 20 53 61 76 65 |sult.l. | .y Save|
|00003a60| 42 6c 69 74 7a 00 20 20 | 80 82 2e 6c 20 28 61 37 |Blitz. |...l (a7|
|00003a70| 29 2b 2c 64 32 2d 64 37 | 2f 61 32 2d 61 36 00 20 |)+,d2-d7|/a2-a6. |
|00003a80| 20 80 94 00 00 00 2e 78 | 6c 69 62 5f 73 77 72 69 | ......x|lib_swri|
|00003a90| 74 65 3a 00 20 20 3b 20 | 53 65 6e 64 20 6d 65 6d |te:. ; |Send mem|
|00003aa0| 6f 72 79 20 62 6c 6f 63 | 6b 20 74 68 72 6f 75 67 |ory bloc|k throug|
|00003ab0| 68 20 73 65 72 69 61 6c | 00 00 20 20 80 82 2e 6c |h serial|.. ...l|
|00003ac0| 20 64 32 2d 64 37 2f 61 | 32 2d 61 36 2c 2d 28 61 | d2-d7/a|2-a6,-(a|
|00003ad0| 37 29 00 20 20 80 79 20 | 52 65 73 74 6f 72 65 42 |7). .y |RestoreB|
|00003ae0| 6c 69 74 7a 00 20 20 80 | bd 20 61 30 2c 62 75 66 |litz. .|. a0,buf|
|00003af0| 66 2e 6c 00 20 20 80 bd | 20 64 30 2c 73 69 7a 65 |f.l. ..| d0,size|
|00003b00| 2e 6c 00 20 20 80 0b 20 | 43 68 65 63 6b 43 61 72 |.l. .. |CheckCar|
|00003b10| 72 69 65 72 7b 7d 00 20 | 20 20 20 2a 53 65 72 69 |rier{}. | *Seri|
|00003b20| 61 6c 49 4f 5c 49 4f 53 | 65 72 5c 69 6f 5f 43 6f |alIO\IOS|er\io_Co|
|00003b30| 6d 6d 61 6e 64 20 3d 20 | 23 43 4d 44 5f 57 52 49 |mmand = |#CMD_WRI|
|00003b40| 54 45 00 20 20 20 20 2a | 53 65 72 69 61 6c 49 4f |TE. *|SerialIO|
|00003b50| 5c 49 4f 53 65 72 5c 69 | 6f 5f 4c 65 6e 67 74 68 |\IOSer\i|o_Length|
|00003b60| 20 3d 20 73 69 7a 65 2e | 6c 00 20 20 20 20 2a 53 | = size.|l. *S|
|00003b70| 65 72 69 61 6c 49 4f 5c | 49 4f 53 65 72 5c 69 6f |erialIO\|IOSer\io|
|00003b80| 5f 44 61 74 61 20 3d 20 | 62 75 66 66 2e 6c 00 20 |_Data = |buff.l. |
|00003b90| 20 20 20 fe c2 28 2a 53 | 65 72 69 61 6c 49 4f 29 | ..(*S|erialIO)|
|00003ba0| 00 20 20 20 20 72 65 73 | 75 6c 74 2e 6c 20 3d 20 |. res|ult.l = |
|00003bb0| 30 00 20 20 80 22 00 20 | 20 20 20 72 65 73 75 6c |0. .". | resul|
|00003bc0| 74 2e 6c 20 3d 20 2d 31 | 00 20 20 80 c0 00 20 20 |t.l = -1|. ... |
|00003bd0| 80 29 20 64 30 2c 72 65 | 73 75 6c 74 2e 6c 00 20 |.) d0,re|sult.l. |
|00003be0| 20 80 79 20 53 61 76 65 | 42 6c 69 74 7a 00 20 20 | .y Save|Blitz. |
|00003bf0| 80 82 2e 6c 20 28 61 37 | 29 2b 2c 64 32 2d 64 37 |...l (a7|)+,d2-d7|
|00003c00| 2f 61 32 2d 61 36 00 20 | 20 80 94 00 00 00 2e 78 |/a2-a6. | ......x|
|00003c10| 6c 69 62 5f 73 66 6c 75 | 73 68 3a 00 20 20 3b 20 |lib_sflu|sh:. ; |
|00003c20| 46 6c 75 73 68 20 73 65 | 72 69 61 6c 20 62 75 66 |Flush se|rial buf|
|00003c30| 66 65 72 00 00 20 20 80 | 82 2e 6c 20 64 32 2d 64 |fer.. .|..l d2-d|
|00003c40| 37 2f 61 32 2d 61 36 2c | 2d 28 61 37 29 00 20 20 |7/a2-a6,|-(a7). |
|00003c50| 80 79 20 52 65 73 74 6f | 72 65 42 6c 69 74 7a 00 |.y Resto|reBlitz.|
|00003c60| 20 20 2a 53 65 72 69 61 | 6c 49 4f 5c 49 4f 53 65 | *Seria|lIO\IOSe|
|00003c70| 72 5c 69 6f 5f 43 6f 6d | 6d 61 6e 64 20 3d 20 23 |r\io_Com|mand = #|
|00003c80| 43 4d 44 5f 43 4c 45 41 | 52 00 20 20 fe c2 28 2a |CMD_CLEA|R. ..(*|
|00003c90| 53 65 72 69 61 6c 49 4f | 29 00 20 20 80 81 2e 6c |SerialIO|). ...l|
|00003ca0| 20 23 30 2c 64 30 00 20 | 20 80 79 20 53 61 76 65 | #0,d0. | .y Save|
|00003cb0| 42 6c 69 74 7a 00 20 20 | 80 82 2e 6c 20 28 61 37 |Blitz. |...l (a7|
|00003cc0| 29 2b 2c 64 32 2d 64 37 | 2f 61 32 2d 61 36 00 20 |)+,d2-d7|/a2-a6. |
|00003cd0| 20 80 94 00 00 00 2e 78 | 6c 69 62 5f 75 6e 6c 69 | ......x|lib_unli|
|00003ce0| 6e 6b 00 20 20 3b 20 44 | 65 6c 65 74 65 20 66 69 |nk. ; D|elete fi|
|00003cf0| 6c 65 00 00 20 20 80 82 | 2e 6c 20 64 32 2d 64 37 |le.. ..|.l d2-d7|
|00003d00| 2f 61 32 2d 61 36 2c 2d | 28 61 37 29 00 20 20 80 |/a2-a6,-|(a7). .|
|00003d10| 79 20 52 65 73 74 6f 72 | 65 42 6c 69 74 7a 00 20 |y Restor|eBlitz. |
|00003d20| 20 80 bd 20 61 30 2c 66 | 6e 61 6d 65 2e 6c 00 20 | .. a0,f|name.l. |
|00003d30| 20 be 03 20 da 02 24 28 | 66 6e 61 6d 65 29 00 20 | .. ..$(|fname). |
|00003d40| 20 80 81 2e 6c 20 23 30 | 2c 64 30 20 20 20 20 20 | ...l #0|,d0 |
|00003d50| 20 20 20 20 20 20 20 3b | 20 61 6c 77 61 79 73 20 | ;| always |
|00003d60| 72 65 74 75 72 6e 20 73 | 75 63 63 65 73 73 66 75 |return s|uccessfu|
|00003d70| 6c 00 20 20 80 79 20 53 | 61 76 65 42 6c 69 74 7a |l. .y S|aveBlitz|
|00003d80| 00 20 20 80 82 2e 6c 20 | 28 61 37 29 2b 2c 64 32 |. ...l |(a7)+,d2|
|00003d90| 2d 64 37 2f 61 32 2d 61 | 36 00 20 20 80 94 00 00 |-d7/a2-a|6. ....|
|00003da0| 00 2e 78 6c 69 62 5f 73 | 71 75 65 72 79 3a 00 20 |..xlib_s|query:. |
|00003db0| 20 3b 20 67 65 74 20 6e | 75 6d 62 65 72 20 6f 66 | ; get n|umber of|
|00003dc0| 20 62 79 74 65 73 20 69 | 6e 20 73 65 72 69 61 6c | bytes i|n serial|
|00003dd0| 20 62 75 66 66 65 72 00 | 00 20 20 80 82 2e 6c 20 | buffer.|. ...l |
|00003de0| 64 32 2d 64 37 2f 61 32 | 2d 61 36 2c 2d 28 61 37 |d2-d7/a2|-a6,-(a7|
|00003df0| 29 00 20 20 80 79 20 52 | 65 73 74 6f 72 65 42 6c |). .y R|estoreBl|
|00003e00| 69 74 7a 00 20 20 2a 53 | 65 72 69 61 6c 49 4f 5c |itz. *S|erialIO\|
|00003e10| 49 4f 53 65 72 5c 69 6f | 5f 43 6f 6d 6d 61 6e 64 |IOSer\io|_Command|
|00003e20| 20 3d 20 23 53 44 43 4d | 44 5f 51 55 45 52 59 00 | = #SDCM|D_QUERY.|
|00003e30| 20 20 fe c2 28 2a 53 65 | 72 69 61 6c 49 4f 29 00 | ..(*Se|rialIO).|
|00003e40| 20 20 80 29 20 64 30 2c | 2a 53 65 72 69 61 6c 49 | .) d0,|*SerialI|
|00003e50| 4f 5c 49 4f 53 65 72 5c | 69 6f 5f 41 63 74 75 61 |O\IOSer\|io_Actua|
|00003e60| 6c 00 20 20 80 79 20 53 | 61 76 65 42 6c 69 74 7a |l. .y S|aveBlitz|
|00003e70| 00 20 20 80 82 2e 6c 20 | 28 61 37 29 2b 2c 64 32 |. ...l |(a7)+,d2|
|00003e80| 2d 64 37 2f 61 32 2d 61 | 36 00 20 20 80 94 00 00 |-d7/a2-a|6. ....|
|00003e90| 00 2e 78 6c 69 62 5f 63 | 68 6b 61 62 6f 72 74 3a |..xlib_c|hkabort:|
|00003ea0| 00 20 20 3b 20 63 68 65 | 63 6b 20 66 6f 72 20 75 |. ; che|ck for u|
|00003eb0| 73 65 72 20 61 62 6f 72 | 74 00 00 20 20 80 82 2e |ser abor|t.. ...|
|00003ec0| 6c 20 64 32 2d 64 37 2f | 61 32 2d 61 36 2c 2d 28 |l d2-d7/|a2-a6,-(|
|00003ed0| 61 37 29 00 20 20 80 79 | 20 52 65 73 74 6f 72 65 |a7). .y| Restore|
|00003ee0| 42 6c 69 74 7a 00 20 20 | 80 0b 20 c5 03 20 3d 20 |Blitz. |.. .. = |
|00003ef0| 24 32 30 30 00 20 20 20 | 20 72 65 73 75 6c 74 2e |$200. | result.|
|00003f00| 6c 20 3d 20 31 00 20 20 | 80 22 00 20 20 20 20 72 |l = 1. |.". r|
|00003f10| 65 73 75 6c 74 2e 6c 20 | 3d 20 30 00 20 20 80 c0 |esult.l |= 0. ..|
|00003f20| 00 20 20 80 29 20 64 30 | 2c 72 65 73 75 6c 74 2e |. .) d0|,result.|
|00003f30| 6c 00 20 20 80 79 20 53 | 61 76 65 42 6c 69 74 7a |l. .y S|aveBlitz|
|00003f40| 00 20 20 80 82 2e 6c 20 | 28 61 37 29 2b 2c 64 32 |. ...l |(a7)+,d2|
|00003f50| 2d 64 37 2f 61 32 2d 61 | 36 00 20 20 80 94 00 00 |-d7/a2-a|6. ....|
|00003f60| 00 2e 52 65 73 74 6f 72 | 65 42 6c 69 74 7a 3a 00 |..Restor|eBlitz:.|
|00003f70| 20 20 80 7e 2e 6c 20 61 | 34 73 74 6f 72 65 2c 61 | .~.l a|4store,a|
|00003f80| 34 00 20 20 80 7e 2e 6c | 20 61 35 73 74 6f 72 65 |4. .~.l| a5store|
|00003f90| 2c 61 35 00 20 20 80 7e | 2e 6c 20 61 36 73 74 6f |,a5. .~|.l a6sto|
|00003fa0| 72 65 2c 61 36 00 20 20 | 80 94 00 00 00 2e 53 61 |re,a6. |......Sa|
|00003fb0| 76 65 42 6c 69 74 7a 3a | 00 20 20 80 7e 2e 6c 20 |veBlitz:|. .~.l |
|00003fc0| 61 34 2c 61 34 73 74 6f | 72 65 00 20 20 80 7e 2e |a4,a4sto|re. .~.|
|00003fd0| 6c 20 61 35 2c 61 35 73 | 74 6f 72 65 00 20 20 80 |l a5,a5s|tore. .|
|00003fe0| 7e 2e 6c 20 61 36 2c 61 | 36 73 74 6f 72 65 00 20 |~.l a6,a|6store. |
|00003ff0| 20 80 94 00 00 00 61 34 | 73 74 6f 72 65 3a 00 20 | .....a4|store:. |
|00004000| 20 80 26 2e 6c 20 31 00 | 61 35 73 74 6f 72 65 3a | .&.l 1.|a5store:|
|00004010| 00 20 20 80 26 2e 6c 20 | 31 00 61 36 73 74 6f 72 |. .&.l |1.a6stor|
|00004020| 65 3a 00 20 20 80 26 2e | 6c 20 31 00 20 20 80 27 |e:. .&.|l 1. .'|
|00004030| 00 00 00 2e 78 6c 69 62 | 5f 75 70 64 61 74 65 00 |....xlib|_update.|
|00004040| 20 20 80 82 2e 6c 20 64 | 32 2d 64 37 2f 61 32 2d | ...l d|2-d7/a2-|
|00004050| 61 36 2c 2d 28 61 37 29 | 00 20 20 80 79 20 52 65 |a6,-(a7)|. .y Re|
|00004060| 73 74 6f 72 65 42 6c 69 | 74 7a 00 20 20 80 bd 20 |storeBli|tz. .. |
|00004070| 61 30 2c 2a 75 70 64 61 | 74 65 73 74 72 75 63 74 |a0,*upda|testruct|
|00004080| 2e 58 50 52 5f 55 50 44 | 41 54 45 00 00 20 20 80 |.XPR_UPD|ATE.. .|
|00004090| 0b 20 80 89 20 43 6f 6e | 66 69 67 5c 58 50 52 57 |. .. Con|fig\XPRW|
|000040a0| 69 6e 64 6f 77 4f 70 65 | 6e 00 20 20 20 20 3b 20 |indowOpe|n. ; |
|000040b0| 57 69 6e 64 6f 77 20 6e | 6f 74 20 6f 70 65 6e 2c |Window n|ot open,|
|000040c0| 20 20 4f 70 65 6e 20 74 | 72 61 6e 73 66 65 72 20 | Open t|ransfer |
|000040d0| 77 69 6e 64 6f 77 00 20 | 20 20 20 4f 70 65 6e 54 |window. | OpenT|
|000040e0| 72 61 6e 73 66 65 72 57 | 69 6e 64 6f 77 7b 7d 00 |ransferW|indow{}.|
|000040f0| 20 20 20 20 43 6f 6e 66 | 69 67 5c 58 50 52 57 69 | Conf|ig\XPRWi|
|00004100| 6e 64 6f 77 4f 70 65 6e | 20 3d 20 bc 0e 00 20 20 |ndowOpen| = ... |
|00004110| 80 c0 00 00 20 20 80 0b | 20 28 2a 75 70 64 61 74 |.... ..| (*updat|
|00004120| 65 73 74 72 75 63 74 5c | 78 70 72 75 5f 75 70 64 |estruct\|xpru_upd|
|00004130| 61 74 65 6d 61 73 6b 20 | 80 42 20 23 58 50 52 55 |atemask |.B #XPRU|
|00004140| 5f 50 52 4f 54 4f 43 4f | 4c 29 00 20 20 20 20 c6 |_PROTOCO|L). .|
|00004150| 93 20 30 2c 35 30 2c 23 | 47 54 54 58 5f 54 65 78 |. 0,50,#|GTTX_Tex|
|00004160| 74 2c da 02 24 28 2a 75 | 70 64 61 74 65 73 74 72 |t,..$(*u|pdatestr|
|00004170| 75 63 74 5c 78 70 72 75 | 5f 70 72 6f 74 6f 63 6f |uct\xpru|_protoco|
|00004180| 6c 29 00 20 20 80 c0 00 | 00 20 20 80 0b 20 28 2a |l). ...|. .. (*|
|00004190| 75 70 64 61 74 65 73 74 | 72 75 63 74 5c 78 70 72 |updatest|ruct\xpr|
|000041a0| 75 5f 75 70 64 61 74 65 | 6d 61 73 6b 20 80 42 20 |u_update|mask .B |
|000041b0| 23 58 50 52 55 5f 46 49 | 4c 45 4e 41 4d 45 29 00 |#XPRU_FI|LENAME).|
|000041c0| 20 20 20 20 c6 93 20 30 | 2c 35 31 2c 23 47 54 54 | .. 0|,51,#GTT|
|000041d0| 58 5f 54 65 78 74 2c da | 02 24 28 2a 75 70 64 61 |X_Text,.|.$(*upda|
|000041e0| 74 65 73 74 72 75 63 74 | 5c 78 70 72 75 5f 66 69 |testruct|\xpru_fi|
|000041f0| 6c 65 6e 61 6d 65 29 00 | 20 20 80 c0 00 00 20 20 |lename).| .... |
|00004200| 80 0b 20 28 2a 75 70 64 | 61 74 65 73 74 72 75 63 |.. (*upd|atestruc|
|00004210| 74 5c 78 70 72 75 5f 75 | 70 64 61 74 65 6d 61 73 |t\xpru_u|pdatemas|
|00004220| 6b 20 80 42 20 23 58 50 | 52 55 5f 46 49 4c 45 53 |k .B #XP|RU_FILES|
|00004230| 49 5a 45 29 00 20 20 20 | 20 c6 93 20 30 2c 35 32 |IZE). | .. 0,52|
|00004240| 2c 23 47 54 4e 4d 5f 4e | 75 6d 62 65 72 2c 2a 75 |,#GTNM_N|umber,*u|
|00004250| 70 64 61 74 65 73 74 72 | 75 63 74 5c 78 70 72 75 |pdatestr|uct\xpru|
|00004260| 5f 66 69 6c 65 73 69 7a | 65 00 20 20 80 c0 00 00 |_filesiz|e. ....|
|00004270| 20 20 80 0b 20 28 2a 75 | 70 64 61 74 65 73 74 72 | .. (*u|pdatestr|
|00004280| 75 63 74 5c 78 70 72 75 | 5f 75 70 64 61 74 65 6d |uct\xpru|_updatem|
|00004290| 61 73 6b 20 80 42 20 23 | 58 50 52 55 5f 4d 53 47 |ask .B #|XPRU_MSG|
|000042a0| 29 00 20 20 20 20 c6 93 | 20 30 2c 35 33 2c 23 47 |). ..| 0,53,#G|
|000042b0| 54 54 58 5f 54 65 78 74 | 2c da 02 24 28 2a 75 70 |TTX_Text|,..$(*up|
|000042c0| 64 61 74 65 73 74 72 75 | 63 74 5c 78 70 72 75 5f |datestru|ct\xpru_|
|000042d0| 6d 73 67 29 00 20 20 80 | c0 00 00 20 20 80 0b 20 |msg). .|... .. |
|000042e0| 28 2a 75 70 64 61 74 65 | 73 74 72 75 63 74 5c 78 |(*update|struct\x|
|000042f0| 70 72 75 5f 75 70 64 61 | 74 65 6d 61 73 6b 20 80 |pru_upda|temask .|
|00004300| 42 20 23 58 50 52 55 5f | 45 52 52 4f 52 4d 53 47 |B #XPRU_|ERRORMSG|
|00004310| 29 00 20 20 20 20 c6 93 | 20 30 2c 35 34 2c 23 47 |). ..| 0,54,#G|
|00004320| 54 54 58 5f 54 65 78 74 | 2c da 02 24 28 2a 75 70 |TTX_Text|,..$(*up|
|00004330| 64 61 74 65 73 74 72 75 | 63 74 5c 78 70 72 75 5f |datestru|ct\xpru_|
|00004340| 65 72 72 6f 72 6d 73 67 | 29 00 20 20 80 c0 00 00 |errormsg|). ....|
|00004350| 20 20 80 0b 20 28 2a 75 | 70 64 61 74 65 73 74 72 | .. (*u|pdatestr|
|00004360| 75 63 74 5c 78 70 72 75 | 5f 75 70 64 61 74 65 6d |uct\xpru|_updatem|
|00004370| 61 73 6b 20 80 42 20 23 | 58 50 52 55 5f 42 4c 4f |ask .B #|XPRU_BLO|
|00004380| 43 4b 53 29 00 20 20 20 | 20 c6 93 20 30 2c 35 35 |CKS). | .. 0,55|
|00004390| 2c 23 47 54 4e 4d 5f 4e | 75 6d 62 65 72 2c 2a 75 |,#GTNM_N|umber,*u|
|000043a0| 70 64 61 74 65 73 74 72 | 75 63 74 5c 78 70 72 75 |pdatestr|uct\xpru|
|000043b0| 5f 62 6c 6f 63 6b 73 00 | 20 20 80 c0 00 00 20 20 |_blocks.| .... |
|000043c0| 80 0b 20 28 2a 75 70 64 | 61 74 65 73 74 72 75 63 |.. (*upd|atestruc|
|000043d0| 74 5c 78 70 72 75 5f 75 | 70 64 61 74 65 6d 61 73 |t\xpru_u|pdatemas|
|000043e0| 6b 20 80 42 20 23 58 50 | 52 55 5f 42 4c 4f 43 4b |k .B #XP|RU_BLOCK|
|000043f0| 53 49 5a 45 29 00 20 20 | 20 20 c6 93 20 30 2c 35 |SIZE). | .. 0,5|
|00004400| 36 2c 23 47 54 4e 4d 5f | 4e 75 6d 62 65 72 2c 2a |6,#GTNM_|Number,*|
|00004410| 75 70 64 61 74 65 73 74 | 72 75 63 74 5c 78 70 72 |updatest|ruct\xpr|
|00004420| 75 5f 62 6c 6f 63 6b 73 | 69 7a 65 00 20 20 80 c0 |u_blocks|ize. ..|
|00004430| 00 00 20 20 80 0b 20 28 | 2a 75 70 64 61 74 65 73 |.. .. (|*updates|
|00004440| 74 72 75 63 74 5c 78 70 | 72 75 5f 75 70 64 61 74 |truct\xp|ru_updat|
|00004450| 65 6d 61 73 6b 20 80 42 | 20 23 58 50 52 55 5f 42 |emask .B| #XPRU_B|
|00004460| 59 54 45 53 29 00 20 20 | 20 20 c6 93 20 30 2c 35 |YTES). | .. 0,5|
|00004470| 37 2c 23 47 54 4e 4d 5f | 4e 75 6d 62 65 72 2c 2a |7,#GTNM_|Number,*|
|00004480| 75 70 64 61 74 65 73 74 | 72 75 63 74 5c 78 70 72 |updatest|ruct\xpr|
|00004490| 75 5f 62 79 74 65 73 00 | 20 20 80 c0 00 00 20 20 |u_bytes.| .... |
|000044a0| 80 0b 20 28 2a 75 70 64 | 61 74 65 73 74 72 75 63 |.. (*upd|atestruc|
|000044b0| 74 5c 78 70 72 75 5f 75 | 70 64 61 74 65 6d 61 73 |t\xpru_u|pdatemas|
|000044c0| 6b 20 80 42 20 23 58 50 | 52 55 5f 45 52 52 4f 52 |k .B #XP|RU_ERROR|
|000044d0| 53 29 00 20 20 20 20 c6 | 93 20 30 2c 35 38 2c 23 |S). .|. 0,58,#|
|000044e0| 47 54 4e 4d 5f 4e 75 6d | 62 65 72 2c 2a 75 70 64 |GTNM_Num|ber,*upd|
|000044f0| 61 74 65 73 74 72 75 63 | 74 5c 78 70 72 75 5f 65 |atestruc|t\xpru_e|
|00004500| 72 72 6f 72 73 00 20 20 | 80 c0 00 00 20 20 80 0b |rrors. |.... ..|
|00004510| 20 28 2a 75 70 64 61 74 | 65 73 74 72 75 63 74 5c | (*updat|estruct\|
|00004520| 78 70 72 75 5f 75 70 64 | 61 74 65 6d 61 73 6b 20 |xpru_upd|atemask |
|00004530| 80 42 20 23 58 50 52 55 | 5f 54 49 4d 45 4f 55 54 |.B #XPRU|_TIMEOUT|
|00004540| 53 29 00 20 20 20 20 c6 | 93 20 30 2c 35 39 2c 23 |S). .|. 0,59,#|
|00004550| 47 54 4e 4d 5f 4e 75 6d | 62 65 72 2c 2a 75 70 64 |GTNM_Num|ber,*upd|
|00004560| 61 74 65 73 74 72 75 63 | 74 5c 78 70 72 75 5f 74 |atestruc|t\xpru_t|
|00004570| 69 6d 65 6f 75 74 73 00 | 20 20 80 c0 00 00 20 20 |imeouts.| .... |
|00004580| 80 0b 20 28 2a 75 70 64 | 61 74 65 73 74 72 75 63 |.. (*upd|atestruc|
|00004590| 74 5c 78 70 72 75 5f 75 | 70 64 61 74 65 6d 61 73 |t\xpru_u|pdatemas|
|000045a0| 6b 20 80 42 20 23 58 50 | 52 55 5f 50 41 43 4b 45 |k .B #XP|RU_PACKE|
|000045b0| 54 54 59 50 45 29 00 20 | 20 20 20 c6 93 20 30 2c |TTYPE). | .. 0,|
|000045c0| 36 30 2c 23 47 54 54 58 | 5f 54 65 78 74 2c da 02 |60,#GTTX|_Text,..|
|000045d0| 24 28 2a 75 70 64 61 74 | 65 73 74 72 75 63 74 5c |$(*updat|estruct\|
|000045e0| 78 70 72 75 5f 70 61 63 | 6b 65 74 74 79 70 65 29 |xpru_pac|kettype)|
|000045f0| 00 20 20 80 c0 00 00 20 | 20 80 0b 20 28 2a 75 70 |. .... | .. (*up|
|00004600| 64 61 74 65 73 74 72 75 | 63 74 5c 78 70 72 75 5f |datestru|ct\xpru_|
|00004610| 75 70 64 61 74 65 6d 61 | 73 6b 20 80 42 20 23 58 |updatema|sk .B #X|
|00004620| 50 52 55 5f 50 41 43 4b | 45 54 44 45 4c 41 59 29 |PRU_PACK|ETDELAY)|
|00004630| 00 20 20 20 20 c6 93 20 | 30 2c 36 31 2c 23 47 54 |. .. |0,61,#GT|
|00004640| 4e 4d 5f 4e 75 6d 62 65 | 72 2c 2a 75 70 64 61 74 |NM_Numbe|r,*updat|
|00004650| 65 73 74 72 75 63 74 5c | 78 70 72 75 5f 70 61 63 |estruct\|xpru_pac|
|00004660| 6b 65 74 64 65 6c 61 79 | 00 20 20 80 c0 00 00 20 |ketdelay|. .... |
|00004670| 20 80 0b 20 28 2a 75 70 | 64 61 74 65 73 74 72 75 | .. (*up|datestru|
|00004680| 63 74 5c 78 70 72 75 5f | 75 70 64 61 74 65 6d 61 |ct\xpru_|updatema|
|00004690| 73 6b 20 80 42 20 23 58 | 50 52 55 5f 43 48 41 52 |sk .B #X|PRU_CHAR|
|000046a0| 44 45 4c 41 59 29 00 20 | 20 20 20 c6 93 20 30 2c |DELAY). | .. 0,|
|000046b0| 36 32 2c 23 47 54 4e 4d | 5f 4e 75 6d 62 65 72 2c |62,#GTNM|_Number,|
|000046c0| 2a 75 70 64 61 74 65 73 | 74 72 75 63 74 5c 78 70 |*updates|truct\xp|
|000046d0| 72 75 5f 63 68 61 72 64 | 65 6c 61 79 00 20 20 80 |ru_chard|elay. .|
|000046e0| c0 00 00 20 20 80 0b 20 | 28 2a 75 70 64 61 74 65 |... .. |(*update|
|000046f0| 73 74 72 75 63 74 5c 78 | 70 72 75 5f 75 70 64 61 |struct\x|pru_upda|
|00004700| 74 65 6d 61 73 6b 20 80 | 42 20 23 58 50 52 55 5f |temask .|B #XPRU_|
|00004710| 42 4c 4f 43 4b 43 48 45 | 43 4b 29 00 20 20 20 20 |BLOCKCHE|CK). |
|00004720| c6 93 20 30 2c 36 33 2c | 23 47 54 54 58 5f 54 65 |.. 0,63,|#GTTX_Te|
|00004730| 78 74 2c da 02 24 28 2a | 75 70 64 61 74 65 73 74 |xt,..$(*|updatest|
|00004740| 72 75 63 74 5c 78 70 72 | 75 5f 62 6c 6f 63 6b 63 |ruct\xpr|u_blockc|
|00004750| 68 65 63 6b 29 00 20 20 | 80 c0 00 00 20 20 80 0b |heck). |.... ..|
|00004760| 20 28 2a 75 70 64 61 74 | 65 73 74 72 75 63 74 5c | (*updat|estruct\|
|00004770| 78 70 72 75 5f 75 70 64 | 61 74 65 6d 61 73 6b 20 |xpru_upd|atemask |
|00004780| 80 42 20 23 58 50 52 55 | 5f 45 58 50 45 43 54 54 |.B #XPRU|_EXPECTT|
|00004790| 49 4d 45 29 00 20 20 20 | 20 c6 93 20 30 2c 36 34 |IME). | .. 0,64|
|000047a0| 2c 23 47 54 54 58 5f 54 | 65 78 74 2c da 02 24 28 |,#GTTX_T|ext,..$(|
|000047b0| 2a 75 70 64 61 74 65 73 | 74 72 75 63 74 5c 78 70 |*updates|truct\xp|
|000047c0| 72 75 5f 65 78 70 65 63 | 74 74 69 6d 65 29 00 20 |ru_expec|ttime). |
|000047d0| 20 80 c0 00 00 20 20 80 | 0b 20 28 2a 75 70 64 61 | .... .|. (*upda|
|000047e0| 74 65 73 74 72 75 63 74 | 5c 78 70 72 75 5f 75 70 |testruct|\xpru_up|
|000047f0| 64 61 74 65 6d 61 73 6b | 20 80 42 20 23 58 50 52 |datemask| .B #XPR|
|00004800| 55 5f 45 4c 41 50 53 45 | 44 54 49 4d 45 29 00 20 |U_ELAPSE|DTIME). |
|00004810| 20 20 20 c6 93 20 30 2c | 36 35 2c 23 47 54 54 58 | .. 0,|65,#GTTX|
|00004820| 5f 54 65 78 74 2c da 02 | 24 28 2a 75 70 64 61 74 |_Text,..|$(*updat|
|00004830| 65 73 74 72 75 63 74 5c | 78 70 72 75 5f 65 6c 61 |estruct\|xpru_ela|
|00004840| 70 73 65 64 74 69 6d 65 | 29 00 20 20 80 c0 00 00 |psedtime|). ....|
|00004850| 20 20 80 0b 20 28 2a 75 | 70 64 61 74 65 73 74 72 | .. (*u|pdatestr|
|00004860| 75 63 74 5c 78 70 72 75 | 5f 75 70 64 61 74 65 6d |uct\xpru|_updatem|
|00004870| 61 73 6b 20 80 42 20 23 | 58 50 52 55 5f 44 41 54 |ask .B #|XPRU_DAT|
|00004880| 41 52 41 54 45 29 00 20 | 20 20 20 c6 93 20 30 2c |ARATE). | .. 0,|
|00004890| 36 36 2c 23 47 54 4e 4d | 5f 4e 75 6d 62 65 72 2c |66,#GTNM|_Number,|
|000048a0| 2a 75 70 64 61 74 65 73 | 74 72 75 63 74 5c 78 70 |*updates|truct\xp|
|000048b0| 72 75 5f 64 61 74 61 72 | 61 74 65 00 20 20 80 c0 |ru_datar|ate. ..|
|000048c0| 00 00 20 20 80 79 20 53 | 61 76 65 42 6c 69 74 7a |.. .y S|aveBlitz|
|000048d0| 00 20 20 80 82 2e 6c 20 | 28 61 37 29 2b 2c 64 32 |. ...l |(a7)+,d2|
|000048e0| 2d 64 37 2f 61 32 2d 61 | 36 00 20 20 80 94 00 00 |-d7/a2-a|6. ....|
|000048f0| 00 | |. | |
+--------+-------------------------+-------------------------+--------+--------+