[Coco] The Hobbit ported to 6809 (Dragon64 and coCo2 64k)

Arthur Flexser flexser at fiu.edu
Sun Aug 21 18:43:26 EDT 2016

The check you are doing at $C008-9 will fail if the CoCo has Disk Basic 1.0
(or a 3rd party modified Disk Basic based on that version, such as ADOS).
You should check for the 1.0 value (see Disk Basic Unravelled) as well.

The poke to $FFDE will do no harm on the earlier CoCos, so might as well do
it unconditionally, unless that will mess up things for the Dragon.

To check for the CoCo 3 (if you actually need this additional test), try
this:  Prior to doing the $FFDE poke, look at someplace within the Super
Extended Basic range to see if the value matches the CoCo 3 one.  You need
to do this BEFORE going to ROM mode, or the value won't be there.

There are also places within Color Basic that have values unique to the
CoCo 3, where the test for a CoCo 3 could be done in ROM mode, like where
the DLOAD command code used to be on the earlier CoCos.

(Or, as I see Brett has just suggested, check the interrupt vectors.)


On Sun, Aug 21, 2016 at 6:12 PM, Pere <psergm at gmail.com> wrote:

> Hi Art,
> I have found a hole with just 26 bytes and have moved there some
> structured data
> that need exactly 26 bytes.
> With this small change, the compilated BIN works flawlessly in VCC2.0.1b
> after
> issuing the POKE&HFFDE,0 of course.
> It is nice to see it working on the CoCo3 too!
> Now I think it is time to include the patch for RSDOS and that one for
> CoCo3
> inside the binary, so no more need to use auxiliar programs.
> By now to detect CoCo I am checking that $C008-09 do contain $DF4C (RS-DOS)
> so now I will need a way to detect it is a CoCo3 instead so that the extra
> Poke
> is done too ... only when needed!
> thanks a lot for you help, Art.
> You are very kind!
> cheers
> pere serrat
> ------------------------------------------------------------
> ------------------------------------------------------------
> Previous message (by thread): [Coco] The Hobbit ported to 6809 (Dragon64
> and coCo2 64k)
> Arthur Flexser flexser at fiu.edu
> Sun Aug 21 16:29:57 EDT 2016
> The new interrupt vectors in the CoCo 3 actually take up only $FEEE-FEFF,
> so you don't need to worry about a full 256 bytes, only 18 bytes.
> The poke to $FFDE does the same in a CoCo 3 as in the earlier CoCos, but
> has the byproduct of removing Super Extended Basic and restoring Basic to
> its earlier configuration.  An exception is that $FE00-FEFF remains in the
> RAM mode unless you change a particular bit in the GIME as well, and doing
> so would probably cause a crash because you'd be switching out these
> vectors.
> Art
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco

More information about the Coco mailing list