[Coco] Modifying Level1/coco1 for 6309 native mode

Gene Heskett gheskett at wdtv.com
Thu Jan 9 10:50:29 EST 2014


On Thursday 09 January 2014 10:39:01 Tormod Volden did opine:

> On Thu, Jan 9, 2014 at 5:53 AM, Gene Heskett wrote:
> > Duhh,,, leax 7,s "place on the stack?
> > 
> > That does not sound right.  Maybe it should be ldx from 7,s.  Pointing
> > x back 7 bytes up the stack, and then loading the file into the stack
> > sure sound like a grand and glorious set of screen fireworks to me.
> 
> This is fine. 10 bytes are already reserved on the stack for local
> storage (M$IDSize + 1, I suppose).
> 
> > Sounds to me like it should have been ldx 7,s.
> > 
> > Where, in what src file is this located, I'll check my copy.
> 
> This is in level1/modules/ioman.asm (hg grep is your friend).
> 
> Tormod

That I$READ, reads a preset amount, and does not stop until it has read 
that many bytes. I don't have the docs in front of me, so I don't recall 
which register contains the number of bytes to read.  Certainly from that 
use, $10 bytes or less.  I'd be tempted to add the "krnp4" os9 F$RegDump 
call to the boot, in front of the I$READ, and see just what has been loaded 
into each register.  Since this is a stack dumper, you'll need to use the 
version built for the cpu in the machine.  If the screen is destroyed 
before you can read it, then follow the call to F$regDump with a temp label 
of stop, which is

Stop	bra	Stop

That will lock it right there so you can read the screen until the reset 
button is tapped.

Interesting problem.

Cheers, Gene
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>

If you don't have time to do it right, where are you going to find the time
to do it over?
A pen in the hand of this president is far more
dangerous than 200 million guns in the hands of
         law-abiding citizens.



More information about the Coco mailing list