home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / enterprs / c128 / util / csxmod.bas (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1991-12-31  |  5.3 KB  |  173 lines

  1. 1000 POKE 53280,0:POKE 53281,0
  2. 1010 PRINT"[147] WAIT SETTING UP ..."
  3. 1060 IP=12
  4. 1070 IF PEEK(IP*4096)=76 AND PEEK(IP*4096+24)=76 THEN 1100
  5. 1090 LOAD"CSX64.ML",8,1
  6. 1100 MEM=55:POKE MEM,0:POKE MEM+1,4*16:CLR:IP=12
  7. 1120 GOSUB 11000
  8. 1300 REM ----------
  9. 1600 PRINT "[197]NTER * FOR A DIRECTORY LISTING"
  10. 1603 INPUT "[159][197]NTER NAME OF ARCHIVE ";AR$:IF AR$="" THEN 1603
  11. 1605 IF AR$="*" THEN GOTO 7500
  12. 1610 IF RIGHT$(AR$,4)<>".ARC" THEN AR$=AR$+".ARC"
  13. 1620 INPUT "                [159][196]RIVE   0[157][157][157]";DR$
  14. 1630 IF DR$<>"0" AND DR$<>"1" THEN 1620
  15. 1640 INPUT "                 [159][213]NIT   8[157][157][157]";DV
  16. 1650 IF DV<8 OR DV >14 THEN 1640
  17. 1660 OPEN 15,DV,15:OPEN 2,DV,2,(DR$+":"+AR$+",R")
  18. 1661 PRINT"  OPEN 15,"DV",15"
  19. 1662 PRINT"  OPEN 2,"DV",2,("DR$":"AR$",R)"
  20. 1670 INPUT#15,E$,M$,T$,S$
  21. 1671 IF VAL(E$) THEN PRINT "[198]ILE "AR$"[146] DOES [206][207][212] EXIST ":GOTO 9500
  22. 1680 :
  23. 1690 PRINT "   [158][208][159])RINT"
  24. 1691 PRINT "   [158][214][159])ERIFY
  25. 1692 [153] "   SYSVALOPEN)XTRACT"
  26. 1693 [133] "   SYSLENHOOSE   (null) (null) VAL    ECMDCMDCMD";X$
  27. 1700 X$[178][199]([198](X$) [175] 127)
  28. 1710 [139] X$[178]"P" [176] X$[178]"V" [176] X$[178]"X" [176] X$[178]"E" [167] [153]:[137] 1730
  29. 1720 [137] 1690
  30. 1730 [139] X$[179][177]"X" [175] X$[179][177]"E" [167] 1780
  31. 1740 [139] X$[178]"X" [167] X$[178]"E"
  32. 1750 [133] "OPEN(null)UTPUT DRIVE    0CMDCMDCMD";DR$:[139] DR$[179][177]"0" [175] DR$[179][177]"1" [167] 1750
  33. 1760 [133] "OPEN(null)UTPUT UNIT     8CMDCMDCMD";DV:[139] DV[179]8 [176] DV[177]14 [167] 1760
  34. 1770 [159] 14,DV,15
  35. 1780 [151] MO, [198](X$):[151] AL,2:[151] OL,3
  36. 1800 :
  37. 1810 [158](IA)
  38. 1819 [143] ----------
  39. 1820 [153] " (null)EADING "AR$"WAIT INFO ... "
  40. 1821 [158](GH)
  41. 1822 [139] [194](ME)[178]0 [167] [153] "ATNLL DONE. VALND OF ARCHIVE.":[141] 9500
  42. 1829 [143] ----------
  43. 1830 [139] [194](E)[179][177]0 [167] [153] "STR$ISK ERROR OR FILE CORRUPT":[141]9000
  44. 1839 [143] ----------
  45. 1840 M[178][194](ME)
  46. 1841 [139] M[177]9 [167] [153] "(null)NKNOWN COMPRESSION METHOD":[141] 9000
  47. 1849 [143] ----------
  48. 1850 F$[178]"":F[178]0
  49. 1851 [153]"  ATN(null)LEN METHOD= ";[194](ME)" ";M$([194](ME))
  50. 1852 [153]"  ATN(null)LEN DATE  = ";[194](DT);[194](DT[170]1);[194](DT[170]2);[194](DT[170]3)
  51. 1859 [143] ----------
  52. 1860 C[178][194](FL[170]F)
  53. 1861 [139] (C [175] F[179]12) [167] F$[178]F$[170][199](C):F[178]F[170]1:[137] 1860
  54. 1869 [143] ----------
  55. 1870 L[178][194](LN)[170]256[172]([194](LN[170]1)[170]256[172]([194](LN[170]2)[170]256[172][194](LN[170]3)))
  56. 1879 [143] ----------
  57. 1880 A$[178][201](F$,4):Z$[178]"N"
  58. 1890 [139] A$[178]".TXT" [176] A$[178]".DOC" [176] A$[178]".PAS" [176] [201](F$,2)[178]".C" [167] Z$[178]"Y"
  59. 1900 :
  60. 1910 [153] " "[199](34)F$[199](34)[163]15)L" BYTES. WAIT"
  61. 1920 Y$[178]"":YY$[178]X$:[139] X$[178]"V" [167] 1990
  62. 1930 [133] "VALXTRACT  OPEN(Y/N)   YCMDCMDCMD";Y$
  63. 1940 [139] Y$[179][177]"Y" [175] Y$[179][177]"(null)" [167] Y$[178]"N":[151] MO,[198]("V"):X$[178]"V":[137]1990
  64. 1950 [153]:[153] "OPENLENONVERT FROM ATN(null)LENRIGHT$RIGHT$CLOSETO LENPEEK(null) ATN(null)LENRIGHT$RIGHT$   ";Z$;"CMDCMDCMD";:[133] Z$
  65. 1960 [139] Z$[179][177]"Y" [175] Z$[179][177]"N" [167] 1950
  66. 1970 [151] AS,1:[139] Z$[179][177]"Y" [167] [151] AS,0
  67. 1980 [139] X$[178]"P" [167] [153]:[153] ""
  68. 1990 [139] X$[179][177]"E" [167] [159] 3,3:[137] 2040
  69. 2000 [133]"OPENASCILE TYPE (SYSP OPENOR SYSSOPEN)  PCMDCMDCMD";FT$:[139]FT$[179][177]"P"[175]FT$[179][177]"S" [167]2000
  70. 2010 F$[178]DR$[170]":"[170]F$[170]","[170]FT$[170]",W"
  71. 2020 [159] 3,DV,3,F$
  72. 2021 [153] " OPEN 3,"DV",3,"F$
  73. 2022 [132]14,E$,M$,T$,S$
  74. 2030 [139] [197](E$) [167] [153] ""F$"WAIT EXIST ON THE DISK ":[137] 9500
  75. 2039 [143] --------
  76. 2040 [158](IE)
  77. 2041 [139] [194](E)[179][177]0 [167] [153]"STR$ISK ERROR OR ARCHIVE CORRUPT":[141] 9000
  78. 2049 [143] --------
  79. 2050 [158](DA):[160]3
  80. 2051 [139] X$[178]"E" [167] [132]14,E$,M$,T$,S$
  81. 2059 [143] --------
  82. 2060 [139] X$[178]"P" [167] [153]:[153]
  83. 2070 [139] [194](E)[178]1 [167] [153]"CLR LEN(null)LEN ERROR!   ";
  84. 2080 [139] [194](E)[178]0 [167] [153]"CLR (null)(null).   ";
  85. 2090 [139] [194](E)[178]3 [167] [153]"CLR (null)(null)(null)/(null)(null)(null)(null) PRESSED   ";
  86. 2100 [139] X$[178]"E"[167] [153] E$C$"M$"C$T$C$S$;
  87. 2110 [139] Y$[178]"N" [167] X$[178]YY$:[151] MO,[198](X$)
  88. 2120 [153]
  89. 2130 [137] 1820
  90. 7499 [143] ----- DIRECTORY ------
  91. 7500 K[178]3:R[178]1:[159] K,K:DR[178]0
  92. 7505 N$[178][199](0):H[178]256
  93. 7540 [159]1,8,0,"$"[170][202]([196](DR),2)
  94. 7545 [161]#1,A$,A$
  95. 7550 [161]#1,A$,A$,A$,A1$
  96. 7552 [139] ST [167] 7575
  97. 7555 D[178][198](A$[170]N$)[170][198](A1$[170]N$)[172]H
  98. 7557 [152]3,D;
  99. 7560 [161]#1,A$
  100. 7563 [139] A$[179][177]""[167] [152]3,A$;:[137] 7560
  101. 7565 R[178]R[170]1
  102. 7567 [139] R[178]2 [167] R[178]0:[152]3, :[137] 7550
  103. 7570 D$[178][196](D)
  104. 7573 [152]3,   [163]40);
  105. 7574 [137] 7550
  106. 7575 [160]1
  107. 7580 [137] 1600
  108. 7585 [143] ------------
  109. 9000 [153] "  VAL(null)(null)(null)(null) ..... "
  110. 9010 [153] "  LENONTINUING ANYWAY ..... "
  111. 9020 [142]
  112. 9500 [160]2:[160]3:[160]14:[160]15:[144]
  113. 11000 [143] ----- SET UP -------
  114. 11130 IA[178]IP[172]4096:[143] "RIGHT$NITIALIZE ARCHIVE
  115. 11140 GH=IA+3   :REM "[199]ET NEXT HEADER
  116. 11150 IE[178]GH[170]3   :[143] "RIGHT$NITIALIZE THIS ENTRY
  117. 11160 DA=IE+3   :REM "[204]OOP TO UN[193][210][195] THIS ENTRY
  118. 11170 GN[178]DA[170]3   :[143] "UNATN(null)LEN JUST ONE BYTE
  119. 11180 BO=GN+3   :REM "[194]UFFERED [195][200][210][207][213][212]
  120. 11190 CV[178]BO[170]3   :[143] "LENONVERT (null)TANDARD ATN(null)LENRIGHT$RIGHT$ TO LENPEEK(null) ATN(null)LENRIGHT$RIGHT$
  121. 11200 GE=CV+3   :REM "[198]ILL INPUT BUFFER
  122. 11210 PU[178]GE[170]3   :[143] "ASCLUSH OUTPUT BUFFER
  123. 11220 I0=PU+3   :REM "[208]OINTER TO START OF INPUT BUFFER
  124. 11230 I1[178]I0[170]2   :[143] "(null)OINTER TO END OF INPUT BUFFER
  125. 11240 O0=I1+2   :REM "[208]OINTER TO START OF OUTPUT BUFFER
  126. 11250 O1[178]O0[170]2   :[143] "(null)OINTER TO END OF OUTPUT BUFFER
  127. 11260 LC=O1+2   :REM "[201]NPUT BUFFER POINTER WHERE [197][207][198] OCCURED
  128. 11270 E[178]LC[170]2    :[143] "VALRROR RETURN CODE
  129. 11280 :
  130. 11290 ME=E+2    :REM "[195]OMPRESION METHOD
  131. 11300 FL[178]ME[170]1   :[143] "ATN(null)LENRIGHT$RIGHT$(null) FILENAME
  132. 11310 SL=FL+13  :REM "[211]QUEEZED LENGTH
  133. 11320 DT[178]SL[170]4   :[143] "STR$ATE
  134. 11330 TM=DT+2   :REM "[212]IME
  135. 11340 C0[178]TM[170]2   :[143] "LEN(null)LEN
  136. 11350 LN=C0+2   :REM "[213]N[211]QUEEZED (ORIGINAL) LENGTH
  137. 11360 :
  138. 11370 C1[178]LN[170]4   :[143] "LENALCULATED (NEW) LEN(null)LEN
  139. 11380 MO=C1+2   :REM "[205]ODE. X,E,P OR V
  140. 11390 AS[178]MO[170]1   :[143] "ASCLAG. 0=DON'T CONVERT TO LENPEEK(null) ATN(null)LENRIGHT$RIGHT$
  141. 11400 AL=AS+1   :REM "[211]OURCE LOGICAL FILE NUMBER
  142. 11410 OL[178]AL[170]1   :[143] "STR$ESTINATION LOGICAL FILE NUMBER
  143. 11430 C$=",":DIM M$(9)
  144. 11440 M$(0)="[197][207][198]     ":M$(1)="[211]TORED  ":M$(2)="[211][212]ORED  ":M$(3)="[208]ACKED  "
  145. 11450 M$(4)="[211]QUEEZED":M$(5)="[195]RUNCHED":M$(6)=M$(5):M$(7)=M$(5):M$(8)=M$(5)
  146. 11460 M$(9)="[211]QUASHED"
  147. 11461 FOR YY=49152 TO 49225
  148. 11462 READ ZZ:POKE YY,ZZ
  149. 11463 NEXT YY
  150. 11470 PRINT CHR$(14);CHR$(147);
  151. 11480 PRINT "[147][176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  152. 11490 PRINT "[221]    [159][205][211]-[196][207][211] [193]RCHIVE [196]ISSOLVER       [221]"
  153. 11500 PRINT "[171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]"
  154. 11510 PRINT "[221]      [158][211]HAREWARE (NOT [208][196]) BY:       [221]"
  155. 11520 PRINT "[221]        [159] [193]MPERE [205]ETAL              [221]"
  156. 11530 PRINT "[221]      [158]80 [200]ALE [210]OAD, [213]NIT 4         [221]"
  157. 11540 PRINT "[221]      [158][194]RAMPTON, [207]NTARIO    [205][207][196][201][198][201][197][196][221]"
  158. 11550 PRINT "[221]      [158][195]ANADA. [204]6[215]-2[205]5      [195]-64 [214][197][210][221]"
  159. 11560 PRINT "[171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]"
  160. 11570 PRINT "[221]   [159][207][203] TO COPY, [158]BUT [206][207][212] TO SELL.    [221]"
  161. 11580 PRINT "[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]"
  162. 11590 PRINT
  163. 11999 RETURN
  164. 12000 DATA 76,74,192,76,152,194,76,99,192
  165. 12010 DATA 76,158,192,76,162,197,76,208,192
  166. 12020 DATA 76,5,193,76,67,194,76,100,193
  167. 12030 DATA 0,160,0,192,0,208,0,255,0
  168. 12040 DATA 0,0,0,0,32,32,32,32,32
  169. 12050 DATA 32,32,32,32,32,32,32,32,0
  170. 12060 DATA 0,0,0,0,0,0,0,0,0
  171. 12070 DATA 0,0,0,0,0,0,0,0,0
  172. 12080 DATA 0,14,173,29,192,133,3,173,30
  173.