mjohnson@APPLE.COM (Mark B. Johnson) (12/02/89)
This message was originally submitted by mjohnson@APPLE.COM to the APPLE2-L
list at BROWNVM. If you simply forward it back to the list, it will be
distributed with the paragraph you are now reading being automatically removed.
If you edit the contributions you receive into a digest, you will need to
remove this paragraph before mailing the result to the list. Finally, if you
need more information from the author of this message, you should be able to do
so by simply replying to this note.
----------------- Message requiring your approval (692 lines) -----------------
Apple II
Technical Notes
_____________________________________________________________________________
Developer Technical Support
GS/OS
#1: Contents of System.Disk and System.Tools
Revised by: Matt Deatherage November 1989
Written by: Matt Deatherage November 1988
This Technical Note describes the contents of the disks System.Disk and
System.Tools and the minimum files necessary to boot GS/OS starting with
System Software 5.0.
Changes since July 1989: Updated to reflect System Software version 5.0.2.
_____________________________________________________________________________
This Note gives a description of each of the files in the Apple IIGS System
Software 5.0.2 package. This package includes three disks: System.Disk,
System.Tools, and the Apple II Setup disk for AppleShare 2.1.1 (Macintosh
format). System.Disk is bootable and includes two drivers with 5.0.
System.Tools is not bootable, but with 5.0.2 it includes other drivers,
AppleTalk files, and some utility programs. The Apple II Setup disk is an
update for AppleShare File Servers (version 2.01 or later) which allows them
to boot into GS/OS. Since the software on this disk is not available for
licensing and will not ship with applications, this Note does not cover its
contents.
Contents of System.Disk
ProDOS The boot file for GS/OS, ProDOS, contains
the code necessary to load GS/OS from any
particular file system. This file will be
file-system dependent. For example, the
file ProDOS on a bootable disk in the
ProDOS file system will be different than
the file ProDOS on a bootable disk in the
High Sierra file system.
System The directory containing most of the GS/OS
files.
CDevs The directory containing all Apple IIGS
Control Panel Devices (CDevs) required for
minimal operation.
Alphabet Sets translation specifications and
display languages.
DirectConnect Allows selection of direct-connected
printers.
General Allows setting of general system
parameters.
Keyboard Sets keyboard parameters.
Modem Controls modem port settings.
Monitor Sets 40-column or 80-column mode,
monochrome or color mode, and the color of
text, text background, and borders.
Mouse Sets mouse parameters.
Printer Controls printer port settings.
RAM Controls the size of the RAM disk and the
GS/OS Disk Cache.
Slots Allows selection of slot settings and
startup slot.
Sound Sets user preference for sound pitch and
volume.
Time Sets the internal clock's time and display
format.
CDev.Data A list of internal Control Panel
parameters for each CDev in the directory;
the list is precalculated for speed when
opening the Control Panel.
Desk.Accs The directory containing all the classic
and new desk accessory files to be loaded
at boot time.
CtlPanel.NDA The new desk accessory which allows users
to control almost all system parameters
and choose printers and file servers.
Drivers The directory containing all device
drivers needed by GS/OS and the Toolbox
(including the Print Manager and MIDI
Tools).
AppleDisk3.5 The Apple 3.5 Drive device driver for
GS/OS.
AppleDisk5.25 The driver for Apple 5.25" disk drives,
including Disk II drives and Apple UniDisk
5.25 drives. This driver is required for
GS/OS to recognize 5.25" disk drives.
Console.Driver The text screen and keyboard device driver
for GS/OS.
ImageWriter The ImageWriter driver for the Print
Manager.
Printer The printer port driver for the Print
Manager.
Modem The modem port driver for the Print Manager.
Printer.Setup A file containing the default printer
driver and port driver settings for the
Print Manager.
Error.Msg A compiled file containing all error
messages required by GS/OS. This file is
separate from the GS.OS file to provide
easier support for localization.
ExpressLoad New routines for GS/OS which load
specially processed files up to four times
faster than previously possible prior to
System Software 5.0. GS/OS loads
ExpressLoad at boot time on systems with
more than 512K total memory.
Fonts The directory containing all system fonts
to be used.
Courier.10 10 point Courier font.
Courier.12 12 point Courier font.
FastFont A preshifted version of Shaston 8 which
QuickDraw II loads at QDStartUp time and
uses to draw Shaston 8 text faster than
could normally be accomplished. QuickDraw
II does not load FastFont on systems with
512K total memory.
Geneva.10 10 point Geneva font.
Geneva.12 12 point Geneva font.
Helvetica.10 10 point Helvetica font.
Helvetica.12 12 point Helvetica font.
Shaston.16 16 point Shaston font.
Times.10 10 point Times font.
Times.12 12 point Times font.
Venice.14 14 point Venice font.
Font.Lists A file prepared by the Font Manager when
FMStartUp is first called. It contains
information about all the fonts in the
Fonts directory and is only recalculated
if the Font Manager reasonably believes
the information has changed.
FSTs The directory containing the file system
translators to be loaded at boot time.
Char.FST The character device FST.
Pro.FST The ProDOS FST.
GS.OS The remainder of GS/OS.
GS.OS.Dev The GS/OS Device Manager and associated
core routines. Separate from GS.OS for
speed reasons.
P8 The ProDOS 8 operating system, version 1.8.
Start The boot program. If this file exists,
GS/OS will always launch it upon boot. In
this case, as in most cases, this is the
Finder. The Finder for System Software
5.0 is V1.3.
Start.GS.OS The file containing the GLoader and GQuit
routines. It loads the files GS.OS and
GS.OS.Dev, which contain the rest of the
operating system.
System.Setup The directory containing all the
initialization files to be executed at
boot time.
CDev.Init A file, required for the Control Panel new
desk accessory, which executes any
initialization code in any CDev that is in
the CDev subdirectory.
Resource.Mgr The Resource Manager, V1.0. This is an
initialization file since the design of
the Resource Manager requires it to be
present even when an application has not
specifically loaded it. If this file is
not present, the system will not boot.
Sys.Resources A file containing system resources used by
the tools and the Control Panel, and which
are available to applications.
Tool.Setup A required file that loads TS2, which
contains all the patches to tools in ROM
for ROM level 01. Tool.Setup would
attempt to load TS1 if executed on a
machine with ROM level 00, but GS/OS does
not boot on such a machine, therefore, TS1
is not included.
TS2 All the patches to ROM tools for ROM level
01.
TS3 A required file included for future
compatibility.
Tools The directory containing tool files for
all tools not in ROM.
Tool014 Window Manager V3.1.
Tool015 Menu Manager V3.1.
Tool016 Control Manager V3.1.
Tool018 QuickDraw Auxiliary V3.1.
Tool019 Print Manager V3.0.
Tool020 LineEdit V3.1.
Tool021 Dialog Manager V3.2.
Tool022 Scrap Manager V3.0.
Tool023 Standard File V3.1.
Tool025 Note Synthesizer V1.4.
Tool026 Note Sequencer V1.4.
Tool027 Font Manager V3.1.
Tool028 List Manager V3.1.
Tool029 ACE Tools V1.1.
Tool034 TextEdit V1.1.
Finder.Def Finder default settings file. This file
must be present on the backup copy of
System.Disk you use with the Installer
program. The Installer will not be able
to install GS/OS if this file is not
present on System.Disk.
Icons The directory containing all the icon
files used by the Finder.
Finder.Icons The core set of icons used by the
Finder for all system files and devices.
Finder.Icons.X The additional icons used by the Finder on
systems with more than 512K total total
memory.
FType.Main The file type names used by the Finder on
all systems.
FType.Aux The additional file type names used by the
Finder on systems with more than 512K
total memory.
AppleTalk A directory containing files to implement
the AppleTalk networking protocols. On
this disk, this folder is empty.
BASIC.System The ProDOS 8 BASIC command interpreter,
V1.3.
BASIC.Launcher A short program which allows BASIC.System
to run AppleSoft program files which are
opened from the Finder.
Tutorial A directory containing several "empty"
files (files containing two carriage
returns) and other directories, used in
user-level documentation to teach the
concepts of a hierarchical file system.
These files are absolutely unnecessary to
the operation of the System Software.
Budgets
Finder.Data
Home
CY.1990
CY.1991
Finder.Data
Office
Finder.Data
FY.1990
FY.1991
Finder.Data
Graphics
Ad
Finder.Data
Flier
Letterhead
Masthead
Letters
Finder.Data
Mr.Merritt
Ms.Bachtold
To.Family
Dad
Finder.Data
Mom
TO.FRIENDS
Darryl
Finder.Data
Molly
Contents of System.Tools
Icons Additional icons for the Finder. This
folder is currently empty.
System A directory containing additional parts of
GS/OS not found on System.Disk.
CDevs Directory with additional Control Panel Devices.
AppleShare Allows users to choose and log onto
AppleShare file servers.
ATIWriter Allows users to choose ImageWriter
printers on AppleTalk networks for use
with the Print Manager.
ATLQIWriter Allows users to choose ImageWriter LQ
printers on AppleTalk networks for use
with the Print Manager.
ATLWriter Allows users to choose LaserWriter
printers on AppleTalk networks for use
with the Print Manager.
DirectConnect Allows selection of direct-connected
printers.
Desk.Accs Directory with additional desk
accessories.
CDRemote An updated version of the CD Remote new
desk accessory which ships with the
AppleCD SC. This version works with the
SCSI Manager in System Software 5.0.
VideoMix.NDA An updated version of the VideoMix new
desk accessory which ships with the Apple II
Video Overlay Card.
Drivers Directory with additional device drivers
for GS/OS and the Toolbox.
Apple.Midi The Apple MIDI Interface driver for the
MIDI Tools.
AppleDisk5.25 The driver for Apple 5.25" disk drives,
including Disk II drives and Apple UniDisk
5.25 drives. This driver is required for
GS/OS to recognize 5.25" disk drives.
AppleTalk The AppleTalk port driver for the Print
Manager. It works with either serial port
when configured for AppleTalk.
AT.IW.PSetup This file contains the same information as
the file Printer.Setup for an ImageWriter
printing through AppleTalk. The Installer
replaces the file Printer.Setup on the
destination disk with this file and
renames it Printer.Setup.
AT.IWLQ.PSetup This file contains the same information as
the file Printer.Setup for an ImageWriter
LQ printing through AppleTalk. The
Installer replaces the file Printer.Setup
on the destination disk with this file and
renames it Printer.Setup.
ATalk The main AppleTalk GS/OS driver.
ATP1.ATROM AppleTalk protocols to patch the IIGS ROM.
ATP2.ATRAM AppleTalk protocols not in ROM.
Card6850.MIDI The driver for 6850-based MIDI interface
cards for the MIDI Tools.
Epson The Epson(R) printer driver for the Print
Manager.
EPSON.PSetup This file contains the same information as
the file Printer.Setup for an Epson
printing through the parallel card driver.
The Installer replaces the file
Printer.Setup on the destination disk with
this file and renames it Printer.Setup.
ImageWriter The ImageWriter driver for the Print
Manager.
ImageWriter.LQ The ImageWriter LQ driver for the Print
Manager. This driver currently has no
more functionality than the ImageWriter
driver.
IW.PSetup This file contains the same information as
the file Printer.Setup for an ImageWriter
printing through the printer port. The
Installer replaces the file Printer.Setup
on the destination disk with this file and
renames it Printer.Setup.
IWEM PostScript(R) program which allows a
LaserWriter emulate an ImageWriter. A user
can load it into the LaserWriter with the
LaserWriter CDev, and it is automatically
invoked when printing through the slot
associated with AppleTalk.
IWLQ.PSetup This file contains the same information as
the file Printer.Setup for an ImageWriter
LQ printing through the printer port. The
Installer replaces the file Printer.Setup
on the destination disk with this file and
renames it Printer.Setup.
LaserWriter The LaserWriter driver for the Print
Manager. This driver works with any
LaserWriter with PostScript. It does not
work with the LaserWriter IISC.
LW.PSetup This file contains the same information as
the file Printer.Setup for an LaserWriter
printing through AppleTalk. The Installer
replaces the file Printer.Setup on the
destination disk with this file and
renames it Printer.Setup.
Modem The modem port driver for the Print Manager.
Parallel.Card A driver for some parallel printer
interface cards for the Print Manager.
This driver works with the Apple Parallel
Interface Card, as well as several other
parallel interface cards.
Printer The printer port driver for the Print
Manager.
SCC.Manager The GS/OS supervisory driver that
arbitrates hardware-level usage of the SCC
in the Apple IIGS.
SCSI.Manager The GS/OS SCSI Manager, the supervisory
driver that arbitrates hardware-level
usage of Apple II SCSI cards.
SCSICD.Driver The GS/OS driver for the AppleCD SC drive.
This driver is required for GS/OS to
recognize CD-ROM drives.
SCSIHD.Driver The GS/OS driver for SCSI hard disks.
This driver is required for GS/OS to
recognize SCSI hard disks.
UniDisk3.5 The GS/OS driver for UniDisk 3.5 drives.
This driver is required for proper
operation of UniDisk 3.5 drives. Using
the UniDisk with GS/OS without this driver
eventually corrupts media.
FSTs Directory with additional File System
Translators.
AppleShare.FST The AppleShare FST which allows GS/OS to
access AppleShare file servers.
HS.FST The High Sierra FST which allows GS/OS to
access CD-ROM discs formatted in the
international standard High Sierra or ISO
9660 formats. This FST is read-only; it
only performs read operations.
System.Setup Directory with additional
initialization files.
AppleIIVOC.INIT An initialization file used by the Apple
IIGS Video Overlay Card tool set.
ATInit The AppleTalk initialization file.
ATResponder The AppleTalk responder, used for
AppleTalk network management.
Tools Directory with additional tools.
Tool032 MIDI Tools, V1.3.
Tool033 Video Overlay Card tool set V1.1
Fonts Directory with additional fonts. This
directory is currently empty.
Scripts This directory contains all the scripts
for the Installer. On launch, the
Installer looks in its parent directory
for the Scripts directory and the scripts
it contains.
ADV.DISK.UTIL Script to install the Advanced Disk
Utility program.
APPLE.MIDI Script to install the Apple MIDI Interface
driver and tool set.
APPLEDISK5.25 Script to install the 5.25" disk driver
for GS/OS.
APPLESHARE Script to install AppleShare.
Aristotle.Patch Script to install a change to Aristotle
for easier class transition.
ATIMAGEWRITER Script to install the ImageWriter printer
driver for the Print Manager, as well as
the files necessary to work with
AppleTalk.
ATIMAGEWRITERLQ Script to install the ImageWriter LQ
printer driver for the Print Manager, as
well as the files necessary to work with
AppleTalk.
CARD6850.MIDI Script to install the 6850-based MIDI
Interface card driver.
CDROM Script to install the High Sierra FST as well
as the SCSI Manager and SCSI CD-ROM driver
for GS/OS.
DCIMAGEWRITER Script to install the ImageWriter printer
driver for the Print Manager, as well as
the files necessary to connect it to a
serial port.
DCIMAGEWRITERLQ Script to install the ImageWriter LQ
printer driver for the Print Manager, as
well as the files necessary to connect it
to a serial port.
EPSON Script to install the Epson printer driver
for the Print Manager, as well as the
parallel card driver.
FONTS Script to install additional fonts. No
additional fonts are currently supplied.
INST.SYS.MIN Script to install a minimal GS/OS system
on a given destination volume.
INST.SYSF.NOFIN Script to install a minimal GS/OS
system,without the Finder, on a given
destination volume.
INSTAL.SYS.FILE Script to install a GS/OS system, with the
Finder, on a given destination volume.
LASERWRITER Script to install the LaserWriter printer
driver for the Print Manager, as well as
the files necessary to work with AppleTalk.
Local.Net.Boot Script to create a 3.5" floppy disk with
the minimum configuration necessary to
boot locally but log onto an AppleShare
file server.
NAMER Script to install Namer II and related
AppleTalk files.
Quick.Logoff Script to add a quick logoff feature
to AppleShare.
SCSI.HARD.DISK Script to install the SCSI Manager and
SCSI hard disk driver for GS/OS.
Server.Sys.File Script to install System Software 5.0 on
an AppleShare File Server.
UNIDISK3.5 Script to install the UniDisk 3.5 driver
for GS/OS.
VIDEOMIX Script to install the latest versions of
the Apple II VideoMix software and tools.
Installer The Apple IIGS Installer program. This
program makes use of scripts found in the
Scripts directory on this disk to install
parts of the system, as well as third-
party applications, without the user
needing to copy individual files.
AppleTalk This directory contains additional
AppleTalk files and utilities for
AppleShare and AppleTalk.
Boot.Driver A driver for AppleShare that GS/OS loads
before the other drivers are loaded and
which remains resident in memory after the
boot process is finished. Installed on
servers by the Installer script
Server.Sys.File.
Display.0
Namer This directory contains the Namer II
application to rename AppleTalk devices.
MtxAbs.0 MouseText code routines for by Namer II.
Namer.II The Namer II application (a ProDOS 8
program).
Namer.0 Additional code needed by Namer II.
QuickLogoff An initialization file used to add a quick
logoff feature to AppleShare.
Start The AppleShare startup program which is
installed in place of the Finder on
AppleShare volumes. It allows the user to
log on and then launches the server
startup program for the user's machine.
Adv.Disk.Util The Advanced Disk Utility program which
allows for partitioning of SCSI hard
disks, as well as erasing, initializing,
and zeroing volumes or partitions.
Minimum GS/OS System Disk Requirements
The following files are required for GS/OS to boot. This list does not
address files needed by the Finder or the IIGS Toolbox. Those files only
required in certain circumstances are noted as such. Those files that may be
excluded only when disk space or memory limitations make it absolutely
necessary are marked with asterisks (*).
ProDOS
System
Start.GS.OS
GS.OS
GS.OS.Dev
Error.Msg
FSTs
Pro.FST Required for ProDOS disks.
HS.FST Required for High Sierra or ISO 9660
discs.
Char.FST
AppleShare.FST Required to use AppleShare file servers
Drivers
AppleDisk3.5 Required for Apple 3.5 Drives.
AppleDisk5.25 Required for 5.25" drives.
UniDisk3.5 Required for UniDisk 3.5 drives.
SCSI.Manager Required for SCSI devices.
SCSIHD.Driver Required for SCSI hard disks.
SCSICD.Driver Required for AppleCD SC drives.
Console.Driver
ATalk Required for AppleTalk (including
AppleShare).
ATP1.ATROM Required for AppleTalk (including
AppleShare).
ATP2.ATRAM Required for AppleTalk (including
AppleShare).
SCC.Manager Required for AppleTalk (including
AppleShare).
System.Setup
CDev.INIT Required for the Control Panel NDA.
Tool.Setup
TS2
TS3
Resource.Mgr
Sys.Resources
CDevs
Alphabet*
AppleShare* Required for selecting AppleShare file
servers.
ATIWriter* Required for choosing printers.
ATLQIWriter* Required for choosing printers.
ATLWriter* Required for choosing printers.
DirectConnect* Required for choosing printers.
General*
Keyboard*
Modem*
Monitor*
Mouse*
Printer*
RAM* Should always be included if possible.
It provides the only way to set the size
of the GS/OS Disk Cache.
Slots*
Sound*
Time*
CDev.Data* Only required if using the same CDevs that
ship on System.Disk.
Desk.Accs* Required for desk accessories; any desk
accessories should be installed in this
directory.
CtlPanel.NDA*
ExpressLoad* The only reason not to ship ExpressLoad is
a lack of disk space; it is not loaded in
512K systems.
Start Must be present for GS/OS to boot or some
other file that GS/OS can boot into must
be present in its place.
Tools Required for any of the RAM-based tools;
any RAM-based tools should be installed in
this directory.
Fonts Required for the Font Manager.
FastFont* This makes Shaston 8 text drawing much
faster and should be included unless
absolutely impossible.
P8 Required for ProDOS 8.
BASIC.System Required for AppleSoft BASIC.
BASIC.Launcher Required for AppleSoft BASIC if the user
is allowed to open these programs from the
Finder.
Changes from 5.0 to 5.0.2
The changes from System Software 5.0 to 5.0.2 are described in this section.
The 5.0.2 release includes both System.Disk and System.Tools. Only the
following files have changed; only the problems listed have been addressed.
System Software 5.0.1 was an internal Apple release that should not be used.
Note: On System Software 5.0.2, GS/OS has version number $8301,
meaning version 3.1p. The Dialog Manager has version number 3.2p
($8302) for ROM 01. The Desk Manager has version 3.2 ($0302) for
ROM 01 and version 3.2p ($8302) for ROM 03. Be sure to mask out
prototype bits when checking version numbers.
ATResponder (System.Tools)
Fixed a bug which caused the system to forget chosen network printers unless
AppleShare was installed.
BASIC.SYSTEM
Fixed a bug in BLOAD which trashed data. The system now properly returns the
NO BUFFERS AVAILABLE error and does not write to the disk.
GS.OS
Fixed the Init Manager to properly sense which screen is up and to always
place dialogs on the current screen. Also fixed the Cache Manager bug listed
below.
Start.GS.OS and GS.OS.Dev
A change was made to the Cache Manager to dereference the cache bucket before
it is used in the internal Cache shutdown routines called by ResetCache. This
prevents GS/OS fatal error $0002 from popping up during low-memory Memory
Manager calls.
Pro.FST
Fixed bugs in the GetDirEntry portion of this FST to properly report buffer
size errors and to prevent memory from being trashed when using a four-byte
name buffer. Also fixed a bug in the Write call that caused data to be
trashed on occasion if the Write call was followed by a SetEOF call on sparse
files.
Resource.Mgr
Fixed a bug in ResourceShutDown that deallocated all system resources whenever
the call was made. The system now only disposes of the resources belonging to
the current resource application. A bug in AddResource and WriteResource
which corrupted resource maps when two files were open at the same time was
also fixed.
Slots CDev
Fixed a bug in setting battery RAM when the slot 2 selection was changed.
This fix allows ProDOS 8 applications better printing access to network
printers.
START (System.Tools)
Fixed a bug where the system would forget chosen printer names if the user
changed login names after booting from a file server. Note that START is the
program GS/OS boots into when using a file server as the boot volume; this
file is not the Finder.
Tool018 (QuickDraw Auxiliary)
Fixed a bug in CopyPixels that would incorrectly allocate the scratch buffer,
causing memory to be randomly trashed.
Tool021 (Dialog Manager)
A handle allocation bug was fixed. DialogStartUp previously allocated a
handle as movable when it should have been fixed. This fix prevents random
memory trashing (four bytes) on the calls Alert, NoteAlert, StopAlert and
CautionAlert.
Tool023 (Standard File)
Fixed several bugs. Case is now ignored when sorting file lists. Filter
procedures and SFxxx2 calls now receive the proper auxiliary type for files,
and Standard File now notices an error and skips to the next volume when a
user ejects a disk and selects a file while the disk's file list is displayed.
Formerly, this situation caused an invalid reply record and sometimes crashed
applications.
Tool034 (TextEdit)
Fixed several bugs in TEGetText and in the use of LETextBox2 type data. Also
fixed a bug which caused TextEdit controls to sometimes destroy the current
port's origin, and a bug which hung the machine when an entire TE SuperBlock
was deleted.
TS2
Fixed a bug in the QuickDraw II fast slab routines; this fix allows QuickDraw
II to properly draw objects with a width greater than 160 bytes. A new Desk
Manager patch was added to fix a bug that left the Desk Manager in a "busy"
state after the calls AddToRunQ, RemoveFromRunQ and GetNumNDAs.
TS3
The Desk Manager patch described above was incorporated, and the Dialog
Manager bug listed above was also included here (since the Dialog Manager is
included in ROM 03).
Further Reference
_____________________________________________________________________________
o GS/OS Reference, Volumes 1 and 2
Epson is a registered trademark of Seiko Epson Corporation.
PostScript is a registered trademark of Adobe Systems, Incorporated.