FLOPPY81 V1.6 (C) A. Schwall, 1995, 1996, 1997 0. Installation The files FLOPPY81.EXE, DISK_816.HLP, DISK_816.HLE and BEF_LIST.FLD ought to be copied to the same directory of the harddisk. If one is lacking the program will stop at the latest if F1 is pressed or if is called for. Do not copy the file FLOP_86.CFG in order to give the program a chance to find out the individual data of the PC used. Change then at the DOS prompt to the directory used, type FLOPPY81 . If a batch file is used to start the program then it must at first change to the directory and then call the program at a separate line. 1. Summary The program handles a 1.44 MB PC-drive in such a way, that it can read files from and write files to 3.5'' disks coming from the 1581-drive. The files may be decoded and saved to DOS. Saving to a DOS-disk however is only possible with a drive not used for the 1581-disks which means that two drives are needed. There is no restriction for harddisks. Included are also a disk monitor for the 1581-disks, a hex monitor for files loaded to the PC and a disassembler for the latter. The program reads PRG and SEQ files, but no REL files. BASIC USR files are read to full extent if they have PRG structure. GEOS files (Write, Paint, Scraps, Albums and Fonts) are read as well. As a maximum 125 full sectors can be read. This means a GeoWrite file may have up to 135 sectors and a GeoPaint file up to 150 sectors indicated in the directory. With Geos the program will normally read less sectors than indicated in the directory, because neither the VLIR nor the info-sector are part of the file to be decoded. The form shown when loading GEOS files is the GEOS ICON somewhat enlarged. If the GEOS file is too long this is indicated after loading the first or any following part. The part loaded can be processed as a normal file. If it is a GeoWrite or GeoPaint file or a Album the next part can be loaded calling . This procedure can be repeated until the end of the file is reached. The possibility is terminated by calling other functions under or . During this procedure the indication '% loaded' and 'sectors loaded' is not correct, because normally the last part of the preceding section was incomplete, not decoded and therefore had to be loaded anew. DOS files may be transferred from the harddisk to the 1581-disk. In this case the directory for the DOS file and the name and type of the C64 file can be chosen without influence to the defaults. Functions are also available to delete files from the 1581-disk, to copy files to another 1581-disk, to validate 1581-disks, to rename files (all this for Geos files as well), to show the Geos informations, to copy full 1581-disks and to format such disks. It was not possible to test wether the program serves 720 KB drives and only one 2.88 MB drive could be tested. The program cannot be executed in the DOS window of MS-Windows nor in any other environment with multitasking functions. 2. Hardware The program needs a PC with a 3.5'' disk-drive for 1.44 MB, a VGA card, 640 KB RAM, a mouse and a DOS operating system. 3. How to use When the program is started for the first time it wants to know wether the menu and the help-texts shall be shown in the english or in the german language. Click to the relevant white letter. If the choice was wrong go to (in german: ) and change to the other mode. If the PC has more than one drive then the drive (A or B) is to be selected which will serve the 1581-disks (menu . Equally the path and directory where the files will be saved should be entered (menu ). The program will accept the path only if it exists and if it is not on the drive used for the 1581-disks. If these indications are not saved they have to be repeated after each start of the program. ***** Defaults: drive B: path C:\FLOPPY81\ ***** If there is one drive only, drive A: is automatically selected (see however point 6 below). The menus under and need to be served with the keyboard, all other menus and the y/n questions accept the mouse as well. Within the menus a click to the word is sufficient, in all other cases the white letter y must be hit if 'yes' is meant. Every thing else is 'no'. The highlight bar is moved to a name by a click to that name, a double click to a name selects that file (other possibility: move the bar by cursor, PGE up und down or with the mouse to the name and press ). To scroll the directory use the cursor or PAGE up and down keys or put the mouse cursor to the upper or lower border line of the window and press the left button. This help-file may be spooled as known from other cases (spool: put mouse button to one of the arrows and press left mouse button, jump: click on the right border, shift: put cursor to the mark, hold left mouse button and shift). All actions with C64 files are possible only if a file is selected. This means e.g. click to , click to , select the file from the directory shown by a double click to the name, click after loading is ready, click to , click to and watch the result. If the point is called and no file loaded, then the programm calles automatically . 4. Performance 4.1 C64-Files C64 BASIC files may be decoded (as with LIST) and saved in ASCII format (extension .A64) or in the original format (.P64). C64 assembler files can be disassembled and saved in the original format (.P64). Source files for Hypra-Ass are decoded in their original format and saved as ASCII file (.A64). Precondition in both cases is that the start-address is the normal one. If it is not it may be changed under temporarily to 0801 for BASIC and to 1FD8 for source files. If the address of other than BASIC or Hypra-Ass source files is changed to these values, this has normally the same effect as it had for the C64: crash of the program! Also SEQ files may be decoded and may be saved as ASCII or in the original format. If the records however are longer than two lines this may disturb the screen. For USR files all possibilities depend on their format. For GEOS files see next point. 4.2 GEOS text files GeoWrite files are recognized automatically and decoded to the screen. If pictures are included this is shown by (BILD) on a separate line. The pictures cannot be decoded and are ignored when saving the file. GeoWrite files, text albums and text scraps are saved in ASCII format (.W64) and can be imported to GeoWrite (PC). They include TAB-marks, which means that putting TABs in GeoWrite (PC) will restore nearly the original format, if that was created with TABs and not with spaces. Decoding and saving text albums is possible for one part at a time, which is to be selected from a box. 4.3 GeoPaint Files GeoPaint files, photo albums and photo scraps are recognized automatically and are decoded black and white. Photo albums of the C64 are shown in two columns. That means that 8 full windows of the C64 or even more smaller scraps may be viewed at once. Albums of the C128 are shown in two columns only if no scrap of the part loaded to the PC is wider than 40 bytes. If the part of the album loaded to the PC needs more than the full screen the program asks what part is to be shown. No names are evaluated, therefore the question can only be answered by a number. Sections of the screen can be selected using the mouse and may be deleted or saved as a PCX-file. Deletion is valid only for the screen, not for the file in memory. A new call of returns the original. This function is included to clear the surroundings of a section to be saved. Calling brings about a corner which can be positioned with the mouse. A click with the left button fixes the upper left point of the frame which can be opened by moving the mouse. Another click (left) selects the contents of the frame, a click (right) restarts the selection. If the corner or the lower line of the frame touches the lower border of the screen, the picture is scrolled upwards and if these leave this border, the picture is scrolled downwards again. The upper border of the frame holds its position when scrolling. If during the same session many frames of a screen will be saved it is simpler to use one name only together with the series function: give the first frame to be saved a name with not more than 7 characters, the last one being a 0. Beginning with the second frame type only the letter s as name and then . The program will number all the files consecutively. Was e.g. the name of the first file PICTURE0.PCX then the name of the 20. file will be found as PICTURE19.PCX. 4.4 Geos Fonts If a font is loaded, calling indicates in the last line of the screen the font sizes available. Enter the size to be shown and press . This will decode all characters of this font size (Megafont as well) to the screen. Any further action is the same as with GeoPaint files. 4.5 Overwriting of Files If the name entered for a new file is already used for an existing file the program - except for PCX files - requests a confirmation that the existing file is to be replaced. Each answer different from quits the point without action. PCX files will simply be replaced. When copying files from disk to disk replacing is not possible. If at the destination disk an identical name is found, this is indicated and the action is ceased. 4.6 Deleting C64 Files The file to be deleted is selected from the directory. After a question for confirmation the file is deleted. This works with all C64 and GEOS files with the exception of REL and CBM. 4.7 Copying of Files All C64- and Geos-files (with the exception of REL and CBM) may be copied to another disk, which must have 1581 format. 4.8 Renaming of Files The file selected is renamed to the designation entered. The format of the new name is not checked, only the length is limited to 16 characters. If an identical name does already exist for another file, this is indicated and the action ceased. The editor supports the keys CURSOR (left and right), POS1, END, DEL and backspace. 4.9 Validation of the 1581-disk The command acts like the Geos command. Wrong indications of the number of sectors per file however are not corrected. If REL or CBM files are found the command is not executed. 4.10 Formatting a Disk The disk is formatted so as to be usable for C64-Geos and for C64-DOS. That means it gets a border sector and the Geos identification. Please use 2DD disks only (one index perforation), 2HD will not work! 4.11 Saving DOS Files to a 1581-Disk The action is completely guided by menu. If the name of the DOS file is not remembered the point may be left without action by entering an asterisk as the last character of any name (e.g. abc*). Before saving confirmation is asked for. The possible length of the PC file is limited only by the capacity of the 1581-disk. The transmission speed is about 30000 bits/s. 4.12 Copying 1581-Disks A complete 1581-disk including its name and all identifiers can be copied to another 1581-disk. The destination disk must have 1581 format, the contents is of no importance. The copying replaces all data by those of the source disk. 4.13 Saving from 1581-Disk to Harddisk The file selected is saved to the directory which was entered under . Any name and extension may be chosen limited only by the DOS conventions. If there is already a file with the same name, the program asks wether it shall be replaced. Every answer different from leads back to the menu without action. Precondition for saving the complete file is a normal PRG or SEQ structure. GEOS files with VLIR structure (e.g. Paint, Write and many system files) cannot be saved because no general format for DOS is available. All files are saved without the track and sector bytes. 4.14 Help An online helpfile is available for most of the points. It is activated by pressing . As the BASIC function INPUT is used at several occasions the help text sometimes will appear only after the input. Because of the limitations given by QuickBASIC 4.5 help cannot be activated if the graphic window is scrolled upwards beyond a certain point. 5. Details to the Commands and Menus Main Menu File load and save files, change name of files and get information on files Processing decode files and save decoded files Disk show directory of, validate, format and copy a 1581-disk and a monitor for 1581-disks Tools hex-monitor und disassembler Path & Drive select drive, path and language and show contents of the PC-directory selected Help description of the program and copyright Quit terminates the programm Submenu Load from Disk load a selected file to the PC Load GEOS remainder load next part of a very long GEOS file (point is only visible if needed) Information shows the usual GEOS information on the file selected Delete from disk delete the file selected (GEOS as well) DOS-file -> disk transfer a file from the PC to a 1581-disk C64-file -> DOS transfer from 1581-disk directly to the harddisk (not a GEOS Vlir-file) Copy file copy a file (GEOS as well) to another 1581-disk Rename change the name of a file on the 1581-disk Submenu Decode file decode the file loaded provided it has BASIC, SEQ, USR, Hypra-Ass or GEOS (Write, Paint, Font or Album) structure Save file save the decoded file as a PC-file Submenu Directory of disk shows the directory of the 1581-disk Validate disk VALIDATE for PRG, USR, SEQ and GEOS Format disk formats the 1581-disk (like C64-GEOS) Copy disk copies a 1581-disk to another 1581-disk, overwriting the contents of the latter Disk-monitor view and edit a 1581-disk sector by sector Submenu Monitor shows the file loaded in hex-format Print hex data prints data as shown by the monitor using LPT1 Disassembler disassembles 6502-objectcode Print 6502-Kode prints 6502-objectcode using LPT1 Start-address changes temporarily the start-address of the file Select printer selects HP DeskJet or EPSON compatible printers Submenu Drive & Contr. select drive of the PC (A or B) to be used for the 1581-disks. Select type of the controller (X or Y) if the automatic fails. Path select path for saving files Language change to german or english for all texts of the software Directory PC shows contents of the PC-directory selected under File / Load from disk Select the file with the highlight bar and confirm the selection. The highlight bar may be moved with the cursor keys or by a click to the file-name. Confirmation is given by or by a double click to the name. Spool the list with the up and down cursor or PAGE keys or by putting the mouse cursor to the upper or lower border line of the window and then pressing the left mouse button. After selection the file is loaded. During loading of a GEOS file the enlarged ICON is shown. or a click outside the window leads back to the main menu without action. File / Load GEOS remainder is visible only after loading the first or any following part of an extremely long GEOS file and loads the next part of this file to the PC. The point disappears when the file is completely loaded or if other items under or are called. File / Information The file is selected from the directory and the informations (for GEOS files only) are shown as known from C64-GEOS. Remember that date and time may be wrong if the C64 was not set to the actual data. File / Delete from disk The selected file is deleted after a request for confirmation. The command acts on PRG, SEQ, USR and all GEOS files including those which cannot be loaded. REL and CBM files are not deleted. File / DOS-file -> Disk The program asks for the path and directory where the DOS file is be found, for the name of the file (with extension) and for the name to be given to the C64-file. The type of the C64-file is asked for too. This indication has no influence on the file, it does only help the C64 to use the suitable loading routine. The path is valid for this action only, it does not change the defaults. Wrong statements for path and DOS-name are not accepted. The name for the C64-file is not checked, should however conform to the C64 conventions. If the DOS name is not remembered entering an asterisk as the last character of the name and a following will cease the action. File / C64-file -> DOS The selected file is saved to the directory entered under . GEOS files with VLIR struture however cannot be saved. For details see 4.10 above. File / Copy file A single file (GEOS as well, but no REL or CBM file) is copied to another 1581-disk. If a file with an identical name is found on the destination disk, the action is ceased. File / Rename The name of the file selected is changed according to what is entered. The new name is not checked for its format (e.g. forbidden characters) but is limited to 16 characters. The editor accepts CURSOR left and right, POS1, END, DEL and backspace as control keys. If the new name does already exist for another file the action is terminated. Processing / Decode file The type of the file is automatically detected, there is no manual choice. BASIC (Commodore and Simons BASIC) files are shown just as with LIST by the C64, the typical controls however are translated to abbreviations. Source files for Hypra-Ass are shown as usual. For SEQ files one record is one or two lines on the screen. Longer records are not shown correctly. GeoWrite texts are shown using TABs (except decimal TABs) and start and end of line marks as far as possible with the PC font. Scraps and albums are shown without TABs. For fonts all sizes available are indicated. Select one size (enter number and ), then all characters of this size will be shown and the result may be processed like a Paint file. Pictures are displayed and may be saved partially or wholly in PCX format. At the bottom of the screen some indications on how to use are given. If BASIC or source files are not decoded they have another start address as usual. In this case the start-address may be changed under temporarily to 0801 for BASIC and to 1FD8 for source files. Files with Paint structure saved here go always to the directory entered under . Processing / Save file BASIC files and source files are saved as ASCII text or in the original format. ASCII text of source files contains TABs and ASCII text of a BASIC file contains tokens translated to plain text and control keys translated to abbreviations (up, down, red, yel ...). GeoWrite files, text-scraps and text-albums are saved as ASCII files with TABs. Text albums can only be saved part by part and therefore the program asks for the part to be saved. The name must correspond to DOS conventions. The extension however will be generated automatically. After the name and the extesion are shown. If the answer to the following question is the file is saved, leads back to the main menu. If a file exists with the same name the choice is left to replace it or to quit. For PCX files there is no test on identical names and no indication of the full name with suffix. Using twice the same name will delete the first file. Saving fonts under this menu results in a binary file of the complete font. For PCX format use . There is a free choice of the path for saving. The drive used for the 1581-disks however must not be used, because saving of DOS files needs a disk formatted under DOS! Disk / Directory of disk The directory of the 1581-disk is displayed. If there are more items then the window shows, the text can be scrolled with the up and down cursor or PAGE keys or with the mouse (put mouse cursor to the upper or lower border line of the window and press left mouse button). or a click outside the window leads back to the main menu. Disk / Validate disk The disk is validated and the BAM is corrected. The indications of the number of blocks per file in the directory however are not corrected. The function acts on PRG, SEQ, USR and all GEOS-files. If REL or CBM files are found the validation is not executed. Disk / Format disk The disk is formatted in GEOS format, which means that it gets a border block (track 40, sector 19) and that the GEOS identifier is written to 40/0. Therefore it is usable for C64-DOS and -GEOS as well. Please use 2DD disks only, by no means 2HD! Disk / Copy disk The 1581-disk to be copied is written completely to a temporary PC file. The destination disk has to have 1581-format but may contain any files. The complete contents of the destination disk including name, ID etc. is replaced. The old contents is lost. The action can be terminated at the begin and before inserting the destination disk. Disk / Disk-monitor The monitor shows one sector of the disk in hex format. calls the first sector of the directory, the respective following sector of a file or of the directory if there is one, (enter figures in hex format) calls the sector indicated. Track and sector may be written with or without space (2E 1A or 2E1A). Confirm with . Wrong figures are not accepted. After changing the disk please initialize with , otherwise you may get a sector of the preceding disk. With the hex part or the alpha part of the screen may be edited. Switch with TAB or with a click to the part wanted. Changes have to be confirmed with for each line changed. Quit the editor with . writes the data to the 1581-disk (only to the sector which was read). Tools / Monitor View in hex format the file loaded to the PC. The screen may be scrolled using the keys CSR  and PAGE . To avoid lengthy scrolling it is possible to request a new start-address of the page with . If the address entered is higher than the end of the file nothing will happen, is it lower than the start-address then this one will be used. Tools / Print hex-data Requests the address in hex format of the first and of the last byte wanted. Prints on single sheets using LPT1 in the format as shown by the hex-monitor. Tools / Disassembler Disassembler for 6502-code, viewing only, no possibility for changes. The screen may be scrolled using the keys CSR up and down. To avoid lengthy scrolling it is possible to request a new start-address of the page with . The new address is accepted only if no typing errors are found. If it is lower than the start-address, this one is used, if it is higher than the end-address it is ignored. As a rule GEOS files do not beginn with a loading or start-address. Therefore the disassembler will show the start-address 0000 in this case. An acceptable address may be chosen with . Tools / Print 6502-code Requests start- and end-address of the part wanted as well as the address of the respective first and last byte of tables included in the part to be printed. The INLINE tables of GEOS files however are found automatically. Enter the addresses in hex format. A maximum of ten tables is possible. The program prints in two columns on single sheets using LPT1. Tools / Start-address In PRG files the first two bytes are changed to the new address which is then used by and by . For GEOS files which normally do not have an address in these bytes, only the counter for gets a new initial value. The file is not changed. Please enter the new address in hex format (e.g. 1FD8). Tools / Select printer Change the control characters for the printer to HP PCL or EPSON. Press a key to change; . For details see the manual of your printer. Path & Drive / Drive & Contr. Select the drive to be used for the 1581-disks and the type of the controller. Confirm the defaults or changes in each line with . Changes as follws: Drive change by pressing any key, Controller change by pressing any key, CAUTION: do change only if inspite of selecting the right drive the program does not respond! If only one drive is available, A: is the default (see point 6.). Changing the type of the controller helps only, if inspite of selecting the right drive the program is at fault. In all other cases the software will fail. Path & Drive / Path Select path for saving files to the PC. Saving on disk is possible only with a drive not used for reading the 1581-disk!! Enter path and directory. The maximum length of the string is 48 characters. Longer strings result in a crash with ERROR 5. The Editor excepts CSR left AND right, POS1, END, DEL and backspace. Confirm with . Path & Drive / Language Select the english or german language for all menus and texts. Change language by pressing any key, Path & Drive / Directory PC Shows the contents of the PC-directory entered under 6. Problems and possible solutions The program cannot be started with DRIVE:\PATH\FLOPPY81 : As the software must 'know' where the help-files are to be found, it seeks for the directory where it starts. If this is different from the directory where it is it will not find the help-files and deny operation. Solution: change at the prompt to the directory where the Programm is to be found and start it there or edit a suitable batch file. A 1581-disk is inserted in the drive selected, but the program constantly answers 'No disk in drive': Call or and have a look to the LED of the drive. If nothing is to be seen then go to and change the drive. If however the LED is indicating action, then (and only then!) change the controller type in the same menu. Error message 'read error': If all disks coming from the same 1581 drive cannot be read then this drive is adjusted mechanically different from the PC-drive. This fault cannot be corrected by software. If only some disks or only some files cannot be read they probably lost parts of their remanence. This cannot be corrected by this program. The program hangs each time if an action with a disk is called or it loads only parts of the directory: So far this was found only if the PC acts under a power-management. This must be deactivated. This fault may however be caused by each background-program controlled by interrupts. Such programms disturb the timing and must be deactivated. The program does not work inspite of changing the defaults and of deactivating all TSRs: The type of the controller used in your PC is not fully compatible to the standard controllers. As the programming of the controller is the key issue of FLOPPY81 a change to the better is not possible. The program loads or copies only 99% of a file: This is simply an error in rounding of the figures displayed. If is called you may even get 115 and more % because parts have to be loaded repeatedly. Some mouse drivers (e.g. GENIUS up to V10.2) seem to have difficulties with the mouse routines which may even lead to a stand still of the mouse if you click too often in the empty space below the main menu. If the mouse can be switched from two to three buttons, you should switch to the other mode and then back again. In most cases this will reactivate the mouse. Calling HELP with F1 stops the program with the message 'ERROR 7': The RAM capacity available is too small. Probably too many resident programs are loaded using a good part of the RAM. Try to shift them to the upper part of the memory or switch them off. Hint: C64, C128 as well as GEOS and expressions with Geo... are registered trademarks. They are explained in the relevant manuals.