sys7.1-doc-wip/OS/StartMgr/StartMgr Release Notes
2019-07-27 22:37:48 +08:00

441 lines
17 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

StartMgr Release Notes
First created on: 3/16/92 4:15:39 PM
----------------------------------------------------------•----------------------------------------------------------
3/16/92 4:15:59 PM
File: BootCode.a,18
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1024540
> Release notes for this change:
Load El Kabong printing extensions at boot time along with other types of extensions.
> What was tested:
Changed an extension to have a type of pext and watched it get loaded anyway.
----------------------------------------------------------•----------------------------------------------------------
3/26/92 5:58:15 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 dont 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/1/92 9:08:46 PM
File: BootCode.a,24
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1025555
> Release notes for this change:
Add generic A/UX support to Cube-E boot code.
> What was tested:
The A/UX group tested the boot code with the changes under A/UX. I verified that the changes do
not affect the boot process of the normal system.
----------------------------------------------------------•----------------------------------------------------------
4/2/92 3:48:07 PM
File: Bootcode.a,25
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
File: StartSystem.a,71
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1025555
> Release notes for this change:
Move the first call to MakeSystemHeapGrowable into StartSystem.a because there used to be one
really early in the boot process before all this Gibbly stuff came around. We cant put it at the
beginning of BootCode.a because that would cause the Gibbly to get closed because of the call to
_InitApplZone, so were doing it before the Gibbly gets opened anyway.
> What was tested:
Booted machine, and the Gibbly kicked in. With the call to MakeSystemHeapGrowable at the
start of BootCode.a, the Gibbly did not get executed, which is a bad thing.
----------------------------------------------------------•----------------------------------------------------------
4/2/92 9:47:33 PM
File: BootCode.a,26
Owner: Chris Derossi
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1018711
> Release notes for this change:
Script Extensions can legally only reside in the Extensions folder. They should not be executed from the System Folder in the normal case. However, in the case of a bootable floppy, we frequently dont have enough of an environment to have a full System Folder structure. So, when we fail to find the Extensions folder when looking for Script Extensions, well try the System Folder. But, if the Extensions folder is found, thats the only place we look for them.
> What was tested:
I walked through this code with Macsbug and fooled it into thinking there was not Extensions folder. The code correctly redirected to the System Folder. Since this bug comes from Bruges, and we dont have a Hebrew-localized Cube-E boot disk, I was unable to check the specific case in the bug. But, the worst thing that could happen is the bug isnt fixed, and we have to live with the Bruges situation where Install 1 disks are not allowed to get unblessed.
----------------------------------------------------------•----------------------------------------------------------
4/13/92 7:01:31 PM
File: BootCode.a,27
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1027105
> Release notes for this change:
Dont disable script extensions if the primary script is non-Roman, as a script extension is
required for such systems. Also, stripped out the skanky AppleTalk stuff that loaded a dummy
LAP routine since AppleTalk 57.0.4 does that.
> What was tested:
Added Hebrew as a secondary script and rebooted. The script extension is loaded if the shift key
is not held down, and not loaded if it is held down. Made Hebrew the primary script. The extension
loads whether or not the shift key is held down.
----------------------------------------------------------•----------------------------------------------------------
4/15/92 11:53:39 PM
File: StartSystem.a,73
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1027491
> Release notes for this change:
Clear ioVRefNum before calling HGetFileInfo to find a Gibbly which can boot. This field used to
be cleared by something that was moved into BootCode.a. If were lucky, this field will happen
to have 0, and Gibblies will work. If were not so lucky, this field will have garbage and Gibblies
wont kick in. If were totally out of luck, were running Cube-E on a new machine, and we wind
up with a sad Mac.
> What was tested:
DB-Lite is able to boot with this change. My sample Gibbly that fixes a stupid MacTCP bug on my
Zydeco works. (I wouldnt be able to finish the boot process without this fix.)
----------------------------------------------------------•----------------------------------------------------------
4/20/92 2:28:55 PM
File: Boot3.a,32
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1024149
> Release notes for this change:
DAL should not be disabled when AppleTalk is turned off, since it could be used through
the serial
port. Take out the code which prevents DAL from loading if AppleTalk is off.
> What was tested:
Turned AppleTalk off from the Chooser, and rebooted. After the machine has started up,
DAL was
still loaded, and taking up 20K for no good reason.
----------------------------------------------------------•----------------------------------------------------------
4/29/92 5:37:48 PM
File: Boot3.a,34
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1027105
> Release notes for this change:
Took out code that prevented script extensions from being disabled at boot time when
Roman was not the primary script.
The reasoning behind the code in the first place was that for other countries like Japan,
for example, the script extensions are not optional software, and should not be disabled
when the user holds down the shift key, since this would result in some strange stuff
going on on the screen. A change was made to the boot code to keep the script extensions
loading if Roman was not the primary script.
This was fine and dandy. The script extensions were always loading. The problem was
that the secondary inits, like Akiko and InputBackSupport were still being disabled.
This obviously presents a problem to people who are trying to use the system. This would
be further exacerbated in the future if third parties right input methods. There is no
elegant way to solve the general problem, and the solve the specific problem of Akiko and
IBS isnt the right thing, so I took out the original change. This puts us back to the
way the world was under 7.0, GomTalk, and Bruges.
> What was tested:
Made sure that script systems are disabled when the shift key is held down, when Japanese
was both a primary and secondary script.
----------------------------------------------------------•----------------------------------------------------------
5/28/92 6:22:39 PM
File: BootEqu.a,9
Owner: Dean Yu
Project: MainProj∫Internal∫Asm∫
File: Boot2.a,75
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
File: Boot3.a,35
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1030972
> Release notes for this change:
If the boot 2 resource in the System file cannot find a Gibbly that knows how to boot
the machine, it used to put up a system error alert saying that the disk is too old to be
used on this Macintosh. When some code was moved from boot 2 into boot 3, the code
that set up the DSAT error table was moved too. This prevents the error from being
displayed by the SysError call in boot 2, so it just sad Macs. The reason the error
table initialization was moved into boot 3 was so that the standard one could be
overridden by a Gibbly.
Changed boot 2 so that it sets a bit in low memory instead of calling SysError if it
cant find a Gibbly to boot with. It then calls the Systems boot 3 to display the
message. Changed boot 3 to look at this bit right after the DSAT error table is set
up. If it sees that the bit is set, it will display the appropriate error, otherwise,
the boot process continues.
> What was tested:
Edited the changed System files gbly resource so that it cant boot on a Mac IIci.
Without another Gibbly that can boot the ci, the error that says that the disk is too old
for this Macintosh is displayed. When a Gibbly that can boot the machine is placed in
the System folder, the Gibbly gets the boot process, and the machine can boot.
----------------------------------------------------------•----------------------------------------------------------
6/15/92 7:00:41 PM
File: Boot3.a,36
Owner: Chris Derossi
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1032429
> Release notes for this change:
Comm Toolbox tools can have INITs in them. System 7 checked for INITs in Connection
tools, File Transfer tools, and Terminal Emulation tools. Telephone tools were not
checked for INITs, but should be.
I changed the startup code to also check for INITs in Telephone tools. Telephone tools
have a type of vbnd.
> What was tested:
I changed the type of the Caps Lock extension to vbnd and verified that it loaded and
functioned on my PowerBook.
----------------------------------------------------------•----------------------------------------------------------
6/24/92 10:14:36 PM
File: GibblyMacros.a,5
Owner: Dean Yu
Project: MainProj∫Internal∫Asm∫
File: Boot2.a,76
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
File: Boot3.a,37
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1033818
> Release notes for this change:
A Gibbly file may get closed before override patches are installed to prevent it from
being closed if the system heap grows, forcing all files above the system resource map to
close down. This was exhibited on a DB-Lite, trying to boot of an external hard drive by
holding down command-option-shift-delete.
Now, boot 2 places the Gibblys resource map underneath the system resource map so that
calls to _RsrcZoneInit wont close it. The MakeGibblyResident macro has been updated to
look for the Gibbly at the bottom of the resource chain instead of the top. A call to
_UseResFile in boot 3 to force the system to be the current resource map before loading
linked patches was removed now that the System file is at the top of the resource chain
until MakeGibblyResident is called.
> What was tested:
Nick Vicaro moved the Gibbly below the system file in the resource chain in the DB-Lite
Gibbly to prove that this solution would prevent the Gibbly from being closed, and this
was found to be true. I did further testing on existing machines to ensure that the
changes made would not affect booting on a Gibbly-less machine, or a machine that the
system can boot, but has an external Gibbly anyway, and all these cases work
successfully.
----------------------------------------------------------•----------------------------------------------------------
6/27/92 4:03:30 PM
File: GibblyMacros.a,6
Owner: Dean Yu
Project: MainProj∫Internal∫Asm∫
File: Boot2.a,77
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
File: Boot3.a,38
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1033818
> Release notes for this change:
Leave the reference number of the Gibbly in CurMap so that Gibblies will know what their
reference number is.
> What was tested:
Machines that do and dont require Gibblies to boot continue to do so.
----------------------------------------------------------•----------------------------------------------------------
7/22/92 5:53:54 AM
File: Boot3.a,39
Owner: Chris Derossi
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1018711
> Release notes for this change:
For our Install 1 disks, we dont have enough room to build a real System Folder. So
instead, we put everything at the root of the disk and rely on the fact that the boot
code will default all file calls there. This is how the System and Finder are found even
if there isnt any blessed System Folder.
Unfortunately, the Folder Manager doesnt have the same built-in defaults, so anyone
relying on finding things with the Folder Manager will fail on one of these magic Install
disks. The code to search for and load Script Extensions used the Folder Manager. This
meant that WSI and WSII would not be loaded if there wasnt a System Folder.
I tried to fix this in December by having the code try the System Folder if it couldnt
find an Extensions Folder. Now, if it doesnt find a System Folder either, it goes ahead
and tries the default directory, which is the root.
> What was tested:
I put a Hebrew System, WorldScript™ I, and the Installer on a floppy. Before my change,
when I booted it, alerts would come up in Chicago instead of the Hebrew font. After my
change, alerts come up with Hebrew characters and are right-justified.
----------------------------------------------------------•----------------------------------------------------------
8/13/92 11:30:56 AM
File: Boot3.a,40
Owner: Dean Yu
Project: MainProj∫OS∫StartMgr∫
Radar bug: #1039434
> Release notes for this change:
QuickTime 1.0 had a bug where it wouldnt register any of its components if the
Component Manager was already installed. To fix this problem, Cube-E has some code in
the boot code that loads QuickTimes components for it. The difference is that QuickTime
only loads its components when the CPU is a 68020 or better, whereas Cube-E always
loaded the components. This causes a problem with QuickTime 1.5 and the Photo CD codec,
since it winds up getting called on a 68000, which is bad because its using 68020
instructions. Add a check in the boot code to make sure were not on a 68000 CPU before
loading QuickTime components.
> What was tested:
Verified that QuickTimes components are not loaded on a Mac Plus, but are loaded on a
IIci.
----------------------------------------------------------•----------------------------------------------------------
9/2/93 2:33:59 AM
File: StartBoot.a,52
Owner: Ian Hendry
Project: SuperMarioProj∫OS∫StartMgr∫
File: DisplayMgr.c,16
Owner: Ian Hendry
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
Radar bug: #1108969, 1106433
> Release notes for this change:
1108969: Made sure that notification was available at init time. This means changing
StartBoot.a to call initialize me in the ROM version and it means having no process
manager dependencies.
I also make sure I am using the system heap when I allocate apple events. I switched the
code to assume that registered notification procs are responsible for disposing their own
apple events.
1106433: I fixed my use of CopyPixMap so that I no longer count on QuickDraw to do the
right thing with nil color tables. I cleaned up the code a little around there so I am
not making bad assumptions about ports.
> What was tested:
1106433: Built and tested on PDM running NQD extension provided by Shannon to determine
that a) if I make the CopyPixMap call with a nil color table it works (although it
returns an error) and b) that I no longer use a nil color table and so I get no error at
all.
1108969: Built a small test tool extension that registers itself at init time and dumps
the apple events from display manager. The tool can also remove notification procs. I
checked that the procs are correctly installed, that notification happens, that removal
works. I checked that removing all the procs works, that removing some of the procs
works, that installing one proc works, that installing multiple procs works. Everything
seeems cool now.
----------------------------------------------------------•----------------------------------------------------------