From: Horst Beepmanh <> Subject: Filthy hacks for NewWorld ROM --- diff --git a/Make/System.make b/Make/System.make --- a/Make/System.make +++ b/Make/System.make @@ -165,26 +165,10 @@ ResourceFiles = ∂ "{MiscDir}APTK57.rsrc" ∂ LinkedPatchObjs = ∂ - "{ObjDir}PatchProtector.a.o" ∂ - "{ObjDir}ProcessManagerSegmentTweaks.a.o" ∂ - "{ObjDir}SCSILinkPatch.a.o" ∂ - "{ObjDir}FileMgrPatches.a.o" ∂ - "{ObjDir}LaterFileMgrPatches.a.o" ∂ - "{ObjDir}AllB&WQDPatch.a.o" ∂ - "{ObjDir}Mouse.a.o" ∂ - "{ObjDir}ResourceMgrPatches.a.o" ∂ - "{ObjDir}SonyPatches.a.o" ∂ - "{ObjDir}BrightnessPatches.a.o" ∂ - "{ObjDir}MMUPatches.a.o" ∂ - "{ObjDir}MenuMgrPatch.a.o" ∂ - "{ObjDir}MenuMgrPatchII.a.o" ∂ - "{ObjDir}SlotMgrPatch.a.o" ∂ - "{ObjDir}SlotMgrInit.a.o" ∂ - "{ObjDir}SlotMgr.a.o" ∂ - "{ObjDir}DialogMgrPatches.a.o" ∂ - "{ObjDir}QuickDrawPatches.a.o" ∂ - "{ObjDir}WindowMgrPatches.a.o" ∂ + "{LibDir}HelpMgr.lib" ∂ + "{LibDir}IconUtils.lib" ∂ "{IfObjDir}interface.o" ∂ + "{Libraries}Runtime.o" ∂ "{ObjDir}TrashTalk.a.o" diff --git a/OS/StartMgr/Boot3.a b/OS/StartMgr/Boot3.a --- a/OS/StartMgr/Boot3.a +++ b/OS/StartMgr/Boot3.a @@ -459,6 +459,21 @@ kDALCreator equ 'dald' ; <12> BootCode MAIN + MOVEQ #19,D0 ; Clear low bit of ECR19 to turn off DR + DC.W $FE04 ; _MoveFromECR + MOVE.L A0,D1 + BCLR #1,D1 + MOVE.L D1,A0 + DC.W $FE05 ; _MoveToECR + + + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Hello from the System 7 boot3 resource^n' +@afterwards ; Registers passed in from boot blocks: ; A3 = handle to this resource @@ -512,7 +527,16 @@ CheckForPreGibblySystem btst #systemEnabledBit,ExtensionsEnabledByte beq.s @gibblyPresent moveq #dsOldSystem,d0 - _SysError + + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'CheckForPreGibblySystem failed^n' +@afterwards + +; _SysError @gibblyPresent ; —————————————————————————————————————————————————————————————————————————————————————————————————— @@ -588,6 +612,18 @@ ShowStartupScreen ; Now, do the welcome screen. bsr EraseMyIcon + + + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got past EraseMyIcon^n' +@afterwards + + + moveq #dsGreeting,d0 ; put up the greeting _SysError @@ -653,6 +689,14 @@ FixMMUTypeAndKillMemoryDispatch ; according to a calculated Clock rate (25 or 33Mhz currently). + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to CheckFor040CacheInhibit^n' +@afterwards + CheckFor040CacheInhibit ; <5> SAM CMPI.B #cpu68040,cpuFlag ; Are we on an 040? @@ -705,12 +749,28 @@ CheckFor040CacheInhibit ; <5> SAM ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to InstallDispatch^n' +@afterwards + ; Install the new dispatcher for systems that need it. import InstallDispatch jsr InstallDispatch ;—————————————————————————————————————————————————————————————————————————————————————————————————— +XXXXXXX + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to CheckForExtensionsDisabled^n' +@afterwards CheckForExtensionsDisabled @@ -853,6 +913,14 @@ RememberPhysicalMemTop ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to DoWeHaveEnoughRAMToBoot^n' +@afterwards + DoWeHaveEnoughRAMToBoot ; We’ve got to have at least minRAMNeeded to get 7.0 on its feet. minRAMNeeded was chosen @@ -890,6 +958,14 @@ LoadTemporaryStripAddress @done ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadVMAndDebugger^n' +@afterwards + LoadVMAndDebugger ; Load VM and MacsBug, but do it in a different order if Joe’s debugging signature is found. @@ -976,6 +1052,14 @@ CleanUpBootPort ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to RelocateBootWorld^n' +@afterwards + RelocateBootWorld ; If VM has added memory to the machine, relocate all the boot stuff to the new MemTop/2 <10> @@ -1129,6 +1213,14 @@ LoadFileSystemCache ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadPTCHZero^n' +@afterwards + LoadPTCHZero MOVEQ #0,D0 ; load patches for all ROMs @@ -1149,9 +1241,9 @@ LoadPTCHROMSpecific ; *** obsolete, get rid of this eventually - MOVEA.L ROMBase,a0 ; ID = ROM version number - MOVE.W 8(A0),D0 ; load ROM-specific patch - BSR LoadPTCH +; MOVEA.L ROMBase,a0 ; ID = ROM version number +; MOVE.W 8(A0),D0 ; load ROM-specific patch +; BSR LoadPTCH LoadLinkedPatches lea LinkedPatchName,a0 @@ -1198,6 +1290,14 @@ LoadLinkedPatches _SysError @done + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadPTCHROMSpecific ... actually i killed that^n' +@afterwards + ; —————————————————————————————————————————————————————————————————————————————————————————————————— @@ -1219,6 +1319,14 @@ TestForNeedToReset ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to SetupProcessMgrLaunch^n' +@afterwards + SetupProcessMgrLaunch ; So that old code that patches Launch will still work, we point the Launch trap to the code used @@ -1314,6 +1422,14 @@ LoadINITResourcesInSystemFile ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadAROSE^n' +@afterwards + LoadAROSE ; Load A/ROSE. @@ -1335,21 +1451,37 @@ LoadAROSE ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadAppleTalk^n' +@afterwards + LoadAppleTalk ; Load AppleTalk from System. - btst.b #hwCbAUX,HWCfgFlags ; are we under A/UX? - bnz.s @noALAP - - move.l #'lmgr',d5 ; call common routine to load and execute resource <29> - clr.w d6 - clr.w d3 ; clear the DontCloseOnError flag - bsr ExecuteFromSystem ; <34> -@noALAP +; btst.b #hwCbAUX,HWCfgFlags ; are we under A/UX? +; bnz.s @noALAP +; +; move.l #'lmgr',d5 ; call common routine to load and execute resource <29> +; clr.w d6 +; clr.w d3 ; clear the DontCloseOnError flag +; bsr ExecuteFromSystem ; <34> +;@noALAP ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadNetBoot^n' +@afterwards + LoadNetBoot ; <33> ; Load NetBoot. @@ -1385,6 +1517,14 @@ LoadNetBoot ; <33> ; —————————————————————————————————————————————————————————————————————————————————————————————————— + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadSystemComponents^n' +@afterwards + LoadSystemComponents ; <9> ; Register any components lurking in the system file <9> @@ -1402,9 +1542,30 @@ LoadSystemComponents ; <9> @skipThings + +ForceBalloons + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadSystemComponents^n' +@afterwards + ; —————————————————————————————————————————————————————————————————————————————————————————————————— +GapHerePlease + + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to LoadINITFiles^n' +@afterwards + LoadINITFiles + bra @skipINITs ; This section searches the default volume for files of type cdev, RDEV ; and INIT. When it finds one, it opens it and attempts to Get1IndResource @@ -1472,6 +1633,15 @@ LoadINITFiles ; —————————————————————————————————————————————————————————————————————————————————————————————————— +FontsOverNet + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to _AddScriptFonts^n' +@afterwards + ; Now that networks are usable, give script systems a chance to install fonts over the network. <14> subq #2,sp ; make room for OSErr result @@ -1481,11 +1651,29 @@ LoadINITFiles ;------------------------------------------------------------------------------------------------ +TellTSMStuff + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to TSM^n' +@afterwards + ; Go tell text services manager what the system script is and what its default language is - bsr TellTSMScriptAndLanguage +; bsr TellTSMScriptAndLanguage ; —————————————————————————————————————————————————————————————————————————————————————————————————— +SetNewPtrStartup + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to set SetNewPtrStartup^n' +@afterwards + ; Switch from the boot-time NewPtrStartup to one that returns an error. <30> move.l BootGlobals.postBootNewPtrStartup(a5),a0 @@ -1494,6 +1682,15 @@ LoadINITFiles ; —————————————————————————————————————————————————————————————————————————————————————————————————— +NoMoreTwoHeaps + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to _RsrcZoneInit^n' +@afterwards + ; We still have two heaps. We are going to get minSysHeapFreeAfterBoot bytes, even if it ; means growing the system heap again. This time, though, we’ll stop reserving anything, ; and take as much as we need. @@ -1512,6 +1709,15 @@ LoadINITFiles ; is used to start the Process Mgr. Any patches to Launch will be executed, followed by the Process ; Mgr. itself. +DoTheMF + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Got to MultiFinder^n' +@afterwards + clr.w -(sp) ; for the wierdos who look clr.l -(sp) ; we pass the parameters like the old launch pea #'MultiFinder' ; (rest in peace) @@ -1567,6 +1773,15 @@ StartProcessMgr SUB.W #processMgrStackSize,A0 ; make space for stack _SetApplLimit ; set the new limit + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'Start the Process Mgr^n' +@afterwards + + ; Start the Process Mgr. rts @@ -2943,6 +3158,16 @@ EndCachesOffMFMPatch EQU * EndOfBootCode +BLAT proc export + move.l 4(sp),a0 + add.l #1,a0 + move.l #96,d0 + dc.w $fe1f + move.l (sp),a0 + addq #8,sp + jmp (a0) + + ; —————————————————————————————————————————————————————————————————————————————————————————————————— end diff --git a/Patches/BeforePatches.a b/Patches/BeforePatches.a --- a/Patches/BeforePatches.a +++ b/Patches/BeforePatches.a @@ -513,6 +513,16 @@ RAMSysInit PROC EXPORT Move.L D1,-(SP) ;save our handle + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b 'started ptch 0^n' +@afterwards +BarrierHere + + ;##################################################################################### ; P001 P027 24Jan87 JTC Allocate extended memory for international folks. ; This is not a patch, but it belongs in line. @@ -558,7 +568,17 @@ RAMSysInit PROC EXPORT _DisposPtr ; still in a0 after move <29June89smb> beq.s @noSpandex ; exit if everything is ok <7> -@ErrorXit _SysError ; <24Aug89smb> +@ErrorXit + + lea @thestring,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards + string c +@thestring dc.b '@ErrorXit^n' +@afterwards + + _SysError ; <24Aug89smb> @MakeExpandMem clr.l ExpandMem ; aka ‘BasicGlob’ @@ -573,6 +593,16 @@ RAMSysInit PROC EXPORT @noSpandex ; skip around when no room + lea @thestring3,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards3 + string c +@thestring3 dc.b 'done with expandmem^n' +@afterwards3 + + + ;____________________________________________________________________________________ ; Jam system version number. move.w #SysVers,SysVersion ; jam sys version number @@ -595,6 +625,16 @@ RAMSysInit PROC EXPORT @appleTalkIsActive +Bazza + + lea @thestring3,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards3 + string c +@thestring3 dc.b 'atlk done^n' +@afterwards3 + ;____________________________________________________________________________________ ; Install the keyboard translation code. @@ -662,6 +702,15 @@ RAMSysInit PROC EXPORT @badError ; A serious error occurred somewhere. Do that crazy system bomb thing. + + lea @thestring2,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards2 + string c +@thestring2 dc.b '@ErrorXit^n' +@afterwards2 + move.l #dsSysErr,d0 ; pick system bomb number. _SysError ; pow, biff, boffo. @doneInit @@ -687,43 +736,6 @@ RAMSysInit PROC EXPORT @1 ;######################### DeCompressor INSTALLATION ********##################### - - IMPORT OldCheckLoadJump,MyCheckLoad - Lea OldCheckLoadJump+2,A0 ; < Denman 1/17/90 > - Move.L jCheckLoad,(A0) ; store the old address in our code - -; Set new trap address to this ptr - - Lea MyCheckLoad,A0 ; compute the address of the patch code. - Move.L A0,jCheckLoad ; stuff in my checkLoad hook. - -; Fix the BIND's to ROM addresses for the Decompressor (SizeRsrc patch). - - FixROMAddresses ; bind the addresses - -; install our patch to _SizeRsrc. - - PatchOSJump Read,$A002 ;Remember the old address of _Read. - InstOSTp ReadDecompression,$A002 ;set the read trap to ReadDecompression - -; loop through all the open resource files, and clear the alternate attributes byte -; then, set it for the system file - -SetupResourceFileAttributes - move.l TopMapHndl,a0 ;start with the first map -@next - move.l a0,d0 ;are we done? - bz.s @done - move.l (a0),a0 ;get the map pointer - bclr #decompressionPasswordBit,mInMemoryAttr(a0) ; <25> clear the flags for this map - move.l mNext(a0),a0 ;go on to the next map - bra.s @next -@done - move.l SysMapHndl,a0 ;get the system map - move.l (a0),a0 - bset #decompressionPasswordBit,mInMemoryAttr(a0) ; allow dcmps here - bset #dontCountOrIndexDuplicatesBit,mInMemoryAttr(a0) ; <23> Don’t count duplicate resources in the System file - bset #twoDeepBit,mInMemoryAttr(a0) ; <24> One deep calls on the System file will search two (or more) maps. ;##################################################################################### ;######################### A/UX CONDITIONAL INSTALLATION ********##################### @@ -731,10 +743,30 @@ SetupResourceFileAttributes ; Patches in this group are bypassed when running on A/UX. +FixRomEtc + lea @thestring3,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards3 + string c +@thestring3 dc.b 'adb?^n' +@afterwards3 + + MOVE.W HwCfgFlags,D0 ; check ‘em the compulsive way BTST #hwCbAUX,D0 ; is it A/UX time? BNE skipOSInstalls ; if so skip this OS stuff +FixRomEtc2 + lea @thestring3,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards3 + string c +@thestring3 dc.b 'adb stuff^n' +@afterwards3 + + ;############################################################################# <6> ; Install ADBReInitPatch - Save old jADBProc and put ADBReInitPatch addr in ; jADBProc. Only do this on ADB machines! @@ -755,6 +787,14 @@ SetupResourceFileAttributes ;##################################################################################### skipOSInstalls ; end of the line for OS/hardware + lea @thestring3,a0 + move.l #96,d0 + dc.w $fe1f + bra.s @afterwards3 + string c +@thestring3 dc.b 'DONE^n' +@afterwards3 + ;##################################################################################### ;############################### END INSTALL CODE #################################### ;##################################################################################### diff --git a/ProcessMgr/MenuMgrPatches.c b/ProcessMgr/MenuMgrPatches.c --- a/ProcessMgr/MenuMgrPatches.c +++ b/ProcessMgr/MenuMgrPatches.c @@ -69,6 +69,9 @@ #include "Script.h" #include "Language.h" +#pragma parameter blat(__A0) +void blat(char *str) = {0x7060, 0xFE1F}; + /* ----------------------------------------------------------------------------- * * Data and prototypes. @@ -1101,18 +1104,25 @@ InitSystemMenus(void) register MenuHandle menuHdl; Str255 itemText; + Debugger(); + blat("InitMenus^n"); /* Reach an understanding with the Menu Mgr */ InitMenus(); + blat("InitAppleMenuList^n"); /* Set up the Apple menus list */ InitAppleMenuList(); + DebugStr("\pdid InitAppleMenuList"); + blat("-HMInitHelpMenu^n"); /* Let the Help Mgr install the Help menu */ - HMInitHelpMenu(); + //HMInitHelpMenu(); + blat("-InitKeybdMenu^n"); /* Let international install the Keyboard menu */ - (void) InitKeybdMenu(); +// (void) InitKeybdMenu(); + blat("Get process list menu^n"); /* Get process list menu */ if ((ApplicationMenuHdl = menuHdl = GetResource('MENU', kApplicationMenuID)) == nil) { @@ -1127,8 +1137,9 @@ InitSystemMenus(void) GetItem(menuHdl, HIDE_APP_ITEM, &itemText); hHideCurrent = NewString(itemText); + blat("InsertMenu^n"); /* Place it in the bar as the far right-hand (system) menu */ - InsertMenu(menuHdl, 0); + //InsertMenu(menuHdl, 0); /* Set up the suites for the generic icons (we only ever need small icons) */ SetResLoad(false); diff --git a/ProcessMgr/Startup.c b/ProcessMgr/Startup.c --- a/ProcessMgr/Startup.c +++ b/ProcessMgr/Startup.c @@ -98,6 +98,9 @@ void FloatKernelUp(void); void FloatEppcUp(void); void FloatAUXUp(void); +#pragma parameter blat(__A0) +void blat(char *str) = {0x7060, 0xFE1F}; + main(void) { LaunchResults finderLaunchResults; @@ -105,11 +108,18 @@ main(void) HighLevelEventRecord theEvent; FSSpec finderSpec; + blat("I am the Process Manager!^n"); + blat("...and this is a second line^n"); + _DataInit(); /* Initialize our global data */ InitializeEnvironment(); /* Adjust machine environment to our liking */ + blat("InitializeEnvironment done^n"); InstallPatches(); /* Install our patches */ + blat("InstallPatches done^n"); InitializeScheduler(); /* Initialize our global structures */ + blat("PM made it past basic init^n"); + /* Locate Process Mgr's scrap handle BEFORE launches */ ourScrapHdl = SCRAPHANDLE; @@ -120,6 +130,8 @@ main(void) if ((EXTENSIONSENABLEBYTE & (1 << ExtensionsEnabledBit)) != 0) LaunchFacelessTasks(); + blat("launched faceless tasks!^n"); + THEZONE = ProcessMgrZone; if ((finderLaunchResults.LaunchError = FSMakeFSSpec(BOOTVOL, 0, FINDERNAME, &finderSpec)) == noErr) StandardLaunch(&finderSpec, launchUseMinimum, 0, nil, &finderLaunchResults, nil); @@ -127,6 +139,8 @@ main(void) /* Quick Restore: Have to set zone to sys to do _UnloadSeg correctly */ THEZONE = SYSZONE; CURMAP = SYSMAP; TOPMAPHANDLE = GetOverrideMap(SYSMAPHANDLE); + blat("about to know if finder launch failed...^n"); + /* Bomb box if the Finder launch failed */ if (finderLaunchResults.LaunchError != noErr) SysError(dsFinderErr); @@ -236,13 +250,17 @@ InitializeEnvironment(void) /* Save initial location zero before we call any traps that might change it! */ initLocationZero = LOCATIONZERO; + blat("Pre InitConfig^n"); /* Get configuration information */ InitConfig(); + blat("Post InitConfig^n"); /* Get table of switchable low memory locations (in System Heap) */ + blat("Pre GetSwitchTab^n"); GetSwitchTab(); /* Expand the zone up to the APPLLIMIT */ + blat("Pre MaxApplZone^n"); MaxApplZone(); /* initialize the scrap, if necessary */ @@ -252,11 +270,13 @@ InitializeEnvironment(void) THEZONE = APPLZONE; /* Unload data init seg and release its CODE resource (to get it out of map). */ + blat("Pre UnloadSeg/ReleaseResource^n"); pCodeEntry = _DataInit; UnloadSeg(pCodeEntry); ReleaseResource(GET_SCOD_HDL_FROM_FNC_PTR(pCodeEntry)); /* Set up dynamic heaps */ + blat("Pre InitHeaps^n"); InitHeaps(); THEZONE = SYSZONE; @@ -293,8 +313,11 @@ InitializeEnvironment(void) /* Initialize window manager in system heap ('cause it's shared in our patch) * NOTE: Calls InitFonts for InitWindow's sake on older machines. */ + blat("Pre InitFonts^n"); InitFonts(); + blat("Pre InitWindows^n"); InitWindows(); + blat("Pre GetCurLayer^n"); MFLayer = GetCurLayer(); IMLayer = nil; THEZONE = APPLZONE; @@ -306,9 +329,11 @@ InitializeEnvironment(void) #endif HAS_AUX_PROCESSMGR /* We want to run from the boot volume. */ + blat("Pre SetVol^n"); SetVol(nil, BOOTVOL); /* Set up volume notification mechanism */ + blat("Pre VNInit^n"); VNInit(); } @@ -401,6 +426,8 @@ InitializeScheduler(void) */ THEZONE = SYSZONE; + blat("strings...^n"); + /* Get menu strings for scrap coercion */ hdl = Get1Resource('STR#',-16414); pStrListCopyNamePrefix = (hdl == nil) ? nil : *((StrListHdl)hdl); @@ -433,6 +460,8 @@ InitializeScheduler(void) THEZONE = APPLZONE; RsrcZoneInit(); + blat("menu time^n"); + /* Switch to SYSZONE because any of the _GetResource calls below could move * memory within the call, which is a problem for the rsrc mgr routine * CheckLoad(). It saves and restores THEZONE, but our heap can move so restoring @@ -467,8 +496,10 @@ InitializeScheduler(void) standardMenuDefProcRsrc = (Handle) StripAddress(realMDefHdl); } + blat("InitSystemMenus^n"); /* Insert the system menus now that we have the MDEF */ - InitSystemMenus(); + //InitSystemMenus(); + blat("...good^n"); /* Get rid of useless font width tables, etc. Must be done after InitSystemMenus, * because menu installers need font info set up. diff --git a/Toolbox/HelpMgr/BalloonExtensions.a b/Toolbox/HelpMgr/BalloonExtensions.a --- a/Toolbox/HelpMgr/BalloonExtensions.a +++ b/Toolbox/HelpMgr/BalloonExtensions.a @@ -60,7 +60,7 @@ HelpMgrTesting EQU 0 ; ;___________________________________________________________________________________ -HelpMgrInstall InstallProc +HelpMgrInstall InstallProc (SuperMario) IMPORT ptchHMBootInitHelpManager IMPORT ptchHMGestaltIsThereHelp @@ -113,7 +113,7 @@ HMProblemMessage ; ;___________________________________________________________________________________ -Pack14Entry PatchProc _Pack14 +Pack14Entry PatchProc _Pack14, (SuperMario) IMPORT ptchHMPascalGetBalloons diff --git a/Toolbox/IconUtils/IconUtils.a b/Toolbox/IconUtils/IconUtils.a --- a/Toolbox/IconUtils/IconUtils.a +++ b/Toolbox/IconUtils/IconUtils.a @@ -590,7 +590,7 @@ EXIT MOVEA.L (SP), A1 ; IconDispatch - dispatcher for all Icon utilities. ;---------------------------------------------------------------------------------- -IconDispatch BeginDispatcher $ABC9,(Plus,SE,II,Portable,IIci) +IconDispatch BeginDispatcher $ABC9,(Plus,SE,II,Portable,IIci,SuperMario) DispatchSelectors __PlotIconID=selectPlotIconID DispatchSelectors __GetIconSuite=selectGetIconSuite diff --git a/Toolbox/MenuMgr/MenuMgrExtensions.a b/Toolbox/MenuMgr/MenuMgrExtensions.a --- a/Toolbox/MenuMgr/MenuMgrExtensions.a +++ b/Toolbox/MenuMgr/MenuMgrExtensions.a @@ -25,7 +25,7 @@ ; Set the low memory bit -InvalMenuBar PatchProc _InvalMenuBar,(Plus,SE,II,Portable,IIci) +InvalMenuBar PatchProc _InvalMenuBar,(Plus,SE,II,Portable,IIci,SuperMario) bset #MenuBarInvalidBit,MenuBarInvalidByte ; set the invalid bit rts