Diversi-Cache(tm) By Bill Basham Copyright 1987 DSR, Inc. Version 1.0 INSTRUCTIONS PLEASE COPY THIS DISK AND GIVE IT TO EVERYONE YOU KNOW! It is legal to copy and distribute this disk. However, to legally use the Diversi-Cache program on this disk, you must send payment within 2 weeks. Please send $35 directly to: DSR, Inc. 34880 Bunker Hill Farmington, MI 48018-2728 You will receive a user support number, and a new disk with the latest version of Diversi-Cache. Your honesty will help us distribute future programs in this same, low-cost way. *** Introduction *** Diversi-Cache requires an Apple //gs with at least 512K, and an Apple 3.5 disk drive. The Apple //gs comes with 256K, so you must buy a memory card with at least 256K, which plugs into the //gs memory expansion slot. We recommend buying a 1-megabyte (1000K) expansion card, since Diversi-Cache will use up to 800K. Diversi-Cache dramatically increases the I/O speed of the Apple Disk 3.5, under any operating system (ProDOS, Pascal, DOS 3.3). Diversi-Cache only speeds up the Apple Disk 3.5 designed for the Apple //gs, and will not affect the speed of the older Apple //c compatible UniDisk 3.5. Diversi-Cache speeds up the Disk 3.5 in two ways. First of all, whenever the system reads a block, Diversi-Cache actually reads an entire track. This triples the speed of disk reads, and doubles the speed of ProDOS writes. Secondly, Diversi-Cache allows you to allocate a cache memory buffer from 0 to 800K in size. An 800K cache works for the entire disk, while a 400K cache would cache the first 1/2 of the disk, for example. Whenever the system reads a block in the cache range, Diversi-Cache saves it in the cache buffer. If the system asks for this block again, it comes out of memory at "Ramdisk" speed. *** Installing Diversi-Cache *** The Diversi-Cache program is a binary file named "CACHE". Diversi-Cache may be installed under ProDOS or DOS 3.3 with: BRUN CACHE Diversi-Cache installs itself in the first 64K of the memory expansion card (bank 2), and stays there permanently until a power off re-boot. That is, Diversi-Cache stays installed even if you reboot with open-apple-ctrl-reset. Note: after a reboot, Diversi-Cache is reconnected with the next toolset call (INPUT or entering the control panel does a toolset call). The Diversi-Cache program comes on a 5.25 ProDOS floppy disk. We recommend you boot this disk when you power on, to install Diversi-Cache. You can then boot from the 3.5 drive with "PR#5". You can also use the Apple //gs system utility program to transfer all of the Diversi-Cache files to a newly formatted 3.5 inch disk. *** Adding Diversi-Cache to PRODOS *** (Not available on demo disk) You can append Diversi-Cache to any disk with a file named PRODOS, for automatic installation when you boot that disk. Choose this option from the menu, and insert the disk you want to update. Then, enter the slot and drive where the disk is located. You may enter the slot and drive of a hard disk, if desired. If the PRODOS file you select already has Diversi-Cache appended, you will be given the option to add the new Diversi-Cache, or to remove Diversi-Cache and restore PRODOS to normal. *** Installation Errors *** When you BRUN CACHE, you will hear a "beep" if the installation was unsuccessful. The usual reason for this is that you tried to install Diversi-Cache again, when it was already installed. You also get this error if you don't have a //gs memory expansion card, or if there is no memory available on bank 2 to install Diversi-Cache. If this occurs, try installing Diversi-Cache from a power-off boot. Note: To avoid the beep, POKE 0,0. The beep does not occur when you append Diversi-Cache to PRODOS. *** Removing Diversi-Cache *** You can remove Diversi-Cache by turning the power switch off for 10 seconds or so, but this will eventually wear out the switch. You can simulate a power-off re-boot as follows: 1. Hold OPEN-APPLE_SHIFT_CONTROL keys down. 2. Press and release RESET key. 3. Wait for 2 beeps. 4. Release OPEN-APPLE_SHIFT_CONTROL keys. This will remove Diversi-Cache, and clear your Ramdisk (if any). Note: If you have added Diversi-Cache to your PRODOS file, it will be re-installed when you boot ProDOS. To avoid this, continue holding the OPEN-APPLE_SHIFT_CONTROL keys down, until the ProDOS boot message appears on the screen. *** Changing the Cache Buffer Size *** The first time you access the Disk 3.5, Diversi-Cache allocates up to 800K for the cache buffer, by calling the Apple //GS memory manager. If 800K is not available, Diversi-Cache will allocate the largest possible block of memory. If you need more memory for a program, you can decrease the size of the cache buffer by first pressing OPEN-APPLE_CONTROL_ESCAPE. You then select "Diversi-Cache" from the "Control Panel" menu. Hold down the left or right arrow keys to adjust the buffer size. Press when you see the desired buffer size. Note that a buffer size of 0K disables the cache buffer entirely. Even with the cache buffer disabled, Diversi-Cache will still approximately triple the read speed for long files. *** Changing the Cache Drive *** If you have more than one Apple Disk 3.5, Diversi-Cache normally will only cache drive #1. To select a different drive to cache, hit the down arrow key after selecting the buffer size as described above. You may cache drive 1, drive 2, or both drives. When you cache both drives, the cache buffer is cleared every time you switch from one drive to the other. When you BRUN CACHE, you start with an 800K cache for drive #1. To change these starting values, RUN SETCACHE on the Diversi-Cache disk. This modifies and BSAVE's the CACHE file, so be sure your disk is not write protected. *** Disabling Diversi-Cache *** Hit the down arrow again, and then the left arrow to disable Diversi-Cache entirely. This may allow you to use Diversi-Cache with protected disks, by temporarily disabling it when the program checks for a protected block. *** Compatibility Problems *** Diversi-Cache works with any program which uses the //gs expanded memory correctly, as well as most copy protected programs. However, some of Apple's initial system software has memory management bugs. In particular, if you set up a Ramdisk with the control panel, be sure the maximum and minimum size are the same. WARNING!!!!!! THE MAXIMUM AND MINIMUM SIZE OF YOUR //GS RAMDISK MUST BE THE SAME! Diversi-Cache tends to trigger bugs in software which occur when the //gs memory fills, since the cache buffer fills all available memory. In particular, the //gs Ramdisk may return write errors if memory is full and the minimum size is set to less than the maximum. Many programs, such as Appleworks, don't check for write errors on a ramdisk, and may do strange things (like destroy your disks, even). Other problems occur with ProDOS16 version 1.0, which de-allocates all memory. This will eventually destroy your Ramdisk space and Diversi-Cache as other programs overwrite their memory. If you have to boot Version 1.0, be sure to do an "open-apple_shift_ctrl_reset" reboot afterwards. Some ProDOS16 programs "hang" when they run out of memory. These programs will work if you reduce the cache size, or increase the amount of memory in your //gs. Hopefully, ProDOS16 version 1.2 corrects these problems. It is contained on the //gs system disk with the version number 2.0. An occasional program, such as "Bard's Tale", ignores the //gs memory manager and destroys all memory, overwriting Diversi-Cache, Ramdisk, and anything else. You will have to run these programs from a power off reboot. In summary, if a program doesn't work with Diversi-Cache, try reducing your cache size. If possible, set your Ramdisk size to 0 to leave more memory for Diversi-Cache. *** Converting to a System File *** You can convert Diversi-Cache to a system file, so you can run it directly from a menu selection program. To do this, first run BASIC.SYSTEM. Then CATALOG the Diversi-Cache disk and note the length of the CACHE file. Then, enter the following: CREATE SCACHE,TSYS BLOAD CACHE BSAVE SCACHE,TSYS,A$2000,Lxxxxx (where xxxxx is length of CACHE file) *** Converting to DOS 3.3 *** First, boot DOS 3.3 and format a disk with: INIT HELLO Then, boot ProDOS again and enter: BLOAD CACHE Put in your new DOS 3.3 formatted disk PR#6 BSAVE CACHE,A$2000,Lxxxxx (where xxxxx is length of CACHE file). Note that to run DOS 3.3 on a Disk 3.5, you need a DOS 3.3 adapter program. We recommend AmDOS(tm) from Gary Little, 131 Water St. #210, Vancouver, B.C., CANADA V6B 4M3, 604-681-3371 for $20. AmDOS works with our Diversi-DOS(tm). For maximum DOS 3.3 performance on the Apple Disk 3.5, combine Diversi-Cache, Diversi-DOS, and AmDOS together. *** Licensing Information *** Although Diversi-Cache is copyrighted, DSR allows copying and distribution of the program subject to the following restrictions: 1. Anyone receiving a copy of Diversi-Cache must send a $35 license fee directly to DSR, Inc. within 2 weeks. 2. Any company, club, or individual may charge up to $5.00 for distributing copies of Diversi-Cache, provided it is clear that an additional $35 fee must be sent directly to DSR. Publishers: Publishers may license Diversi-Cache for a $250, one-time fee for all their programs. To do this, the following message must appear in the written documentation: This disk contains a high-speed operating system called Diversi-Cache(tm), which is licensed for use with this program only. To legally use Diversi-Cache with other programs, you may send $35 directly to: DSR, Inc., 34880 Bunker Hill, Farmington, MI 48018. You will receive the latest Diversi-Cache program disk with documentation. Multiple Computers: Each additional computer license fee is $35, up to a maximum of $250 for all the computers owned by a company (or school district). *** User Support *** Your user support number entitles you to talk directly to the programmer, Bill Basham. Please write if possible, or call: 313 553-9460 between 3 and 5 PM Eastern time. *** Diversi-Copy *** Diversi-Copy(tm) is the fastest and easiest way to make back-up copies of your 3.5 disks. Diversi-Cache triples the disk read speed when used with Diversi-Copy. Note, however, that Diversi-Copy exits with a power-off type reboot, so you'll need to re-install Diversi-Cache. Diversi-Copy was chosen as inCider magazine's "Editors' Choice". It is the best copy program available, for both 5.25 and 3.25 drive copying. *** Diversi-Key *** Diversi-Key is a keyboard macro program for the Apple //GS that will work with any program that allows interrupts. This includes programs that run under Pascal, ProDOS, or DOS 3.3. Diversi-Key works with Appleworks 2.0, as well as most other programs. Diversi-Key sends macro keystrokes as if you had typed them at the keyboard, so you don't need to modify your programs to work with Diversi-Key. Diversi-Key allows you to add an almost unlimited number of custom functions to any program. Diversi-Key includes a flexible way to program the mouse to work with any program, as well as date and time macros, nested macro calls, nested repeat, IF, and WHILE conditional loops, and much much more. *** How to Order *** To order, please send your check to: DSR, Inc. 34880 Bunker Hill Farmington, MI 48018-2728 The cost of our programs is as follows: Diversi-DOS $30 Diversi-Copy $30 Diversi-Cache $35 Diversi-Key $45 We only sell our programs by mail-order, and will notify you of future program updates which you may purchase for $5 each.