~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DISKREVIEW - Directory Utility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ FAIRWARE from FUNNELWEB FARM ~~~~~~~~~~~~~~~ for the DIJIT AVPC Card ~~~~~~~~~~~~~~~ and other V9938/58 based systems ~~~~~~~~~~~~~~~~~~~~~~ Tony McGovern 215 Grinsell St., Kotara, NSW 2289 AUSTRALIA Telephone (Newcastle area) (049) 52 3162 oo INTRODUCTION --------------- DISKREVIEW (program files DR/DS, also as DR80/DR81) integrates with the FUNNELWEB Vn 4.40 utility environment in V9938/58 based systems, an extensive set of disk snd file utilities. As an enhanced 80 column Show Directory function it provides all file marking functions of the FUNNELWEB QD, most disk manager functions needed in normal usage, a set of RAMDisk utilities, a sector editor with Hex and ASCII string search over individual files, an alternative interface to the FUNNELWEB main menu, and complete access to the FUNNELWEB file loader system from the cursor bar in the directory display. In addition an Extended Basic program loader handles both Program and I/V254 formats. The View function supports full bi-directional scrolling by line or page, and printing out of the Viewed file. Image data files in MYART RLE format are automatically viewed as a picture stored in the VRAM buffer area. The program is fully compatible with 80-track disks using the Myarc FDC with appropriate DSR ROM or Myarc HFDC (but this device appears to have serious bugs in its file copy DSR routines on 80-track disks). Some support is provided for users with file collections annotated with the DSKU (John Birdwell) program. On V9938 systems with the full 192K of VRAM installed, simultaneous viewing of two files on a split screen is supported. The standard Geneve 9640 is not adequate for this feature as it has only the base 128K of VRAM, and the AVPC only if the full VRAM complement is installed. The file buffers are 64K each in size and should accomodate most text files found on TI or Geneve systems. The program was developed on a DIJIT AVPC system with Amiga 1084S (Philips CM8833 in disguise) monitor. Every effort has been made to keep the program insensitive to the various incompatibilities of the Geneve 9640 with the 99/4a. See FWDOC/DR81 for notes on View/File functions and FWDOC/DR82 for Disk/Sector utility details. oo LOADING ----------- It is installed permanently as Option #8 on the FUNNELWEB E/A Central Menu screen as DISKREVIEW with an Option 1 (Text-Mode TI-Wr) load path forcing load of a character file to refresh the TI-Writer control character patterns. DR can be loaded as an Option #1 or Option #2 (GPL) file if desired from another Central Menu or User List entry. It calls on FUNNELWEB internal routines which means it will crash if you load it from E/A 5. Screen colors are set up as for entry to the Editors from the FUNNELWEB main menu. The VRAM 64K expansion block is used for the second view file buffer. See FWDOC/LOAD for discussion of initial auto-loading options. oo PRINT FUNCTIONS ------------------ All print functions use as default the FUNNELWEB print device as installed or edited for use by the Editor PF function in the main program. No provision is made in the program for explicit control sequences to be sent for setting up the printer, but these are easily handled by using separate short files containing the necessary control codes and printing these from View before and/or after printing other files or directories. All or selectable parts of Display files of any record length may be printed, with original record lengths preserved. As the print device name can be edited to be a disk file this gives a limited file copy function for the whole or selected parts of Display files to a target device with general pathname, including hard disk directories. oo DIRECTORY ------------ When DISKREVIEW first runs it shows a screen with information block, command reminders, and window for alternative menus or directory paging. A plain window in the lower center of the screen is used for user input, progress reports, and error messages. All disk accesses, other than via the printer device and Myarc FDC direct formatting, use standard DSR sector access or other DSR subprograms which require a unit number entered in the form DSKx., with the character "x" being in the range 1-9. If your choice is not found then the error trapping will tell you. When a disk directory is read, program file checking is done automatically with a message to show it is being done. If the disk contains a number of program files, this process involves noticeable extra disk activity. The disk/file information block shows the type of disk and its size, the number of sectors free on the disk, the number of sectors already used, and initializes the tagged file total sectors to zero. The file count ahd page indicators are updated as the directory is read in. The block of filenames below this shows certain filenames of recognized types which may be altered by marking. WF :- the current FUNNELWEB workfile DV/80 or DF/80 display file as would come up for Editor LF/SF etc. OF :- the current FUNNELWEB DF/80 object filename as appears as default for the file loading options. PF :- the current FUNNELWEB assembly program file name as appears for program filename default. On entry to DISKREVIEW the current filenames are read and displayed, and on exit the names showing are installed as defaults for FUNNELWEB. The indicated at the top is determined from the sector #0 header, and is determined by searching the whole sector bit-map area to the end of sector #0 for null bits. It is assumed that non-existent sectors on the disk or device are not falsely mapped mapped as free. 80-track disks are correctly handled as 2 sectors per allocation unit. oo KEY COMMAND FUNCTIONS ------------------------ When DR first loads, the left side key advice panel shows a number of alternatives. This screen is also reached by or from the directory screen ( is either or throughout DR). All key entries are automatically converted to upper case except where lower case might be needed as in ASCII search string entry. o <1-9> keys. The directory is read from the disk in the indicated drive and displayed in the right side box. While the directory is being read in, (Break) terminates the process. The entries written up in the file box are not erased immediately, but are otherwise ignored by the program. After the directory is read a "Check programs" message appears while disk activity continues in checking the initial sectors of program files for recognizable headers. o <0> key. As in FUNNELWEB this cycles the screen color choices. Also available on other directory screens. o key. This brings up a menu of disk oriented functions in the right box. See FWDOC/DR82 for more details. key. The current FUNNELWEB Central Menu entries are presented in two blocks. Selection is by cursor bar using . o key. Returns to FUNNELWEB from any screen where it is active, o or Switch to the Disk Utility screen unless a valid directory is present to be resumed. o or keys. Return to valid directory display if present. A variety of key functions is available after the directory has been read into memory, and a reminder of these is given in the column down the left hand side of the screen. Some keys function only after a file has been read into one or both of the VRAM View buffers. Individual file oriented disk manager functions are executed from this directory display, and others after tagging a set of files. Delete works only on tagged files as an extra layer of caution. Entry to the sector editor is also from this screen, as many of its functions are file related. o key. The usual REDO key does just that and re-reads the directory from the same drive. o key. Returns to the initial selection screen. o , keys. These provide the from error conditions, or to go back to an existing directory from the drive selection screen. o and keys. These move the cursor bar up and down the directory, paging it as necessary. o and keys. or pages the directory display towards higher numbered pages, and or pages back towards the start of the directory. o key. This checks the file currently under the cursor bar and ascertains the file type. The filename will appear as qppropriate in one or more of the block of filenames in the mid-central block. o key. ldfile restores the various marked filenames to those in force when DISKREVIEW was invoked. o and keys. ag the file under the cursor bar, leaving a visible marker in the center column. Use to tag all files, The total size of tagged files is indicated as sectors allocated in the upper central box. o and keys. ntag file under cursor. Untag all files with . o key. Several ctions on ll tagged files are available from a new command set which appears in the key advice block. Details are in the next section. o key. unProgram sends the marked filename to the appropriate FUNNELWEB loader or to a internal XB loader. Details are discussed more fully in a later section. o key Allows the file under the cursor to be renamed. Edit the name as presented and . The directory will be re-read to verify the change. o key. Allows copying of any single file at a time from the directory drive to another drive or to the same disk under another name. The target drive number and target file name are presented for editing and on the disk number is checked in the range [1..9]. Disk swapping in a single drive is not supported (use the 40-col DR if this is needed). Copy uses the disk DSR direct file input and output subprograms which must be supported by the disk or RAMdisk DSR to TI specifications. Copy buffer size is 59 sectors. o and keys. Allow viewing of ALL file types of any record length to the screen. works only if expansion VRAM is present, otherwise the V buffer is used or re-used. The first page of the display is presented and it then halts for further instructions. See View/Print in FWDOC/DR81 for more details. o keys. Similar effect to except that the display continues in line scrolling until a further key is pressed. o key. Inspect and edit sectors. See FWDOC/DR82 for details of sector editor functions. o

key.

rintDirectory causes the current directory to be printed out to the FUNNELWEB print device (as transferred to the Editor as Editor PF device). The print device name may be edited before use. In the terminology of Extended Basic sub-programs, yhr name is passed by value to DISKREVIEW. The print device is opened in APPEND mode, so that if a disk file is the target it will keep accumulating the print items. oo TAGGED FILE OPERATIONS ------------------------- Several file operations are performed on the selection of files tagged in the previous screen. The copy function is also useful for whole disk copying, either when file unfragmenting is desired, or to RAMdisks. DISKREVIEW does not support disk cloning by DSR level sector copying, as this not much faster than tagged file copy, even if it does reduce disk head activity. If fast disk cloning is needed use a low-level disk copy program designed specifically for your disk controller. o key. opies all tagged files to another drive under their existing names. A list of up to eight drive numbers may be specified, and each tagged file is copied to the listed drives in turn. To stop the copy process hold down BREAK which is checked after each file is completely copied. If the copy process aborts the error messages indicate the drive on which the error occurred. Single drive copying is not supported (use DR40 instead). o keys. nProtect or

rotect on all tagged files. The directory is re-read so that the result can be verified. o key. eletes previously tagged unprotected files from the disk. You are then asked (Y/N) if verification is needed before each file is deleted. If so the tagged filenames are presented one by one for verification, otherwise they are just deleted in sequence. The directory is re-read after all tagged files are deleted or taken. If you delete the wrong file(s), immediately use the file recovery procedures under Disk Utilities. o key. The DSKU(tilities) program by the late John Birdwell allows annotation of individual files by altering the File Descriptor Record (FDR) for each file in a non-standard way which is not supported by disk DSRs, but which does not normally cause problems. The file copy process destroys the DSKU annotations, but now otes allows these annotations to be transferred from the original disk to the copy disk. Several options are presented. 1 Fetch .... builds a data list in memory of those tagged filenames which are not excessively fractured and which have annotations, along with the annotation. Pressing a key will stop the display for inspection. 2 Edit .... is similar to Fetch except that all tagged file entries are presented for editing. Unlike Fetch mode, Edit includes blank entries in the data list. 3 Write .... presents the target disk drive number for editing, provided Fetch or Edit have been used to build data list in memory. This may be the source drive number in order to write edited comments back to the same disk. Each annotation is written to a file of the same name on the target disk after checking that it is not excessively fractured. At present no checks are made for matching of file type or file length. The same data list may be written as many times as desired, until otes is d. o and keys. These page the directory to allow checking of what has been tagged, without leaving the Tagged Files operation mode. o and keys. These force the display out of Tagged Files mode back to the normal directory commands before scrolling the cursor. If tagging all files separately on a floppy leads to a tag total that is more than 2 sectors less than the total sectors used, then either you have a disk with faulty sectors that have been mapped out by Validate, or else you may have a disk that was formatted with sub-directories using a Myarc HFDC. DISKREVIEW does not recognize this extension to the TI-99 standard disk format. This possibility may be verified in detail by looking at sector #0 with nspect for sub-directory names and pointers. Such disks can be read only with the Myarc HFDC. oo PROGRAM LOADERS ------------------ The Run Program option gives access to the FUNNELWEB loading system directly from the directory display. As far as it can DISKREVIEW checks the type of program file before selecting the appropriate loader and then offers sub-choices corresponding to the various FUNNELWEB Loaders screen choices. Once the load decision is taken for the assembly load path you are back in the FUNNELWEB environment. o Object files Any DF/80 file presented is assumed to be an E/A object file. The possibilities for an object file are that it is a file normally loadable by FUNNELWEB, a special file that uses the Low-Loader option to load in low memory over the usual E/A utilities, or finally an auto-starting file that does not need to return to the loader. Any other DF files are ignored. o Text Files If a DV/80 file is selected the loader gives a warning message, and if you elect to continue treats it as a FUNNELWEB Script file for loading and linking one or more (up to 15) object files. All other DV files are ignored. o Extended Basic programs If the initial check of program file headers has determined that the marked file is a program with a Basic/XB compatible file header, or else an IV/254 file is selected, then DISKREVIEW checks if a TI XB module is present and uses an interrupt driven loader to start XB and load the nominated file. Because absolute GROM addresses are used this may not work with other variants of XB (not available here to test - reports are that Triton Super-XB works fine), but most definitely not with Myarc XBII. For these you will just have to do it by hand or else use the XB User List in FUNNELWEB LOAD which should work with all known XB variations, as it is invoked from RUN within an executing XB program. o Program files If the program file has been identified as E/A compatible it will be passed to the FUNNELWEB Loaders with choices presented as for Options 1-3, of which 2 GPL is the normal selection, corresponding to E/A 5. See FWDOC/EASM for details. If the program file is not a recognised E/A type a warning is given. Files of this kind that are executable as assembly program files usually load into cartridge RAM, or else are extra long files prepared with FWSAVE. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DISKREVIEW - Directory Utility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Part 2 VIEW/ PRINT FILES ~~~~~~~~~~~~~~~~~~~~~~~~~~ oo VIEW/PRINT FILES -------------------- The View-File function displays the contents of any file from disk to screen. Display or Internal files, of any fixed or variable record length, are presented on the screen as an ASCII character display. This may not be very relevant or readable for Internal files where bytes are usually in an internal machine representation and the sector display will be more useful for these. Many Display files, usually Dis/Fix 128 image or archive files or Dis/Fix 80 compressed object codes, may also be found to contain other than the normally readable ASCII characters. o Myart RLE Inage Files ------------------------ Image data files in Myart RLE 212 line format are converted automatically to a picture display when invoked with iew (but not ). Some effort has been expended to make the image loading fast, robust, and automatic. Short image files of 60 or fewer sectors are read and processed in one burst. THE SCREEN WILL GO BLACK DURING PROCESSING OF IMAGE DATA This is done because the 9938 VDP appears to change VRAM mapping for the Graphics 6/7 modes from the normal Text Mode addressing so that neither normal TM-2 display nor progressive image building can be maintained simultaneously. Fully interlaced pictures with 414 lines of vertical resolution are displayed half at a time, so that the whole picture may be inspected even if only in two vertically stretched parts. DISKREVIEW already uses the lower half of VDP RAM so this is not available for the alternate page. Order of precedence in loading and processing data is to assume first a G-7 image with 256 pixel horizontal resolution and 256 colors. If the data is found to be incompatible with G-7, iew then re-analyzes the data as a G-6 mode image with 512 pixel horizontal resolution and 16 colors set by palette data included in the file. The default palette is always restored on exit. iew is totally intolerant of errors in the RLE image data and will revert to display by file records on encountering an incorrect line of data. o Image Errors and Exceptions ------------------------------ The Myart iewer ignores the faulty file-headers written by earlier buggy Myart releases and perhaps other image file generators. Unfortunately there are in circulation many G-6 files where the color palette data is also sloppily recorded, while at the same time there exists the occasional G-6 file which can be initially mistaken for a G-7 file even if palette checking were done, The iew image loader is fairly robust in the face of these problems bequeathed by commercial software, and both subtlety and brute force have gone into making it fast. GIF files are not accepted but recognized and flagged. Please let us know of any valid Myart RLE files that it does not handle properly. o Back-Drop Color in Images ---------------------------- Backdrop color specification is also uncertain in Myart files, but the interpretation chosen here is to load VR-7 with the first byte of the file. In this mode pressing will increment through all possible backdrop colors with autorepeat, decrements the backdrop color, and will set it to zero for black. The backdrop as loaded may be restored by followed by re-entry with . Some files will give a blank screen initially, and if this occurs just hit to change the backdrop color. o Program Files ---------------- Program files are written to the screen in a Debug format as lines showing 16 bytes at a time, both as ASCII characters and as hexadecimal bytes grouped as 8 words, but the size of program file fully displayable is limited to about 54 sectors by the 64K buffer size limit. oo Display Scrolling and Markers -------------------------------- The file display in 80 columns may be scrolled by line or page, either by single key or auto-repeat in either direction. Once a record has been read in from disk it is stored to a buffer in VDP and subsequent access to that record is from the buffer. If a file exceeds the buffer limit of 64K the file is closed at that limit, but this should be adequate for most purposes (for longer files use the Editor SD or DR40). Only one file is accepted into a buffer. Oncc a file has been read into the buffer all or selectable part of it may be printed to the FUNNELWEB print device after editing of its name. The display is updated in units of a file record which may occupy up to 4 display lines. For program files the unit is a line displaying 16 bytes. Trailing blanks are ignored. The status line keeps track of the numbers of the first and last records visible on screen at any time. The second number will vary rapidly during scrolling. After EoF the number of the last record read from disk is also indicated. The first set of command keys described below really belongs to the main screen as the keys are alternate entries from the main directory screen. o keys. If the V/W buffer has resident data it will be presented on screen without further disk activity, but only as far as it was read into the buffer originally. o key. If both buffers have resident files stored by records, they are presented in a split screen display, each half of which may be scrolled independently. The active file for scrolling is selected by pper or ower while the dual display is in effect. The next set of keys controls the View of the file active in the View screen. When the file is complete in a buffer a print option becomes available. o and keys. Pressing causes the display to scroll one record towards the end of the file, getting it from VDP buffer or from disk as needed. sets up a continuous line scroll to the end of the file. o and keys. Pressing causes the display to scroll one record towards the start of the file, getting records from VDP buffer. starts a continuous scroll back to the start of the document. o keys. Scroll the display one page towards the end of the file. o keys. Pressing causes the display to scroll continuously one page at a time towards the end of the file, getting records from VDP buffer or disk as needed. This is faster than line by line auto-scroll since less screen updating needs to be done. o and keys. Scroll or start auto-scroll of one page back towards the start of the file. o . The space bar temporarily suspends auto-scrolling while held down, or if not auto-scrolling it causes the last manual scroll operation to be repeated. o . To cancel auto-scroll hit just about any key not given a special function. If you have the display stopped just where you want it with the space bar, press another key before releasing the space bar. o key. Moves the display to the start of the file. o key. Moves the display to the finish of the file. o keys. At any stage each of these sets a marker at the line at the top of the screen. They are all initialized to the start of the file when a new file is read from disk. Marker 5 is always set to the last record in buffer as it is read in from disk until it is specifically reassigned. o <1-5> keys. At any stage these keys return the display to the previously defined marker. Separate markers are maintained for files in each buffer. o key. During reads of Internal files the records are saved byte by byte to the program file buffer up to its maximum capacity, with a length byte at the start of each record, fixed length or not. Pressing causes this to be displayed in Hex and ASCII as if it were a program file, using the same buffer. o and <;/.> keys. During a double file display these select either the Upper or Lower file for active scrolling. The active file is in the normal colors, while the currently inactive one is in the secondary set of colors. When a file has been partially or completely read into a buffer, a new command key becomes available for use, for print. o key. The current file is printed out from the record at marker #1 to the last record before marker #5. This allows parts of a file to be printed out as specified by editing the print device name which may be a disk file or complete pathname. As the print device is opened in Append mofe, a composite output file may readily be constructed from pieces of many input files. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DISKREVIEW - Directory Utility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Part 3 - Disk snd Sector Utilities ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ oo DISK UTILITIES ----------------- The Disk Utilities menu is reached from the entry screen by pressing (or also if no valid directory is present). The menu appears in the box normally devoted to the directory display. Keys and or drive the scroll bar up or down with wraparound and selection is by the key. o FORMAT DISK ----------- FORMAT first requests the number of the drive in which a disk is to be formatted. Cautionary reminders are issued as a checkpoint, as formatting has irreversible effects once started. Then you are prompted for the number of sides (S or D), the density (S,D, or Q for 80 track drives). may be used at any time to back out. Your disk controller and drives of course must be capable of the options chosen. You are asked then if validation is desired when formatting is complete. It is normal and good practice to do this quick but not thorough check of the newly formatted disk (by reading all sectors). The sector allocation bitmap will be updated to mark the bad sectors, but disks are now cheap enough that it is false economy to use one that formats with faulty sectors. Normally the disk controller DSR subprogram is used to format the disk. Myarc floppy disk controllers with the original 40-Track DSR ROM will format 16 sectors per track this way in double density (this seems to be a survival from the same era as MS-DOS Vn 1.0). DISKREVIEW does NOT allow for this and always writes a disk header showing the normal 18 sectors per track. If you are using DR with a such a Myarc controller, you MUST indicate its presence by setting a flag in the DR file in the sixth word of the first sector (after the 3 word file header and the initial B @>xxxx instruction). Normally these two bytes are null, and >FFFF there will flag Format to use a special direct access 18 sector per track routine. Myarc FDCs with 80-Tk ROMs appear to default to 18 sector format. o VALIDATE DISK ------------- This function is invoked either directly from the Disk Utilities menu or else as a follow-on from Format Disk. It attempts to read all sectors on the disk, from #0 up to the maximum indicated in the disk header (Volume Information Block). The information window shows a running decimal count of the sector being read, the last bad sector encountered if any, and the number of bad sectors if any. The (Break) key is checked before each new sector is accessed, and if pressed it terminates the process, If there are bad sectors you are asked if these should be marked as used in the VIB bitmap. Normally a disk showing bad sectors should be treated with great suspicion. Save the files on it as desired and reformat it to check whether the errors are permanent. Even if it seems good then, it should be put aside for a while and then re-validated. More sophisticated programs such as DISKHACKER can give more detailed diagnostics. o RENAME DISK ----------- This one is so simple it hardly needs description. On selection of drive #, the current diskname is shown and also presented as default for the new name. o SWEEP DISK ---------- This removes all directory references to files on the disk and rewrites the disk headers to look like a freshly initialized disk. The files are not physically erased, and if despite the checkpoint a ghastly error is made, then immediately use the file recovery procedure on this screen. Only the bitmap is rewritten so the disk should be re-Validated if there is any suspicion of its condition. When the drive # is entered the disk volume name is read and shown with cautionary messages shown. If you you will be returned to the Disk Utilities menu after the necessary disk activity. o RECOVER FILE ------------ File recovery after Delete or Sweep Disk is possible if no subsequent write operations have been made to the disk. Bring up the Directory of the disk before entering this option. The filename to be recovered is requested. After entry the current directory is checked to see if it is already present, and then a search of currently unused sectors is made to find the name. If and when this is found the file cluster map is checked first against the disk bitmap before restoring the file. Each file should be checked immediately after recovery in case an ancient and no longer relevant file descriptor record is "recovered". If the "recovered" file is found to be corrupt, then delete it again in case the bitmap update prevents recovery of files which are still valid. o MYARC RAMdisk Utilities ----------------------- The CALL PART initializing and CALL EMDK drive number setting utilities are supported by means of DSR subprogram access. The only absolute address used is for reading the current EMDK for display, and nothing is written to the RD other than by the CALLs. No range checkihg is currently done on the number entered for EMDK. No screen editing provisions are currently made to get other than CALL PART(400,80), but enough room has been left in the program that any CALL PART may be installed with the sector editor. Write for details of how to go about it. o HORIZON RAMdisk Utilities ------------------------- The DN and AO/AF subprograms are supported in the form prescribed in the Horizon/OPA Vn 8.14 ROS docs. Disk number change is in the form CALL DN.o.n where "o" is the existing old disk number and "n" is the intended new number. No explicit range or checking is currently done on the entries. CALL AO.x or AF.x turn auto-booting on or off respectively. The ".x" extension is optional if only the first HRD is to be switched. o QUEST RAMdisk AON/F ------------------- The AON and AOF CALLs are provided for the HV99 Quest 512-Kb RAMdisk. oo SECTOR and SEARCH UTILITIES ------------------------------- The Sector Utilities are invoked by nspect Sector from the Directory screen. Selection from the menu that appears in the message window is either by number or the first letter of the corresponding entry. Editing and string search may be either by absolute sector or offset into a file. String search can be for either ASCII or HEX byte strings with wild character or wild byte in the search string. Auto string replace is not supported. o <1> or keys. Lead directly to the sector editor which appears on the sector display screen, o <2> or keys. Enable a string search in the file currently highlighted by the cursor bar in the directory, and string entry follows. o <3> or keys. String search is now by absolute sector number. See the later String Seardh section in this file. o and keys. Force the display back to the normal directory commands before scrolling the cursor. o SECTOR EDIT ----------- On selection of Sector Edit a new screen appears, with a menu of 5 choices appearing in the box at upper right. The current file under the cursor is written up as a reminder. Select by number or initial letter of the option name. o <1> or keys. Bring up for editing the Volume Information Block of the disk, otherwise accessible as sector #0, and sets absolute sector mode. o <2> or keys. Present for editing the File Descriptor Record for the current file under the cursor. Absolute mode is set. o <3> or keys. Load the first sector of the file currently under the cursor. It is handy for quick checks of program file headers. Absolute mode is set. o <4> or keys. Set up editing of the sectors within the current file. The desired offset is entered as a 3 digit hex number. The maximum offset is shown for guidance. When a sector is displayed in file offset mode both the file offset and absolute sector are indicated. o <5> or keys. The absolute sector number is then entered in 3 digit hex form before the sector is read. The chosen sector is presented in hexadecimal form in 16 lines of 16 bytes in the left side box with a line gap half way. An ASCII version is simultaneously shown in 4 lines of 64 characters in the bottom box. The ASCII text is easier to read in this wide single spaced form than in the displays usually found in sector editors. A short reminder for the editing keys is given in the upper right block, and these follow the former FUNNELWEB DPATCH pattern which in turn followed J. Birdwell's DSKU in the interests of standardization. The flashing accelerating auto-repeating cursor appears either in the Hex display or the ASCII display depending on the entry path. When an entry is altered in either display the corresponding change is made in both displays and marked in the second color set. The HEX display accepts only hex digits for editing. A running count of cursor position in hex and decimal is displayed. o and keys. Drive the cursor up or down a line with wrap-around. o and keys. Drive the cursor along a line with wrap-around at sector start and end. o key. Forces the cursor and entry into ASCII mode. o and keys. Force the cursor and entry into HEX mode. The cursor will start at the most significant nybble of the current byte. o key. When a sector is read in a spare copy is made. This restores the riginal version to undo editing changes. o key. akes the currently displayed and edited sector over as the reserve copy. o key. ecalls the reserve sector copy to the edit windows. The keys make it possible to transfer sectors from one place to another. o key. Moves to the ext sector. In absolute mode this is numerically the next. In file offset mode this is the next sector in the file and may skip about over the disk in absolute sector equivalent if the file is fractured (indicated by the asterisk in the directory display). o key. Moves ack a sector on the disk or in the current file. o key. rites the sector back to disk at the current sector number on the current disk, after first asking for confirmation with or >dtrlA>. REMEMBER -- CARELESS USE CAN DESTROY YOUR FILES. o STRING SEARCH ------------- When a string search option is selected a choice is presented for ASCII or Hex string entry. Each entry mode allows specification of a wild card. For ASCII entry this has "?" as the original default, and for HEX seardh this is byte >00. When the wild-card is entered all occurrences pf the previous wild-card in the search string are changed to the new value. The string is 12 characters or bytes long, and if you do not use the full length, leave the trailing part as the wild-card. Trailing wild-cards are eliminated from the search to speed it up. The function of a wild-card character in a string search is to flag a character or byte of the string to be ignored in making comparisons in the search so that as long as the other bytes match, that one in the sector can be anything. In disk search (absolute) mode the start sector for the search is requested. The search may be terminated at any time by pressing BREAK. File search shows both offset within the file and absolute sector numbers as the search proceeds. The HEX search mode allows the search to be forced to even word boundaries. This cuts down on the number of falss alarms when looking for instruction opcodes or word data in E/A programs. When a match is found in a sector the display switches to the sector edit screen with all occurrences of the matching string highlighted in the secondary color set in both Hex and ASCII displays. o <1> or key. Return to directory screen and ontinue search. o <2> or key. Transfer to dit mode in either ASCII or HEX and absolute or file offset mode as appropriate. The cursor appears at the first occurrence of the search string. Editing then proceeds as normal. o <3> or key. Just uit the search. On leaving dit mode after a string search the option is presented to continue, restart, or abandon the search. o <1> or key. Continues the string search at the next sector, in the file or absolute, after the one at which the search last terminated. o <2> or key. Restart the search from the string entry screen with the previous entry as default. o <3> or key. Abandon the string search. 80-Track Notes -------------- Files copied to an 80-track disk with over 1600 sectors (usually 2880) will occupy more space than they would on a DSDD or smaller disk. This is because 2 sectors are allocated at a time. A file will appear as either 1 or 2 sectors longer than on DSDD or smaller disks. One sector of these is due to 2 sectors being allocated for the File Descriptor Record, one of which just goes to waste. If the body of the file has an odd number of sectors then the last one will be allocated 2 sectors. As an example 33 sector EA SAVEd program files chew up 34 sectors on DSQD disks and 34 sector files go to 36 sectors. All 80-track disks are indicated as QD even if single density along the track. The ambiguity is resolved by looking at the disk size. DISKREVIEW catalogs 80-track disks ACCORDING TO SECTOR ALLOCATIONS, with file lengths shown being those allocated, and not just those occupied by the file. Copies to normal disks will occupy 1 or 2 sectors less space each. All file copies are done using the DSR Direct File Input/Output subprograms to TI specifications. This is not screamingly fast and involves more disk accessing than is really necessary, but it does make sector allocation and de-allocation entirely the responsibility of the disk controller DSR, which is how it should be. No attempts are made by DISKREVIEW to second guess the controller DSRs. Development was with a Myarc FDC with 80-track EPROM, and this device appears to function as expected by all DSR calls. Reports indicate that the Myarc HFDC is NOT RELIABLE at the DSR level for 80-track disk operations, and the version of the Myarc DM which goes with the foibles of your particular HFDC should be used for 80-track file copy operations. The Editor SD, or QD show file sizes as their DSDD sizes even on 80-track disks if you need a quick check (sectors used and available numbers are correct however). I am not sure at the moment which is the more useful approach, given that 80-Tk disks are not a common medium of exchange. Please let me know your preference. Patch Area Notes ---------------- Some data items are stored near the start of the DR file following the 3 word file header and the initial 0460 >xxx two word branch instruction >0A -- Myarc 40-Track FDC flag <- Null except for this DSR ROM >0C -- >FFFF only if TI or Corcomp disk controller else >0000 A >FFFF value here cancels some extra disk reads which are necessary to reset disk controllers (mostly Myarc) which need to keep track of sector #0 on the last disk accessed to get sector addressing right. >0E -- >FFFF only if PAL wanted and normally >0000 for NTSC >10 -- Normally >0000 for color -- reserved for color/B&W flag >12 -- Reserved for future use - normally null >14 - >32 -- Default color palette data (16 words) >0000,>0000,>1106,>3307,>1701,>2703,>5101,>2706 >7101,>7303,>5106,>6406,>1104,>6502,>5505,>7707 Colors (red,blue,0,green) <- in range (0-7,0-7,0,0-7) >34 -- GROM entry address for XB loader, >6372 for TI XB Vn 110. >36 -- GROM address for GPL stack entry for interrupt loader, normally >63D3. >38 -- GROM address for interrupt loader re-entry, normally >6495. See under Format in this file for more details on the Myarc 40-Tk DSR flag. The color palette data as issued is the standard TI-99/4a color set as also reset by the 9938 VDP on power-up. This palette is loaded into the VDP palette registers on entry to DR and after Myart file View. Changing entries here allows choosing the color set to suit your own preferences (I usually change the "dark red" >5101 to a darker shade >4000 for use with the Amiga monitor). Normally only minor changes would be made to avoid upsetting color plans in programs to be loaded. Cursor and beep timing data items as of Vn 4.40 are handled by the main FUNNELWEB program. Bug Note -------- A curious bug has surfaced in the use of DR or SD with the Myarc 80-track FDC. Failed DSR sub-program access other than sector access as used for directory reading, such as attempted file copy to a write protected disk, causes partial malfunction of the FDC, and sensible directories are then obtained only for the RD at CRU >1000. The condition does not affect subsequent file level access. Once this has occurred the only solution is to reboot the machine. Return to Funnelweb is not sufficient. If you have a Myarc 80-track FDC ROM which does not malfunction this way, please send a copy of the DSR ROM. No fix has yet been found. In another separate bug there may also be failure to delete single sector files from some RAMdisks. This is a ROS subprogram problem, and to get around it use a DM such as DM-1000 which does not call the DSR Delete File function. Oct / 20th / 91 Funnelweb Farm