diff --git a/Mac/Python/macmain.c b/Mac/Python/macmain.c
index 2fc7447..9f779f2 100644
--- a/Mac/Python/macmain.c
+++ b/Mac/Python/macmain.c
@@ -36,7 +36,7 @@
 #include <Events.h>
 #include <Windows.h>
 #include <Fonts.h>
-
+#include <Balloons.h>
 #ifdef __MWERKS__
 #include <SIOUX.h>
 #define USE_SIOUX
@@ -124,11 +124,13 @@
 
 	SET_OPT_ITEM(OPT_INSPECT, inspect);
 	SET_OPT_ITEM(OPT_VERBOSE, verbose);
-/*	SET_OPT_ITEM(OPT_SUPPRESS, suppress_print); */
+	SET_OPT_ITEM(OPT_OPTIMIZE, optimize);
 	SET_OPT_ITEM(OPT_UNBUFFERED, unbuffered);
 	SET_OPT_ITEM(OPT_DEBUGGING, debugging);
 	SET_OPT_ITEM(OPT_KEEPNORMAL, keep_normal);
 	SET_OPT_ITEM(OPT_KEEPERROR, keep_error);
+	SET_OPT_ITEM(OPT_OLDEXC, oldexc);
+	SET_OPT_ITEM(OPT_NOSITE, nosite);
 	/* The rest are not settable interactively */
 
 #undef SET_OPT_ITEM
@@ -142,6 +144,9 @@
 			DisposeDialog(dialog);
 			exit(0);
 		}
+		if ( item == OPT_HELP ) {
+			HMSetBalloons(!HMGetBalloons());
+		}
 		if ( item == OPT_CMDLINE ) {
 			int new_argc, newer_argc;
 			char **new_argv, **newer_argv;
@@ -169,11 +174,13 @@
 		
 		OPT_ITEM(OPT_INSPECT, inspect);
 		OPT_ITEM(OPT_VERBOSE, verbose);
-/*		OPT_ITEM(OPT_SUPPRESS, suppress_print); */
+		OPT_ITEM(OPT_OPTIMIZE, optimize);
 		OPT_ITEM(OPT_UNBUFFERED, unbuffered);
 		OPT_ITEM(OPT_DEBUGGING, debugging);
 		OPT_ITEM(OPT_KEEPNORMAL, keep_normal);
 		OPT_ITEM(OPT_KEEPERROR, keep_error);
+		OPT_ITEM(OPT_OLDEXC, oldexc);
+		OPT_ITEM(OPT_NOSITE, nosite);
 		
 #undef OPT_ITEM
 	}
@@ -233,6 +240,7 @@
 	/* Copy selected options to where the machine-independent stuff wants it */
 	Py_VerboseFlag = options.verbose;
 /*	Py_SuppressPrintingFlag = options.suppress_print; */
+	Py_OptimizeFlag = options.optimize;
 	Py_DebugFlag = options.debugging;
 	if ( options.noargs ) {
 		/* don't process events at all without the scripts permission */
@@ -243,6 +251,7 @@
 		/* Should we disable command-dot as well? */
 		PyMac_SetSchedParams(&scp);
 	}
+	/* XXXX dispatch oldexc and nosite */
 
 	/* Set buffering */
 	if (options.unbuffered) {
