LinkedPatches Release Notes First created on: 3/26/92 5:57:47 PM ----------------------------------------------------------•---------------------------------------------------------- 3/26/92 5:57:54 PM File: LinkedPatchLoader.a,54 Owner: Dean Yu Project: MainProj∫LinkedPatches∫ File: Build,255 Owner: Dean Yu Project: MainProj∫Make∫ File: SysObj.Make,447 Owner: Dean Yu Project: MainProj∫Make∫ File: BootCode.a,22 Owner: Dean Yu Project: MainProj∫OS∫StartMgr∫ File: BeforePatches.a,27 Owner: Dean Yu Project: MainProj∫Patches∫ Radar bug: #1024282 > Release notes for this change: A Process Manager segment was being loaded high in the system heap, causing fragmentation. It was loaded high because the linked patch blocks were in the way at boot time. We tried to alleviate this by moving these blocks high in the heap, but that stopped working. Now we load these segments in ‘PTCH’ 0, which is run before linked patches, so we don’t have to worry about the strange memory setup at linked patch time. > What was tested: The Process Manager segments in question are loaded low, always. All the locked blocks are all in the lower third of the system heap, which is very good for fragmentation. ----------------------------------------------------------•---------------------------------------------------------- 4/4/92 9:44:14 AM File: LinkedPatchLoader.a,55 Owner: Fred Monroe Project: MainProj∫LinkedPatches∫ Radar bug: #1024666 > Release notes for this change: Made Linked patches more memory friendly so that we can boot in low memory conditions. The ‘lpch’ resources are moved above the boot globals (MemTop/2 + 1k) during the linkpatch loading. After this time MemTop is reset and the copied resources disappear. > What was tested: Booted a 2 meg machine with and without VM turned on. Walked through the process in macsbug. ----------------------------------------------------------•---------------------------------------------------------- 4/6/92 5:04:53 PM File: LinkedPatchLoader.a,56 Owner: Dean Yu Project: MainProj∫LinkedPatches∫ Radar bug: #1024666 > Release notes for this change: Linked Patch INITs were broken with the last change because D4 was not being initialized. Fix this up and added judicious comments that Fred was too whipped to add because his ride was here. > What was tested: Kenny’s TSM INIT was crashing because of this bug. With this fix, his INIT boots successfully. Also stepped through the system boot to make sure all the linked patches got copied to the right place, and MemTop was being restored afterwards. ----------------------------------------------------------•---------------------------------------------------------- 4/8/92 6:13:49 PM File: LinkedPatchLoader.a,58 Owner: Dean Yu Project: MainProj∫LinkedPatches∫ Radar bug: #1026928 > Release notes for this change: Changed linked patch loader so that it will be able to get linked patch resources out of ROM. Before loading each ‘lpch’ resource, see if CurMap is 1. If it is, set ROMMapInsert to true to get the resource from ROM. ROM Gibblies will know to set CurMap to 1 before calling the linked patch loader. > What was tested: Changed CurMap to 1, and watched linked patch loader set ROMMapInsert to true before getting an ‘lpch’ resource. Of course, since there are no linked patches in ROM on a IIci, the machine bombed very shortly afterwards. But that wasn’t the point of this change. ----------------------------------------------------------•---------------------------------------------------------- 4/30/92 2:50:28 PM File: LinkedPatchLoader.a,59 Owner: Dean Yu Project: MainProj∫LinkedPatches∫ Radar bug: #1023455 > Release notes for this change: The check in the hasTerror runtime conditional to check for Horror ROMs was looking at the wrong offset into the ROM header. It was looking at decimal offset 14 instead of hex offset 14. Change the code to use the correct offset. > What was tested: The implication of this bug was that non of the Terror only linked patches were being loaded on Horror ROM based machines, like Vail. With the change, these patches are now loaded. ----------------------------------------------------------•---------------------------------------------------------- 6/3/92 10:34:40 AM File: LinkedPatchLoader.a,60 Owner: Dean Yu Project: MainProj∫LinkedPatches∫ Radar bug: #1026928 > Release notes for this change: Change <58> sets ROMMapInsert to true if CurMap is 1 so that linked patches in ROM would be possible. However, the if the Resource Manager sees 1 in CurMap, and that ROMMapInsert was true, it will reset CurMap to be SysMap when leaving the Resource Manager call. This makes subsequent checks of CurMap invalid. Instead of doing this, save CurMap in a register before getting any ‘lpch’ resources, and compare that against 1 to determine if ROMMapInsert needs to be set before getting a linked patch resource. > What was tested: Slammed 1 into CurMap, and watched the code that loads all linked patch resources try to get them from ROM instead of from the system file. Of course, it didn’t find any, and crashed, but it was looking in ROM all the time which was the whole point of this exercise. ----------------------------------------------------------•----------------------------------------------------------