home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / ZCPR33 / S-Z / ZCOLUMNS.LBR / FOREVERZ.8Z7 / FOREVERZ.887
Text File  |  2000-06-30  |  16KB  |  518 lines

  1. FOREVER Záì
  2. by Rick Charnes
  3. Appearing in Morrow Owners Review Aug.-Sept. 1987 issue
  4.  
  5. 1165 Shotwell St.
  6. San Francisco, CA 94110
  7. 826-9448 or 821-4345
  8. approx. 2300 words
  9.  
  10. Copyright (c) 1987 by Rick Charnes.  All rights reserved
  11.  
  12. SUBMISSION DATE: 6/8/87
  13.  
  14. áì
  15.  
  16. I very much appreciate all the letters I've been getting with theáì
  17. áì
  18. large number of excellent suggestions. This is the stuff of whicháì
  19. áì
  20. real communication is made and makes being involved in this Z-áì
  21. áì
  22. adventure such a joy. Please continue to send mail to the MORáì
  23. áì
  24. office and phone calls to my home. Something as delightful as Z-áì
  25. áì
  26. System -- as life in general -- feels best when done with theáì
  27. áì
  28. support of a concerned, vital, passionate and enthusiasticáì
  29. áì
  30. community, and that is what we are building here. Whether by BBS,áì
  31. áì
  32. phone network, or mail, staying in touch with and learning fromáì
  33. áì
  34. others fundamentally enhances the pleasure and meaning of theáì
  35. áì
  36. entire computing experience. Communication and understanding,áì
  37. áì
  38. remember, were the great promises of the computer revolution.áì
  39. áì
  40. Let's work to make that a reality and take it away from those whoáì
  41. áì
  42. would use computers primarily as a tool in their plans foráì
  43. áì
  44. military armament as they bring us closer and closer to globaláì
  45. áì
  46. holocaust.áì
  47.  
  48. áì
  49.  
  50. One of the odds and ends culled from discussions on the MOR BBSáì
  51. áì
  52. was a question about error handlers. Error handlers are a little-áì
  53. áì
  54. used but very powerful Z-System feature. If you're a less thanáì
  55. áì
  56. perfect typist and are tired of CP/M's "????" response when youáì
  57. áì
  58. type something it finds incomprehensible, then error handlers areáì
  59. áì
  60. for you. When an error handler is "installed" in your system andáì
  61. áì
  62. ZCPR3 cannot understand what you've typed in, you're then -- in ì
  63. áì
  64. the words of Jerry Maloney, error handler enthusiast in Boston --áì
  65. áì
  66. "given a second chance."  Simply correct your typing error, hitáì
  67. áì
  68. <CR>, and your command line is run again.  I'm not aware ofáì
  69. áì
  70. anything comparable to this in the MS-DOS world.áì
  71.  
  72. áì
  73. This may not seem so important for those used to CP/M 2.2 witháì
  74. áì
  75. which only a single command may be typed on any one line.áì
  76. áì
  77. Remember, however, that in ZCPR3 many commands may be strungáì
  78. áì
  79. together, separated by a semicolon. I take advantage of thisáì
  80. áì
  81. feature as often as I can. If you have a series of commands toáì
  82. áì
  83. run that you don't use very often and therefore for which anáì
  84. áì
  85. alias is not appropriate, simply type them all together at theáì
  86. áì
  87. ZCPR3 prompt. This can be very enjoyable and can save a lot ofáì
  88. áì
  89. time especially on floppy systems. Rather than sitting staring atáì
  90. áì
  91. the screen while I am waiting for the results of one commandáì
  92. áì
  93. before I can run the next, I often try to anticipate my nextáì
  94. áì
  95. several moves and type in as many commands as I can foresee intoáì
  96. áì
  97. the future. For instance, If I'm cleaning up my disk and thenáì
  98. áì
  99. want to rename a file before working on it I can easily findáì
  100. áì
  101. myself doing something like:áì
  102.  
  103.  
  104.         ERASE *.BAK,MARY.LTR;REN JOE.LTR=JOE;NW JOE.LTR
  105.  
  106. áì
  107. This may look difficult and confusing but if you study it you'lláì
  108. áì
  109. see it's quite straightforward and is a real time-saver. You mayáì
  110. áì
  111. find it an enjoyable challenge to discipline yourself enough toáì
  112. áì
  113. anticipate and plan out your next few commands. In this exampleáì
  114. áì
  115. we take advantage of a capability of many ZCPR3 but not CP/Máì
  116. áì
  117. utilities, that of accepting a [bold]file list[end bold]áì
  118. áì
  119. parameter. Here, ERASE.COM is given a parameter ofáì
  120. áì
  121. "*.BAK,MARY.LTR", a list of two files, one ambiguous and oneáì
  122. áì
  123. unambiguous, separated by a comma. A quick browse througháì
  124. áì
  125. [underline]ZCPR3: The Manual[end underline] will reveal that aáì
  126. áì
  127. dozen or two utilities have this ability. After ZCPR3 has erasedáì
  128. áì
  129. these, JOE is renamed to JOE.LTR and then loaded in with NewWord.áì
  130. áì
  131. It's our multiple command line feature that permits us to doáì
  132. áì
  133. this.áì
  134.  
  135. áì
  136.  
  137. But to my point: with long command lines such as these typingáì
  138. áì
  139. mistakes happen rather easily!  Enter error handlers. The mostáì
  140. áì
  141. common error handler is VERROR, for Video ERROR. To installáì
  142. áì
  143. VERROR, simply type "VERROR<CR>". From then on VERROR isáì
  144. áì
  145. "installed."  From then on, anytime you make a mistake, oráì
  146. áì
  147. anytime any of your VFILER or other macros contain a mistake,áì
  148. áì
  149. your error handler is invoked. You are then put into a one-lineáì
  150. áì
  151. Wordstar-like editor within which you can then use all theáì
  152. áì
  153. familiar cursor motion commands to correct your input anywhere onáì
  154. áì
  155. your command line. When finished, simply hit <CR> and youráì
  156. áì
  157. command(s) are sent out again.áì
  158.  
  159.  
  160. One warning, though: with ZCPR3.0 you cannot be running anáì
  161. áì
  162. extended command processor such as ARUNZ if at the same time youáì
  163. áì
  164. have an error handler installed. With the new ZCPR3.3 thisáì
  165. áì
  166. problem is remedied.áì
  167.  
  168.  
  169. By the way, if you're feeling that you never manually string aáì
  170. áì
  171. series of commands together on the command line and can't imagineáì
  172. áì
  173. why you would ever want to do so, here's an easy one to start outáì
  174. áì
  175. with in order to see how much time you can actually save. Supposeáì
  176. áì
  177. you're on one directory and want to log on to another, do a diskáì
  178. áì
  179. directory, and then perform various operations from there. Ifáì
  180. áì
  181. you're on A0: and want to work on B0:, without ZCPR3 you wouldáì
  182. áì
  183. type "B0:<CR>", wait for the system to log you in, then "DIR",áì
  184. áì
  185. etc.  Instead, try simply "B0:;DIR<CR>". Why complicate mattersáì
  186. áì
  187. with an extra carriage return and a wait, when you could beáì
  188. áì
  189. having fun watching the computer do all the work for you?áì
  190.  
  191.  
  192. I can hardly believe I've let three columns come and go without aáì
  193. áì
  194. mention of the famous "POKE 'N' GO" technique. This is one of theáì
  195. áì
  196. very nicest features of Z-System, something that you easily runáì
  197. áì
  198. the risk of taking for granted. It's especially useful for savingáì
  199. áì
  200. disk space on floppy systems. Suppose you normally run WordStaráì
  201. áì
  202. or NewWord in single space mode and a right margin of 65, butáì
  203. áì
  204. occasionally use double spacing and a right margin of 78. You areáì
  205. áì
  206. tired of having to remember to manually type in your "^OS" toáì
  207. áì
  208. change the spacing, set your new ruler line with "^OR", andáì
  209. áì
  210. finally put in your ^PA code to change the printer pitch to 12. Iáì
  211. áì
  212. always end up forgetting to do this when using settings otheráì
  213. áì
  214. than my default and find it extremely frustrating. One solutionáì
  215. áì
  216. of course is to make a completely new WS.COM or NW.COM disk fileáì
  217. áì
  218. with these new settings, but with disk space precious this isáì
  219. áì
  220. silly. With Z-System's alias-making capability there is an easyáì
  221. áì
  222. solution.áì
  223.  
  224.  
  225. Let's take the above situation and see how we can handle it witháì
  226. áì
  227. ZCPR3.  The first step is to find the exact patch points in ouráì
  228. áì
  229. *.COM file where the values for line spacing and right margin areáì
  230. áì
  231. held. This is done with NewWord by extracting the informationáì
  232. áì
  233. from the relevant section in the "patch menus" in NWINSTAL.COM,áì
  234. áì
  235. and with WordStar from one of the many public domain docsáì
  236. áì
  237. providing this kind of information. To set NewWord 2.16 to theáì
  238. áì
  239. above values we find that 0762h should be set to 02, 0713h to 4eáì
  240. áì
  241. (4eh=78 decimal) for the ruler line, and lastly both 0721h andáì
  242. áì
  243. 0723h should be changed to 0A to modify the standard printeráì
  244. áì
  245. pitch from 10 to 12.áì
  246.  
  247.  
  248. Now for the beautiful part. Make either a free-standing aliasáì
  249. áì
  250. using our trusty VALIAS or BALIAS or -- my preferred method -- anáì
  251. áì
  252. entry in your ARUNZ.CMD, as follows:áì
  253.  
  254.  
  255. GET 100 NW.COM
  256. POKE 0762 02
  257. POKE 0713 4E
  258. POKE 0721 0A
  259. POKE 0723 0A
  260. GO $1
  261.  
  262. With ARUNZ/ALIAS.CMD all this is strung together on a single lineáì
  263. áì
  264. separated by semicolons, beginning with its name. I have calledáì
  265. áì
  266. mine NW78. Here's what happens: in Z-System we have a memory-áì
  267. áì
  268. resident GET command. GET is one of those seemingly arcane ì
  269. áì
  270. features that really performs when called on. It will load theáì
  271. áì
  272. file given as its second parameter at the location in memoryáì
  273. áì
  274. given as its first parameter, but [bold]without running it[endáì
  275. áì
  276. bold]. We here load NW.COM at 100 hex, the spot in memory whereáì
  277. áì
  278. all COM files load when they run. But here it doesn't actuallyáì
  279. áì
  280. run; it simply is suspended there, awaiting further instructions.áì
  281. áì
  282. Now we use ZCPR3's resident POKE command, which CP/M also lacks.áì
  283. áì
  284. "POKE 0762 02" will insert the hex value 02 at memory locationáì
  285. áì
  286. 0762. Since we have loaded NW.COM into memory we are in effectáì
  287. áì
  288. patching NW!  Then GO is the final memory-resident command usedáì
  289. áì
  290. in our holy trinity. GO takes whatever is sitting there at 100áì
  291. áì
  292. hex and runs it, and the "$1" is of course the name of our fileáì
  293. áì
  294. to be edited.áì
  295.  
  296.  
  297. Suppose we wanted to work on our file JOE.LTR. At the ZCPR3áì
  298. áì
  299. command line we simply type "NW78 JOE.LTR<CR>" and sit back andáì
  300. áì
  301. watch. Our command processor gives us a pleasing visual displayáì
  302. áì
  303. of all this POKE-ing, NewWord loads, and we find ourselves ináì
  304. áì
  305. JOE.LTR, double spaced, margin set to 78.áì
  306.  
  307.  
  308. You can have as many of these POKE 'N' GO aliases as you like,áì
  309. áì
  310. setting your wordprocessor to as many default values as you like.áì
  311. áì
  312. Disk space used for all this sophistication?  If entered as anáì
  313. áì
  314. entry inside your ALIAS.CMD, 0k.áì
  315.  
  316.  
  317. A couple of notes inspired by letters I have received: the Morrowáì
  318. áì
  319. KEY.COM will not work with the hard disk Z-System.  The Morrowáì
  320. áì
  321. BIOS was reworked much more fundamentally than the floppy versionáì
  322. áì
  323. in order to Z-ify it. A decision was made in its development thatáì
  324. áì
  325. the amount of space KEY.COM took up in the BIOS was not justifiedáì
  326. áì
  327. by what it did, that this space was more important usedáì
  328. áì
  329. elsewhere. Backgrounder II, which has an extensive keyáì
  330. áì
  331. redefinition capability, or Echelon's NUKEY are the programs ofáì
  332. áì
  333. choice for hard-disk users.áì
  334.  
  335.  
  336. Some confusion has developed about the public directory feature.áì
  337. áì
  338. The best way to learn about it is with the PUBLIC.HLP file on theáì
  339. áì
  340. Z-System disk. If you're logged onto the same drive but aáì
  341. áì
  342. different user area than your public directory, DO NOT create aáì
  343. áì
  344. file with the same name as a file on the public directory. Z-áì
  345. áì
  346. System will assume you are working on the public file and willáì
  347. áì
  348. make any changes to it that you make to your file, such asáì
  349. áì
  350. deletion, etc.áì
  351.  
  352.  
  353. Another caution: declaring a directory public in Z-System worksáì
  354. áì
  355. only for all user areas [bold]on that drive[end bold]. In otheráì
  356. áì
  357. words, if you are logged onto D6: and your public directory isáì
  358. áì
  359. A1:, everything that goes on in your A: drive will have access toáì
  360. áì
  361. the files in A1:, but do not expect your files in A1: to haveáì
  362. áì
  363. anything significant to say to operations running on your D:áì
  364. áì
  365. drive. However, there is one "out" here: in their search foráì
  366. áì
  367. overlays, a small number of programs, most notably WordStar, haveáì
  368. áì
  369. enough smarts to check also on drive A: of whatever user numberáì
  370. áì
  371. you're logged into if they don't find them on the currentáì
  372. áì
  373. drive/user. So in our case putting the WordStar overlays into aáì
  374. áì
  375. public directory on the A: drive will do an yeoman's job ofáì
  376. áì
  377. servicing your entire system. Other programs, however, such asáì
  378. áì
  379. Correct-It and SuperCalc as I mentioned last time, do not performáì
  380. áì
  381. this "search on A:" operation and must be dealt with otherwise.áì
  382. áì
  383. Very briefly, an alias should be set up in which the very firstáì
  384. áì
  385. command logs on to drive A: of the currently logged user area.áì
  386. áì
  387. Then the source file is accessed from drive A:. I have created aáì
  388. áì
  389. number of aliases that are available on the MOR BBS that dealáì
  390. áì
  391. with this problem.áì
  392.  
  393.  
  394. I'd like to emphasize how much easier and quicker the utilityáì
  395. áì
  396. VFILER makes running your entire computer operation, in the timeáì
  397. áì
  398. it saves lost to typing errors. Without VFILER, if you haveáì
  399. áì
  400. incorrectly typed the name of a file to be edited, for instance,áì
  401. áì
  402. time is wasted retyping your command line. With VFILER and theáì
  403. áì
  404. macros you have written, simply position the pointer on youráì
  405. áì
  406. target file, and hit the macro number or letter. "Point andáì
  407. áì
  408. shoot," as Ted Silveira very appropriately calls it. Nothingáì
  409. áì
  410. could be simpler.áì
  411.  
  412.  
  413. One final comment about VFILER. The command recall and editingáì
  414. áì
  415. program HSH will not and cannot be made to work when runningáì
  416. áì
  417. programs from its "Z" option.áì
  418.  
  419.  
  420. As I write (early June) ZCPR3.3 has been released, written by theáì
  421. áì
  422. extraordinarily prolific Jay Sage of Boston. One of the featuresáì
  423. áì
  424. I like best about it is its incredible flow control package, witháì
  425. áì
  426. more "IF options" than one could possibly imagine. In addition toáì
  427. áì
  428. the "IF INPUT", 'IF EXIST", "IF NULL", etc. that we've all comeáì
  429. áì
  430. to use and love, it is now possible to test if a file isáì
  431. áì
  432. compressed (squeezed or crunched), ambiguous (wild cards presentáì
  433. áì
  434. in the name), and for the presence of any of the three fileáì
  435. áì
  436. attributes: system, read-only, and archived. We now welcome IFáì
  437. áì
  438. COMPR, IF AMBIG, IF SYS, IF RO, and IF ARC to an already-packedáì
  439. áì
  440. pantheon of conditionals. Additionally, we now have two entirelyáì
  441. áì
  442. new commands related to "IF": "AND" and "OR". As an example ofáì
  443. áì
  444. their use, Z-System aliases are traditionally set up so that helpáì
  445. áì
  446. messages will display if the user enters the command with eitheráì
  447. áì
  448. a "//" parameter or no parameter at all. To create an ARUNZ entryáì
  449. áì
  450. for our by-now classic "COPY" alias to do this our line used toáì
  451. áì
  452. have to read:áì
  453.  
  454.  
  455. COPY IF //=$1;ECHO SYNTAX: "COPY [SOURCE] [DESTINATION]<CR>";
  456. ELSE;IF NU $1;ECHO SYNTAX: "COPY [SOURCE] [DESTINATION]<CR>";
  457. ELSE;CP $2=$1;FI;FI
  458.  
  459. Whew! How boring. Now we need only enter:
  460.  
  461. COPY IF //=$1;OR NU $1;
  462. ECHO SYNTAX: "COPY [SOURCE] [DESTINATION]<CR>"
  463. ELSE;CP $2=$1;FI
  464.  
  465. One other feature of ZCPR3.3 for which alone I would want it isáì
  466. áì
  467. its memory-resident ECHO command. It can finally display loweráì
  468. áì
  469. case characters. I've always felt the upper-case only ECHO-ingáì
  470. áì
  471. looked silly and infantile; we now have the capability to makeáì
  472. áì
  473. professional-looking displays, status reporting messages, etc. --áì
  474. áì
  475. a very important part of every fully-utilized Z-System.áì
  476.  
  477.  
  478. Contact MOR for the terms of a ZCPR3.3 upgrade.
  479.  
  480. áì
  481. By the way, I recommend that you start writing aliases witháì
  482. áì
  483. either VALIAS or BALIAS (or, of course, as I will never fail toáì
  484. áì
  485. suggest, ARUNZ). I recommend you not even touch ALIAS.COM; thisáì
  486. áì
  487. program is very much outdated.áì
  488.  
  489.  
  490. More news on the Z280 front. I just learned of this a few daysáì
  491. áì
  492. ago and know very little about it, but there is a company by theáì
  493. áì
  494. name of Zedux in Van Nuys, California that apparentlyáì
  495. áì
  496. manufactures a generic Z280 add-on board. And as if that weren'táì
  497. áì
  498. enough to get the adrenaline going, the real shocker to me cameáì
  499. áì
  500. as I browsed through their documentation: they have a genuinelyáì
  501. áì
  502. multi-tasking operating system already written for it as well. Iáì
  503. áì
  504. know nothing more than what I've read, and merely pass on theáì
  505. áì
  506. information to you. I immediately sent them off a missiveáì
  507. áì
  508. requesting more information and a possible Morrow beta-test, butáì
  509. áì
  510. for those whose interest is as piqued as mine their address isáì
  511. áì
  512. 14402 Hamlin Ave., Suite #C, Van Nuys, CA 91401, telephone (818)áì
  513. áì
  514. 787-0113. This could be a real gold mine.áì
  515.  
  516.  
  517. I hope your summer is going well. Z you next time...
  518.