diff --git a/src/sbbs3/jsexec.c b/src/sbbs3/jsexec.c
index bb617b534eadda9df82d320c6fd4cf69fa1faf72..6b7988dccfc7a9e3d52302f634675d42e8ed1fac 100644
--- a/src/sbbs3/jsexec.c
+++ b/src/sbbs3/jsexec.c
@@ -61,6 +61,7 @@ FILE*		errfp;
 FILE*		nulfp;
 FILE*		statfp;
 char		revision[16];
+char		compiler[32];
 char*		host_name=NULL;
 char		host_name_buf[128];
 BOOL		pause_on_exit=FALSE;
@@ -75,12 +76,20 @@ BOOL		daemonize=FALSE;
 
 void banner(FILE* fp)
 {
-	fprintf(fp,"\nJSexec v%s%c-%s (rev %s) - "
+	fprintf(fp,"\nJSexec v%s%c-%s (rev %s)%s - "
 		"Execute Synchronet JavaScript Module\n"
 		,VERSION,REVISION
 		,PLATFORM_DESC
 		,revision
+#ifdef _DEBUG
+		," Debug"
+#else
+		,""
+#endif
 		);
+
+	fprintf(fp, "Compiled %s %s with %s\n"
+		,__DATE__, __TIME__, compiler);
 }
 
 void usage(FILE* fp)
@@ -564,6 +573,10 @@ static BOOL js_init(char** environ)
     if((js_cx = JS_NewContext(js_runtime, js_cx_stack))==NULL)
 		return(FALSE);
 
+	if(stack_limit)
+		fprintf(statfp,"JavaScript: Thread stack limit: %lu bytes\n"
+			,stack_limit);
+
 	JS_SetErrorReporter(js_cx, js_ErrorReporter);
 
 	/* Global Object */
@@ -596,7 +609,6 @@ long js_exec(const char *fname, char** args)
 	uint		line_no;
 	char		path[MAX_PATH+1];
 	char		line[1024];
-	char		compiler[32];
 	char		rev_detail[256];
 	size_t		len;
 	char*		js_buf=NULL;
@@ -657,8 +669,6 @@ long js_exec(const char *fname, char** args)
 		,STRING_TO_JSVAL(JS_NewStringCopyZ(js_cx,revision))
 		,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE);
 
-	DESCRIBE_COMPILER(compiler);
-
 	sprintf(rev_detail,"JSexec %s%s  "
 		"Compiled %s %s with %s"
 		,revision
@@ -780,6 +790,7 @@ int main(int argc, char **argv, char** environ)
 	branch.auto_terminate=TRUE;
 
 	sscanf("$Revision$", "%*s %s", revision);
+	DESCRIBE_COMPILER(compiler);
 
 	memset(&scfg,0,sizeof(scfg));
 	scfg.size=sizeof(scfg);