[Coco] quick dw hdb-dos question

Arthur Flexser flexser at fiu.edu
Thu Dec 25 00:21:37 EST 2014


I wonder if HDBDOS could be patched so as to recognize what speed mode it
was in before engaging in disk I/O and to reinstitute that speed mode on
exit from disk operations.

In this, I'm recalling my experience in designing ADOS-3.  Because I had
patched DSKCON quite a bit, I needed it to run at high speed always.
Otherwise, there'd be a significant slowdown in disk operations because of
the read head's "missing" the desired sector on account of the extra code
and having to wait 0.2 seconds for an extra rotation of the diskette to
catch that sector.  That 0.2 seconds adds up quickly when you are reading a
lot of sectors!

A problem is that there is no way to read the status of the speed register
at $FFD8-9.  You could set up a shadow address, but it would get out of
sync with the register as soon as you ran a piece of software that switched
the speed.

I used a little speed-detection routine that worked like this:  it counted
how many times a short loop executed between horizontal IRQs, a result that
was in the single digits, but higher if you were in the high speed mode.
That made it possible to restore the entry speed on exit from DSKCON.  (A
slight complication occurs if there is a Halt during reading, which would
briefly stop the loop from executing.  So for reliability I had to repeat
the check sometimes if a value resulted that was neither the expected one
for high or low speed.)

Art

On Wed, Dec 24, 2014 at 11:46 PM, David Ladd <dladd at realmspire.com> wrote:

> Bill,
>
> I personally not sure what the serial version of the DW3 for CoCo3 did
> for its routines on all I/O for the CoCo3's high speed operation.
>
> I know for the emulators I just by default used the CoCo2 version of
> the becker ROM.
>
> The problem is here is Robert is using the HDBDOS 1.1D DW3 CoCo3 which
> is the original DW3 ROM for the CoCo3.  He would have to either
> replace the EPROM or if it allows him would need to poke a value to
> address &HFFD8 to attempt to turn off the high speed.  Only way to
> test it is to try a operation and see if it turns the high speed back
> on.  If it does then sadly his only choice would be is to get a EPROM
> with the CoCo2 HDBDOS 1.1D DW3 CoCo2 or the current 1.4 DW3 CoCo2.
>
> At this point the only thing I could really share to Robert that was a
> quick try was the POKE &HFFD8,0 to attempt to see if the high speed
> stays off. *shrug*
> --
> David Ladd
> --
>
>
>
> On Wed, Dec 24, 2014 at 6:43 PM, Bill Pierce via Coco
> <coco at maltedmedia.com> wrote:
> >
> > David, but doesn't hdbdos reset the poke on almost any kind of I/O
> access?
> > That's why you had to make another becker rom for games :-)
> > We need the same for dw rom (really a build for all roms... gamer
> versions)
> > Remember the becker roms are
> > hdbdw3bc3 - normal high speed rom
> > hdbdw3bck - no poke for games (only goes into high speed for I/O)
> >
> >
> > Bill Pierce
> > "Today is a good day... I woke up" - Ritchie Havens
> >
> >
> > My Music from the Tandy/Radio Shack Color Computer 2 & 3
> > https://sites.google.com/site/dabarnstudio/
> > Co-Contributor, Co-Editor for CocoPedia
> > http://www.cocopedia.com/wiki/index.php/Main_Page
> > E-Mail: ooogalapasooo at aol.com
> >
> >
> >
> >
> > -----Original Message-----
> > From: David Ladd <dladd at realmspire.com>
> > To: CoCoList for Color Computer Enthusiasts <coco at maltedmedia.com>
> > Sent: Wed, Dec 24, 2014 7:34 pm
> > Subject: Re: [Coco] quick dw hdb-dos question
> >
> >
> > You can POKE &HFFD8,0
> > --
> > David Ladd
> > --
> >
> >
> >
> > On Wed, Dec 24, 2014 at 1:11 PM, Robert Hermanek
> > <rhermanek at centurytel.net> wrote:
> >> Yeah, I'm aware of the other versions, but this is my eprom, and I'm
> real
> >> spoiled with just hitting the power switch.  Was hoping there might be
> a way
> >> to "bump" DW into coco2 mode after it is loaded and running, when I feel
> >> like it... don't always want my coco running at high speed, seems to get
> >> hot.
> >>
> >> On 12/24/2014 12:49 PM, Bill Pierce via Coco wrote:
> >>>
> >>> Robert, There's a Rom for the Coco 2 that doesn't use the high speed
> poke,
> >>> but you'll only get half the baud rate for DW. It should work in a
> Coco 3
> >>> just fine. There may even be a "gamer's rom" for the Coco 3 without
> the high
> >>> speed poke ( couldn't find one), I know there is for the Becker port.
> >>> This probably needs to be done as it was to the becker port rom.
> >>>
> >>>
> >>
> >>
> >> --
> >> Coco mailing list
> >> Coco at maltedmedia.com
> >> https://pairlist5.pair.net/mailman/listinfo/coco
> >
> > --
> > Coco mailing list
> > Coco at maltedmedia.com
> > https://pairlist5.pair.net/mailman/listinfo/coco
> >
> >
> >
> >
> > --
> > Coco mailing list
> > Coco at maltedmedia.com
> > https://pairlist5.pair.net/mailman/listinfo/coco
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
>


More information about the Coco mailing list