summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Exec.S19
1 files changed, 15 insertions, 4 deletions
diff --git a/Exec.S b/Exec.S
index dcdcd18..76c2ed0 100644
--- a/Exec.S
+++ b/Exec.S
@@ -306,8 +306,11 @@ UndefdText: DC.B "Undef'd routine",0
*** A2=FASTRAM-Base, A3=FASTRAM-Ende A7=CHIPRAM-Ende-8
InitExecFunc:
- IFND SYSTEM
+ IFD SYSTEM
+ SMSG <"CHIP=$%06lx-$%06lx, FAST=$%08lx-$%08lx">,a0,a1,a2,a3
+ ELSE
move #$2700,sr
+ SMSG <"CHIP=$%06lx-$%06lx, FAST=$%08lx-$%08lx">,a0,a7,a2,a3
ENDC
lea _custom,a5
lea __MyExecBase(PC),a6
@@ -374,6 +377,7 @@ InitExecFunc:
ENDC
.NotFirst:
+ SMSG <"New stack pointer:$%08lx">,meb_SuperStackUpper(a6)
*** Speicherverwaltung initialisieren
@@ -382,16 +386,22 @@ InitExecFunc:
movea.l meb_ChipMRHeader+mh_Lower(a6),a0
move.l meb_ChipMRHeader+mh_Upper(a6),d0
sub.l a0,d0 ; D0 := Länge
- jsr meb_ClearMem(a6) ; ** DEBUG ** Cracker-Schutz: Speicher mit Muster füllen
+ jsr meb_ClearMem(a6)
jsr meb_InitChipMem(a6)
movea.l meb_FastMRHeader+mh_Lower(a6),a0
move.l meb_FastMRHeader+mh_Upper(a6),d0
sub.l a0,d0 ; D0 := Länge
beq.s 2$ ; Kein FAST-RAM --->
- jsr meb_ClearMem(a6) ; ** DEBUG ** Cracker-Schutz: Speicher mit Muster füllen
+ jsr meb_ClearMem(a6)
jsr meb_InitFastMem(a6)
2$:
+ IFD DEBUG
+ jsr meb_CheckMem(a6) ; a little testing ...
+ SMSG <"Memory init complete.">
+ ENDC
+
+
*** Jenes Zeugs initialisieren
IFND SYSTEM
@@ -409,8 +419,9 @@ InitExecFunc:
*** 1. File einladen & starten
move.l meb_MainPrgName(a6),d0 ; 1. Modul
- jsr meb_LoadSeg(a6) ; meinprg laden
+ jsr meb_LoadSeg(a6)
movea.l d0,a0 ; Muss A0 sein, User weiss es!
+ SMSG <"Jumping to MainPrg at $%08lx (tada!?)">,a0
jmp (a0) ; A6 muss MyExecBase sein!
**************************************************************************