AIncludes Release Notes
First created on: 3/30/92 8:25:13 PM

----------------------------------------------------------¥----------------------------------------------------------

3/30/92 8:25:21 PM

File: ScriptEqu.a,47
Owner: Peter Edberg     
Project: MainProjºInterfacesºAIncludesº

File: SysTypes.r,25
Owner: Peter Edberg     
Project: MainProjºInterfacesºRIncludesº

File: International.r,19
Owner: Peter Edberg     
Project: MainProjºToolboxºScriptMgrº

Radar bug: #1022875

> Release notes for this change:

(note that some files that are part of this change - Script.h, Script.p, ScriptMgrKeyGetSet.a - are being changed by other people, so this change will appear in several places in the release notes)

The KSWP resource specifies key combinations that result in a call to KeyScript with particular verbs. If the KeyScript call with a particular verb does something useful, then the corresponding key combination is stripped from the event queue. The Cmd-rightArrow key combination is supposed to set the keyboard to Roman; this is not really useful on a Roman-only system. However, the KeyScript verb used with this key combination was smRoman; unfortunately, this verb is also used to update to the current Roman keyboard, and so it cannot be ignored by KeyScript even on a Roman-only system.Thus, Cmd-rightArrow was being stripped on a Roman-only system even when it did nothing useful. This prevented the use of this key combination for its Finder function.

To solve this problem, I added another KeyScript verb, smKeyRoman. This verb also sets the keyboard to Roman, but it is ignored on a Roman-only system. Then I updated the KSWP resource to use this value instead of smRoman with the Cmd-rightArrow key combination.

Changes:
1. Added smKeyRoman to interface files: ScriptEqu.a, Script.h, Script.p.
2. Updated KSWP template in SysTypes.r to include RomanIfOthers action for KSWP (corresponds to smKeyRoman).
3. Modified KeyScript (file ScriptMgrKeyGetSet.a) to support this new verb.
4. Updated the KSWP data for the U.S. system (file International.r)


> What was tested:

Since the KeyScript change is being done by someone else, all I was able to do was build the System file with the other changes and use ResEdit to verify that the KSWP data was updated as described. Note that KeyScript will handle unimplemented verbs by doing nothing, so nothing bad will happen even if the KeyScript change does not get in.

----------------------------------------------------------¥----------------------------------------------------------
4/3/92 3:09:04 PM

File: ScriptEqu.a,48
Owner: Peter Edberg     
Project: MainProjºInterfacesºAIncludesº

Radar bug: #1026378

> Release notes for this change:

Add CharType constants smCharContextualLR and smCharNonContextualLR. This is just assigning symbolic constants to the values that are already returned by CharType for Thai (smCharContextualLR), Cyrillic (smCharNonContextualLR), and other contextual and non-contextual left-right non-Roman characters.

Changes to ScriptEqu.a, Script.[hp] (the latter were made by Don Louv).

> What was tested:

Full system build.

----------------------------------------------------------¥----------------------------------------------------------
4/8/92 12:01:09 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:35 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:17 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:02 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/18/92 3:53:37 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/27/92 6:42:59 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:35 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:20:58 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/23/92 1:44:39 PM

File: ScriptEqu.a,52
Owner: Susan M. Bartalo     
Project: MainProjºInterfacesºAIncludesº

File: International.r,26
Owner: Susan M. Bartalo     
Project: MainProjºToolboxºScriptMgrº

File: TextEdit.a,45
Owner: Susan M. Bartalo     
Project: MainProjºToolboxºTextEditº

File: TextEditPatchIIciROM.a,46
Owner: Susan M. Bartalo     
Project: MainProjºToolboxºTextEditº

Radar bug: #1029263

> Release notes for this change:

<csd> Now determining whether to synchronize the font and keyboard for unstyled text by
checking the scriptÕs ÔitlbÕ flags word. A new bit has been defined ÔsmsfSynchUnstyledTEÕ; the 
default is 0 which means do not synchronize and 1 (obviously) means synchronize.  This allows
each script system to determine when they want to synchronize their keyboard and font, and it 
removes the special casing script knowledge from TextEdit.

The script systems that currently want to synchronize include:
Roman, Cyrillic, Arabic, Hebrew

The script systems that currently do NOT want to synchronize include:
Eastern European (Hungarian, Czechoslovakia, Poland), Thai, Japanese, Korean, Chinese, Korean


> What was tested:

Using TeachText and MacDraw 1.9.5, I tested if the keyboard synchronized to the font.  I modified 
the Roman and Hebrew ÔitlbÕ to be set correctly (for synchronization) and then I tested on a system 
that included Roman, Hebrew, Thai and Japanese.  I made each of these the system script using 
ScriptSwitcher and the expected synchronization behavior was exhibited.


----------------------------------------------------------¥----------------------------------------------------------
7/15/92 8:16:45 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.
----------------------------------------------------------¥----------------------------------------------------------
10/16/92 10:44:37 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:39:52 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:11 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.
----------------------------------------------------------¥----------------------------------------------------------
4/8/93 7:45:38 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:06:51 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/25/93 9:41:50 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.
----------------------------------------------------------¥----------------------------------------------------------
8/4/93 4:06:15 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:21 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.
----------------------------------------------------------¥----------------------------------------------------------
11/5/93 10:00:41 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.
----------------------------------------------------------¥----------------------------------------------------------
