| Cedar.bermuda | | 22-Oct-87 2:04:34 | | DiskBoot.loc 18-May-87 8:56:16 PDT | | MemDebug.loc 2-Sep-87 9:48:18 PDT | | RAMDebug.loc 2-Sep-87 9:45:12 PDT | | RAMSysB2.loc 25-Sep-87 17:38:43 PDT | | CPDebug.bermuda | | LoadIOPSymbols [DiskBoot]; | | LoadIOPSymbols [RAMSysB2]; | | LoadIOPSymbols [MemDebug]; | | symbols for MesaDove.db | | LoadIOPSymbols [RAMDebug]; | | symbols for MesaDove.db | BootIOP []; SetDataType [word]; WriteIO [80,8000]; SetDataType [byte]; WriteIO [E018,5]; WriteIO [E01F,FF]; LoadIOPCodeOnly [RAMSysB2]; SetDataType [word]; IOP [1, 1]! 870C; | loaderVirtualMemoryLocation ← 3E02| IOP [6, 0]! 053C ← 4000; | prebootSwitches: without PiggyBack Board | | IOP [6, 0]! 053C ← 00; | | prebootSwitches: with PiggyBack Board | IOP [7, 0]! CS ← C00; | Get past burdock problems. | IOP [8, 0]! IP ← 0; | Get past burdock problems. | BreakIOP [D40E]; | DisplayInit+C | ContinueIOP [0]; | UnbreakIOP [D40E]; DisplayInit+C | IOP [3, 0]! DX ← FC00; | Execute display handler from prom | BreakIOP [C64A]; | get into DiskInitial (IOPE@Restart)| ContinueIOP [0]; UnbreakIOP [C64A]; | IOPE@Restart | BreakIOP [F92]; | StartRam | ContinueIOP [0]; | UnbreakIOP [F92]; StartRam | SetDataType [byte]; | IOP [10, 0]! 875D ← 90; | | Don't start the cmos display handler (cmosDisplayStartMe)| | IOP [11, 0]! 875E ← 90; | | Put 4 Noop's starting from cmosDisplayStartMe (cmosDisplayStartMe+1)| | IOP [12, 0]! 875F ← 90; | | This should wipe out PUSH CS (cmosDisplayStartMe+2)| | IOP [13, 0]! 8760 ← 90; | | Call cmosDisplayInit (cmosDisplayStartMe+3)| BreakIOP [95E4]; | DaybrkCP | ContinueIOP [0]; | UnbreakIOP [95E4]; DaybrkCP | IOP [9, 0]! 1734 ← 90; | ZeroDownNotifyBits+26 | IOP [0A, 0]! 1735 ← 90; | Don't let MesaUpDn start the CP (ZeroDownNotifyBits+27)| IOP [0B, 0]! 1736 ← 90; | ZeroDownNotifyBits+28 | IOP [0C, 0]! 1737 ← 90; | ZeroDownNotifyBits+29 | IOP [0D, 0]! 1738 ← 90; | ZeroDownNotifyBits+2A | BreakIOP [C8D7]; | SystemLoop | ContinueIOP [0]; UnbreakIOP [C8D7]; | SystemLoop | Boot []; LoadNoSymbols [DaybreakInit, 0]; | run initialization code | Break [4]; Start [0, 0, 0]; UnBreak [4]; Load [Cedar0, 0]; LoadMore [Cedar1, 1]; | Load [DaybreakMesaBank0, 0]; LoadMore [DaybreakMesaBank1, 1]; | | Break [ControlTrap]; | | Break [StackErr]; | | Break [XXXX]; | | LoadGerm [Dove.germ]; | | Break [XFER]; | BreakIOP [E671]; | EndError+7 | ContinueIOP [0]; | Get past all initialization | UnbreakIOP [E671]; | EndError+7 | | Start [BootTrap, BootTrap, 0]; | | CP [0C, 2] ! .mv 3A0 ← 72E; CP [0C, 2] ! .mv 3A1 ← 0; CP [0C, 2] ! .mv 3A2 ← 6; CP [0C, 2] ! .mv 3A3 ← 0; CP [0C, 2] ! .mv 3A4 ← 0; CP [0C, 2] ! .mv 3A5 ← AA00; CP [0C, 2] ! .mv 3A6 ← 0828; CP [0C, 2] ! .mv 3A7 ← 0; CP [0C, 2] ! .mv 3A8 ← 0; CP [0C, 2] ! .mv 3A9 ← FFFF; CP [0C, 2] ! .mv 3AA ← FFFF; CP [0C, 2] ! .mv 3AB ← FFFF; CP [0C, 2] ! .mv 3AC ← A; CP [0C, 2] ! .mv 3AD ← E53; | | CP [0, 0]! UvGhigh; | CP [1, 0]! rhG; CP [2, 0]! rhMDS; CP [3, 0]! rhL; CP [4, 0]! UvChigh; CP [5, 0]! rhPC; CP [6, 0]! .ib; CP [7, 0]! .ibPtr; CP [9, 0]! rhT; CP [A, 0]! rhTT; CP [B, 0]! rhRx; CP [0, 1]! UvG; CP [1, 1]! G; CP [2, 1]! UvL; CP [3, 1]! L; CP [4, 1]! UvC; CP [5, 1]! PC; CP [6, 1]! UvPCpage; CP [7, 1]! .pc16; | CP [8, 1]! uGFI; | CP [9, 1]! T; CP [A, 1]! TT; CP [B, 1]! Rx; CP [0, 2]! TOS; CP [1, 2]! uStack9; CP [2, 2]! uStack8; CP [3, 2]! uStack7; CP [4, 2]! uStack6; CP [5, 2]! uStack5; CP [6, 2]! uStack4; CP [7, 2]! uStack3; CP [8, 2]! uStack2; CP [9, 2]! .stackP; | special germ mumbo-jumbo | CP [10, 2]! transferCount ← 2C; | pages in the germ (approx) | CP [11, 2]! topPage ← 1B80; | 4MB == magic! (first vacant page) | CP [10, 0]! rBrh; CP [11, 0]! rCrh; CP [12, 0]! rDrh; CP [13, 0]! rErh; CP [10, 1]! rB; CP [11, 1]! rC; CP [12, 1]! rD; CP [13, 1]! rE; CP [16, 0]! .map 3e02; CP [17, 0]! .map 200; CP [18, 0]! .map 1b53; CP [1A, 0]! .mr 48000; CP [16, 1]! .map 1; CP [16, 2]! .map 1b7f; CP [17, 2]! .map 1b52; Break [looper]; Start [mapGerm, mapGerm, 0]; UnBreak [looper]; CP [13, 1]! rE ← 3e03; | shift germ by one page | CP [16, 0]! .map 3e02 ← 8004; | swap this special(?) page | CP [17, 0]! .map 200 ← d31f; | swap this special(?) page | CP [18, 0]! .map 1b53 ← 60; | swap this special(?) page | CP [1B, 0]! .mv 3e0200; Break [vswapdone]; Continue [0]; UnBreak [vswapdone]; | begin emulator stuff | CP [9, 2]! .stackP ← 0; |startmesa hack| CP [C, 2]! uXTS ← 0; |startmesa hack| CP [12, 2]! uSDAddr ← 240; | 1100'b ugh! | CP [ A, 1]! TT ← 240; | uSDAddr (corrected) | CP [13, 2]! Q; CP [1A, 1]! u200 ← 200; | uAVAddr | CP [1B, 1]! u7FF ← 7FF; CP [1C, 1]! u1FFF ← 1FFF; CP [1D, 1]! u3FFF ← 3FFF; CP [1E, 1]! u8000 ← 8000; CP [1A, 2]! uPMask ← 0FFC; CP [1B, 2]! uPMask2 ← 0FFC; CP [1C, 2]! uPPMask ← 7000; CP [1D, 2]! uStickyReg ← 0; CP [1E, 2]! rhT; | 1 = xtFC0 | Break [LastChance]; Start [Germ, Germ, 0]; UnBreak [LastChance]; Break ["EFCHaveLink+2"]; Break [@LFC5]; Break [@LI1]; Start [LastChance, LastChance, 0]; |eof...|