| EtherBoot.bermuda |
|  2-Nov-87 17:00:19 |

| 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  [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];
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];
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];
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  [DaybreakMesa, 0];
	| 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;

UnBreak [XFER];