CIncludes Release Notes
First created on: 3/20/92 4:35:00 PM

----------------------------------------------------------•----------------------------------------------------------

3/20/92 4:35:09 PM

File: Language.h,4
Owner: Don Louv     
Project: MainProj∫Interfaces∫CIncludes∫

File: Packages.h,21
Owner: Don Louv     
Project: MainProj∫Interfaces∫CIncludes∫

File: Script.h,52
Owner: Don Louv     
Project: MainProj∫Interfaces∫CIncludes∫

File: Language.p,4
Owner: Don Louv     
Project: MainProj∫Interfaces∫PInterfaces∫

File: Packages.p,20
Owner: Don Louv     
Project: MainProj∫Interfaces∫PInterfaces∫

File: Script.p,50
Owner: Don Louv     
Project: MainProj∫Interfaces∫PInterfaces∫

File: MenuMgrPatches.c,9
Owner: Don Louv     
Project: MainProj∫ProcessMgr∫

File: MenuMgr.c,8
Owner: Don Louv     
Project: MainProj∫Toolbox∫MenuMgr∫

Radar bug: #1025005

> Release notes for this change:

Moving declarations in include files for the New Inside Mac.  And updated 2 files to follow the declarations they need.

> What was tested:

Built CUBE-E.

----------------------------------------------------------•----------------------------------------------------------
4/8/92 12:01:40 PM

File: ScriptEqu.a,50
Owner: Peter Edberg     
Project: MainProj∫Interfaces∫AIncludes∫

File: Script.h,60
Owner: Peter Edberg     
Project: MainProj∫Interfaces∫CIncludes∫

File: Script.p,58
Owner: Peter Edberg     
Project: MainProj∫Interfaces∫PInterfaces∫

File: ScriptPriv.a,63
Owner: Peter Edberg     
Project: MainProj∫Internal∫Asm∫

File: ScriptPriv.h,23
Owner: Peter Edberg     
Project: MainProj∫Internal∫C∫

Radar bug: #1026516

> Release notes for this change:

Many of the script manager routines that depend on a grafport (to get a font => script code that determines their operation) have an alternate form in which a script code can be passed as a parameter; this is useful when a grafport may not be available. Until now, interfaces for these alternate forms are all private (although they are already being tested for Cube-E). They are now being made public, as various people need them, including N&C and El Kabong applications. The implementation of these routines is the same standard forms; the code that handles the script code parameter is in the Script Manager dispatcher, and it strips this parameter, so by the time we reach the routines themselves, the stack setup is the same as the normal way of calling these routines.

These interfaces are: SCCharByte, SCCharType, SCFindWord, SCTransliterate, SCParseTable, SCLowerText, SCUpperText, SCStripText, SCStripUpperText.


> What was tested:

Full System file build (-e): there is no change in functionality, just moving interfaces. Pasted resulting Script Mgr patches into Cube-E 36++ and ran the system.

----------------------------------------------------------•----------------------------------------------------------
4/9/92 6:07:45 PM

File: GestaltEqu.a,52
Owner: Jeff Miller     
Project: MainProj∫Interfaces∫AIncludes∫

File: GestaltEqu.h,53
Owner: Jeff Miller     
Project: MainProj∫Interfaces∫CIncludes∫

File: GestaltEqu.p,47
Owner: Jeff Miller     
Project: MainProj∫Interfaces∫PInterfaces∫

File: Sys.r,304
Owner: Jeff Miller     
Project: MainProj∫Make∫

File: GestaltFunction.a,42
Owner: Jeff Miller     
Project: MainProj∫OS∫Gestalt∫

File: GestaltPatches.a,31
Owner: Jeff Miller     
Project: MainProj∫OS∫Gestalt∫

File: PatchIIciROM.a,150
Owner: Jeff Miller     
Project: MainProj∫Patches∫

File: ShutDownMgr.a,50
Owner: Jeff Miller     
Project: MainProj∫Toolbox∫ShutDownMgr∫

File: SoundMgrPatch.a,25
Owner: Jeff Miller     
Project: MainProj∫Toolbox∫SoundMgr∫

Radar bug: #1026795

> Release notes for this change:

As we do for the PowerBook 100, we need to change boxFlag on Macintosh LC II machines
from its original value of boxMacLC to boxMacLCII in PatchIIciROM.a.  We also need
to add a new value that can be returned for gestaltMachineType, gestaltMacLCII.  This has
implications
in several areas of the System.  We need to add a new entry in the machine icon table
for Gestalt (the same icon as the LC) and a new string in the machine name STR# in the
System (”Macintosh LC II”), both of which show up in the Finder.  We need to make sure
that Gestalt returns the same value for gestaltHasSoftPowerOff and gestaltSerialAttr
as the Mac LC.  In the ShutDown Manager, we need to set the CLUT to 50% gray on a restart
as we do for an LC.  In the Sound Manager, we need to expand the sound primitive vector
table
to include the LC II.


> What was tested:

On an LC II, verified that boxFlag was set correctly, verified that the right icon and
machine string appear in About This Macintosh…, verified that the CLUT was set to 50%
gray on restart, verified that sound input worked.  Didn’t check the returned values for
gestaltHasSoftPowerOff and gestaltSerialAttr, though.
----------------------------------------------------------•----------------------------------------------------------
4/21/92 4:40:26 PM

File: Traps.a,75
Owner: Dean Yu     
Project: MainProj∫Interfaces∫AIncludes∫

File: Resources.h,12
Owner: Dean Yu     
Project: MainProj∫Interfaces∫CIncludes∫

File: Resources.p,8
Owner: Dean Yu     
Project: MainProj∫Interfaces∫PInterfaces∫

File: ResourceMgrExtensions.a,45
Owner: Dean Yu     
Project: MainProj∫Toolbox∫ResourceMgr∫

Radar bug: #1018901

> Release notes for this change:

With the Fonts folder, a font family can be split across several files.  This is a new
behaviour, and
programs that assume that a ‘FOND’ will contain information about all the fonts belonging
to that
font family will be in for a surprise.  Provide a new call, GetNextFOND, which will take
a handle to
a ‘FOND’ resource as a parameter, and it will return the next ‘FOND’ resource in the
resource chain
belonging to the same family.  The LaserWriter driver is currently the only client of
this call.

> What was tested:

The bug states that MacWrite II’s ReadMe file does not print correctly under Cube-E.
This was due
to the fact that the LaserWriter driver was looking for a style mapping table in the
first Gevena
‘FOND’ it found.  This is the one in the system file, which does not have a style mapping
table.
Because it does not find a style mapping table, it tries to download a bitmapped font.
Instead, the
LaserWriter driver should look for another Geneva ‘FOND’.
The LaserWriter driver has been changed to call the new routine GetNextFOND to look for
another
‘FOND’ for the same family if the ‘FOND’ it has does not have a style mapping table.
With this fix,
MacWrite II can print it’s ReadMe document without any problems, whereas it would print
in
Courier without the fix.
GetNextFOND also has code which checks to see if the ‘FOND’ is in an override map.  If it
is,
GetNextFOND will search for the map after the first non-override map after the override
map, so
that the same ‘FOND’ resource will not be returned all the time.  To test this, I placed
a copy of
the Geneve ‘FOND’, and the ‘NFNT’s in the System into a Gibbly and tried to print the
ReadMe file.
This also printed correctly.

----------------------------------------------------------•----------------------------------------------------------
5/1/92 11:05:10 AM

File: TextServices.a,24
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫AIncludes∫

File: TextServices.h,40
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫CIncludes∫

File: TSMPrivate.a,20
Owner: Kenny S. Tung     
Project: MainProj∫Internal∫Asm∫

File: TSMPrivate.h,29
Owner: Kenny S. Tung     
Project: MainProj∫Internal∫C∫

Radar bug: #1028301

> Release notes for this change:

Since we changed SWM to a driver now, SetTSMDialogState, RestoreTSMDialogState, TSMChangeCursor, and TSMRestoreCursor calls are no longer needed and should be removed from the source code.

> What was tested:

This is a design change.

----------------------------------------------------------•----------------------------------------------------------
5/11/92 8:28:45 PM

File: Windows.h,15
Owner: John Harvey     
Project: MainProj∫Interfaces∫CIncludes∫

File: EventMgrPatches.c,26
Owner: John Harvey     
Project: MainProj∫ProcessMgr∫

File: Schedule.c,20
Owner: John Harvey     
Project: MainProj∫ProcessMgr∫

Radar bug: #1029361

> Release notes for this change:

Needed to identify floating windows via the windowkind rather than the refcon.  So
started off by adding two new kinds of  windowkinds -- applicationFloatKind(6) and
systemFloatKind(7) -- in windows.h.  Then changed the routine imLayerMouseDown in the
Process Manager file Schedule.c to check the windowkind of the floating layer.  If it is
systemFloatKind and the boolean RouteEvent (plus a couple of other extra safe conditions)
is true the mousedown is sent to the swmDriver.  Otherwise, the event is sent to the
front process.  That way processes can open up the new style floating windows without
being inline aware or having to rely on the swmdriver being around.

> What was tested:

Built the system ran it with Non-TSM aware application (KeyCaps) and tested with Kadokawa
the TSM aware application from Japan.  Worked fine.
----------------------------------------------------------•----------------------------------------------------------
5/18/92 3:54:16 PM

File: TextServices.a,25
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫AIncludes∫

File: TextServices.h,43
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫CIncludes∫

File: TSMFunctions.c,38
Owner: Kenny S. Tung     
Project: MainProj∫Toolbox∫TextServicesMgr∫

Radar bug: #1029814

> Release notes for this change:

NewTSMDocument didn’t check if supported type is the right type. Now it will check the
number of interface type and check if the type is ‘tsvc’, if not it will return
‘tsmUnsupportedTypeErr’. Also added ‘tsmUnsupportedTypeErr’ in TextServicesMgr.[ah].

> What was tested:

Tested with TSMTest tool TCS #4 and #6.
----------------------------------------------------------•----------------------------------------------------------
5/20/92 10:41:59 AM

File: TextServices.h,44
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫CIncludes∫

Radar bug: #1029362

> Release notes for this change:

Added an optional keyword for Offset2Pos AE.

> What was tested:

Design change.
----------------------------------------------------------•----------------------------------------------------------
5/27/92 6:43:09 PM

File: DictionaryEqu.a,1
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫AIncludes∫

File: SysErr.a,36
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫AIncludes∫

File: Traps.a,77
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫AIncludes∫

File: Dictionary.h,1
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫CIncludes∫

File: Errors.h,19
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫CIncludes∫

File: Dictionary.p,1
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫PInterfaces∫

File: Errors.p,21
Owner: hae-sung Kim     
Project: MainProj∫Interfaces∫PInterfaces∫

Radar bug: #1030902

> Release notes for this change:

Make new interface files for Dictionary manager.  Add Dictionary manager error numbers.

> What was tested:

Compiled each interface file.

----------------------------------------------------------•----------------------------------------------------------
5/27/92 10:41:46 PM

File: GestaltEqu.a,54
Owner: Kip Olson     
Project: MainProj∫Interfaces∫AIncludes∫

File: GestaltEqu.h,55
Owner: Kip Olson     
Project: MainProj∫Interfaces∫CIncludes∫

File: GestaltEqu.p,49
Owner: Kip Olson     
Project: MainProj∫Interfaces∫PInterfaces∫

File: UniversalEqu.a,25
Owner: Kip Olson     
Project: MainProj∫Internal∫Asm∫

File: SinHighLevel.c,35
Owner: Kip Olson     
Project: MainProj∫Toolbox∫SoundMgr∫

File: SoundMgrLowLevel.a,31
Owner: Kip Olson     
Project: MainProj∫Toolbox∫SoundMgr∫

File: SoundMgrPriv.c,64
Owner: Kip Olson     
Project: MainProj∫Toolbox∫SoundMgr∫

Radar bug: #1030293

> Release notes for this change:

Some CPU’s cannot play and record at the same time (like the Mac LC, LC II and Vail). A
bit was added to Gestalt called “gestaltPlayAndRecord” which tells you if a machine can
play and record simultaneously. If the bit is not set, the SndRecord() dialog knows that
it should turn off recording before playing the sound just recorded. Also,
SndNewChannel() knows not to allow a channel to be opened while recording on an LC.

> What was tested:

Tested on a Mac LC, IIsi
----------------------------------------------------------•----------------------------------------------------------
6/2/92 9:21:08 PM

File: GestaltEqu.a,55
Owner: Jeff Miller     
Project: MainProj∫Interfaces∫AIncludes∫

File: GestaltEqu.h,56
Owner: Jeff Miller     
Project: MainProj∫Interfaces∫CIncludes∫

File: GestaltEqu.p,50
Owner: Jeff Miller     
Project: MainProj∫Interfaces∫PInterfaces∫

File: InternalOnlyEqu.a,22
Owner: Jeff Miller     
Project: MainProj∫Internal∫Asm∫

File: Sys.r,317
Owner: Jeff Miller     
Project: MainProj∫Make∫

File: GestaltPatches.a,33
Owner: Jeff Miller     
Project: MainProj∫OS∫Gestalt∫

File: PatchIIciROM.a,153
Owner: Jeff Miller     
Project: MainProj∫Patches∫

File: ShutDownMgr.a,51
Owner: Jeff Miller     
Project: MainProj∫Toolbox∫ShutDownMgr∫

File: SoundMgrLowLevel.a,32
Owner: Jeff Miller     
Project: MainProj∫Toolbox∫SoundMgr∫

File: SoundMgrPatch.a,27
Owner: Jeff Miller     
Project: MainProj∫Toolbox∫SoundMgr∫

Radar bug: #1031451

> Release notes for this change:

As we do for the PowerBook 140, we need to change boxFlag on PowerBook 145 machines from
its original value of boxPowerBook170 to boxPowerBook145 in PatchIIciROM.a.  We also need
to add a new value that can be returned for gestaltMachineType, gestaltPowerBook145.
This has implications in several areas of the System.  We need to add a new entry in the
machine icon table for Gestalt (the same icon as the PowerBook 140) and a new string in
the machine name STR# in the System (”PowerBook 140.” for now, until we announce the
machine (the period at the end will let you tell the difference in the meantime)), both
of which show up in the Finder.  In the ShutDown Manager, we need to close the video
driver at shutdown or restart as we do for the 140 and 170. In the Sound Manager, we need
to expand the sound primitive vector table to include the 145, and fool the Gestalt
attribute table into thinking a 145 is really a 140.

> What was tested:

On a PowerBook 145, verified that boxFlag was set correctly, verified that the right icon
and machine string appear in About This Macintosh…, verified that playing a sound and
sound input worked.
----------------------------------------------------------•----------------------------------------------------------
6/17/92 1:24:03 PM

File: TextServices.h,45
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫CIncludes∫

File: TSMFunctions.c,45
Owner: Kenny S. Tung     
Project: MainProj∫Toolbox∫TextServicesMgr∫

Radar bug: #1032783

> Release notes for this change:

TSMDocument refcon can not be retrieved correctly.
This is because TSM is storing TSMDocument refcon in keyDirectObject parameter instead of
keyAETSMDocumen

> What was tested:

Changed to use keyAETSMDocumen in my code.
----------------------------------------------------------•----------------------------------------------------------
6/22/92 9:22:25 AM

File: TextServices.h,46
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫CIncludes∫

File: TSMInternalUtils.c,34
Owner: Kenny S. Tung     
Project: MainProj∫Toolbox∫TextServicesMgr∫

File: TSMUtility.c,49
Owner: Kenny S. Tung     
Project: MainProj∫Toolbox∫TextServicesMgr∫

Radar bug: #1030843

> Release notes for this change:

When the current active document is nil and we switch from old input method to TSM-styled
input method, need to reset the useOldJIM flag to flase. Added one new Apple Event
‘ShowHideInputWindow’ in TextServices.h header file.

> What was tested:

Tested with Kadokawa, switch from old to new input method works now.
----------------------------------------------------------•----------------------------------------------------------
7/15/92 8:17:16 PM

File: ToolUtils.a,25     
Owner: Susan M. Bartalo     
Project: MainProj∫Interfaces∫AIncludes∫

File: TextEdit.h,22     
Owner: Susan M. Bartalo     
Project: MainProj∫Interfaces∫CIncludes∫

File: TextEdit.p,19     
Owner: Susan M. Bartalo     
Project: MainProj∫Interfaces∫PInterfaces∫

File: TextEditPriv.a,16     
Owner: Susan M. Bartalo     
Project: MainProj∫Internal∫Asm∫

File: TextEdit.a,49     
Owner: Susan M. Bartalo     
Project: MainProj∫Toolbox∫TextEdit∫

File: TextEditPatchIIciROM.a,50     
Owner: Susan M. Bartalo     
Project: MainProj∫Toolbox∫TextEdit∫

Radar bug: ##

> Release notes for this change:

Move DoText selectors from the private interface file TextEditPriv.a to the public
interface files so the whole darn world can use the selectors instead of hard-coded
constants! Renamed teMark to teHighlight and teLoc to teCaret.

> What was tested:

No testing necessary since just changed the names.
----------------------------------------------------------•----------------------------------------------------------
7/30/92 6:59:09 PM

File: TextServices.h,49
Owner: Kenny S. Tung     
Project: MainProj∫Interfaces∫CIncludes∫

Radar bug: #1037621

> Release notes for this change:

<JH> Added keyAEPinRange, and typeTextRange constants.


> What was tested:

Does affect any functionality.

----------------------------------------------------------•----------------------------------------------------------
10/16/92 10:44:49 AM

File: Traps.a,78     
Owner: Dean Yu     
Project: MainProj∫Interfaces∫AIncludes∫

File: Memory.h,21     
Owner: Dean Yu     
Project: MainProj∫Interfaces∫CIncludes∫

File: Traps.h,16     
Owner: Dean Yu     
Project: MainProj∫Interfaces∫CIncludes∫

File: Memory.p,10     
Owner: Dean Yu     
Project: MainProj∫Interfaces∫PInterfaces∫

File: Traps.p,15     
Owner: Dean Yu     
Project: MainProj∫Interfaces∫PInterfaces∫

File: OSTraps.a,16     
Owner: Dean Yu     
Project: MainProj∫Libs∫InterfaceSrcs∫

Radar bug: 

> Release notes for this change:

Added interface for BlockMoveData.

> What was tested:

Made sure all builds still do.
----------------------------------------------------------•----------------------------------------------------------
3/25/93 8:40:00 PM

File: Displays.a,1     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,1     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.a,1     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: DisplaysPriv.h,1     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: ProcessesPriv.h,1     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

Radar bug: 

> Release notes for this change:

First checkin of Display Manager Sources

> What was tested:

Nobody depends on them yet.  They do not affect the supermario build.  One thing to watch
for is ProcessesPriv.h is the new name for MFPrivate.h on Reality and sometime,
MFPrivate.h should be purged from SuperMario.
----------------------------------------------------------•----------------------------------------------------------
3/30/93 10:41:23 AM

File: Traps.a,12     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Traps.h,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: Traps.p,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫PInterfaces∫

Radar bug: 

> Release notes for this change:

Add Display Manager trap to various header files.

> What was tested:

Build ROM and run with it.  Built RISC but don’t have a Flash card for PDM to test it.
----------------------------------------------------------•----------------------------------------------------------
3/31/93 3:27:48 PM

File: ROMFastTraps.h,3     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

Radar bug: 

> Release notes for this change:

ROMFastTraps.h was decided whether to enable fast traps be determining if the
ROMFastTraps flag used defined or undefined.  The build system sets the ROMFastTraps flag
to true or false.  This means even when ROMFastTraps is false it was still defined and
hence ROMFastTraps were always turned on.

> What was tested:

Built with RomFastTraps true and false and fast ROM traps were generated correctly
according to the RomFastTraps flag.
----------------------------------------------------------•----------------------------------------------------------
4/8/93 7:45:50 PM

File: Displays.a,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: Video.h,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.h,3     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

Radar bug: 

> Release notes for this change:

Added support for mode switching to display manager and new switchMode control call to
video.h.  See release notes for Display Manager.

> What was tested:

Built and tested on PDM.
----------------------------------------------------------•----------------------------------------------------------
5/28/93 4:07:01 PM

File: Displays.a,3     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,3     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.a,3     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: DisplaysPriv.h,4     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.a,4     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgr.c,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrUtils.c,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: #1081805,1086363

> Release notes for this change:

Pre-alpha freeze check-in.  This code fixes the 1081805,1086363 and a number of
unreported bugs that I found while preparing for alpha.  I fixed some patches that run on
68K machines.  Several selectors have moved to the private range and so I reordered the
public ones.  In order to not confuse older version of finder and monitors, the gestalt
selector for display manager has changed from ‘udsk’ to ‘dply’.  That way new code
doesn’t see old code and old code doesn’t see new.  There was a persistent multiple
monitor bug that would (if you worked at it) crash your system.  It depended on moving
displays and then waving the cursor as the display manager rearranged the displays.  I
think I have this fixed, but I will keep an eye on it.

I also changed the interfaces a little to simplify walking ALL display (including
inactive ones).

> What was tested:

I have been building and testing with this code for some time.  I spend yesterday and
today really hammering on it on both 68K and PDM machines.  It seems to be holding up
well, but I will be continuing my testing and bug fixes.
----------------------------------------------------------•----------------------------------------------------------
6/22/93 2:54:17 AM

File: SonoraDeclVideo.r,11     
Owner: Ian Hendry     
Project: SuperMarioProj∫DeclData∫DeclVideo∫Sonora∫

File: SonoraDriver.a,14     
Owner: Ian Hendry     
Project: SuperMarioProj∫DeclData∫DeclVideo∫Sonora∫

File: Video.h,4     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.h,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.a,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgr.c,8     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrUtils.c,4     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: 

> Release notes for this change:

Checkin for PDM A2 engineering build on 6/22/93.  ROM timing tables now working.  I will
still need to finalize the contents of the tables with the results of a 6/23 meeting.
Display modes can be flagged as “doesn’t need confirmation”.  Monitors does not ask the
user to verify mode switches to those “safe” modes.

Driver can also return information about the connection including that ALL modes are
safe.  This is for devices that KNOW that all the modes are safe.  Saves changing decl
ROMs to include a table of timings.  I expect the portables to use this feature for
640x400 mode switches.

Also (hopefully) fixed pesky, occasional cursor-crash on mode switches.  Fix not required
for alpha.  Down side to this fix is that the cursor is reset (0, 0) on mode switches.  I
will need to figure out exactly what is going on here.

> What was tested:

Built ROM and tested on PDM.  Mode switches to 13” & 16” modes don’t require
confirmation.  Switches to VGA and 12” modes do.  Tested that “all modes safe” flag
works.  Tried and failed to reproduce cursor crash.  I now know that the mouse position
is outside of the pinrect at the time the cursor is drawn.
----------------------------------------------------------•----------------------------------------------------------
6/25/93 9:42:01 AM

File: SonoraDriver.a,15     
Owner: Ian Hendry     
Project: SuperMarioProj∫DeclData∫DeclVideo∫Sonora∫

File: Displays.a,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.a,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: DisplaysPriv.h,7     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.c,9     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: 

> Release notes for this change:

Changed DMAddDisplay to add device to devicelist and DMRemoveDisplay to remove device
from devicelist.  Added some new calls to support DMAddDisplay, DMRemoveDisplay and smart
monitors (see header and forthcoming ERS).

Changed the display manager to clear get connection and get timing calls (rather than the
driver).  This was Mike Puckett’s suggestion.  It makes it so if you add fields, old
drivers don’t set only some of the fields.

> What was tested:

Build and tested ROM on PDM.  Mode switching still worked.  I to work with Max to be sure
that DMAddDisplay and DMRemoveDisplay work.
----------------------------------------------------------•----------------------------------------------------------
7/2/93 4:50:09 PM

File: GestaltEqu.h,15     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DepVideoEqu.a,47     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: PPCInit.c,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫OS∫PPC∫

File: InitItt.c,19     
Owner: Ian Hendry     
Project: SuperMarioProj∫OS∫SCSIMgr4pt3∫

File: ThingManager.c,14     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫ComponentMgr∫

File: ThingManagerDisp.a,4     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫ComponentMgr∫

File: ThingManagerDispatcher.a,3     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫ComponentMgr∫

File: DisplayMgr.c,11     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: 

> Release notes for this change:

Reality update:  Fix gestalt calls to use new prototype (not code change just type
declarations).  Partially updated gestalt header file (except I did not move the error
declarations that should probably be in Errors.h and I did not change the formatting
differences).

> What was tested:

Build and tested.  Found one technically incorrect declaration (but implemented correctly
in assmbler.  Other than that everything seems to work fine.
----------------------------------------------------------•----------------------------------------------------------
8/4/93 4:06:28 PM

File: Displays.a,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: GestaltEqu.a,19     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: GestaltEqu.h,18     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: GestaltEqu.p,10     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫PInterfaces∫

File: DisplaysPriv.a,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: DisplaysPriv.h,8     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.a,7     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgr.c,12     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgr.make,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrUtils.c,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: #1101633,1098397,1101795,1101636,1102280

> Release notes for this change:

Fixed a number of compatibility bugs (1101633,1098397,1101795,1101636,1102280).

I investigated a number of strategies for compatibility when the main display
changed to a different monitor.  The problem was that there were alway incompatibilities
with some applications and/or performance penalties.

New Implementation:
Exchange the contents the old main device and the new main device so that cached handles
still behave correctly.  There is no performance penalty and (so far) no application
incompatibilities beyond those introduced by the change in size.  I dicussed all these
solutions with Kon Othmer and we both feel this is the base strategy.  The only problem
is that this implementation breaks the connection between a phsyical monitor and its
gDevice.

Rejected implementations:
  (1) changing the lo-mem MainDevice field (apps cache this value),
  (2) introducing a dummy device in the device list that MainDevice points to and
shadowing and disabling the real main device such that caching MainDevice handle works
(some apps had problems and performance suffered because QD always take the multidevice
case, and boot code assumes that all devices in the device list are active screen devices
and therefore ‘scrn’ resources are invalid if it finds an extra device),
  (3) introducing a dummy device BEFORE the device list and pointed MainDevice at it.
Fixed the boot problems and the performance hit, but broke applications that assume
MainDevice is in device list (including MicroSoft Excel).

Added compatibility model.  Conditionally compiled fixes in a separate file with some
guildlines for making sure these fixes can be turned off.  The CloseView compatilbility
fix is the only one in use.

WARNING:
WARNING:  As of this check in, you must use either Pre-Display Manager Monitors CP or
WARNING:  Psychic TV A4 Monitors CP.  The API changed slightly to clean up the interface
WARNING:  and intermediate versions will crash.
WARNING:


> What was tested:

Built and tested extension with Reality sources.  Margarita regressed most of the
existing bugs and things seemed to work.  I updated SuperMario from reality and built and
tested resolution flipping and new version of monitors on PDM.  Everything seems fine.

----------------------------------------------------------•----------------------------------------------------------
8/16/93 9:17:32 PM

File: Displays.a,7     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,7     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.a,7     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: DisplaysPriv.h,10     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.a,9     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgr.c,13     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrCompatibility.c,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrUtils.c,7     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: #1099391

> Release notes for this change:

Synced to latest Reality changes.  Fixed Apple event notification bugs where applications
were getting events they did not know how to handle and were putting up error messages.
Fixed apple event notification to return pre/post information on display states.  Fixed
notification to procptrs for extensions.  Removed some preliminary data structures that
are not used in DM 1.0.  Support QuickDraw GX.

> What was tested:

Built and ran. Checked mode switches.
----------------------------------------------------------•----------------------------------------------------------
8/26/93 9:38:28 PM

File: Displays.h,8     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: Processes.h,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.h,11     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.c,15     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrUtils.c,8     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

Radar bug: #1108969

> Release notes for this change:

Checked in first try at making Display Manager registration calls usable before the
process manager loads.

Rearranged some defines to where they belong.  Move apple event declarations to
Displays.h and move display manager size bit to Processes.h.

Laid ground work for Res-Ind QD in AppleEvent.

> What was tested:

Built and verified ROM still worked on PDM and mode switching was working.
----------------------------------------------------------•----------------------------------------------------------
11/5/93 10:00:53 AM

File: Displays.a,9     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫AIncludes∫

File: Displays.h,10     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: Quickdraw.h,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: SysEqu.h,5     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: Video.h,6     
Owner: Ian Hendry     
Project: SuperMarioProj∫Interfaces∫CIncludes∫

File: DisplaysPriv.a,11     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫Asm∫

File: DisplaysPriv.h,14     
Owner: Ian Hendry     
Project: SuperMarioProj∫Internal∫C∫

File: DisplayMgr.a,12     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgr.c,20     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrOverlap.c,2     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: DisplayMgrUtils.c,11     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫

File: MenuMgr.a,20     
Owner: Ian Hendry     
Project: SuperMarioProj∫Toolbox∫MenuMgr∫

Radar bug: 

> Release notes for this change:

Rolled in Excelsior changes for PDM ROM.

> What was tested:

Built and booted a RISC ROM on coldfusion.
----------------------------------------------------------•----------------------------------------------------------
