Mercurial > hg > Members > kono > nitros9-code
changeset 3091:4bd97bf42856
Added comments in level1 boot section, based on learnings while debugging
multicomp09 port.
author | Neal Crook <foofoobedoo@gmail.com> |
---|---|
date | Tue, 13 Oct 2015 22:53:45 +0100 |
parents | 3ccef1f7f44b |
children | 20dd91f1ef1a |
files | level1/modules/rel.asm |
diffstat | 1 files changed, 34 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/level1/modules/rel.asm Tue Oct 13 22:38:26 2015 +0100 +++ b/level1/modules/rel.asm Tue Oct 13 22:53:45 2015 +0100 @@ -49,13 +49,17 @@ IFGT Level-1 -L001F fcb $6C MMU, IRQ, Vector page, SCS - fcb $00 map type 0 - fcb $00 no FIRQ - fcb $00 no IRQ - fdb $0900 timer - fcb $00 unused - fcb $00 unused +************************************************************************* +* Level2/level3 +************************************************************************* + +L001F fcb $6C MMU, IRQ, Vector page, SCS + fcb $00 map type 0 + fcb $00 no FIRQ + fcb $00 no IRQ + fdb $0900 timer + fcb $00 unused + fcb $00 unused IFEQ TkPerSec-50 fcb $0B 50Hz refresh, alphanumeric display, 8 lines/char row ELSE @@ -93,6 +97,10 @@ clrb fcb $8C skip 2 bytes +************************************************************************* +* Entry point for level2/3 +************************************************************************* + reset equ * later on, have reset different from start? start ldb #$FF negative - do complete boot clr >$FFDF added for OS-9 ROM Kit boots +BGP+ @@ -277,12 +285,17 @@ Pad fill $39,$127-* - ELSE + ELSE match IFGT Level-1 -Start clr PIA0Base+3 +************************************************************************* +* Entry point for level1 +************************************************************************* + +Start + clr PIA0Base+3 IFNE (tano+d64+dalpha) - clr PIA0Base+1 added for Dragon, works on CoCo + clr PIA0Base+1 added for Dragon, works on CoCo ENDC IFNE H6309 ldmd #3 native mode @@ -315,7 +328,7 @@ leay -1,y bne L263B -* Copy "OS9 BOOT" to screen area +* Copy "NITROS9 BOOT" to screen area ldx #ScStart+$10A leay <BootMsg,pcr ldb #BootMLen @@ -332,6 +345,10 @@ ENDC beq L266E + +* Copy boot track from $2600 to $EE00 - not quite all of it though. The whole boot +* track is $1200 bytes and would take us right up to $FFFF. We actually copy up to +* $FE80. leau >Begin-XX.Size,pcr ldx #Bt.Size ldy #Bt.Start @@ -339,7 +356,12 @@ sta ,y+ leax -1,x bne L2663 + +* go to L266E but in high memory jmp >Offset+L266E + +* now executing in high memory. Compute the absolute address of the entry +* point of the next module (which must be krn) and go there. L266E leax <eom,pcr ldd M$Exec,x jmp d,x @@ -352,7 +374,7 @@ fcc /BOOT/ BootMLen equ *-BootMsg - ENDC + ENDC match IFGT Level-1 emod eom equ *