[Coco] Banked switched roms

John Collyer johncollyer at zoominternet.net
Fri Jan 30 08:13:18 EST 2004


>
>On Thu, 29 Jan 2004, (tim lindner) wrote:
>
> While not impossible, it has not been done. I wrote a CoCo program to
> dump these ROMs thru an RS-232 pak, but that is not what you are talking
> about.
>
>
>On Friday, 30 Jan 2004, (Arthur Flexser) wrote:
>
> I've seen a version of one of these (I forget which) that ran from disk
> and required 512K.  What was done to get it to run from disk was to change
> all references to $FF40 (or whatever the bank-switching address was) to an
> MMU address and to change the value put into $FF40 to an MMU segment
> number in 512K memory.  So, every time the original program switched
> banks, the modified version instead swapped in a different MMU segment.
> To load the MMU "banks" with their initial data, a rather neat method was
> used. The person who modified the program created a segmented disk file
> that contained 3-byte segments where the 3 bytes would be the MMU address
> and the number of the MMU segment for the "bank" that was to be loaded in
> next, whose data were contained in the next segment of the disk file.

Both of these solutions sound like good ways to get the banked switched rom
data,
but I have no access to the data that these solutions produced. However the
bank
switching is in place, and I suspect that if the banked switch data was
placed in a
binary file that it would work with my bank switching method.  I have some
idea
as to how you would create one of these banked switched roms, and if you
wanted
to create one then the means of testing it is there. This lends itself
towards a developer
view of the emulator and that is exactly why I wanted to make the emulator.
To let you
have a way of creating products being either rom/ram or whatever type of
software you
select that will run on a real coco.  I myself will try my hand at creating
the 512K/256K
Banker board.  This will be what I call a virtual device driver.  This will
be one of the
cartridges you'll be able to plug into the MPI interface I'm creating.  Let
me add this
statement, "Wow this stuff is exciting, it's like a big construction
project, except your
building your project with binary 0's and 1's."  Don't laugh!

John Collyer




More information about the Coco mailing list