[Coco] NitrOS-9 newbie needs some help

KnudsenMJ at aol.com KnudsenMJ at aol.com
Wed Aug 11 22:46:27 EDT 2004


In a message dated 8/10/04 4:53:10 PM Eastern Daylight Time, 
robert.gault at worldnet.att.net writes:

> Here is the critical difference in the two routines during a read sector:
>  
>      Stock Disk Basic & OS-9                "No Blob"
>  loop  lda  $FF4B    get data         loop  lda    $FF4B
>         sta  ,x       put data in buffer     sta    ,x+
>         stb  $FF40    tickle the FDC         nop
>         bra  loop                            bra    loop
>  
>  The loop is exited with an NMI from the FDC. On most systems, the above 
>  change prevents "boot module order crashes" in OS-9 and has no effect 
>  with normal disk I/O. Perhaps some hardware won't like the above and 
>  protest.

So, you guys actually figured out what was causing the dreaded BLOB?  I 
remember some years ago when that was a big topic.  People figured out how to 
adjust positions of modules in the bootfile to prevent it, but this is the first I 
heard of modifying the disk read code to prevent it.

Why did the stock Tandy code "tickle" the controller at $FF40?  To keep the 
motor running?  I can see where constantly flogging between the two controller 
addresses could cause problems on marginal address busses.  --Mike K.



More information about the Coco mailing list