FlashDisk! (TM) V0.3 ALPHA "Floppy Disk Optimizer" ShareWare *** RELEASE 3 *** Release Date: 05/10/90 (C)1990 NiteWing! (TM) -- All Rights Reserved. ****** WORKS ON THE A3000!!! ****** DEVELOPERS: This version WORKS! under V1.4B3 03/20/90! Please read the extra documentation at the end of this document before using it! RELEASE 3 [05/10/90]: Ok, this version has some more bugs fixed -- including the problem with the 'Loading' optimization option. This release also adds support for SINGLE DRIVES, and QUICK KEYS. I'm sure there are other things, but those were the main additions. RELEASE 2 [05/07/90]: Some of you that were unfortunate enough to run FlashDisk! V0.1 ALPHA (release date 05/05/90) only to find that it GURU'd will be happy know that that problem is FIXED! I am truly sorry if the old version caused any problems -- it was MY error and I am still kicking myself for not noticing it. There are also a few changes made to this release -- refer to the CHANGES section below. RELEASE 1 [05/05/90]: First release. Forget that it happened! It was brand new and it showed! ******************* **** W A R N I N G **** ******************* Before you run this program, observe one obvious caution: this is an *ALPHA* release. For those who do not understand what that means, let me put it another way: do *not* count on it working reliably! However, I have spent MANY hours using FlashDisk! V0.3, and at this point in time I am having no problems with its functioning (knock on wood ;^). You have been warned... DISCLAIMER: Yes, it's the same old song and dance, but being sued is not good for business. NiteWing! (TM) makes no warranties either express or implied as to the suitability or performance of this software. This software is placed into the ShareWare market 'as is'... I apologize if this thing formats your hard drive, it doesn't on my system ("Sebastian") :^). (SIWY) All material contained with this software and the software itself is Copyright 1990 by NiteWing! (TM) ** All Rights are Reserved! ** 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< NOTE: I am sorry about the sketchy documentation -- I am very busy with OTHER projects and did not spend much time on writing this script. I am releasing FlashDisk! (TM) for the purpose of feedback and bug reports. I thank you for trying FlashDisk! and I would appreciate *any* comments: good and bad. Now on with it... CHANGES FROM V0.2 ALPHA 05/07/90: Below is a brief list of changes made to RELEASE 3: o The 'Loading' optimization no longer sends your drive into strange loops and drops files. Although the directories under this option are slower, it works! o This release works with single drives -- this way, you can optimize that funny drive (5.25"? 3.5" HD?) without having a second available. If anyone has problems with FlashDisk! working on their drives, LET ME KNOW!! It has been tested thoroughly on the 5.25" 440K drive and should work with ANY trackdisk device mounted in the DF0: - DF3: positions. o There are now Quick Keys associated with the gadgets. The corresponding key is bracketed in the name of the gadget. (ie [F]ormat uses the key 'F'). Return is equivalent to the 'GO!' and 'STOP!' gadget. ESCape is abort/close like the close gadget and ^C. CHANGES FROM V0.1 ALPHA 05/05/90: Below is a brief list of changes made to RELEASE 2: o It no longer GURU's! The problem was with my memory management routines -- everything works smoothly now; even under V1.4B3 for other developers ;^). o Verify now works! FlashDisk! will report verify errors and continue to run -- at the end, the number of errors is reported. If you get errors, the chances are that the destination disk will NOT be useable. o Required stack space VASTLY reduced -- I now recommend 4K instead of 50K. Should work from a default system CLI. WorkBench users should verify that the .info for FlashDisk! contains at least 4K for the stack. FLASHDISK! (TM) WHAT IS IT? FlashDisk! is a floppy disk optimizer for all models of the Amiga computer. It is NOT a cache -- it merely reorganizes the information on the disk to make directories and loading more efficient. The changes are permanent and will usually increase the loading speed of directories between 3 and 5 times -- increase depends on how badly the original disk was fragmented. In addition, loading time of large programs is often reduced. The resulting disk is still an AmigaDOS disk and is 100% compatible! LIMITATIONS OF FLASHDISK! V0.3 ALPHA: At this time, FlashDisk! V0.3 ALPHA does not work on hard disks. It WILL however work with any FLOPPY trackdisk compatible device that is in the slots DF0: - DF3: (I hope!). When doing a TWO drive flash, the source and destination *must* be of the same format. Basically the same restriction that 'diskcopy' poses on a two drive copy. This WILL change -- remember this is an ALPHA release! FlashDisk! will NOT work on COPY-PROTECTED disks! It will also fail if the source disk is corrupt -- in this case, run DiskDoctor on the source disk and try again. You may also notice that FlashDisk! can be very picky about minor errors that it encounters -- THIS WILL CHANGE. For now, the disks must be without defects. 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< USING FLASHDISK! FlashDisk! (from now on FD!) will run from the WorkBench or the CLI. There are currently no command line options (there will be). So, to use FD!, put 'FlashDisk!' into a directory accessible by your path and run it as you would any other program (or tool). CLI users: I hope you rename 'FlashDisk!' to 'fd' like I do :^). NOTE: When running FD! from the CLI, it will *not* detach itself. Manx Aztec C 5.0a conveniently forgot the chapter on using their detach.oss and I haven't gotten around to calling them yet -- this will change! Simply 'RUN' FD! if you desire it to detach... ANOTHER NOTE: FlashDisk! V0.2 requires a stack size of about 4K bytes. Verify that either the CLI or .info file has this setting. The supplied icon for WorkBench users has this setting. FD! will open a window with a few gadgets thrown about its interior. The color scheme that is used is for V2.0 of the operating system (that's what this is being written for!). They are (as of this writing) as follows (or close to it!): Register: Color: R: G: B: ----------------------------------------- 0 Light Grey 10 10 10 1 Black 0 0 0 2 White 15 15 15 3 Light Blue 6 8 10 PLEASE! look at FD! with these colors to see what it is supposed to look like. If you do not like these colors, I am sorry -- you may want to get used to them though ;^). Also, FD! will use the topaz font that most closely resembles the default font you have chosen for the WorkBench screen. Try it with topaz 8, 9, and 11 -- I hope you like this feature! This is a result of my toolbox library that I am working on -- all modules in the Flash! package use this. It is also designed to bridge the gap between V2.0 of the OS and V1.x. Now, select the source and destination disks by pressing the big gadgets beneath the 'Source:' and 'Destination:' headers. Select the optimization method: Directories, Loading, or MegaFlash! These are described below. Select any other options: Chip Hog!, Prolix, Format, and Verify. These are also described below. Once you have chosen the options that you desire, make sure the disks are in the correct drives and select 'GO!' 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< OPTIMIZATION METHODS: DIRECTORIES: This option tells FlashDisk! to make the directories as fast as possible. This includes placing the *.info files in the best location for WorkBench users. This option is good for both CLI and WorkBench users. Note: After optimizing, leave the write protect tab off and let WorkBench validate the disk (snapshot if you will). Although not necessary, WorkBench works smoother if it can validate the disk. LOADING: This option tells FlashDisk! to make every attempt to put large files in as contiguous of an order possible. It also tries to optimize directories and is a good option for big programs. MEGAFLASH!: This option tells FlashDisk! to do anything and everything to optimize the performance of the disk. At this time, it only does a few more things than the 'Loading' option. I have some ideas that are not implemented yet (for all of these options!)... 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< OPTION SWITCHES: CHIP HOG!: This option, when enabled, tells FlashDisk! that it may use as much memory as it wants. For speed reasons, this is mostly CHIP memory -- the more memory, the faster that FlashDisk! works. It will make every attempt to stay above ~100K -- this way, other tasks are not completely gronked. However! I advise you *not* to use this option if you plan on using another program at the same time, it just makes things go a lot faster. When disabled, FlashDisk! will use as little memory as it can (50K - 100K) -- this slows FlashDisk! down considerably, but makes running other programs at the same time less dangerous. You may turn this option on and off at ANY time. For kicks: run a memory watch program and toggle this option -- I hope you find this useful! Also note, that in low memory conditions and when the Chip Hog option is turned OFF, FlashDisk! will sometimes have to search all over the source disk for information -- this can make the drive sound like it is falling apart (like what WorkBench does to badly fragmented disks :^). This is normal -- there is no need to worry. When FlashDisk! is done, the final disk will work much smoother in all environments. PROLIX: This option, when enabled, tells FlashDisk! to print meaningless information on the screen. Mostly it is used to verify that the program is in fact working -- a heart beat. This option may be turned on and off at ANY time. Also note that FlashDisk! works a little bit faster when this option is disabled. Why 'Prolix'? That's the word I used to describe one of my old professor's lectures and it seemed appropriate ;^). FORMAT: This option, when enabled, tells FlashDisk! to format the destination disk as it goes. You MUST have this option enabled if you are flashing to a NEW disk. It is a good idea to always have this enabled! However, if the destination was previously formatted successfully as an AmigaDOS disk with NO ERRORS, then this is optional. When disabled, the flashing process is noticeably faster. This option may also be turned on and off at ANY time. I may change this because it is potentially dangerous to the novice user. Should I keep this feature? VERIFY: This option, when enabled, tells FlashDisk! to verify the destination with the source. It may also be turned on and off at ANY time. If a verify error occurs, FlashDisk! will report the error and continue. At the end, the number of verify errors encountered will be displayed. If there were any errors, the odds are that the destination disk will not be useable. Try it again. 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< STOPPING FLASHDISK! You may stop FlashDisk! at any time by pressing the STOP! gadget, hitting ^C, sending a 'break' to its process, selecting the close gadget of the window, or pressing the ESCape key. At times, there is a brief pause before terminating, but nothing unreasonable. It just depends on what FlashDisk! is doing at the time you try to stop it -- some sections are critical. NOTE: ^C, ESCape, and the close window gadget are treated the same! Also, if FlashDisk! is flashing a disk, the first ^C, ESCape, or close window event is regarded as an abort -- a second will close FlashDisk! down. 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< THE FUTURE OF FLASHDISK! FlashDisk! (TM) is being developed as a module of my upcoming AmigaDOS utilities package called 'Flash! (TM).' Although its intent is to take advantage of the upcoming operating system, I am making every attempt to keep it compatible with both V1.x and V2.0. V2.0 will undoughtedly give you more power. Flash!, for those who are curious, currently contains the following modules (in the works): Flash! (TM) by NiteWing! (TM) ----------------------------- FlashDisk! (TM): A disk optimizer for all AmigaDOS compatible devices (including hard drives soon). FlashManager! (TM): A file manager with features far too numerous to mention here. It does allow transferring files between MS-DOS, the BridgeBoard, and I hope Atari ST and A-Max disks in the future. FlashBack! (TM): A hard drive backup utility that allows backups to ANY AmigaDOS compatible device. Also includes options to save in standard formats or a faster FlashBack! unique format. FlashCopy! (TM): A very fast diskcopy program that will also copy MS-DOS and Atari ST disks (possibly others). FlashDoctor! (TM): A disk doctoring program that allows easy data recovery and disk repairs. Done in a manner that anyone can understand with enough extras to please even the most envolved hacker. Flash! is designed to work from the WorkBench or CLI and interact with other software. There are no fancy bitmapped graphics screens, cute sounds, or corporate takeovers! Flash! is intended for real users with real needs. I am putting all of my efforts into making Flash! as functional as possible. And of course, Flash! fully supports the ARexx language :^). NOTE TO POTENTIAL INVESTORS: NiteWing! is desperately looking for financial backing (we are a brand new company) to help bring Flash! and other great products into the commercial market. If you have any interest in supporting such a venture, I would be very glad to talk with you and give you some demonstrations. Please contact me at the address and phone number below. Sorry about the informal nature of this address. 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< NOTES TO V1.4B3 TESTERS (DEVELOPERS): ****** WORKS ON THE A3000!!! ****** FlashDisk! V0.3 ALPHA works reliably(?) under the V1.4B3 release of the operating system with one exception that I have found: o You can not 'Execute' FlashDisk! from the WorkBench. For some reason, it hangs -- why? Instead, use the supplied icon or run it from a CLI. For those of you that read the possible 'FreeMem()' error in my last release, I am happy(?) to say that it was MY error! I am truly sorry if I caused any worrys -- I jumped to a conclusion that I hadn't fully tested. I would appreciate ANY feedback from developers on any problems (and would like even more for Commodore to send Beta 5! to me ;^) Please, any suggestions or help would be greatly appreciated! Call me anytime! I can not afford an account on BIX (mostly due to long distance charges) at this time and am therefore quite secluded from the mainstream -- any help you can give me is appreciated! 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< SOME FINAL NOTES: The purpose for releasing FlashDisk! V0.3 ALPHA into the ShareWare market at this time is for two reasons: 1. To get feedback on its performance and possible enhancements -- from the people that will be using it! Please, any comments are appreciated. 2. To give Amiga users a sample (small) of what is coming in the near future. I figured that the FlashDisk! module wouldn't be too detrimental to the final commercial Flash! package. Enjoy! ENHANCEMENTS: The following is a list of enhancements that will be added shortly (any others you can think of?): o Faster! I can make it faster -- this release was an 'investigation' into the problem. The final release will be noticeably faster! o The memory management routines need to be worked over. FD! is far too hungry for memory. o Hard drive support! o The algorithms for the different methods need to be refined. MegaFlash! needs a few more tricks implemented (I have many ideas for these :^) o Support for minor disk error recoveries! Possibly work around bad tracks on the destination disk? o Retry/Cancel support for errors! That is what my 'to do' list contains -- I would appreciate any other comments or improvements you might have. I would also like to know about successes with other than 3.5" 880K floppy drives. I don't have all formats available to me (yet!). 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< CLOSING COMMENTS: Remember that FlashDisk! V0.3 ALPHA is ShareWare. Any donations would be more than appreciated (any amount). I can not offer upgrades or any other 'Registered User' policies for various reasons. I will however send an availability notice to all who send a donation. Please, donations are very important to the release of Flash! The less I have to work at other jobs, the sooner Flash! hits the market. (If I have to write one more Windows application for people who do not understand what multitasking is about, I will scream!) Send donations (any amount) and comments to: Curtis J. Palmer c/o NiteWing! 840 Wallowa Drive Walla Walla, WA 99362 And for the time being, my phone number is (509) 529-7590. Call me if you have any problems or other comments (developers??). Even though the phone number might change, the address will be valid -- so please write. The phone number should still be valid until the middle of June -- possibly later... 8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8< THANK YOU: I would like to thank all of the people who place software into the PD and ShareWare market -- especially those who release their source code. There are times when the RKM just doesn't quite cut the mustard! (Thanks to Brian Conrad (SimCity) for some great code). I would also like to thank "Sebastian" (my machine) for putting up with my seemingly endless stupidity! Thanks to GVP for a great hard drive and their excellent 3001 board! Thanks for the new PALS! And finally, special thanks to Paladin, Jim, Rick, Doc, Gamesman, Jerry, and the rest of the crew on the Conclave BBS (509) 529-6499! (I can be reached there...) Commodore: What exactly *is* a "Recoverable Alert?" ;^) /** EOF: FlashDisk!.dox **/