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 / ENTERPRS / CPM / UTILS / S / SPZAP128.LZH / SPZAP128.DOC next >
Text File  |  1987-11-07  |  13KB  |  300 lines

  1.                      NOTES FOR SUPERZAP.COM
  2.  
  3.      This  is  SUPERZAP v.3.3 preconfigured and corrected for the
  4. C128  with  1571 drive.  (It also works with  the  RF512C  drive,
  5. a.k.a.  Excel-71, a.k.a. Excel 2001, a 1571 compatible.)  
  6.      SUPERZAP  is a  high-quality,  screen-oriented,  menu-driven 
  7. CP/M  disk  editor.  It  is much easier to use  than  non-screen-
  8. oriented editors such as DU. After changing the  cursor  codes to   
  9. the correct ones for the C128 I had to locate and correct two
  10. bugs in the "generic" version of SUPERZAP 3.3 which prevented it
  11. from working properly with the C128: (1) The program assumed that
  12. the first track of the disk is a "system track" and that the
  13. directory started on the second track. On the C128 the directory
  14. starts on the first track, and the system files CCP.COM and CPM+.COM
  15. are listed in the directory. I modified the program so that it
  16. now understands where the directory is and how many tracks are on
  17. the disk. (2) Another bug prevented proper functioning of the
  18. mode which edits by track and sector number. The problem was
  19. omission of the mandatory calls to SETTRK and SETSEC before
  20. writing the corrected track back to disk. Correcting these
  21. problems required editing the assembly source file (62 pages!)
  22. and reassembly. I also deleted a mode for "changing the ambiguous
  23. file name" which does not seem to be useful on the C128.
  24.      This version of SUPERZAP is now a very useful C128 CP/M
  25. disk editor. In FILE RELATIVE MODE you can edit any sector of
  26. any file in the directory; the program automatically follows
  27. sector links, which is important since a given file is scattered
  28. due to the C128 CP/M sector skew. In TRACK/SECTOR ADDRESSING MODE
  29. you can edit any track/sector. These are LOGICAL track/sector
  30. numbers; the conversion to physical track/sector numbers is
  31. handled automatically by the C128 CP/M BIOS. Each logical track
  32. is one CP/M allocation unit of 1024 bytes, divided into 8
  33. logical sectors (numbered 0000 to 0007) of 128 bytes each. The
  34. CP/M directory is on (logical) tracks 0000 and 0001 on a single-
  35. sided disk, 0000 to 0003 on a double-sided one. The last
  36. track number is 00A9 on a single-sided disk, and 0153 on a
  37. double-sided one.
  38.      The TYPE FILE MODE is also very useful, since it will
  39. "type" (i.e., display) even non-ASCII files without crashing
  40. the screen display, something the built-in CP/M TYPE command
  41. can't do.
  42.      The   original  documentation  and  the  menu  displays  are 
  43. adequate except for a few items. Where the menu specifies ^S, ^D, 
  44. ^E,  and ^X for cursor left,  right, up, and down, you should use 
  45. the  arrow  keys  in the top row of the C128  keyboard  (as  with 
  46. Wordstar on the C128).  Where ^I is specified for "CHANGE  SIDE", 
  47. use the TAB key;  this switches the cursor back and forth between 
  48. the hexdump and ASCII sides of the sector display and has nothing 
  49. to do with disk sides. Note that editing of either the hexdump or 
  50. ASCII side of the display immediately displays the change in BOTH 
  51. sides (a very nice touch!).  As usual with monitor displays,  you 
  52. edit  by  moving the cursor to the desired character  and  typing 
  53. over it.
  54.      The original documentation is appended, with the description 
  55. of the unimplemented mode for "changing the ambiguous file name"
  56. deleted and a few notes relevant to the C128 inserted.
  57.      M.D. Girardeau
  58.      Eugene, Oregon
  59.      November 1987
  60.  
  61.                                     SPZ.COM
  62.  
  63. SPZ  is a full screen interactive disk update utility,  providing 
  64. many of the features found in DU.COM. The program is menu driven, 
  65. and  little additional documentation is required.  The  following 
  66. notes  consist of a functional overview,  plus notes on  features 
  67. not documented in the menus.
  68.  
  69.  
  70. SYSTEM REQUIREMENTS.
  71.  
  72.  
  73. SPZ  requires a Z80 -it may be possible to update the source  for 
  74. 8080 but extensive use is made of Z80 opcodes,  and this would be 
  75. a large exercise. Subroutines would be required to simulate LDIR, 
  76. LDDR,  and CPIR, to say nothing of varieties of shift, rotate and 
  77. load instructions.
  78.  
  79. CPM 2.x is required. (Note by MDG: The C128 version uses CP/M+.)
  80.  
  81. One or more disks may be used -SPZ determines if a selected  disk 
  82. is defined in the BIOS before attempting to access it.
  83.  
  84. The  terminal used must support cursor addressing,  clear screen, 
  85. and  erase  to  end of line.  At least an 80  by  24  display  is 
  86. required.
  87.  
  88. FACILITIES.
  89.  
  90. SPZ  enables  disk sector editing in HEX  or  ASCII,  using  File 
  91. Relative  or  Track/Sector addressing.  In File Relative  mode  a 
  92. sorted  directory  listing is used to select the  file.  In  both 
  93. modes  forward  and backward browse is provided,  in addition  to 
  94. random record selection.  The displayed sector may be copied to a 
  95. scratchpad  buffer,   or  exchanged  with  the  scratchpad.
  96.  
  97. A  file  TYPE facility gives a paged,  formatted display  of  any 
  98. file.  Control characters are displayed as "." except for TAB and 
  99. Carriage return/Line feed which are processed normally. COM files 
  100. are not formatted.  (Note by MDG:  Characters with 8th bit on are 
  101. displayed in reverse video.)
  102.  
  103. The SPZ command format may enter any operational mode directly -
  104.  
  105.      SPZ                    enters SPZ with a *.* directory list.
  106.      SPZ d:                 as above with d:*.* directory list.
  107.      SPZ [d:]afn            as above with d:afn directory list.
  108.      SPZ [d:]ufn            enters SPZ in file relative mode, 
  109.                             using the specified file.
  110.      SPZ [d:]DSK:           enters SPZ in Track Sector addressing
  111.                             mode on the specified drive.
  112. (Note  by  MDG:  The above are not really  necessary;  just  type 
  113. SPZAP128<RETURN>.  When  the  menu comes up,  insert the  desired 
  114. disk,  hit  C  for CHANGE DISK,  and access files from  the  menu 
  115. display.)
  116.  
  117. DIRECTORY LIST MODE.
  118.  
  119. In  directory  list  mode the cursor is positioned on  the  first 
  120. filename displayed.  The cursor can be moved LEFT,  RIGHT,  UP or 
  121. DOWN using Control keys.  A file is selected by typing a  command 
  122. character  against the required file name -"E" for file  relative 
  123. editting, or "T" for the TYPE function.
  124.  
  125. Up  to  32 file names are listed.  If there are more  files,  the 
  126. directory list may be paged forward and back.
  127.  
  128. Other drives may be selected or the current disk changed.  NOTE -
  129. if  the disk in the current drive is changed,  the "change  disk" 
  130. function  should  be used to select the same  drive  again.  This 
  131. provides  a new directory list,  and avoids CP/M making the  disk 
  132. Read Only.
  133.  
  134. Track/Sector addressing is selected from the directory list
  135. display.
  136.  
  137. FILE RELATIVE MODE.
  138.  
  139. In  this  mode  the selected file is displayed in HEX  and  ASCII 
  140. format  with record number and file offset  displayed.  For  .COM 
  141. files the address when loaded at 0100H is diplayed.
  142.  
  143. The  record  displayed  may be selected by browsing  forward  and 
  144. back,  locating the first or last record,  or by setting a record 
  145. number  (in HEX).  When setting a record number,  Hex digits  are 
  146. entered  in  "calculator style" -new digits are  entered  on  the 
  147. right  while  the number moves left.  Backspace deletes the  last 
  148. digit  entered,  and Escape restores the original  number.  These 
  149. features  are common to all number entries in SPZ.  The  selected 
  150. record is read when RETURN is pressed.  If it is not  found,  the 
  151. previous record number will be restored.
  152.  
  153. The displayed record may be changed by typing "C".  The cursor is 
  154. positioned  on the first hex digit,  and is moved using the  same 
  155. control  keys as are used in the directory list mode.  Any  valid 
  156. hex digit may be typed to alter the record. The TAB key moves the 
  157. cursor  to  it  corrosponding  location  in  the  ASCII  display, 
  158. allowing  character  strings to be easily  changed.  Another  TAB 
  159. returns the cursor to the HEX display area.
  160.  
  161. Two  control codes are available to stop editing the record  -one 
  162. saves  the  changes and rewrites the record to  disk,  the  other 
  163. restores the record to its original contents.
  164.  
  165. Return to directory list mode is made by typing "L".
  166.  
  167.  
  168. TYPE FILE
  169.  
  170. Files  are TYPEd with up to 72 characters per line,  18 lines per 
  171. page.  Except for .COM files, Carriage return/Line feed codes are 
  172. honoured, and Tabs are expanded. All other control characters are 
  173. displayed as "." to prevent unwanted terminal control functions.
  174.  
  175. Forward  and backward paging operations are  provided,  including 
  176. return  to  top  of file.  Following  paging,  the  highest  page 
  177. displayed can be restored.
  178.  
  179. TRACK/SECTOR ADDRESSING.
  180.  
  181. This  mode is entered by typing "S" in directory list  mode.  The 
  182. facilities  provided here are similar to File Relative mode,  but 
  183. sectors  are selected by setting (or browsing back  and  forward) 
  184. track  and  sector numbers.  The allocation block number is  also 
  185. displayed and may be set.  When a block number is set,  the first 
  186. sector  of that block is displayed.  The record diplayed  may  be 
  187. altered in the same manner as File Relative mode.  The scratchpad 
  188. facility is also available in this mode.  Note that sectors saved 
  189. in one mode are available for exchange in the other mode.
  190. (Note by MDG: I haven't found any use for the scratchpad mode,
  191. but left it in this C128 implementation.)
  192.  
  193. Thats it Folks -
  194.  
  195.      Willie Davidson.
  196.      8 Comely Bank Street
  197.      Edinburgh
  198.      Scotland.
  199.  
  200.  
  201. V3.3 notes
  202. ----------
  203.  
  204. I recently received an updated 2.5 source from Willie Davidson 
  205. and 3.3 is simply the result of incorporating those changes into 
  206. 3.2.  The most significant differences seem to be to do with the 
  207. "type file" function where the display width has been increased 
  208. from 72 to 76 characters and the handling of non-display 
  209. characters has been improved.
  210.  
  211. V3.2 notes
  212. ----------
  213.  
  214. SUPERZAP v 3.1 allowed operation under CP/M 3.1 provided that 
  215. certain implementation considerations were met, namely:
  216.  
  217. 1.   CP/M 3 is non-banked, OR,
  218. 2.   Disk parameter headers reside in common memory, OR,
  219. 3.   XMOVE routine is implemented.
  220.  
  221. Version 3.2 removes all restrictions.  It will now run on any 
  222. CP/M  2.2 or 3.1 system with a Z80 processor.  (Note by  MDG:  It 
  223. didn't  work right on the C128 until I modified the  source  code 
  224. and reassembled it.)
  225.  
  226. John Hastwell-Batten,
  227. 24th February, 1986
  228.  
  229.  
  230.  
  231. V3.1 enhancements and other changes to SUPERZAP
  232. -----------------------------------------------
  233.  
  234. 1.   Upgraded to operate under CP/M 3.1 as well as CP/M 2.2,
  235. 2.   Added ability to select user number,
  236. 3.   Generalised screen control functions,
  237. 4.   Other minor (cosmetic) changes.
  238.  
  239.  
  240. CP/M 3.1 compatibility:
  241. ----------------------
  242.  
  243. SUPERZAP  now tests for CP/M version at startup.   If not running 
  244. under 2.2 or 3.1 then it complains and stops.
  245.  
  246. Since any sensible CP/M 3.1 BIOS deals with physical disk sectors 
  247. rather  than  128-byte "logical" sectors,  several  changes  were 
  248. needed  to map the physical disk I/O into a much  larger  buffer.  
  249. The  code size has not increased significantly because the buffer 
  250. is set up in free memory past the end of the program.
  251.  
  252.  
  253. User number selection:
  254. ---------------------
  255.  
  256. A very crude method of changing user number has been added.  Upon 
  257. selecting the (new) U option from the directory display panel,  a 
  258. prompt  is displayed which calls for a single keystroke.   If you 
  259. respond  with a numeric key (0-9) or a letter (in the range  A-F) 
  260. then the keystroke is interpreted as a hexadecimal digit and  the 
  261. current user number is changed.  The user number is not displayed 
  262. so you have to remember it.  (I did say it was crude, didn't I?)
  263.  
  264.  
  265. Wish list:
  266. ---------
  267.  
  268. 1.   Extend  random-record processing to handle VERY large  files 
  269.      under CP/M 3.1,
  270.  
  271. 2.   Display current user number on the screen somewhere,
  272.  
  273. 3.   Extend  file  name  selection to  incorporate  user  numbers 
  274.      (perhaps like NSWP207).
  275.  
  276. 4.   Allow multiple sectors in the scratchpad.
  277.  
  278. 5.   Under  CP/M  3.1 display physical sector numbers  as  XXXX:Y 
  279.      where XXXX is the actual sector number and Y is the 128-byte 
  280.      sub-sector number,
  281.  
  282. 6.   When  in  track/sector  mode,  allow the ability  to  select 
  283.      whether  to  use  BIOS skewing or  to  use  0- or  1- origin 
  284.      sequential sector numbering (i.e. no skew).
  285.  
  286. 7.   Use the full width of the screen when displaying text files.
  287.  
  288. 8.   Add some sort of string search facility.
  289.  
  290.  
  291.  
  292. John Hastwell-Batten,
  293. SYSOP,
  294. Tesseract RCPM+,
  295. P.O. Box 242,
  296. Dural, NSW 2158,
  297. AUSTRALIA
  298.  
  299. 14th January, 1986
  300.