home *** CD-ROM | disk | FTP | other *** search
- NOTES FOR SUPERZAP.COM
-
- This is SUPERZAP v.3.3 preconfigured and corrected for the
- C128 with 1571 drive. (It also works with the RF512C drive,
- a.k.a. Excel-71, a.k.a. Excel 2001, a 1571 compatible.)
- SUPERZAP is a high-quality, screen-oriented, menu-driven
- CP/M disk editor. It is much easier to use than non-screen-
- oriented editors such as DU. After changing the cursor codes to
- the correct ones for the C128 I had to locate and correct two
- bugs in the "generic" version of SUPERZAP 3.3 which prevented it
- from working properly with the C128: (1) The program assumed that
- the first track of the disk is a "system track" and that the
- directory started on the second track. On the C128 the directory
- starts on the first track, and the system files CCP.COM and CPM+.COM
- are listed in the directory. I modified the program so that it
- now understands where the directory is and how many tracks are on
- the disk. (2) Another bug prevented proper functioning of the
- mode which edits by track and sector number. The problem was
- omission of the mandatory calls to SETTRK and SETSEC before
- writing the corrected track back to disk. Correcting these
- problems required editing the assembly source file (62 pages!)
- and reassembly. I also deleted a mode for "changing the ambiguous
- file name" which does not seem to be useful on the C128.
- This version of SUPERZAP is now a very useful C128 CP/M
- disk editor. In FILE RELATIVE MODE you can edit any sector of
- any file in the directory; the program automatically follows
- sector links, which is important since a given file is scattered
- due to the C128 CP/M sector skew. In TRACK/SECTOR ADDRESSING MODE
- you can edit any track/sector. These are LOGICAL track/sector
- numbers; the conversion to physical track/sector numbers is
- handled automatically by the C128 CP/M BIOS. Each logical track
- is one CP/M allocation unit of 1024 bytes, divided into 8
- logical sectors (numbered 0000 to 0007) of 128 bytes each. The
- CP/M directory is on (logical) tracks 0000 and 0001 on a single-
- sided disk, 0000 to 0003 on a double-sided one. The last
- track number is 00A9 on a single-sided disk, and 0153 on a
- double-sided one.
- The TYPE FILE MODE is also very useful, since it will
- "type" (i.e., display) even non-ASCII files without crashing
- the screen display, something the built-in CP/M TYPE command
- can't do.
- The original documentation and the menu displays are
- adequate except for a few items. Where the menu specifies ^S, ^D,
- ^E, and ^X for cursor left, right, up, and down, you should use
- the arrow keys in the top row of the C128 keyboard (as with
- Wordstar on the C128). Where ^I is specified for "CHANGE SIDE",
- use the TAB key; this switches the cursor back and forth between
- the hexdump and ASCII sides of the sector display and has nothing
- to do with disk sides. Note that editing of either the hexdump or
- ASCII side of the display immediately displays the change in BOTH
- sides (a very nice touch!). As usual with monitor displays, you
- edit by moving the cursor to the desired character and typing
- over it.
- The original documentation is appended, with the description
- of the unimplemented mode for "changing the ambiguous file name"
- deleted and a few notes relevant to the C128 inserted.
- M.D. Girardeau
- Eugene, Oregon
- November 1987
-
- SPZ.COM
-
- SPZ is a full screen interactive disk update utility, providing
- many of the features found in DU.COM. The program is menu driven,
- and little additional documentation is required. The following
- notes consist of a functional overview, plus notes on features
- not documented in the menus.
-
-
- SYSTEM REQUIREMENTS.
-
-
- SPZ requires a Z80 -it may be possible to update the source for
- 8080 but extensive use is made of Z80 opcodes, and this would be
- a large exercise. Subroutines would be required to simulate LDIR,
- LDDR, and CPIR, to say nothing of varieties of shift, rotate and
- load instructions.
-
- CPM 2.x is required. (Note by MDG: The C128 version uses CP/M+.)
-
- One or more disks may be used -SPZ determines if a selected disk
- is defined in the BIOS before attempting to access it.
-
- The terminal used must support cursor addressing, clear screen,
- and erase to end of line. At least an 80 by 24 display is
- required.
-
- FACILITIES.
-
- SPZ enables disk sector editing in HEX or ASCII, using File
- Relative or Track/Sector addressing. In File Relative mode a
- sorted directory listing is used to select the file. In both
- modes forward and backward browse is provided, in addition to
- random record selection. The displayed sector may be copied to a
- scratchpad buffer, or exchanged with the scratchpad.
-
- A file TYPE facility gives a paged, formatted display of any
- file. Control characters are displayed as "." except for TAB and
- Carriage return/Line feed which are processed normally. COM files
- are not formatted. (Note by MDG: Characters with 8th bit on are
- displayed in reverse video.)
-
- The SPZ command format may enter any operational mode directly -
-
- SPZ enters SPZ with a *.* directory list.
- SPZ d: as above with d:*.* directory list.
- SPZ [d:]afn as above with d:afn directory list.
- SPZ [d:]ufn enters SPZ in file relative mode,
- using the specified file.
- SPZ [d:]DSK: enters SPZ in Track Sector addressing
- mode on the specified drive.
- (Note by MDG: The above are not really necessary; just type
- SPZAP128<RETURN>. When the menu comes up, insert the desired
- disk, hit C for CHANGE DISK, and access files from the menu
- display.)
-
- DIRECTORY LIST MODE.
-
- In directory list mode the cursor is positioned on the first
- filename displayed. The cursor can be moved LEFT, RIGHT, UP or
- DOWN using Control keys. A file is selected by typing a command
- character against the required file name -"E" for file relative
- editting, or "T" for the TYPE function.
-
- Up to 32 file names are listed. If there are more files, the
- directory list may be paged forward and back.
-
- Other drives may be selected or the current disk changed. NOTE -
- if the disk in the current drive is changed, the "change disk"
- function should be used to select the same drive again. This
- provides a new directory list, and avoids CP/M making the disk
- Read Only.
-
- Track/Sector addressing is selected from the directory list
- display.
-
- FILE RELATIVE MODE.
-
- In this mode the selected file is displayed in HEX and ASCII
- format with record number and file offset displayed. For .COM
- files the address when loaded at 0100H is diplayed.
-
- The record displayed may be selected by browsing forward and
- back, locating the first or last record, or by setting a record
- number (in HEX). When setting a record number, Hex digits are
- entered in "calculator style" -new digits are entered on the
- right while the number moves left. Backspace deletes the last
- digit entered, and Escape restores the original number. These
- features are common to all number entries in SPZ. The selected
- record is read when RETURN is pressed. If it is not found, the
- previous record number will be restored.
-
- The displayed record may be changed by typing "C". The cursor is
- positioned on the first hex digit, and is moved using the same
- control keys as are used in the directory list mode. Any valid
- hex digit may be typed to alter the record. The TAB key moves the
- cursor to it corrosponding location in the ASCII display,
- allowing character strings to be easily changed. Another TAB
- returns the cursor to the HEX display area.
-
- Two control codes are available to stop editing the record -one
- saves the changes and rewrites the record to disk, the other
- restores the record to its original contents.
-
- Return to directory list mode is made by typing "L".
-
-
- TYPE FILE
-
- Files are TYPEd with up to 72 characters per line, 18 lines per
- page. Except for .COM files, Carriage return/Line feed codes are
- honoured, and Tabs are expanded. All other control characters are
- displayed as "." to prevent unwanted terminal control functions.
-
- Forward and backward paging operations are provided, including
- return to top of file. Following paging, the highest page
- displayed can be restored.
-
- TRACK/SECTOR ADDRESSING.
-
- This mode is entered by typing "S" in directory list mode. The
- facilities provided here are similar to File Relative mode, but
- sectors are selected by setting (or browsing back and forward)
- track and sector numbers. The allocation block number is also
- displayed and may be set. When a block number is set, the first
- sector of that block is displayed. The record diplayed may be
- altered in the same manner as File Relative mode. The scratchpad
- facility is also available in this mode. Note that sectors saved
- in one mode are available for exchange in the other mode.
- (Note by MDG: I haven't found any use for the scratchpad mode,
- but left it in this C128 implementation.)
-
- Thats it Folks -
-
- Willie Davidson.
- 8 Comely Bank Street
- Edinburgh
- Scotland.
-
-
- V3.3 notes
- ----------
-
- I recently received an updated 2.5 source from Willie Davidson
- and 3.3 is simply the result of incorporating those changes into
- 3.2. The most significant differences seem to be to do with the
- "type file" function where the display width has been increased
- from 72 to 76 characters and the handling of non-display
- characters has been improved.
-
- V3.2 notes
- ----------
-
- SUPERZAP v 3.1 allowed operation under CP/M 3.1 provided that
- certain implementation considerations were met, namely:
-
- 1. CP/M 3 is non-banked, OR,
- 2. Disk parameter headers reside in common memory, OR,
- 3. XMOVE routine is implemented.
-
- Version 3.2 removes all restrictions. It will now run on any
- CP/M 2.2 or 3.1 system with a Z80 processor. (Note by MDG: It
- didn't work right on the C128 until I modified the source code
- and reassembled it.)
-
- John Hastwell-Batten,
- 24th February, 1986
-
-
-
- V3.1 enhancements and other changes to SUPERZAP
- -----------------------------------------------
-
- 1. Upgraded to operate under CP/M 3.1 as well as CP/M 2.2,
- 2. Added ability to select user number,
- 3. Generalised screen control functions,
- 4. Other minor (cosmetic) changes.
-
-
- CP/M 3.1 compatibility:
- ----------------------
-
- SUPERZAP now tests for CP/M version at startup. If not running
- under 2.2 or 3.1 then it complains and stops.
-
- Since any sensible CP/M 3.1 BIOS deals with physical disk sectors
- rather than 128-byte "logical" sectors, several changes were
- needed to map the physical disk I/O into a much larger buffer.
- The code size has not increased significantly because the buffer
- is set up in free memory past the end of the program.
-
-
- User number selection:
- ---------------------
-
- A very crude method of changing user number has been added. Upon
- selecting the (new) U option from the directory display panel, a
- prompt is displayed which calls for a single keystroke. If you
- respond with a numeric key (0-9) or a letter (in the range A-F)
- then the keystroke is interpreted as a hexadecimal digit and the
- current user number is changed. The user number is not displayed
- so you have to remember it. (I did say it was crude, didn't I?)
-
-
- Wish list:
- ---------
-
- 1. Extend random-record processing to handle VERY large files
- under CP/M 3.1,
-
- 2. Display current user number on the screen somewhere,
-
- 3. Extend file name selection to incorporate user numbers
- (perhaps like NSWP207).
-
- 4. Allow multiple sectors in the scratchpad.
-
- 5. Under CP/M 3.1 display physical sector numbers as XXXX:Y
- where XXXX is the actual sector number and Y is the 128-byte
- sub-sector number,
-
- 6. When in track/sector mode, allow the ability to select
- whether to use BIOS skewing or to use 0- or 1- origin
- sequential sector numbering (i.e. no skew).
-
- 7. Use the full width of the screen when displaying text files.
-
- 8. Add some sort of string search facility.
-
-
-
- John Hastwell-Batten,
- SYSOP,
- Tesseract RCPM+,
- P.O. Box 242,
- Dural, NSW 2158,
- AUSTRALIA
-
- 14th January, 1986