*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-* ! MR FIXIT DOX ! * * ! PRESENTED BY BETS C. FOR: ! * * ! APPLE MANOR (716) 654-POOF! ! * THE SOUTH POLE (312) 677-7140 * ! THE OUTPOST (312) 441-6957 ! *=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-* Mr. Fixit contains several utilities that let you identify and recover "blown" disks without needing an intimate knowledge of Apple DOS. Scan utility: Identifies flawed track/sectors on disks. Copy utility: Ignores flawed sectors as it copies a diskette. Edit utility: Allows you to change disk sectors & also contains a disassembler. File restoration utility: Allows you to recover deleted files. There's also a Aatalog repair utility. BOOTING AND RUNNING ------------------- Booting with a 16K Ram card, LanguAge card, Apple -/e: Mr. Fixit is loaded into the RAM card if you have a 16K RAM card, a language card or an Apple //e. It won't be necessary to reload after mOst functions arE performed. At the Applesoft prompt type '&' and RETURN to re-enter Mr. Fixit. Booting without 16K RAM, Language card, Apple //e: ------------------------------------------------- Mr. Fixit will be loaded into the program area. After you run a BASIC program or perform a DOS function (if you've overwritten page 3 in RAM), you'll have to reload Mr. Fixit. DISK SCAN UTILITY ---------------- This utility won't scan copy protected disks. ESC = Abort scan The scan will start with the first track and sector (T0,S0). As the scan progresses, the current track and sector number will be dIsplayed in hexidecimal on the fifth line along with the status of each sector. The Scan will report each flawed sector on a separate line. When the scan is completed, you can print the results by typing 'P' when the prompt appears. This will print the result to a standard Apple printer uith the card in sLot one. Interpreting the Scan --------------------- TRACK/SECTOR nn/n FLAWED BUT READABLE. When you see this message for any track, your disk is still ok, but it would be wise to make a copy of it immediately using the Mr Fixit Copy Utility. TRACK/SECTOR nn/n UNREADABLE. You will not be able to copy the disk with COPYA. The Copy Utility will copy the disk, but any unreadable sectors will be filled with hex FF in the copy. You may choose to use either the Mr. Fixit Copy Utility or the Mr. Fixit Edit Utility to recover a disk with unreadable sectors. The Edit utility will read some flawed sectors into memory, so if you're familiar with what should be on the disk, you may be able to recover everything. First 3 tracks flawed -- Systems Image Clobbered. An easy fix is to INIT another disk and FID your files to it. Track 11 Flawed - VTOC Errors. To fix these disks, run the Catalog Repair Utility. Before you start to fix the catalog track, you should make a backup copy of the disk with the Copy Utility. THE DISK EDIT UTILITY (DEU) --------------------------- All standard DOS 3.3, Pascal, and CP/M disks can be edited with the utility. Most copy protected disks can't be read with DEU. DEU works with individual sectors. With DEU you can read a sector from the disk, change the sector in memory and then write the changed sector back to a disk. The Edit utility also lets you "dis-assemble" modules into 6502 mnemonics. Overview of DEU: 1. Diskette Parameters Line - Shows the track, sector, slot and drive. 2. Command Line - Wher you enter your commands and change sector data one byte (character) at a time. 3. Sector Display Area - Where you enter your commands and change sector data one byte at a time. E = Edit ESC = Return to commande mode from edit H = Help M = Return to main menu R = Read sector CTRL Q = Quit Mr Fixit CTRL RESET = Restart DEU & = Re-enter DEU from Applesoft CTRL Y = Re-enter DEU from monitor (These work unless you've overwritten DEU (to page 3 of RAM) CHANGING DISKETTE PARAMETERS ---------------------------- T = change track # (0-22 hex) S = change sector # (0-0F hex) D = change drive # (1 or 2) CTRL S = change slot # (1-7) ESC = aborts change OPTIONS AFTER READING A SECTOR ------------------------------ 1. Change which sector is displayed 2. Change the display to ASCII 3. Print display 4. Dis-assemble the Binary files 5. Edit the sector buffer 6. Write the edited sector buffer to a disk 7. Copy sectors -> Reads the next sector <- Reads the previous sector . Increases the sector # by one without doing a read , Decreases the sector # by one without doing a read FLAWED SECTORS - SPECIAL READ (CTRL R) If a sector can't be read because it's flawed, pressing CTRL-R will tell DEU to read the sector ignoring some of the error checking code (e.g. checksum). If the sector isn't badly flawed it can be read and then written back to the diskette. Sometimes repeated reads of a flawed sector can't get entirely reproducible results. When this happens you must use your own judgement as to what should be written back to the disk. In cases of badly flawed or copy protected disks the edit may not be able to read a sector and return an error message. CHANGING THE SECTOR DISPLAY TO ASCII ------------------------------------ 'A' or CTRL A will toggle the display between ASCII and hex format. If your Apple can't display lower case characters, the buffer display area may not display the proper ASCII character. Since the Apple can't display inverse lower case characters, erroneous characters may be displayed in the inverse cell. Also, any ASCII character with a value greater than 60 hex will display improperly in the inverse cell. Inverse Mode for Control Characters. The ASCII format displays control characters in the inverse mode. Negative ASCII (most significant bit = 1) and positive ASCII (most significant bit = 0) characters are not differentia- ted. This is important since DOS 3.3 TEXT files are stored as negative ASCII characters and CP/M files are stored as positive ASCII characters. PRINTING THE SECTOR BUFFER (CTRL P) ----------------------------------- Printing the display screen CTRL P. The screen contents can be printed on any standard printer configured to slot 1 by pressing CTRL P. If the ASCII format is in effect, the control characters will be printed as blanks, because many printers use control characters to perform special functions. Printing can be stopped by pressing the (ESC) key. The Disk Dis-assembler ---------------------- Pressing the 'L' key dis-assembles the contents of the sector buffer into 6502 mnemonics. A word of caution here. Since the last one or two bytes of the buffer may contain an incomplete instruction, the last dis-assembled instruc tion may be incorrect. An error may be persent if the last instruction is a two-byte instruction with the second byte 00, or if it is a three byte instruction with the third or second and third bytes 00. The check is to examine the sector buffer for the contents of the last two bytes. The disassembler always starts the dis-assembly with the first byte in the sector buffer. The dis-assembly can be printed on any standard printer configured to slot 1 by pressing CTRL L. Ppinting can be stopped by pressing the (ESC) key. EDITING THE BUFFER ------------------ To edit the sector buffer enter 'E' on the command line followed by the hexidecimal buffer cell # of the byte you want to change. Then press the space bar to enter the editor. The buffer cell # may be omitted in which case 'E' followed by space bar will give you buffer celL #00. The edit mode is exited by pressing the (ESC) key. The sector display will still be on the screen and you can print it (CTRL P), dis-assemble it (L), copy it (CTRL C), etc. After entering the edit mode the selected buffer cell is displayed in inverse -> Move to next buffer cell (increases buffer cell # in command line by 1 and display next byte in inverse mode.) <- Move to previous buffer cell (decrease buffer cell # in command line by 1 and display previous byte in inverse model CHANGING A BYTE IN THE BUFFER CELL ----------------------------------- The current buffer cell is changed by enteping the new value in hex and pressing the space bar or the arrou keys. If an error is made either type until the correct value is displayed or erase the input with CTRL X. ENTERING ASCII (TEXT) DATA -------------------------- The edit mode permits the direct entry of ASCII characters. Enclose the ASCII value you want in single quotes (e.g. 'B') for negative ASCII or double qutoes (e.g. "B") for positive ASCII. The first quotation mark and the last quotation mark must be of the same type. Just as with hexidecimal changes, you can change mnly one byte (ole ASCII character) of the sector buffer at a time. CTRL X and ESC CANNOT be entered this way - they must be entered as hex values (CTRL X will cancel the input, ESC will exit the edit mode). Double and single quotation marks should be entered as hex values. If you type the wrong ASCII value, just keep typing until the value you want is displayed on the commanD line. The ASCII character is placed in the buffer aell by pressing the space bar or either arrow key. Press CTRL W to write the sector buffer to the disk. Once a sector has been altered, its original contents are lost. The copy function is available for systems having two drives in the same slot. Press CTRL C writes the contents of the sector buffer to the same track/sector on the disk in drive 2. The sector is increased by one and the disk in drive 1 is read to the sector buffer. THE DISK COPY UTILITY --------------------- The difference between this copy program and DOS COPYA is that this copy will attempt to copy flawed sectors, If they copy finds a sector it can't read, it reports an error and writes a sector of hex FF (that is, it doesn't copy any- thing it can't read from the flawed sector, it just fills the sector on the new disk with a 'code'). Because of Mr Fixit's attempts to copy flawed disks, this copy takes much longer than COPYA. The Disk Copy Utility works on standard DOS 3.3, CP/M, & PASCAL formatted disks. This utility doesn't support copy protected disks. It will report all tracks as unreadable (copying FF to all sectors) on most copy protected disks. The copy does three steps for each track. The line after the line labeled "PRESS THE ESC", tells you which of these steps the copy is in: 1. Track nn Read - Reads a track from the disk to be copied into memory. 2. Formatting disk - Formats the corresponding track on the disk receiving the copy. 3. Track nn Copied - Writes the memory copy of the original disk track (DRIVE 1) to the corresponding track on the disk receiving the copy. If you have only one drive, you'll have to swap between the original disk and the disk receiving the copy for each track. Mr Fixit will prompt you when it needs a disk swap. So during the copy, you will see the following series of four screens for each track: 1. A screen prompting you to place the original disk into the drive. 2. A screen letting you know that a track from the original disk is being copied into memory. 3. A screen prompting you to place the disk to receive the copy into the drive. 4. A screen showing the results of the copy for that track. As screen 1 and screen 3 display, put the requested disk in the drive, and press the space barto continue the copy. To return to the Copy sub-menu type (ESC). If there's a read error during the copy it will try to read the sector 3 times using a modified RWTS. When this happens one of three error messages may be displayed on the fourth line of the screen (in place of the 'Track nn Copied' message. Track nn Flawed, Reliably Read: means at least two of the three reads were identical and the sector (as it was on the two matching reads) is written to the receiving disk. If this error message is the only error displayed through out the copy run, your disk should be ok. Track nn Flawed, Unreliably Read: none of the three reads agreed. The data stored from the last read is written to the receiving disk. If you receive this message only once duting the copy, the disk receiving the copy may have some invalid data. If the disk was a program disk, you can try to run the programs to make sure they all work properly. If it is a data disk, you can run the programs to make sure they all work properly, or disply the data on the screen using ASCII mode of the Edit utility of Mr Fixit to make sure all the data on the disk is correct. Track nn Flawed, Unreadable: This means Mr Fixit couldn't read the sector. After three attempts, Mr Fixit stops trying to read he sector and writes a code (hexFF) to the sector on the receiving copy. FILE RESTORATION UTILITY ------------------------ Will restore most deleted files. This utility uses only drive 1. When you've written on a disk after a delete, this utility may not restore the file. There are four error messages from this utility: T/S list overwritten: means that the file may still be intact, but DOS doesn't know where the file is. It means the track/sector list no longer has a 'pointer' to locate the file. File Overwritten, File not Restored Disk Write protected Drive Error CATALOG REPAIR UTILITY ---------------------- The Catalog Repair Utility repairs disks with damaged catalogs to full operation Symtoms of catalog damage include I/O errors with executing the DOS CATALOG command or files suddenly disappearing from the catalog listing. You get these errors because the catalog, which contains the information DOS needs to locate and reserve sectors for each file saved on the disk, doesn't look like DOS expected to look at it. The first thing to do when a disk is giving I/O ERROR messages or won't CATALOG properly is to use the Disk Copy Utility to make a working copy of the damaged disk. Place the working copy in drive 1 and select the Catalog Repair Utility First, the repair utility checks the first five bytes of each of the 16 sectors on track 11 hex. These bytes must have certain values on properly formatted sectors. If these bytes have improper values, the repair utility assumes the sector has been clobbered. When sector 0 is clobbered the VTOC is damaged and a message is written to the screen, When any of the remaining sectors are clobbered the directory (or catalog) damaged and this is reported to the screen. If the VTOC alone is damaged, then a check is made against the directory for saved files, and the VTOC is reconstructed. If the directory alone is damaged, the disk is searched for track/sector lists. The track/sector lists are checked against the VTOC and the remaining good directory sectors. The lost files are identified and written back to the damaged directory sector. If the VTOC and directory sectors are damaaged, a search for track/sector lists is made. The VTOC is rebuilt to show all sectors used. All the track sectors not identifiable with files on the undamaged directory sectors are written to the remaining directory sectors as saved files. When the VTOC and catalog are damaged the Catalog Repair Utility attempts to recover all files (including files which may have been deleted and overwritten the damage catalog no longer contains the information necessary to do anything else). Also, when the damage is this bad, somd of the file names have been lost When the file name is lost, the Catalog Repair will give the file a 'dummy' name 'FILE n' where n is just a sequence number. Finally, the file type designation is lost when the name is lost, so the type preceding the name of all FILEn files is only an 'educated guess'. FIXING A DISK WITH VTOC AND CATALOG DAMAGE ------------------------------------------ 1. Get a catalog list with sub-menu 4 2. Use sub-menu 3 to change file types 3. Use sub-menu 2 to rename File n files 4. Working from the new catalog list, decide which files are no longer needed and delete them. CATALOG THE DISK: Each file with the name FILE n is a file which was "lost." You should replace the File n name with the "lost" name. Before you rename the files, make sure the file types are correct. Checking the File Type Designatioin: The Catalog Repair Utility must look into each file with a FILE n name to determine whether it is an A,I,B or T type file. The correct file type will be assigned in the majority of cases. It's possible, although unlikely, the Catalog Repair Utility can be fooled and assign the wrong file type. It's for this reason that the File Type Change Utility is provided. The utility will prompt you on how to change the file type of a specific file. Keep changing file types until you get your program to run. The Catalog Repair Utility contains a menu for renaming files. This program is available so you don't have to leave the utility to rename the file. Don't attempt to identify a file by its position in the catalog listing. The Catalog Repair Utility often juggles the order of the catalog listing while it's doing it's magic.