Mercurial > hg > Members > kono > nitros9-code
changeset 3127:36061ff9e324
l2 kernel: Replaced literal FF91 and FFA* with symbolic references
Zero functional changes; binaries equivalence verified by diff'ing the
listing files before and after.
author | Neal Crook <foofoobedoo@gmail.com> |
---|---|
date | Mon, 28 Nov 2016 13:02:16 +0000 |
parents | f77ac3ae8a43 |
children | a8007a15f06a |
files | level2/modules/kernel/ccbkrn.asm level2/modules/kernel/fdebug.asm level2/modules/kernel/fmove.asm level2/modules/kernel/krn.asm level2/modules/kernel/krnp2.asm |
diffstat | 5 files changed, 22 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/level2/modules/kernel/ccbkrn.asm Mon Nov 28 12:54:03 2016 +0000 +++ b/level2/modules/kernel/ccbkrn.asm Mon Nov 28 13:02:16 2016 +0000 @@ -121,11 +121,11 @@ BtDebug pshs cc,d,x save the register orcc #IntMasks turn IRQ's off ldb #$3b block to map in - stb >$FFA0 map the boot screen into block 0 + stb >DAT.Regs map the boot screen into block 0 ldx >$0002 where to put the bytes sta ,x+ put the character on-screen stx >$0002 save updated address - clr >$FFA0 map block 0 in again + clr >DAT.Regs map block 0 in again puls cc,d,x,pc restore and return * This routine just prints "!" and loops forever Crash lda #'! print a "!" @@ -327,7 +327,7 @@ IFNE H6309 ldq #$00080100 e=Marker, D=Block # to check L0111 asld get next block # - stb >$FFA5 Map block into block 6 of my task + stb >DAT.Regs+5 Map block into block 6 of my task ste >-$6000,x save marker to that block cmpe ,x did it ghost to block 0? bne L0111 No, keep going till ghost is found @@ -337,7 +337,7 @@ ldd #$0008 L0111 aslb rola - stb >$FFA5 + stb >DAT.Regs+5 pshs a lda #$01 sta >-$6000,x @@ -683,7 +683,7 @@ lda 1,u get first block ldb 3,u get a second just in case of overlap orcc #IntMasks shutdown interupts while we do this - std >$FFA5 map blocks in + std >DAT.Regs+5 map blocks in IFNE H6309 ldw #R$Size get size of register stack tfm x+,y+ copy it @@ -697,7 +697,7 @@ ldx <D.SysDAT remap the blocks we took out lda $0B,x ldb $0D,x - std >$FFA5 + std >DAT.Regs+5 puls cc,x,y,u,pc restore & return * Process software interupts from system state @@ -957,7 +957,7 @@ L0E8D cmpb <D.Task1N are we going back to the same task beq L0EA3 without the DAT image changing? stb <D.Task1N nope, save current task in map type 1 - ldx #$FFA8 get MMU start register for process's + ldx #DAT.Regs+8 get MMU start register for process's ldu <D.TskIPt get task image pointer table ldu b,u get address of DAT image L0E93 leau 1,u point to actual MMU block
--- a/level2/modules/kernel/fdebug.asm Mon Nov 28 12:54:03 2016 +0000 +++ b/level2/modules/kernel/fdebug.asm Mon Nov 28 13:02:16 2016 +0000 @@ -23,10 +23,10 @@ * THIS CODE IS SPECIFIC TO THE COCO 3! REBOOT orcc #IntMasks turn off IRQ's clrb - stb >$FFA0 map in block 0 + stb >DAT.Regs map in block 0 stb >$0071 cold reboot lda #$38 bottom of DECB block mapping - sta >$FFA0 map in block zero + sta >DAT.Regs map in block zero stb >$0071 and cold reboot here, too ldu #$0000 force code to go at offset $0000 leax ReBootLoc,pc reboot code @@ -41,7 +41,7 @@ ReBootLoc ldd #$3808 block $38, 8 times - ldx #$FFA0 where to put it + ldx #DAT.Regs where to put it Lp sta 8,x put into map 1 sta ,x+ and into map 0 inca @@ -50,7 +50,7 @@ lda #$4C standard DECB mapping sta >$FF90 - clr >$FF91 go to map type 0 + clr >DAT.Task go to map type 0 clr >$FFDE and to all-ROM mode ldd #$FFFF * clrd executes as CLRA on a 6809
--- a/level2/modules/kernel/fmove.asm Mon Nov 28 12:54:03 2016 +0000 +++ b/level2/modules/kernel/fmove.asm Mon Nov 28 13:02:16 2016 +0000 @@ -86,9 +86,9 @@ ldw #$0100 force to 128 bytes L0B92 stw 12,s save count orcc #IntMasks Shut off interrupts - std >$FFA5 map in the blocks + std >DAT.Regs+5 map in the blocks tfm x+,u+ Copy up to 128 bytes - sty >$FFA5 Restore system blocks 5&6 to normal + sty >DAT.Regs+5 Restore system blocks 5&6 to normal andcc #^IntMasks ldd 14,s get full count subd 12,s done? @@ -147,7 +147,7 @@ puls y orcc #IntMasks lda $0E,s +++ - sty >$FFA5 + sty >DAT.Regs+5 ***** NO STACK USE BETWEEN HERE..... tfr d,y +++ andb #$07 @@ -193,7 +193,7 @@ L0BBC ldy <D.SysDAT lda $0B,y ldb $0D,y - std >$FFA5 + std >DAT.Regs+5 ***** AND HERE........... puls cc ldd $0E,s
--- a/level2/modules/kernel/krn.asm Mon Nov 28 12:54:03 2016 +0000 +++ b/level2/modules/kernel/krn.asm Mon Nov 28 13:02:16 2016 +0000 @@ -275,7 +275,7 @@ IFNE H6309 ldq #$00080100 e=Marker, D=Block # to check L0111 asld get next block # - stb >$FFA5 Map block into block 6 of my task + stb >DAT.Regs+5 Map block into block 6 of my task ste >-$6000,x save marker to that block cmpe ,x did it ghost to block 0? bne L0111 No, keep going till ghost is found @@ -285,7 +285,7 @@ ldd #$0008 L0111 aslb rola - stb >$FFA5 + stb >DAT.Regs+5 pshs a lda #$01 sta >-$6000,x @@ -580,7 +580,7 @@ lda 1,u get first block ldb 3,u get a second just in case of overlap orcc #IntMasks shutdown interupts while we do this - std >$FFA5 map blocks in + std >DAT.Regs+5 map blocks in IFNE H6309 ldw #R$Size get size of register stack tfm x+,y+ copy it @@ -594,7 +594,7 @@ ldx <D.SysDAT remap the blocks we took out lda $0B,x ldb $0D,x - std >$FFA5 + std >DAT.Regs+5 puls cc,x,y,u,pc restore & return * Process software interupts from system state @@ -850,7 +850,7 @@ L0E8D cmpb <D.Task1N are we going back to the same task beq L0EA3 without the DAT image changing? stb <D.Task1N nope, save current task in map type 1 - ldx #$FFA8 get MMU start register for process's + ldx #DAT.Regs+8 get MMU start register for process's ldu <D.TskIPt get task image pointer table ldu b,u get address of DAT image L0E93 leau 1,u point to actual MMU block
--- a/level2/modules/kernel/krnp2.asm Mon Nov 28 12:54:03 2016 +0000 +++ b/level2/modules/kernel/krnp2.asm Mon Nov 28 13:02:16 2016 +0000 @@ -157,7 +157,7 @@ lda 1,u get 1st block ldb 3,u get a second in case of overlap orcc #IntMasks shut IRQ's down - std >$FFA5 map in the blocks + std >DAT.Regs+5 map in the blocks IFNE H6309 ldw #R$Size get size of register stack tfm x+,y+ move 'em to process descriptor @@ -171,7 +171,7 @@ ldx <D.SysDAT get the system DAT image pointer lda $0B,x get the original blocks ldb $0D,x - std >$FFA5 map 'em back in + std >DAT.Regs+5 map 'em back in puls cc,u,pc restore IRQ's, register stack pointer & return ENDC