From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kai Ruottu To: Keith Seitz Cc: Insight Maling List Subject: Re: Insight port to the 'original' Windows Date: Thu, 10 May 2001 02:27:00 -0000 Message-id: <3AFA5EC1.7B5D129C@freenet.hut.fi> References: X-SW-Source: 2001-q2/msg00214.html Keith Seitz wrote: > On Thu, 4 May 2000, Kai Ruottu wrote: > > > The result is attached as an screenshot showing the problem.... > > You ARE adventurous, aren't you? :-) > Perhaps.... > > Has someone to give a clue what could cause this? Is there some > > fundamental feature (threads etc.) taken into work into the Insight > > scripts etc. in 1999 causing this? Ok, as seen in the source window, > > all the stuff in the lower part has not been drawn.... > > For some reason, the srctextwin has not drawn itself. It could be a bug in > Insight or a bug in Tcl. I would start Insight withe environment varialble > GDBTK_DEBUG set (to two) in your environment. Of course, I don't know if > such a thing exists on the original version of windows, so you may have to > edit your gdbtk.ini. There is a section labeled "windows" with the > property "active={list of windows to open when started". Add "DebugWin". > This will automatically bring up the DebugWindow when you start Insight. > Maybe that will provide some insight into your problem. (Ok, I couildn't > resist that one. :-) Unfortunately the Debug Window is one of those windows not starting :-( The others not starting are the Memory, Console and HelpTopics while all kind of others seem to work at least somehow.... Setting the GDBTK_DEBUG adds the Debug Window -choice into the View-pulldown.... And makes the Insight to crash silently without any kind of visible error messages when trying to start the non-working windows. Without it these things just don't do anything, like crash the program.... Ok, I had forgot some basic things.... The first is that the DLLs for Win32s, at least the 16-bit 'TCL1680.DLL', must be produced with either Borland C++ 4.5 (or newer for the 32-bit DLLs) or with MSVC [456] and MSVC 1.5 (for the 16-bit DLL). Perhaps mixing the Mingw-produced 32-bit DLLs with the Borland/MS-produced 16-bit one could also succeed but I wouldn't be sure about that.... The results I have now got, came from using the one year old DLLs where the 'TK80.DLL' was made from the 8.0pl2 sources and with BCC 4.52, just as were the TCL*80.DLLs, but built from the 8.04 sources.... The 8.04-version TK80.DLL didn't seem to work at all when I built the DLLs. The 98r2-Insight used 8.0pl2 but the newer 8.04 DLLs seemed to work just as well or better with the 98r2-based Insights, anyway the newer Insights seem to require the 8.04-versions... Really a mess of DLLs now.... So, getting working DLLs for Win32s seems to be the biggest problem. The tcl/tk/itcl/itk 8.04 and 3.0 sources seem to have support for Borland C++ and MSVC (besides for GCC), but probably the support needs some fixing, my first try with BCC 4.52 (again) produced DLLs which caused all kind of "Unhandled Exception"- messages... I also tried with the quite current 20010501 weekly snapshots and the resulted Insight worked quite identically with the 5.0 when using the 5.0 scripts, but produced only the frame for the Source Window, no menubar, no toolbar, just the plain window when using its own scripts.... BTW, I produce the Insights under Linux using Linux-x-Mingw cross-tools for Win32/Win32s hosts. There are things like the need to cut the script and image filenames to 8 chars so that Win3.1/Win32s can find them, so perhaps there are still some not found / not yet renamed files I'm not aware of.... The errors/warnings must first be get visible. I fixed the 'verror()' in 'gdb/utils.c' to output the messages via MessageBox'es, not via the unexisting 'Win32 console', but this probably wasn't enough because the crashes after setting the GDBTK_DEBUG don't cause any messages.... Perhaps when checking everything, it starts to work.... One thing I found via the new MessageBoxes was that for some reason the function/symbol 'Tcl_Gets' is not included into the Mingw-produced 8.04 DLLs but the BCC-produced ones have it.... The tcl/tk-8.04, itcl-3.0 and tix-4.1 docs say that Win32s is supported and the DLLs should work, but I remember finding prebuilt 8.04-DLLs only for Win32 without the TCL1680.DLL and including the Win32-only MSVCRT.DLL, compiled with MSVC 5.0 .... Anyhow trying the newer BCC 5.2, 5.3, 5.4 and 5.5 compilers for the 32-bit DLL stuff instead of the BCC 4.52 could help (or make things worse). But all this is just an experiment, the Win32s-port may as well remain in that 98r2-level for this early-90s opsys.... The tcl/tk-8.1 and newer then aren't supported for Win32s, so there would be a natural dead for the port later.... Cheers, Kai