So, I've been wondering about this dev tool flag, -debug_window, and if it was of any particular use. I tried setting it in the launcher - nothing happens. I tried setting it in a debug instance via MSVC - nothing happens.
So, then I go code hunting, and eventually find this:
void outwnd_init(int display_under_freespace_window)
{
if (outwnd_inited)
return;
/*
if (Cmdline_debug_window) {
hOutputThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)outwnd_thread, (LPVOID)display_under_freespace_window, 0, &OutputThreadID);
//SetThreadPriority(hOutputThread, THREAD_PRIORITY_TIME_CRITICAL);
#ifndef NMONO
// set up the monochrome drivers
if ( (mono_driver = CreateFile("\\\\.\\MONO", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL)) == ((HANDLE)-1)) {
outwnd_printf2("Cannot get handle to monochrome driver.\n");
mono_init();
}
atexit(close_mono);
#endif
}
*/
outwnd.cpp:1182
Wondering why the entirety of the debug window initialization is blocked out, I further hunt. First on the forums to no avail, and finally to the svn logs themselves. It turns out that taylor was the one who initially put the /* */ block there, and I don't really see why he did since it works on Windows perfectly. (Other systems might have trouble, but this I haven't been able to test this yet).
At any rate, I don't find the debug window's usage particularly helpful, all it does is just spit out the fs2_log.txt in nearly real-time. However, seeing as the SCP is gradually getting more in-game debugging tools, I was wondering if it would be viable to reuse the window for something... such as a debug console that can do some nifty things like value watching, or maybe just hold other debug spew info instead of cluttering up the game screen?