STARTUP-SEQUENCE HELP by Doug Groat  ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## Are you having a bit of trouble with your disk drive grinding when you boot up? If it is a normal DOS disk, i.e. not your favourite shoot-'em-up, blast-'em-from-space, joystick-punishing epic, then the tips below may just help you, and at the same time help you understand a little bit more about the computer we use. When a disk is put in the drive to load up, all the files that are mentioned in the startup-sequence are loaded one at a time, or in sequence. What sometimes happens is that before a program is completely finished loading, it may signal, by the way the program is written, that it is alright to go onto the next process. Remember that most programs are really made to be used on their own, not in a set order, or in a combination with other programs. So if a program sends a signal back, it actually may only be 75-80% fully loaded and still reading that last bit of program from your disk. The next program begins to load because it got the signal that the previous program has finished, starts to read from your disk, finds that the other program is still reading the disk, so simply, a battle begins between the two programs as they both attempt to read from the disk at the same time. Crunch, grind - you begin to wonder if your disk drive is about to give up and not work any more. Where this mainly happens is where there is a lot of information in the startup-sequence, or a lot of programs to load. Have a look at the startup-sequence below: Addbuffers df0: 10 Binddrivers c:SetPatch >NIL: cd c: echo " A1000 Phoenix DOUG-WORKSHOP Release 1.3.2 version 34.20*N" Sys:System/FastMemFirst SetClock load wait 03 FF >NIL: Siesta.font wait 03 autocli -b -q3 -k -lc0 wait 03 failat 11 path ram: c: sys:utilities sys:system s: add LoadWB cd SYS: utilities/do wait 05 endcli >NIL: This is the startup-sequence from my 'Utilities' disk. As you can see there are a few programs to load and run. To avoid disk thrashing as much as possible, I have added several lines in - wait. What this tells the computer to do is to wait a few seconds before it loads in the next program. This usually gives enough time for the previous program to be completely loaded. This then, gives enough time to avoid those awful grinds and battles that sometimes occur. So, how do we determine where and how much time to signal the wait process to have effect? Unfortunately there is not a simple way. But with a little trial and error, you should be able to eliminate all of that annoying disk grind.  Locating the problem One way to go about determining where the problem areas lie is to do the following excercise, to your startup-sequence, (that is, of course AFTER you have made a backup, RIGHT!!!), with your favourite text editor- echo "addbuffers" Addbuffers df0: 10 echo "Binddrivers" Bindrivers echo "setpatch" c:SetPatch >NIL: echo "cd c/" cd c: echo " A1000 Phoenix DOUG-WORKSHOP Release 1.3.2 version 34.20*N" echo "fastmem" Sys:System/FastMemFirst echo "setclock" SetClock load echo "fast fonts" FF >NIL: Siesta.font echo "autocli" autocli -b -q3 -k -lc0 echo "failat" failat 11 echo "add paths" path ram: c: sys:utilities sys:system s: add echo "loadWB" LoadWB echo "cd SYS:" cd SYS: echo "opus" utilities/do echo "endcli" endcli >NIL: What I've done is add an ECHO command before each line of the original startup-sequence gets processed. Now once you save this modified version, then re-boot your disk, you will be able to see, on screen, when each and every file is loaded. Then by watching the screen, and listening for the disk drive to start grinding, you can make a mental note as to the programs or areas that are causing problems. [Ed: Workbench 2 users can simply put at the top of their startup-sequence the command: SET ECHO ON which does all the above inserting of echos for you.] Once you have determined the programs that are the problem areas, you should then load up your text editor, remove all the echo statements, (unless for some reason you wish to keep them in), and insert a wait command the line prior to the offending programs. The amount of time to get the processing to wait is determined by the amount of disk grind you are getting. Usually 05 seconds will be more than adequate. If you have to wait longer than that, then you should perhaps look at another program of the same type you wish to load. NOTE: I am not saying that ALL programs that cause disk thrashing are dogs, and that the programmers wouldn't have a clue! Please don't take it that way! It is sometimes just that the 'finished loading' signal is sent a fraction early, or that sometimes there is a break in the loading of the program that can lead to a bit of confusion for the operating system. Look at the programs that are in my startup-sequence. I find these programs excellent, and can thoroughly recommend them.  ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ## 25 ##