# HG changeset patch # User boisy # Date 1261854286 0 # Node ID 41a797492324d97a2fbae477977af8b75538d375 # Parent e53b8d577cca276fc3880c7aff296f1bcd7a87f6 Updated diff -r e53b8d577cca -r 41a797492324 level1/modules/kernel/krn.asm --- a/level1/modules/kernel/krn.asm Sat Dec 26 15:17:20 2009 +0000 +++ b/level1/modules/kernel/krn.asm Sat Dec 26 19:04:46 2009 +0000 @@ -141,14 +141,17 @@ * OS-9 Genesis! OS9Cold equ * -* clear out system globals from $0020-$0400 - ldx #D.FMBM +* clear out system globals from $0000-$0400 +* ldx #D.FMBM + ldx #$0000 IFNE H6309 - ldw #$400-D.FMBM +* ldw #$400-D.FMBM + ldw #$400 leay Zoro,pc tfm y,x+ ELSE - ldy #$400-D.FMBM +* ldy #$400-D.FMBM + ldy #$400 clra clrb L007F std ,x++ diff -r e53b8d577cca -r 41a797492324 level1/modules/scdwt.asm --- a/level1/modules/scdwt.asm Sat Dec 26 15:17:20 2009 +0000 +++ b/level1/modules/scdwt.asm Sat Dec 26 19:04:46 2009 +0000 @@ -131,10 +131,10 @@ bcs Term.Err ;go report error... DumpIRQ ldx #D.DWVIRQPkt + tfr x,u leax Vi.Stat,x ;fake VIRQ status register tfr x,d ;copy address... ldx #$0000 ;code to remove IRQ entry - ldu #D.DWSTATS ;ISR doesn't use static storage, so set to $0000 leay IRQSvc,pc ;IRQ service routine os9 F$IRQ Term.Err rts @@ -167,6 +167,7 @@ * Init equ * + clr $0016 pshs cc save IRQ/Carry status * link to subroutine module @@ -205,14 +206,14 @@ * Install the IRQ/VIRQ entry InstIRQ ldx #D.DWVIRQPkt + pshs u + tfr x,u leax Vi.Stat,x ;fake VIRQ status register lda #$80 ;VIRQ flag clear, repeated VIRQs sta ,x ;set it while we're here... tfr x,d ;copy fake VIRQ status register address leax IRQPckt,pcr ;IRQ polling packet leay IRQSvc,pcr ;IRQ service entry - pshs u - ldu #D.DWSTATS os9 F$IRQ ;install puls u bcs InitEx ;exit with error @@ -249,7 +250,7 @@ lda #OP_SERSETSTAT ; command pshs d ; command + port # on stack leax ,s ; point X to stack - ldy #3 ; 2 bytes to send + ldy #3 ; 3 bytes to send IFGT Level-1 ldu