Macintosh System Software 6.0 Changes (part 2 of 4)


Macintosh System Software 6.0 includes four disks:
- System Tools
- Printer Tools
- Macintosh Utilities 1
- Macintosh Utilities 2

The contents of these four disks are described in the three articles
"Macintosh System Software 6.0 Changes" (parts 2 through 4).


SYSTEM TOOLS DISK
-----------------

System File
-----------
Color Picker Package

When using 8-bit mode on a device with a CLUT, Color Picker now displays
36 slices in the color wheel rather than six.

Known Color Picker Bugs
- Gray scale fonts can look blotchy with ColorPicker in 16-color mode,
because the grays used in the font can be changed while the package is
running.

- The ColorPicker uses a fair amount of memory, and its error checking for
out of memory conditions is lax. If you call GetColor in low memory
situations, you are likely to run into a system error.

- GetColor assumes that the color environment is stable when it is installed.
If you have used Palette Manager or Color Manager to change the color
environment, GetColor often initially selects the wrong color. Almost
any user action will cause ColorPicker to refresh the colors, and
therefore correct this situation.


Color QuickDraw

Color QuickDraw now incorporates Andy Hertzfeld's QuickerGraf. Previously,
the color used as the transparent color (for arithmetic transfer mode #36)
was the port's RGBBkColor. Now, in CGrafPorts only, the transparent color
is specified by the port's rgbOpColor -- transparent mode drawing in old
GrafPorts will continue to use bkColor to determine the index of the
transparent color.


Menu Manager

Pop-Up menus work on multiple Macintosh II monitors when running
MultiFinder.


Notification Manager

The Notification Manager allows a process, such as an application, desk
accessory, or device driver to asynchronously alert the user that it wants
or needs attention.


Operating System Utilities

A fix has been made to the System file to correct a long-standing problem
in UpString, which selectively uppercases and de-diactriticalizes strings
for operating system use. Strings that included the accent grave ($60),
when passed to UpString, returned a lower case 'a' instead of leaving the
accent unchanged.


Palette Manager

A bug has been fixed that caused a crash if more than 16 palettes were used.

The problem that resulted when calling PmBackColor with a palette entry
whose usage was pmExplicit has been fixed.

When a palette is activated, all gDevice CLUT entries are unprotected on all
devices affected by the palette.

pmTolerant entries, other than black and white, can now occupy position zero
in a palette.

A bug relating to color table animation and changing depths has been fixed.

Palates can be used with more than one window.


QuickDraw

An old QuickDraw region bug has been fixed. Performing a region operation
(UnionRgn) on two regions that total more than 16K in size used to produce
garbage. This is no longer the case.

Painting polygons is now faster and more stable.


Script Manager

The tools and capabilities provided for developers by the Script Manager
have been extended in three areas: text, date, and numbers. In addition,
some minor bugs were fixed and performance enhancements incorporated.

The new text language routine capabilities include:
- lexically interpreting different scripts (in macro languages, for example)
- allocating justification to different format runs within a line
- ordering format runs properly with bi-directional (Hebrew, Arabic) text
- quickly separating Roman from non-Roman text, and determining word-wrap in
text processing.

The international utilities text comparison routines are significantly
improved in performance, by 25% to 94%.

The Macintosh date routines are extended to provide a larger range (roughly
35,000 years), and more information. This allows programs that need larger
range of dates to use system routines rather than produce their own, which
may not be internationally compatible.

The new number routines supplement SANE, allowing applications to display
formatted numbers in the manner of Microsoft Excel or 4th Dimension, and to
read both formatted and simple numbers. The formatting strings allow
natural display and entry of numbers and editing of format strings even
though the original numbers and the format strings were entered in a
language other than the final user's.


Sound Manager

SndPlay is fixed to work with Format 2 snd resources.

A new resource ID mapping scheme was added for snth resources.

Working MIDI synthesizers are added.

A RAM-based version of Sound Manager to run on the Macintosh Plus and SE
is added.

SampledSynth and NoteSynth for the Macintosh Plus and SE are added.

A new version of SystemBeep, for the Macintosh Plus and SE, is added --
with the ability to set a sound to be used with SysBeep.

Sampled Sound Synth can now play at 44.1 kHz sounds without a crash.

The problem of Synth hanging when there is lots of AppleTalk traffic is
fixed.

The "Sound" Control Panel device, and its sound list, now appear on the
Macintosh Plus and Macintosh SE only if the new sound manager is
installed (if the _SndPlay trap exists).


Standard File Package

If CurDirStore or SFSaveDisk is changed when the ReBuildList result is
returned from the dialog filter, the current directory is changed to the
directory specified by CurDirStore and SFSaveDisk.


System Error Handler

New system errors were assigned for WDEFnFnd (87) and CDEFnFnd (88).


TextEdit

Changes are made to some TextEdit routines, and new routines are added.

The bug in TEStylInsert when inserting 0 length text has been fixed.

ReCalLines has been patched to properly shrink the lineStarts array.

GetStyleScrap was changed to return a proper scrap record, even it there
is no selection range (prevents applications from having to special-case
insertion points).

References to faces are now byte- instead of word-length.

A bug in TEGetHeight, when there were no characters in the buffer, is fixed.
It returned 0 height, but now returns height of the next character to be
typed.


Toolbox Event Manager

_WaitNextEvent is now implemented in the System as well as MultiFinder.


Window Manager

A bug was fixed in GrowWindow on the Macintosh II, where it used to return
an incorrect result when the window size didn't change.

A bug in WDEF, which caused screen garbage on Macintosh II under rare
circumstances, is fixed.


Continued
---------
This article continued in "Macintosh System Software 6.0 Changes (part
3 of 4)".


Published Date: Feb 18, 2012