mirror of
https://github.com/elliotnunn/supermario.git
synced 2024-11-28 13:52:37 +00:00
1281 lines
41 KiB
Plaintext
1281 lines
41 KiB
Plaintext
|
#
|
|||
|
# File: DisplayMgr Release Notes
|
|||
|
#
|
|||
|
# Contains: xxx put contents here xxx
|
|||
|
#
|
|||
|
# Written by: xxx put writers here xxx
|
|||
|
#
|
|||
|
# Copyright: © 1993 by Apple Computer, Inc., all rights reserved.
|
|||
|
#
|
|||
|
# Change History (most recent first):
|
|||
|
#
|
|||
|
# <1> 3/25/93 IH first checked in
|
|||
|
#
|
|||
|
#
|
|||
|
|
|||
|
DisplayMgr Release Notes
|
|||
|
First created on: 2/23/93 9:54:35 AM
|
|||
|
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
|
|||
|
2/23/93 9:54:41 AM
|
|||
|
|
|||
|
File: Displays.a,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Traps.a,83
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Displays.h,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: Traps.h,19
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: SysPrivateEqu.a,72
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: ExpandMemPriv.h,55
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: BBSStartup,152
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Make∫
|
|||
|
|
|||
|
File: Build,283
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Make∫
|
|||
|
|
|||
|
File: SysObj.Make,503
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Make∫
|
|||
|
|
|||
|
File: DisplayComponents.h,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.a,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
First Check in of Display Manager Files. The code is linked in and loaded via linked
|
|||
|
patch, but it is not called yet.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built system, made sure it booted. Played with system for a while.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
2/25/93 11:41:30 PM
|
|||
|
|
|||
|
File: Displays.a,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Displays.h,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: SysPrivateEqu.a,74
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: ExpandMemPriv.h,58
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: DisplayMgr.a,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Changed to reintegrate with ThinkC project. Cleaned up headers (removed unused data
|
|||
|
structures) and made code compatable with INIT version.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built and played with a system with and without init version running.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/1/93 7:18:59 PM
|
|||
|
|
|||
|
File: BuildDisplayMgrInit,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrExtension.r,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: StartDisplayMgr.a,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Checked in files to build the display manager as a stand along linked patch init. The
|
|||
|
basic build instructions are as follows:
|
|||
|
|
|||
|
# build the code for the system extension
|
|||
|
Build System -p -woInterface -init DisplayMgrINIT “DisplayMgr.o” ∑∑ “{Worksheet}”
|
|||
|
# add other resources to the extension
|
|||
|
“{DisplayMgr}BuildDisplayMgrInit” ∑∑ “{Worksheet}”
|
|||
|
|
|||
|
The linked patch extension is “{sources}BuildResults:System:Display Manager”
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Build and tested. Linked patch installed correctly and is called. System builds and
|
|||
|
runs.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/5/93 4:04:04 PM
|
|||
|
|
|||
|
File: Displays.a,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Displays.h,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: DisplaysPriv.a,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: BuildDisplayMgrInit,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.a,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrExtension.r,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Rolled in 2 QuickDraw patches and made more compatable with UltraDesk debugging override.
|
|||
|
There is still work to be done. I will be starting work on a modified monitors to move
|
|||
|
monitors on the fly. I may want to add patch to the PaintBehind too.
|
|||
|
|
|||
|
Cleaned up the build. Changed suggested build line in “BuildDisplayMgrInit”
|
|||
|
|
|||
|
Rearranged headers a little. Added “DisplaysPriv.a”. I will migrate more stuff to
|
|||
|
Private headers as time goes on.
|
|||
|
|
|||
|
Open Issue: If I roll some changes into SuperMario ROMs, how do I use the linked patch
|
|||
|
mechanism to patch Cyclone (Mac III) ROMs but not PDM ROMs?
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built and tried out with UltraDesk application.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/17/93 5:43:11 PM
|
|||
|
|
|||
|
File: Displays.a,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Displays.h,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: DisplaysPriv.a,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: 'DisplayMgr ToDo,2'
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.a,8
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
• Add Pascal header file Displays.p. This file is just a shell and needs to be filled
|
|||
|
out with all the Display Manager calls.
|
|||
|
• Add ToDo file for Display Manager
|
|||
|
• Build a version of monitors control panel that moves monitors on the fly.
|
|||
|
• Changed many selectors. I moved many private calls into DisplaysPriv.h and
|
|||
|
DisplaysPriv.a as per Dean Yu’s suggestion. This will insure that the calls remain
|
|||
|
private.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Build Extension and System versions. Both work. Called code from Monitors control panel
|
|||
|
and that worked.
|
|||
|
|
|||
|
I need to test on a classic QD machine.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/24/93 1:51:51 AM
|
|||
|
|
|||
|
File: Displays.a,5
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Displays.h,5
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,5
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: 'DisplayMgr ToDo,3'
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.a,9
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Engineer: Ian Hendry 4-4737 (pager 322-7950)
|
|||
|
|
|||
|
-------------------------
|
|||
|
Build Instructions
|
|||
|
-------------------------
|
|||
|
# To build a Reality System with Display Manager BBS installed:
|
|||
|
{Make}Build System -p -macsbugSymbols full ∑∑ “{Worksheet}”
|
|||
|
|
|||
|
# To build a SuperMario ROM with Display Manager BBS installed:
|
|||
|
-- FILL THIS IN
|
|||
|
|
|||
|
# To build a PsychicTV Gibbly with Display Manager:
|
|||
|
-- FILL THIS IN
|
|||
|
|
|||
|
# To build a Reality System linked-patch Extension with Display Manager:
|
|||
|
{Make}Build System -p -macsbugSymbols full -init DisplayMgrINIT “DisplayMgr.o”
|
|||
|
“{Worksheet}” ; “{DisplayMgr}BuildDisplayMgrInit” ∑∑ “{Worksheet}”
|
|||
|
|
|||
|
# To build a Reality System Process Manager Extension (see notes below):
|
|||
|
{Make}Build System ProcessMgrINIT -nolink -p -macsbugSymbols full ∑∑ “{Worksheet}”
|
|||
|
|
|||
|
|
|||
|
-------------------------
|
|||
|
RELEASE NOTES
|
|||
|
-------------------------
|
|||
|
I did not (yet) build with absolutely the latest sources. I will be doing an update and
|
|||
|
I will test this tomorrow.
|
|||
|
I am trying to produce better release notes. Any suggestions, please let me know (QM
|
|||
|
is best). You should also check the file “Display Manager ToDo” for addtional
|
|||
|
information (most of it is notes to myself, but some stuff may be interesting).
|
|||
|
Integrated Display Manager into Monitors control panel. Monitors can now move monitors,
|
|||
|
and move the menu bar without rebooting!!! You will need the latest Monitors
|
|||
|
that should be released in PyschicTV d6 (or get it from me directly)
|
|||
|
The PyschicTV d6 release needs extensive testing. Some calls are still not implemented
|
|||
|
correctly and some parameters will continue to change, but most of the
|
|||
|
underlying application compatibility issues should come out of this release. For
|
|||
|
example
|
|||
|
MPW window move incorrectly and my MPW Shell (?3.3a14?) notes that it got unknown
|
|||
|
appleevents.
|
|||
|
Display Manager now depends on process manager features NOT present in 7.1 (IPC calls).
|
|||
|
You must use a process manager init with the IPC calls in order to make any calls
|
|||
|
that depend on IPC under 7.1. At this time the process manager init is broken
|
|||
|
except on supermario ROMs (because a CheckResource patch was move to resource
|
|||
|
manager for supermario and is not built in the process manager init -- the
|
|||
|
patch is only present in supermario machines).
|
|||
|
|
|||
|
|
|||
|
-------------------------
|
|||
|
TEST SUGGESTIONS
|
|||
|
-------------------------
|
|||
|
|
|||
|
Any changes to the main device force me to hammer ports and sometimes devices as well.
|
|||
|
The most involved change is setting the main device to a different display.
|
|||
|
Changing the menu bar forces me to walk the port list hammering ports,
|
|||
|
it forces me to change the cursor and it forces me to recalc the menu bar and
|
|||
|
set theGDevice in all applications.
|
|||
|
Check color cursors
|
|||
|
Test with background only applications running. Background Apps have no menu bars
|
|||
|
so I should not be calling _CalcMenuBar in any background applications. Right now
|
|||
|
I check if WWExists. An alternate stratgy would be to GetProcessInfo and check
|
|||
|
there (before the IPC call). What happens with the TSM application?
|
|||
|
Test with applications that are likely to pay careful attention to graphics such as:
|
|||
|
Paint programs (PhotoShop, MacPaint, MacCheese, etc)
|
|||
|
HyperCard
|
|||
|
Games
|
|||
|
Draw programs (Illustrator, Freehand, MacDraw, etc)
|
|||
|
|
|||
|
|
|||
|
-------------------------
|
|||
|
CHANGES BY FILE
|
|||
|
-------------------------
|
|||
|
|
|||
|
FILE -- DisplaysPriv.h
|
|||
|
|
|||
|
Added DMSetMainDisplay and RecalcMenuBar calls.
|
|||
|
|
|||
|
FILE -- DisplayMgr.a
|
|||
|
|
|||
|
Added and commented out DrawMenuBar patch to call RecalcMenuBar. This was my
|
|||
|
crack at making sure that the menu bar was recalculated for all applications.
|
|||
|
I changed this to a process manager IPC call.
|
|||
|
Added RecalcMenuBar call which calls _CalcMenuBar. If _CalcMenuBar
|
|||
|
is not available, then I call the MBDF directly. When we are guaranteed
|
|||
|
that _CalcMenuBar will be available, then I should make the MBDF call
|
|||
|
conditional to the INITVERSION
|
|||
|
Corrected some cut-and-paste name errors.
|
|||
|
Added selector for DMSetMainDisplay
|
|||
|
|
|||
|
FILE -- DisplayMgr.c
|
|||
|
|
|||
|
Changed update parameters to do more in device manipulation calls (DMAddDisplay etc)
|
|||
|
Added commented ideas for more palette-manager-friendly code changes in the future.
|
|||
|
Made DMSetMainDevice into a trap call (rather than in internal routine). Made changes
|
|||
|
and fixes. It seems to work fairly well now. I added quite a few comments to
|
|||
|
my code that plays with the ports. The only known problem is I cannot tell
|
|||
|
if a port is really a window and I may incorrectly handle windows that are exactly
|
|||
|
the size and position to cover the main device (games?). I can be more conservative
|
|||
|
if I have to (see comments in code).
|
|||
|
Added Process Manager IPC code to set the gdevices in all processes when the main device
|
|||
|
changes.
|
|||
|
Fixed DM_RedrawAll to calc regions so windows are currectly updated. I am still
|
|||
|
working on this stuff do find out exactly what I need to do.
|
|||
|
Cleaned out unused defines and changed #includes at top of file to be the standard
|
|||
|
format.
|
|||
|
|
|||
|
FILE -- Displays.h
|
|||
|
|
|||
|
Added DMSetMainDisplay call.
|
|||
|
|
|||
|
FILE -- Displays.a
|
|||
|
Added macros for some display manager calls (including DMSetMainDisplay)
|
|||
|
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Build System and tested using new version of monitors.
|
|||
|
|
|||
|
I was able to move monitors around and change the menu bar monitor without rebooting.
|
|||
|
Offscreen windows came back onscreen. I traced the IPC call to FileShare (a background
|
|||
|
only app) and noted that I did not attempt to recalc the menu bar in this applicaiton.
|
|||
|
|
|||
|
I tried changing menubar monitors at various combinations of depths (esp direct to
|
|||
|
indexed). All seemed to work.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/24/93 8:24:22 PM
|
|||
|
|
|||
|
File: DisplayMgr.c,5
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Fix reentrancy problem in Desktop drawing code. I will need to conditionalize it for
|
|||
|
when there is no FIllRgn/FillCRgn patches (ie in ROM).
|
|||
|
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Build System and verified that it no longer screwed up desk drawing.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/25/93 9:07:13 PM
|
|||
|
|
|||
|
File: BuildDisplayMgrInit,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayComponents.h,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: 'DisplayMgr Release Notes,1'
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: 'DisplayMgr ToDo,1'
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.a,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrExtension.r,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: StartDisplayMgr.a,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Check in Display Manager
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Not in build scripts but builds under reality.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/31/93 5:01:21 PM
|
|||
|
|
|||
|
File: DisplaysPriv.a,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: MenuMgrPriv.a,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫C∫
|
|||
|
|
|||
|
File: MenuMgrPriv.h,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫C∫
|
|||
|
|
|||
|
File: MainCode.Make,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Make∫
|
|||
|
|
|||
|
File: RISC.make,23
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Make∫
|
|||
|
|
|||
|
File: Universal.make,11
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Make∫
|
|||
|
|
|||
|
File: DisplayMgr.c,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: Toolbox.make,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫
|
|||
|
|
|||
|
File: WindowMgr.a,27
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫WindowMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Check in Display Manager to build.
|
|||
|
|
|||
|
Check in fix to have standardequates build follow the FastROMTraps automatically (Script
|
|||
|
CreateStdEquAOptions parses the feature set to determine how to set the Standard equates
|
|||
|
flags). I added this to only to Universal.Make and RISC.make.
|
|||
|
|
|||
|
Display Manager is included in RISC builds and available on Universal Builds.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Did full builds of Universal and PDM.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
3/31/93 5:52:57 PM
|
|||
|
|
|||
|
File: DispTable.a,44
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫OS∫
|
|||
|
|
|||
|
File: DisplayMgr.a,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Set Display Manager Trap in DispTable.a (conditional with hasDisplayMgr).
|
|||
|
|
|||
|
Forgot to check in DisplayMgr.a with last checkin.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Build RISC and Universal ROMs with hasDisplayMgr true and false. Tested Universal ROMs.
|
|||
|
All seems well.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
4/8/93 7:38:52 PM
|
|||
|
|
|||
|
File: DisplayMgr.a,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.make,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrUtils.c,1
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
This version of Display Manager supports resolution flipping, moving monitors and moving
|
|||
|
the menu bar! Requires at Monitors Control panel at least “PsychicTV 1.0d6c1” and a
|
|||
|
video driver that support the switchMode control call.
|
|||
|
|
|||
|
Created a new file DisplayMgrUtils.c to put utility calls in. DisplayMgr.c was getting a
|
|||
|
little long.
|
|||
|
|
|||
|
Now on to alpha?!!
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built and tested on PDM (only video driver to date that has the new switchmode control
|
|||
|
call). Tested switching to a new mode when current depth are not available in new mode.
|
|||
|
|
|||
|
I do not have a multi-monitor system at the moment, so I may have broken moving monitors
|
|||
|
on the fly or moving the menu bar on the fly.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
5/28/93 4:07:36 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/1/93 4:38:51 PM
|
|||
|
|
|||
|
File: DisplayMgr.c,7
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.make,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrUtils.c,3
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Alpha code checkin. This checkin is the first alpha candidate for PDM display manager.
|
|||
|
Some functionality does not work in all cases but, given the limitations of PDM video, it
|
|||
|
works for the basic cases available on PDM.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Tested on PDM (was unable to test multi monitor code with my test build, but I did not
|
|||
|
change that code). Used monitors to switch modes and everything looked good.
|
|||
|
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
6/22/93 2:54:45 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:42 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.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
6/25/93 11:58:49 AM
|
|||
|
|
|||
|
File: DisplayMgr.c,10
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrUtils.c,5
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug:
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Changing initialization of driver caused some information to be cleared. Causes monitors
|
|||
|
to always ask for confirmation. I also noted that my declRom look up always seemed to
|
|||
|
work even though I was doing it wrong.... so I fixed it.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built ROM and tested on PDM. Mode switches no longer require confirmation.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
7/2/93 4:51:24 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 12:10:45 PM
|
|||
|
|
|||
|
File: Displays.a,8
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: GestaltEqu.a,72
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫AIncludes∫
|
|||
|
|
|||
|
File: Displays.h,10
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: GestaltEqu.h,84
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫CIncludes∫
|
|||
|
|
|||
|
File: GestaltEqu.p,69
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Interfaces∫PInterfaces∫
|
|||
|
|
|||
|
File: DisplaysPriv.a,7
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,11
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Internal∫C∫
|
|||
|
|
|||
|
File: DisplayMgr.a,13
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,12
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrCompatibility.c,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrUtils.c,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: MainProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.make,4
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug: #1101633,1098397,1101795,1101636
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Fixed a number of compatibility bugs (1101633,1098397,1101795,1101636).
|
|||
|
|
|||
|
I investigated a number of strategies for application 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. Margarita regressed most of the existing bugs and things
|
|||
|
seemed to working.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
8/4/93 4:07:22 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:18:14 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:54 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.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
9/2/93 2:34:10 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.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
9/2/93 10:48:27 PM
|
|||
|
|
|||
|
File: DisplayMgr.c,17
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug: #1101633
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Fix SetMainDevice for Canvas. Canvas has a custom color table on a screen port. I was
|
|||
|
blasting their port CTable with the CTable from the new main device. This was bad
|
|||
|
because Canvas (correctly) assumed that it owned the color table and wrote over it.
|
|||
|
Since I replaced their huge CTable with a small one, they killed their heap. I will now
|
|||
|
correctly restore custom port CTables.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built 68k extension and tested with Canvas. Everything worked fine.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
9/10/93 11:33:52 AM
|
|||
|
|
|||
|
File: DisplaysPriv.a,9
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫Asm∫
|
|||
|
|
|||
|
File: CrsrDevPriv.h,2
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫C∫
|
|||
|
|
|||
|
File: DisplaysPriv.h,12
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Internal∫C∫
|
|||
|
|
|||
|
File: DisplayMgr.a,10
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.c,18
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgr.make,8
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
File: DisplayMgrUtils.c,9
|
|||
|
Owner: Ian Hendry
|
|||
|
Project: SuperMarioProj∫Toolbox∫DisplayMgr∫
|
|||
|
|
|||
|
Radar bug: #1110418, 1105959
|
|||
|
|
|||
|
> Release notes for this change:
|
|||
|
|
|||
|
Fixed cursor crash and dispose monitor bugs.
|
|||
|
|
|||
|
> What was tested:
|
|||
|
|
|||
|
Built and heavily tested ROM version using A5e7. Looking for cursor bug.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|
|||
|
11/5/93 10:01:42 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.
|
|||
|
----------------------------------------------------------•----------------------------------------------------------
|