home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 188 / 188.d81 / b.packer 1.2 / b.packer 1.080d / b.packer 1.a7ae (.txt)
Encoding:
Commodore BASIC  |  2000-01-01  |  10.5 KB  |  98 lines

  1. 10 poke55,0:poke56,22:clr:rem top=$1600
  2. 20 dv=peek(186):ifdv<8thendv=8
  3. 30 mr=5632:p=mr+12:b=mr+30:s=dv:t=dv
  4. 40 ml=9728:v=ml+21
  5. 100 :
  6. 110 print"[147]":poke53280,0:poke53281,0
  7. 120 poke788,52:poke650,128:sysmr+36
  8. 200 :
  9. 210 sysb,0,39,0,24,32,14
  10. 220 sysb,0,39,0,2,160,8
  11. 230 sysp,5,1,"[129][211] [212] [193] [210]   [208] [193] [195] [203] [197] [210]    1 . 2[146]"
  12. 240 gosub1040:sysb,0,39,7,17,0,17
  13. 300 sysp,13,9,"[146]- [205][193][201][206] [205][197][206][213] -":print
  14. 310 print"[198]1[154] [211]elect [211]ource [196]rive:[153]"s"[157] "
  15. 320 print"[198]3[154] [211]elect [212]arget [196]rive:[153]"t"[157] "
  16. 330 sysp,2,13,"[198]5[154] [211]elect [198]ile for [195]ompression[136][136] [194][154] [209]uit to [194][193][211][201][195]"
  17. 340 sysmr+21,"[133][134][135]b"
  18. 350 oni%+1goto340,800,900,500,5400
  19. 500 :
  20. 510 sysmr+66,"$:*",s,12800,0:sysb,0,39,3,23,32,14:sysp,1,4,"[158]"+t$+"  "+b$
  21. 520 sysp,3,20,"[195][210][211][210][158] / [210][197][212][213][210][206][158] to select [194][193][211][201][195] file"
  22. 530 sysp,1,21,"[200]ighlighted     [158]of        [198]7[158] to cancel"
  23. 540 sysp,3,23,"[205]aximum size allowed is 205 blocks"
  24. 550 sysmr+75,1876,1883,0:sysb,5,34,5,19,0,29:sysmr+69,6,255,6,18,14,3,12800
  25. 560 sysb,0,39,3,23,32,14:ifs%=0then240
  26. 570 goto2000
  27. 800 :
  28. 810 s=s+1-1*(s=13):ifs=17thens=8
  29. 820 close2:open2,s,2:close2:ifstthen810
  30. 830 goto300
  31. 900 :
  32. 910 t=t+1-1*(t=13):ift=17thent=8
  33. 920 close2:open2,t,2:close2:ifstthen910
  34. 930 goto300
  35. 1000 :
  36. 1010 sysp,7,8,"[159]occurrences    bytes saved[136][163][163][163][163][163][163][163][163][163][163][163]    [163][163][163][163][163][163][163][163][163][163][163]"
  37. 1020 sysp,16,10,"[159]  tiny[136] medium[136]  long[136] repeat[136]rvs font[136][136] totals"
  38. 1030 foro=1to6:sysp,10,9+o-(o=6),"[154]$----$----":next
  39. 1040 sysp,5,4,"[195]runching [198]rom: [154]$---- to [154]$----"
  40. 1050 sysp,2,6,"[207][204][196]: [153]$---- / [153]---    [206][197][215]: [153]$---- / [153]---"
  41. 1060 sysp,3,18,"[195]urrent [208]rogram [208]ack [212]ime: [153]-:--:--[154]"
  42. 1070 sysp,10,20,"[194]ytes to [195]heck $----"
  43. 1080 sysb,0,39,21,23,0,33:sysb,1,38,22,22,32,14
  44. 1090 sysp,0,24,"    by [204]ee [206]ovak   ([195]) 2000 [204]oadstar   ":return
  45. 2000 :
  46. 2010 gosub1040:sysb,0,39,7,17,0,17:co=2
  47. 2020 sysmr+27,9,"[154][198]ile [211]elected: [159]"+chr$(34)+f$+chr$(34)
  48. 2030 sysp,9,11,"[158][197]nter [195]runch [205]ode (1-9)"
  49. 2040 sysp,2,13,"1 fast/fair ...[154]...[159]...... 9 slow/good"
  50. 2050 sysp,14,15,"[158][198]7 to cancel"
  51. 2060 sysmr+21,"123456789[136]":ifi%=0then2060
  52. 2070 ifi%=10thensysb,0,39,7,17,32,14:goto240
  53. 2080 pokev,2^(i%-1)+(i%=9)
  54. 3000 :
  55. 3010 sysb,0,39,7,17,32,14:gosub1000
  56. 3020 a$="loading":gosub4000
  57. 3030 sysml+6,f$,s:e=peek(780):sysmr+57,"",s:b$="load error":ifval(e$)then5000
  58. 3040 ife=1thene$="[198]ile exceeds 51[203]":goto5000
  59. 3050 ife=2thene$="[204]oad address not 2049":goto5000
  60. 3100 :
  61. 3110 sysml+9:a$="packing":gosub4000
  62. 3120 sysml:e=peek(780):b$="pack error"
  63. 3130 poke53280,0:sysb,0,39,0,2,255,8
  64. 3140 ife=255thene$="[211][212][207][208] key cancelled packing":goto5000
  65. 3150 ife=128thene$="[208]ack buffer overflow!":goto5000
  66. 3160 sysml+3
  67. 3200 :
  68. 3210 sysmr+27,24,"[158][197]nter save name or [198]7 to cancel":sysp,1,22,"[154]filename:"
  69. 3220 sysmr+18,11,22,3,7,27,255,"[136]",f$:ifi%then240
  70. 3230 f$=w$:ifw$=""then3220
  71. 3240 a$="saving":gosub4000
  72. 3250 open2,t,2,f$+",s,r":close2
  73. 3260 sysmr+57,"",t:ifval(e$)=62then3300
  74. 3270 ifval(e$)<>0andval(e$)<>64then3320
  75. 3280 sysp,1,24,"[158][198]ile exists! [212]ry again or [198]7 to cancel":goto3220
  76. 3300 :
  77. 3310 open2,t,2,f$+",p,w":cmd2,;:sysml+15:print#2,;:close2:sysmr+57,"",t
  78. 3320 b$="save error":ifval(e$)then5000
  79. 3330 gosub1080:b$=chr$(34)+f$+chr$(34)+" saved!":co=5:goto5000
  80. 4000 :
  81. 4010 sysb,0,39,24,24,32,14:sysmr+27,24,"[154]"+a$+" "+chr$(34)+f$+chr$(34):return
  82. 5000 :
  83. 5010 poke198,0:sysmr+39,208
  84. 5020 sysb,0,39,7,17,0,17
  85. 5030 poke646,co:t$="[195][207][205][208][204][197][212][197] -"
  86. 5040 ifco=2thent$="[193][194][207][210][212][197][196] -"
  87. 5050 sysb,1,38,8,16,160,co
  88. 5060 sysp,8,9,"- [195][207][205][208][210][197][211][211][201][207][206] "+t$
  89. 5070 sysmr+27,11,b$:sysmr+27,13,e$
  90. 5080 sysp,2,15,"([208])eek [213]nder   ([205])ain [205]enu   ([194])asic[146]":sysmr+39,216
  91. 5100 sysmr+21,"pmb"
  92. 5110 oni%+1goto5100,5200,5300,5400
  93. 5200 sysmr+42,208
  94. 5210 geta$:ifa$=""then5210
  95. 5220 sysmr+42,216:goto5100
  96. 5300 sysmr+42,208:goto240
  97. 5400 poke55,0:poke56,160:clr:sys9746
  98.