diff --git a/Mac/Include/macglue.h b/Mac/Include/macglue.h
index 3a251e1..372871e 100644
--- a/Mac/Include/macglue.h
+++ b/Mac/Include/macglue.h
@@ -129,6 +129,7 @@
 /* from macmain.c: */
 void PyMac_Exit(int);
 void PyMac_InitApplication(void);
+void PyMac_OutputSeen(void);
 #ifdef USE_MAC_APPLET_SUPPORT
 void PyMac_InitApplet(void);
 #endif
diff --git a/Mac/Modules/macosmodule.c b/Mac/Modules/macosmodule.c
index 339de1a..b3dec54 100644
--- a/Mac/Modules/macosmodule.c
+++ b/Mac/Modules/macosmodule.c
@@ -691,6 +691,18 @@
 	return Py_None;
 }
 
+static char OutputSeen_doc[] = "Call to reset the 'unseen output' flag for the keep-console-open option";
+
+static PyObject *
+MacOS_OutputSeen(PyObject *self, PyObject *args)
+{
+	if (!PyArg_ParseTuple(args, ""))
+		return NULL;
+	PyMac_OutputSeen();
+	Py_INCREF(Py_None);
+	return Py_None;
+}
+
 static PyMethodDef MacOS_Methods[] = {
 #if !TARGET_API_MAC_CARBON
 	{"AcceptHighLevelEvent",	MacOS_AcceptHighLevelEvent, 1,	accepthle_doc},
@@ -711,6 +723,7 @@
 	{"MaxBlock",		MacOS_MaxBlock,		1,	MaxBlock_doc},
 	{"CompactMem",		MacOS_CompactMem,	1,	CompactMem_doc},
 	{"KeepConsole",		MacOS_KeepConsole,	1,	KeepConsole_doc},
+	{"OutputSeen",		MacOS_OutputSeen,	1,	OutputSeen_doc},
 	{NULL,				NULL}		 /* Sentinel */
 };
 
diff --git a/Mac/Python/macmain.c b/Mac/Python/macmain.c
index 8d2d8f7..a96af4b 100644
--- a/Mac/Python/macmain.c
+++ b/Mac/Python/macmain.c
@@ -539,6 +539,15 @@
 }
 
 /*
+** Reset the "unseen output" flag
+*/
+void
+PyMac_OutputSeen()
+{
+	gusisioux_state = GUSISIOUX_STATE_LASTREAD;
+}
+
+/*
 ** Terminate application
 */
 void
