[Coco] Modifying Level1/coco1 for 6309 native mode
Luis Antoniosi (CoCoDemus)
retrocanada76 at gmail.com
Mon Jan 6 00:30:35 EST 2014
Robert,
In my first tests the system hangs at the firs I$Write on sysgo to
display NitrOS system name.
put a 'TST $FF78' before it and you will trace it using 'wp ff78,1,rw'
on debug window.
On Sun, Jan 5, 2014 at 9:04 PM, Robert Gault <robert.gault at att.net> wrote:
> Since there have been requests for this and the challenge is interesting,
> I've been looking at this problem. Here are initial results.
>
> 1) LWTools port of NitrOS-9 used for testing.
> 2) All level1/coco1 pertinent makefiles modified, for example
>
> AFLAGS += -I$(LEVEL1)/modules
>
> changed to
>
> AFLAGS += -I$(LEVEL1)/modules -DH6309=1
>
> or
>
> AFLAGS += -DH6309=1
>
> added. This will be necessary for defs, cmds, modules, and kernel.
> The main coco1 makefile was modified:
> CPU=6309
> AFLAGS += -DH6309=1
>
> Make sure that $(AFLAGS) gets added as needed to the makefiles or the H6309
> will be ignored.
>
> 3) It was necessary to modify level1/modules/rel.asm as native mode was not
> initiated soon enough in level1, even though this source code is used for
> Level2 6309 and already contains one LDMD #$03.
>
> start1 orcc #IntMasks turn off IRQ's
> clr >PIA0Base+3 turn off SAM IRQ's
> clra make A=0 for later
> IFNE H6309
> tfr 0,dp set direct page to $0000
> ldmd #3 native mode !!!!!!!!!!!!!! new line
>
> Start clr PIA0Base+3
>
> IFNE (tano+d64+dalpha)
> clr PIA0Base+1 added for Dragon, works on CoCo
> ENDC
> IFNE H6309 !!!!!!!!!!!!!!! 3 new lines
> ldmd #3 native mode
> ENDC
>
> With the above changes, the boot process proceeds much father than without
> the changes. The boot process without rel changes crashed at the first
> F$Link call.
>
> The best way to test progress is with the MESS debugger. Use a version of
> MESS that correctly handles coco emulation. Start coco3h (6309) emulation,
> as that gives you the 6309 cpu and will run normal Level1 coco1 Nitros-9.
> Turn on the MESS debugger and set a breakpoint at $2602. Enter the DOS
> command with your test disk and the debugger will start as soon as rel
> starts running.
> You should then tell MESS to start a trace, ex. trace 6309.log, and then
> leave the debugger. The text file 6309.log will be generated which will make
> it easy to spot where the boot process is crashing.
> You can do the same thing with a normal coco1 6809 disk and compare a
> 6809.log vs your 6309.log.
>
> It would make things much easier if there are other programmers interested
> enough to try this. We can compare notes and ideas. That could make Level1
> 6309 native mode a reality.
>
> Robert
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco
--
Long live the CoCo
More information about the Coco
mailing list