Foundation Development History - Beyond 1.0, The Saga Continues...

Version 1.0

1.0, 20-24Jul82     1.0 WAS INTRODUCED ON 25JULY92 AT APPLE EXPO CENTRAL

       -Final full build with resources optimized and a few last minute tweaks.
       -Put a temporary patch in the item dependency window list build code to
        prevent a multiply used item from appearing multiple times as a child
        of the first item that uses it.
       -Disabled ScriptEdit dispatching in the selector menus.

1.0.1b1, 02Aug92

       -Re-enabled ScriptEdit dispatching in the selector menus.
       -Generalized setTypeMenu to also support a menubar based selector menu.
       -Removed all entropy code (non-compiling since 1.0b13).
       -Fixed fWinPtr reference hi-word as patched into the REM headers.
       -Revised Item Dependency list member code.

1.0.1b2, 08Aug92

       -Fixed Optimize bug when handling write-protected items. (Thanks, Ken!)

1.0.1b3, 15Aug92

       -b2 fix left the res changed bit set after a write call which confused
        the world later whenever an update was performed that included an item
        which used a res converter.  Essentially, this resulted in an update
        being performed which could not find an appropriate converter.

1.0.1b4, 16Aug92

       -Corrected some spelling mistakes in the StringList resource and made a
        few other minor changes while I was there.

1.0.1b5, 09Sep92

       -Fixed a fatal bug in the shared close window routine where a user could
        close more windows than were open if oa-W was repeated fast enough.

1.0.1b6, 16Sep92

       -Added "Remove Resource Names" checkbox to the initial Optimize "dialog"
        which strips all resource names from the file.  In doing this I found
        a piece of code that was improperly leaving a slew of internal shell
        data handles locked, and corrected it.

1.0.1b7, 19Sep92

       -Fixed the selector window update code to select the first member in the
        list if an item ID is changed, or an item is deleted.

1.0.1b8, 28Sep92

       -Fixed an editor dispatching problem where ScriptEdit would be called in
        place of a native editor from the AddType menu if the HEXREM file was
        before the native editor in tne Foundation.Edit folder.
       -Added support for Paste option window allowing choice of overwriting
        existing resources or adding additional resources with new resource
        numbers.
       -Fixed a few minor spots where the GrafPort was not set properly on
        creating a new window.

1.0.1, 30Sep92

       -With Jim as scout, we found the random, elusive Foundation "slow-down"
        bug, and killed it forever.  All known bugs are accounted for and in
        whatever afterlife bugs go to (I think they're recycled).
       -Added 3 ControlDefProcs for use by ScriptEdit (more info later :)
       -Missed resource file setup around the final "remove names" confirmation
        alert.

1.0.2b1, 10Oct92

       -Discovered that cancel on quit for a changed file does not clear the
        close execution for subsequent files, which also requested cancel/save
        selection.
       -The key equivalent options for the default button (Continue) in the
        duplicate paste options window were set improperly. <Jeff Paquette
       -Selecting a default file to load at startup in preferences left the
        default file state as inactive. <James Smith

1.0.2b2, 19Oct92

       -Fixed the remMarquee (callback 38) init action to defer automatically
        to a non-update pending state.  Further optimized code as well.
       -Created a workaround for a system feature that would not return an
        error on opening a file with a bad resource map on an OpenResourceFile
        call. <Josef Wankerl

1.0.2b3, 24Oct92

       -Really fixed remMarquee (callback 38) stop pattern misregistration
        problem for good.  Added 320 mode patterns, and further optimized it
        a bit more.

1.0.2b4, 31Oct92

       -Generalized fColorPalette (callback 39) to allow an editor to pass
        a picture resource ID (type $8002) and other information to define a
        custom palette selection popup window.  Added bounds checking for
        input default value against calculated total items.
       -fGetKernalID will now return a shell value of $0101.
       -Carved Megan's pumpkin.
       -Added remStartRes access for user defined ScriptEdit templates in the
        Foundation.Data file.
       -Carved Gwen's pumpkin.
       -Increased the dp segment to 10240 bytes as a shotgun approach to what
        may be a recursive stack overshoot (definitely overkill but then again
        this is a beta release and I can be eccentric if I want to)

1.0.2b5, 06Nov92

       -Spent over 30 hours in GSBug (thanks Dave) and ORCA/Debugger (Mike too)
        and now feel that I truely saw GOD in the process!  Heaven knows I used
        his/her name once or twice in the process.  The quick change to support
        the oversight of pref file based ScriptEdit remStartRes resources broke
        a few other things.  All is well in mudville.
       -Encountered a couple of not-quite-sane-but-not-offensive pieces of code
        and excised same.
       -The dp segment has been returned to 8192 bytes.
       -Added a few extra MoonCursor calls during initial startup to get rid of
        the WatchCursor provided by QDAux startup sooner and show the user that
        we're really in control :)

1.0.2b6, 10Nov92

       -Did final clean up and definition of fColorPalette (callback 39) to
        provide for a neater look (more whitespace.)  Additionally, if the
        initial location is specified as 0,0 the top-left is set to the current
        mouse loc. *** CURRENTLY BEING ENHANCED ***
       -Added dependency support for rFinderPath <-> rVersion as implemented in
        Finder created desktop files.  This was originally overlooked in the
        dependency mapping.
       -Removed init and action delay code from fMarquee (callback 38).

1.0.2b7, 17Nov92

       -Added read-only checking on a Save operation forcing Save As.  Also now
        report any errors that occur during a Save or Save As. <Jim Murphy

1.0.2b8, 29Nov92

       -All dependency code and resource loader code has been changed to force
        no-bank cross placement if the resource is small enough to fit in one
        bank.  We are playing God here, but need to insure that resource data
        can be parsed in high-level language structures that fail to resolve
        offsets across bank boundaries.  fSpecialMagic preserves all other
        reasonable attributes while doing this.  The other shell internal
        functions clear all attributes temporarilly (copy resources, find
        host, and add child) while applying no-cross if possible.
       -The shell version which is compared to the minShell version in REMStart
        resources is now dynamically extracted from the shell.
       -Removed sound tool from the tool StartStop resource.  Mike's SoundREM
        still works, and the shell is compatible with sound CDEV noises now.
       -Updated "Matt's Annoying Alert"

1.0.2b9, 3Dec92 (THIS WILL BE THE FINAL 1.0.2 SHELL IF NO BUGS ARE REPORTED)

       -Added rIcon dependency support for rAlertString to allow custom icon
        resolution. (match rule: icon spec $31, with long matching an existing
        rIcon resource in either the workfile or Sys.Resources)
       -Fixed a pervasive bug in the dependency parsing of remFindOwner which
        appears to have been with us since 1.0.2.b6.  Hand optimizing source
        can create problems, and remFindOwner is a four-page function from the
        bowels of hell anyway...  I promoted the 5 major dependency functions
        to more supportable hell, making the code smaller than it was before
        even after adding the rAlertString support :)

1.0.2

1.0.3b1, 1Jun93 (The official 1.0.3 beta)

       -Unported the 1.0.3 code from ORCA/C 2.0 back to 1.3 due to numerous
        Westerfieldisms.
       -Added write-protected media checking in getPrefs because that was the
        first place wrere natural access tests could be implemented.
       -Started searching for the "list-hell" bug... To be continued.
       -Added $8004 proc $00000001 datafield and $1986 rDataList support to
        remLoadSpecial and remTwiddleSpecial.
       -Added fGetFileName (callback 41) to allow an editor to get the name of
        the file it's working on.  This was implemented so the rBundle editor
        could assume things in the Desktop file that aren't valid in a normal
        apps rBundle resource structure.
       -fSelectorMenu (callback 35) now REALLY uses a menu definition for the
        additional user items (if anyone really cares.)
