Applying r22c1 branch mods back to the trunk.
diff --git a/Mac/Contrib/osam/OSAm.prj b/Mac/Contrib/osam/OSAm.prj
index 87ce163..c7e45bf 100644
--- a/Mac/Contrib/osam/OSAm.prj
+++ b/Mac/Contrib/osam/OSAm.prj
Binary files differ
diff --git "a/Mac/Distributions/\050vise\051/Python 2.2.vct" "b/Mac/Distributions/\050vise\051/Python 2.2.vct"
index 2576f38..e53f6f4 100644
--- "a/Mac/Distributions/\050vise\051/Python 2.2.vct"
+++ "b/Mac/Distributions/\050vise\051/Python 2.2.vct"
Binary files differ
diff --git a/Mac/Distributions/binary.exclude b/Mac/Distributions/binary.exclude
index ea770a4..e0b3b92 100644
--- a/Mac/Distributions/binary.exclude
+++ b/Mac/Distributions/binary.exclude
@@ -19,6 +19,8 @@
 *.orig
 *.prj
 *.prj.exp
+*.pyc
+*.pyo
 *.xSYM
 *.µ
 *.µ.exp
@@ -32,5 +34,3 @@
 Makefile*
 Setup.in
 [(]*[)]
-*.pyc
-*.pyo
diff --git a/Mac/Distributions/binary.include b/Mac/Distributions/binary.include
index e75b325..1c6f417 100644
--- a/Mac/Distributions/binary.include
+++ b/Mac/Distributions/binary.include
@@ -219,3 +219,5 @@
 (':pystone.py', None)
 (':setup.py', None)
 (':site-packages', None)
+(':Mac:ReadMe~0', None)
+(':Mac:Contrib:mpwsystem', '')
diff --git a/Mac/Distributions/dev.include b/Mac/Distributions/dev.include
index 65e1fbb..e7476e6 100644
--- a/Mac/Distributions/dev.include
+++ b/Mac/Distributions/dev.include
@@ -263,6 +263,9 @@
 (':Mac:Build:gdbm.mcp', None)
 (':Mac:Build:gdbm.mcp.exp', None)
 (':Mac:Build:gdbm.mcp.xml', None)
+(':Mac:Build:hfsplus.carbon.mcp', None)
+(':Mac:Build:hfsplus.carbon.mcp.exp', None)
+(':Mac:Build:hfsplus.carbon.mcp.xml', None)
 (':Mac:Build:icglue.carbon.mcp', None)
 (':Mac:Build:icglue.carbon.mcp.exp', None)
 (':Mac:Build:icglue.carbon.mcp.xml', None)
@@ -406,6 +409,7 @@
 (':Mac:mwerks:mwerks_plugin_config.h', ':Mac:mwerks:')
 (':Mac:mwerks:mwerks_shared_config.h', ':Mac:mwerks:')
 (':Mac:mwerks:mwerks_shcarbon_config.h', '')
+(':Mac:mwerks:mwerks_shlib_config.h', '')
 (':Mac:mwerks:mwerks_small_config.h', ':Mac:mwerks:')
 (':Mac:mwerks:mwerks_thrcarbonsm_config.h', None)
 (':Mac:mwerks:mwerks_threadsmall_config.h', '')
@@ -596,7 +600,16 @@
 (':readmefiles', None)
 (':setup.py', None)
 (':site-packages', None)
-(':Mac:Build:hfsplus.carbon.mcp.xml', None)
-(':Mac:Build:hfsplus.carbon.mcp.exp', None)
-(':Mac:Build:hfsplus.carbon.mcp', None)
-(':Mac:mwerks:mwerks_shlib_config.h', '')
+(':Mac:Build:_CG.carbon.old.mcp', None)
+(':Mac:Build:_CG.carbon.mcp.exp', None)
+(':Mac:Build:_CG.carbon.mcp', None)
+(':Mac:Build:_CarbonEvt.carbon.mcp.xml', None)
+(':Mac:Build:_CarbonEvt.carbon.mcp.exp', None)
+(':Mac:Build:_CarbonEvt.carbon.mcp', None)
+(':Mac:ReadMe~0', None)
+(':Modules:timemodule.c~1', None)
+(':Modules:timemodule.c~0', None)
+(':Mac:Build:PythonStandSmall.old.mcp', None)
+(':Mac:Build:PythonInterpreter.old.mcp', None)
+(':Mac:Build:PythonCore.axp', None)
+(':Mac:Build:_dummy_tkinter.old.mcp', None)
diff --git a/Mac/Include/macbuildno.h b/Mac/Include/macbuildno.h
index 6eda004..ae377c1 100644
--- a/Mac/Include/macbuildno.h
+++ b/Mac/Include/macbuildno.h
@@ -1 +1 @@
-#define BUILD 116
+#define BUILD 121
diff --git a/Mac/ReadMe b/Mac/ReadMe
index 79a94ad..9745090 100644
--- a/Mac/ReadMe
+++ b/Mac/ReadMe
@@ -1,9 +1,14 @@
-How to install Python 2.2b2 on your Macintosh
+How to install Python 2.2c1 on your Macintosh
 ---------------------------------------------
 
+This is a release candidate for MacPython 2.2, please report any problems as
+soon as possible, by email to pythonmac-sig@python.org.
+
 This is a MacPython that can run on classic MacOS (from 8.1
 onwards) and natively on MacOSX. The installer tries to work out whether you can
-use the Carbon version or not.
+use the Carbon version or not. For Mac OS X users: this version of Python
+does not run from the command line, it is a pure "Mac only" app. Use the standard
+unix Python from the commandline, the two Pythons will be merged in the future.
 
 You should definitely read the Relnotes file too, and the section below about
 toolbox module reorganization. You should also read :Misc:NEWS, which lists
@@ -62,6 +67,11 @@
 classic PPC, and they are normal classic modules. Also note that some
 modules you may think of as toolbox modules (such as Waste) really are not,
 and they are not in the Carbon package.
+
+Also, all toolbox modules have been updated to Universal Headers 3.4, and
+are (for classic PPC) weak-linked against InterfaceLib so that they should
+work on all systems back to MacOS 8.1. Calling an unimplemented function will
+raise an exception, not crash your interpreter.
   
 Another change related to the OSX growth path is that there is a new module
 macresource that you can use to easily open a resource file accompanying your
@@ -161,7 +171,7 @@
 
 Two items are installed in the system folder: the interpreter shared
 libraries PythonCore and PythonCoreCarbon lives in the Extensions
-folder and the "Python 2.2b2 Preferences" file in the Python subfolder
+folder and the "Python 2.2c1 Preferences" file in the Python subfolder
 in the Preferences folder. All the rest of Python lives in the folder
 you installed in.
 
@@ -211,9 +221,9 @@
 whether to upgrade. The bad news is that your old preference settings
 are lost and you have to set them again.
 
-After you are satisfied that 2.2b2 works as expected you can trash
+After you are satisfied that 2.2c1 works as expected you can trash
 anything in the system folder that has "python" in the name and not
-"2.2b2".
+"2.2c1".
 
 The ConfigurePython... applets will try to detect incompatible
 preferences files and offer to remove them. This means that re-running
@@ -246,7 +256,8 @@
 Stern, Gordon Worley, Oliver Steele, M. Papillon, Steven Majewski, David
 Goodger, Chris Barker, Luc Lefebvre, Tattoo Mabonzo K., Russell Finn,
 Tom Bridgman, Russel Owen, Pascal Oberndoerfer, Dean Draayer,
-Alexandre Parenteau, Donovan Preston
+Alexandre Parenteau, Donovan Preston, Daniel Brotsky, Jason Harper,
+Nitin Ganatra, 
 and all the other people who provided feedback, code or both!
 
 MacPython includes waste, a TextEdit replacement which is (c) 1998
diff --git a/Mac/Relnotes b/Mac/Relnotes
index 2bfe003..3d99c13 100644
--- a/Mac/Relnotes
+++ b/Mac/Relnotes
@@ -1,8 +1,8 @@
-Changes in 2.2b2 since 2.1.1
+Changes in 2.2c1 since 2.1.1
 ----------------------------
 
 These release notes refer to Mac-specific changes only. See NEWS (in the Misc folder)
-for machine-independent changes. Changes that are new in 2.2b2 are flagged as such.
+for machine-independent changes. Changes that are new in 2.2c1 are flagged as such.
 
 
 - The main change is that all toolbox modules have moved to a package called Carbon.
@@ -11,20 +11,27 @@
   some open questions and join the discussions on pythonmac-sig if you have anything
   to contribute. Aside from reducing clutter this change will also benefit the
   port to Mach-O/OSX Python later.
+- All toolbox modules have been updated to Universal Headers 3.4. [2.2c1]
+- Toolbox modules are weaklinked against InterfaceLib (for PPC builds) and raise
+  an exception when you call an unimplemented one on an old MacOS. [2.2c1]
 - On input MacPython now accepts either \n (unix style) or \r (mac style) newlines
   for text files. This behaviour can be turned off with a preference.
   This is an experimental feature; again: feedback is requested.
+- The IDE looks better on OS X, but still not as good as on OS9. [2.2c1]
 - Command-dot handling has been improved a lot: scripts are now much easier to interrupt,
-  and they only scan for cmd-. while in the foreground. [2.2b2]
-- "Copy" from the MacPython console window was always disabled. Fixed. [2.2b2]
-- This release should run on MacOS 8.1 again. [2.2b2 build 116]
-- A new, rather different GUSI I/O library is used. Please report any strange behaviour
-  with I/O to the pythonmac-sig mailing list! [2.2b2]
+  and they only scan for cmd-. while in the foreground.
+- "Copy" from the MacPython console window was always disabled. Fixed.
+- This release should run on MacOS 8.1 again.
+- A new, rather different GUSI I/O library is used.
+- time.time() returns positive values again. [2.2c1]
 - There is a new module macresource which makes it easier to open a resource file
   accompanying your script when the script is not (yet) converted to an applet.
   This module will later also do the right thing in Mach-O/OSX Python.
+- (Carbon only) experimental modules Carbon.CG (CoreGraphics) and CarbonEvt have
+  been added. [2.2c1]
 - A new, experimental module hfsplus is included, which gives access to some of the
-  functionality of the HFS+ API. [2.2b2]
+  functionality of the HFS+ API.
+- A new, experimental module gives access to Carbon Events. [2.2c1]
 - Threads had a stack that was too small for many serious Python applications (20K).
   They now get 64K. There is still no overflow check, though.
 - Garbage collection and the gc module have (finally) been enabled.
@@ -48,9 +55,7 @@
 What is not in this distribution
 --------------------------------
 
-- Stackless Python/microthreads hasn't been ported to 2.2 yet. If/when it becomes available
-  Just will undoubtedly announce it on pythonmac-sig and the MacPython homepage.
-- The toolbox modules have not been updated to Universal Header 3.4 or CarbonLib 1.4 yet.
+- The toolbox modules have not all been updated to Universal Header 3.4 or CarbonLib 1.4 yet.
 
 Known problems
 --------------
@@ -58,13 +63,14 @@
 This list is probably incomplete, more problems may be listed on the MacPython homepage,
 http://www.cwi.nl/~jack/macpython.html.
 
-- MacPython 2.2b2 (and MacPython 2.1) will not run correctly on a multiprocessor MacOS X
+- MacPython 2.2 (and MacPython 2.1) will not run correctly on a multiprocessor MacOS X
   machine, it will quickly deadlock during I/O operations. The GUSI I/O library is suspected,
   hints/clues/workarounds are solicited.
 - Tkinter does not work under Carbon.
 - The IDE and Tkinter do not work together. Run tkinter programs under PythonInterpreter.
 - Tkinter file events do not work, unless you have opened the file through Tcl (but then
   you cannot access it from Python).
+- The IDE object and class browser look funny on OSX, but they work fine.
 - Aliases may not work in sys.path entries.
 - PythonInterpreter used interactively will eat a lot of processor cycles. You should use
   PythonIDE for interactive work and PythonInterpreter for scripts only. This is especially