[comp.sys.amiga] why noklickstart fails

page@swan.ulowell.edu (Bob Page) (11/02/88)

[I'm keeping this short, as I'm logged in long distance at a yuckky
1200 baud through a terminal switch and rlogin'ed through another
machine to get to swan]

I just posted a new noKLICKstart for KS1.3.  The old one worked OK on
my machine, I swear.  I checked it dozens of times to make sure.

Then after I post it, I find out 'sometimes' one of the two blocks
(the second one) isn't updated.  I can't understand it; I went home
and repeated all my tests.  Still pass.

Aha.  But I didn't actually DO exactly what everyone else would have
once they got the program and run it.  I didn't reboot.  Instead, I
fired up a disk editor and verified that the blocks had been written.
They had.  Correctly, every time.

I figured out what it was.  I was not flushing the track buffer.  Just
because I told trackdisk to WRITE the buffer doesn't mean it was
WRITTEN.  It means it was queued to be written.  I added a flush
and everything works as advertised.

I wasn't seeing the problem because when I fired up the disk editor
to verify the block data, as soon as I went to read a block, THEN
trackdisk wrote the buffer and read the next block.  For people
who followed the directions and powered off their A1000s, the
track buffer in the queue never got flushed to disk.

I knew that.  Really.  Like Andy said, all the sources I've been
seeing lately are turning my mind to mush.  Sorry if I messed anyone
up.  The new version of noKLICKstart posted will work.  Really.
But I thought you might like to know what happened.

..Bob

-- 
Bob Page, U of Lowell CS Dept.  page@swan.ulowell.edu  ulowell!page
Have five nice days.