# HG changeset patch # User Neal Crook # Date 1496351629 -3600 # Node ID 6eb2edad80d88c753081537a724a71a5d6f782e3 # Parent 2ecebda8716b2555f9244ab809f2810bff26e1c3 L2: Introduce symbol KrnBlk to define kernel block number This is the block number that the kernel is loaded into. This is platform-specific, a function of the behaviour of the platform MMU/DAT. CRCs are unaffected by this change. diff -r 2ecebda8716b -r 6eb2edad80d8 defs/coco.d --- a/defs/coco.d Tue May 30 23:59:46 2017 +0100 +++ b/defs/coco.d Thu Jun 01 22:13:49 2017 +0100 @@ -241,7 +241,10 @@ HW.Page SET $07 Device descriptor hardware page +* The 8K RAM block that is mapped to $E000-$FFFF and holds +* the kernel and I/O space. Always $3F for COCO +KrnBlk SET $3F + ENDC - - ENDC + ENDC diff -r 2ecebda8716b -r 6eb2edad80d8 defs/mc09.d --- a/defs/mc09.d Tue May 30 23:59:46 2017 +0100 +++ b/defs/mc09.d Thu Jun 01 22:13:49 2017 +0100 @@ -341,6 +341,9 @@ HW.Page SET $07 Device descriptor hardware page - ENDC +* The 8K RAM block that is mapped to $E000-$FFFF and holds +* the kernel and I/O space. Always $07 for mc09 +KrnBlk SET $07 ENDC + ENDC diff -r 2ecebda8716b -r 6eb2edad80d8 level2/modules/kernel/ccbkrn.asm --- a/level2/modules/kernel/ccbkrn.asm Tue May 30 23:59:46 2017 +0100 +++ b/level2/modules/kernel/ccbkrn.asm Thu Jun 01 22:13:49 2017 +0100 @@ -302,7 +302,7 @@ deca bump counter bne L00EF loop if not done - ldu #$003F Block $3F is in use, at the top of system DAT image + ldu #KrnBlk Block where the kernel will live stu ,x ldx