home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #7 / amigamamagazinepolishissue1998.iso / archiwizery / dza / dzar_xfd < prev    next >
Text File  |  1998-01-05  |  8KB  |  293 lines

  1. /*
  2. **$VER: DzA 2.2a (12.6.1997) CopyRight (C) DCG©
  3. **
  4. **  $Date:1.6.1997$
  5. **  $:SoLoNGAmiGA:$
  6. */
  7. Options failat 21
  8. NL = '0a'x
  9. IF ~SHOW('LIBRARIES','rexxreqtools.library') THEN DO
  10. IF ~ADDLIB('rexxreqtools.library',10,-30,0) THEN DO
  11. SAY 'Cant Find <RexxReqtools.library> Please Install...=('
  12. EXIT(10)
  13. END
  14. END               
  15. if exists('c:dms') then call npcommand
  16. call nocommand
  17. npcommand: 
  18. if exists('c:lha') then call nppcommand
  19. call nocommand
  20. nppcommand:
  21. if exists('c:lzx') then call nnppcommand
  22. nnppcommand:
  23. if exists('c:xfddecrunch') then call passcommand
  24. nocommand:
  25. call rtezrequest("??? Is Missing in C...",, 
  26.                  "Hmm","DzA 2.2a",'rt_reqpos=reqpos_centerscr rtez_flags=ezreqf_centertext')
  27. passcommand:
  28. d=date(J);if d~>'97212' then call stcommand
  29. if open(ky, 's:_DzA.key', 'R') then
  30. k=readln(ky)
  31. if k='SoLoNG&ThAnX' then call stcommand
  32. p=rtgetstring(,"DzA V2.2a (Not Registered)"||NL||"Free Registration and KeyFile"||NL||"Or Enter PassWord (DzA)"||NL||"EMail : stargate@microsys.it",,
  33.                "DCG©","DzA",'rt_reqpos=reqpos_centerscr rtez_flags=ezreqf_centertext rtgs_invisible=true')
  34. if p=='DzA' then call stcommand
  35. exit
  36. /* DCG© Start */
  37. stcommand:
  38. call rtezrequest("Welcome to DzA...",, 
  39.                       "DzA","DCG©",'rt_reqpos=reqpos_centerscr rtez_flags=ezreqf_centertext')
  40. acommand:
  41. call rtezrequest("Choose Option...",, 
  42.                       "_Pack|Un_Pack|_XFD|_Quit","DzA",'rt_reqpos=reqpos_centerscr rtez_flags=ezreqf_centertext')
  43.  
  44. if rtresult == 0 then exit
  45. if rtresult == 1 then call arccommand 
  46. if rtresult == 2 then call extcommand
  47. if rtresult == 3 then call xfdcommand
  48. /* DCG Pack */
  49. arccommand:
  50. pac = apac
  51. call rtezrequest("Choose Method...",, 
  52.                       "_LhA|_LzX|_DmS|_Cancel","DzA",'rt_reqpos=reqpos_centerscr rtez_flags=ezreqf_centertext')
  53.  
  54. if rtresult == 0 then call acommand
  55. if rtresult == 1 then arc = lha
  56. if rtresult == 2 then arc = lzx
  57. if rtresult == 3 then arc = dms 
  58. if arc == dms then call dmscommand
  59. pcommand:
  60. file = rtfilerequest('Ram:', , "Choose File(s) to Pack", ,,
  61.              "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_patgad|freqf_selectdirs|
  62. freqf_selectdirs|freqf_multiselect rtfi_matchpat=#?|#?.info")
  63.  
  64. if file = '' then call errcommand
  65. ppcommand:
  66. pac = apak
  67. dir = rtfilerequest('Ram:', , "Path and Name for File", ,,
  68.             "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_save")
  69.  
  70. if dir = '' then call errcommand
  71. ldir = left(dir,9)
  72. if ldir = 'Ram Disk:' then dir = delstr(dir,4,5)
  73. call arcommand
  74. /* DCG UnPack */
  75. extcommand:
  76. pac = xpac
  77. file = rtfilerequest('Ram:', , "Choose File to UnPack", ,,
  78.              "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_patgad rtfi_matchpat=#?.(lha|lzh|lzx|dms|zip)")
  79.  
  80. if file = '' then call errcommand
  81. ext = upper(right(file,3))
  82. if ext='DMS' then call udmcommand
  83. exxcommand:
  84. pac = xpak
  85. dir = rtfilerequest('Ram:', , "Path for File", ,,
  86.             "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_save|freqf_nofiles")
  87.  
  88. if dir = '' then call errcommand
  89. ldir = left(dir,9)
  90. if ldir = 'Ram Disk:' then dir = delstr(dir,4,5)
  91. call xxtcommand
  92. /* DCG XFD */
  93. xfdcommand:
  94. xfd = xfdd
  95. file = rtfilerequest('Ram:', , "Choose File(s) to XFDecrunch", ,,
  96.              "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_patgad|freqf_multiselect")
  97.  
  98. if file = '' then call errcommand
  99. xfddcommand:
  100. xfd = xffd
  101. dir = rtfilerequest('Ram:', , "Path for File ", ,,
  102.             "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_save|freqf_nofiles")
  103.  
  104. if dir = '' then call errcommand
  105. ldir = left(dir,9)
  106. if ldir = 'Ram Disk:' then dir = delstr(dir,4,5)
  107. call xxfdcommand 
  108. /* DCG DmS */
  109. dmscommand:
  110. pac = dpac
  111. dev = rtfilerequest('Ram:', , "Device to DmS", ,,
  112.               "rt_reqpos=reqpos_centerscr rtfi_volumerequest = 0")
  113.  
  114. if dev = '' then call errcommand
  115. if dev ='Ram:' then call errcommand
  116. dmmcommand:
  117. pac = dpak
  118. dir = rtfilerequest('Ram:', , "Path and Name for DmS", ,,
  119.             "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_save")
  120.  
  121. if dir = '' then call errcommand
  122. ldir = left(dir,9)
  123. if ldir = 'Ram Disk:' then dir = delstr(dir,4,5)
  124. call admcommand
  125. udmcommand:
  126. pac = udpc
  127. dir = rtfilerequest('Ram:', , "Path for File", ,,
  128.             "rt_reqpos=reqpos_centerscr rtfi_flags = freqf_save|freqf_nofiles")
  129. if dir = '' then call errcommand
  130. if dir ='Ram:' then call errcommand
  131. /* DCG Commands */
  132. /**/
  133. xxtcommand:
  134. ext = upper(right(file,3))
  135. select
  136. when ext='LHA' then call xlhcommand
  137. when ext='LZX' then call xlzcommand
  138. when ext='DMS' then call xdmcommand
  139. when ext='LZH' then call xlhcommand
  140. when ext='ZIP' then call zipcommand
  141. when ext='???' then call ???command
  142. when ext~='???' then call ???command
  143. otherwise
  144. end
  145. /**/
  146. arcommand:
  147. select
  148. when arc=lha then call alhcommand
  149. when arc=lzx then call alzcommand
  150. otherwise
  151. end
  152. /**/
  153. alhcommand:
  154. rfile = left(file,9)
  155. if rfile='Ram Disk:' then call ralhcommand
  156. call time 'R'
  157. address command
  158. do i = 1 to rtresult.count
  159. 'lha -r -e a -q ' dir rtresult.i
  160. end
  161. call timecommand
  162. /**/
  163. alzcommand:
  164. rfile = left(file,9)
  165. if rfile='Ram Disk:' then call ralzcommand
  166. call time 'R'
  167. address command
  168. do i = 1 to rtresult.count
  169. 'lzx -r -e a -q ' dir rtresult.i
  170. end
  171. call timecommand
  172. /**/
  173. ralhcommand:
  174. call time 'R'
  175. address command
  176. do i = 1 to rtresult.count
  177. rtresult.i = delstr(rtresult.i,4,5)
  178. 'lha -r -e a -q ' dir rtresult.i
  179. end
  180. call timecommand
  181. /**/
  182. ralzcommand:
  183. call time 'R'
  184. address command
  185. do i = 1 to rtresult.count
  186. rtresult.i = delstr(rtresult.i,4,5)
  187. 'lzx -r -e a -q ' dir rtresult.i
  188. end
  189. call timecommand
  190. /**/
  191. xlhcommand:
  192. rfile = left(file,9)
  193. if rfile='Ram Disk:' then file = delstr(file,4,5)
  194. call time 'R'
  195. address command
  196. 'lha x -q ' file dir
  197. call timecommand
  198. /**/ 
  199. xlzcommand:
  200. rfile = left(file,9)
  201. if rfile='Ram Disk:' then file = delstr(file,4,5)
  202. call time 'R'
  203. address command
  204. 'lzx x -q ' file dir
  205. call timecommand
  206. /**/
  207. xxfdcommand:
  208. rfile = left(file,9)
  209. if rfile='Ram Disk:' then file = delstr(file,4,5)
  210. call time 'R'
  211. address command
  212. do i = 1 to rtresult.count
  213. 'xfddecrunch >nil: ca force ' rtresult.i dir 
  214. 'copy >nil: ' rtresult.i'.info' dir
  215. end
  216. call timecommand
  217. /**/
  218. admcommand:
  219. call time 'R'
  220. address command
  221. 'dms read ' dir from dev
  222. call timecommand
  223. /**/
  224. xdmcommand:
  225. rfile = left(file,9)
  226. if rfile='Ram Disk:' then file = delstr(file,4,5)
  227. call time 'R'
  228. address command
  229. 'dms write ' file to dir 'nopause' 
  230. call timecommand  
  231. /**/
  232. zipcommand:
  233. rfile = left(file,9)
  234. if rfile='Ram Disk:' then file = delstr(file,4,5)
  235. call time 'R'
  236. address command
  237. 'unzip -o -q ' file '-d' dir
  238. call timecommand
  239. /* ??? */
  240. ???command:
  241. call rtfreefilebuffer()
  242. call rtezrequest("Sorry Unknown FileType...",,
  243.       "_OK","DzA",'rt_reqpos=reqpos_centerscr')
  244. call acommand
  245. /* Error */
  246. errcommand:
  247. call rtfreefilebuffer()
  248. call rtezrequest("Hmm... Don't Think So...",,
  249.       "_Oops|_Cancel","DzA",'rt_reqpos=reqpos_centerscr')
  250.  
  251. if rtresult == 0 then call acommand
  252. select
  253. when pac=apac then call pcommand
  254. when pac=apak then call ppcommand
  255. when pac=xpac then call extcommand
  256. when pac=xpak then call exxcommand
  257. when pac=dpac then call dmscommand
  258. when pac=dpak then call dmmcommand
  259. when pac=udpc then call udmcommand
  260. when xfd=xfdd then call xfdcommand
  261. when xfd=xffd then call xfddcommand
  262. otherwise
  263. end
  264. /* TIME */
  265. timecommand:
  266. call rtezrequest("Time Taken" time('E') "secs.",,
  267.       "_WoW","DzA",'rt_reqpos=reqpos_centerscr')
  268.  
  269. /* GoAgain */
  270. gocommand:
  271. call rtfreefilebuffer()
  272. call rtezrequest("Continue...",,
  273.       "_Sure|_NeW|_Quit","DCG©",'rt_reqpos=reqpos_centerscr')
  274.  
  275. if rtresult == 0 then exit
  276. if rtresult == 1 then call gcommand 
  277. if rtresult == 2 then call acommand
  278. gcommand:
  279. select
  280. when ext='LHA' then call extcommand
  281. when ext='LZX' then call extcommand
  282. when ext='DMS' then call extcommand
  283. when ext='LZH' then call extcommand
  284. when ext='ZIP' then call extcommand
  285. when arc=lha   then call pcommand
  286. when arc=lzx   then call pcommand
  287. when arc=dms   then call dmscommand
  288. when xfd=xfdd  then call xfdcommand
  289. when xfd=xffd  then call xfdcommand
  290. otherwise
  291. end
  292. exit
  293.