[Coco] CoCo 3 MMU test for all

Roger Taylor operator at coco3.com
Mon Jan 21 00:33:39 EST 2008


At 11:01 PM 1/20/2008, you wrote:

> >
> > Since LOADM does read what you poke in any address, including the MMU
> > registers, I can take advantage of a few things if I know more than I
> > knew before.  ;)
> >
>
>Roger,
>
>I came to this discussion late, and you have probably already moved on, but..
>
>Could you have one bin file which loads a modified version of LOADM 
>into RAM and auto executes that code to load the main (huge) file?


Execution doesn't normally take place until the end of a LOADM file 
that has intentionally overwritten some of the lower vectors in 
RAM.  Instead of the CoCo prompt appearing after the LOADM, BASIC 
jumps to the address you stored in certain vectors.  LOADM is 
actually a powerful command in that it can jump around in memory 
"POKING" values anywhere you like.  But you probably knew this.

I wanted to avoid patching the LOADM command to handle hardware port 
poking since there's so many types of Disk ROMs in use.  LOADM could 
be in another location depending on the maker or version/revision of 
the ROM.  It's much safer to first see if all 128k/512k CoCo 3's add 
a %01000000 to MMU reads so I that can include that value and expect 
LOADM to verify it back.

So far it's working great tonight and I'm loading in dummy blocks of 
8k data filled with 0's into random places to see it work.  Later 
comes sound effects, screen backdrops, sprites, and even code blocks 
like my Projector-3 system does to run megs of code in the same 8k 
space.  The ideas are endless.





More information about the Coco mailing list