[M3devel] new NT386 snapshots
Randy Coleburn
rcoleburn at scires.com
Thu May 8 23:53:26 CEST 2008
Jay:
I have a working serial-I/O module for Windows and one for HPUX, so maybe I should compare it to what is out there now and make some fixes.
Regards,
Randy
>>> Jay <jayk123 at hotmail.com> 5/8/2008 5:18 PM >>>
The code in 4.1 in clearly, by inspection, incorrect. I'll have to test it out and debug it though. Inspection isn't enough.
I have no idea why my mail gets truncated. I agree it is annoying.
F:\products\modula3\CONTRIB\SRC-M3\m3\m3core\src\runtime\WIN32\RTArgs.m3(7):(* In Windows/NT, "envp" points at a null-terminated block of
F:\products\modula3\CONTRIB\SRC-M3\m3\m3core\src\runtime\WIN32\RTArgs.m3(144): envp : Ctypes.char_star := RTLinker.info.envp;
f:\products\modula3\CONTRIB\SRC-M3\m3\m3linker\src\MxGen.m3(117): Out (s, " _ADDRESS envp;", s.eol);
f:\products\modula3\CONTRIB\SRC-M3\m3\m3linker\src\MxGen.m3(480): Out (s, " /* envp */ 0,", s.eol);
f:\products\modula3\CONTRIB\SRC-M3\m3\m3linker\src\MxGen.m3(498): Out (s, " _m3_link_info.envp = (_ADDRESS)GetEnvironmentStrings();", s.eol);
f:\products\modula3\CONTRIB\SRC-M3\m3\m3linker\src\MxGen.m3(501): Out (s, "int main (argc, argv, envp)", s.eol);
f:\products\modula3\CONTRIB\SRC-M3\m3\m3linker\src\MxGen.m3(504): Out (s, "char **envp;", s.eol);
f:\products\modula3\CONTRIB\SRC-M3\m3\m3linker\src\MxGen.m3(512): Out (s, " _m3_link_info.envp = (_ADDRESS)(envp);", s.eol);
> serial i/o?
I haven't touched it, looked it really, or heard of any problems.
I looked at it for purposes of NT386GNU but didn't really do anything.
Pixmaps need debugging, indeed.
I found my 4.1 CD. :)
- Jay
Date: Thu, 8 May 2008 16:17:37 -0400
From: rcoleburn at scires.com
To: m3devel at elegosoft.com
Subject: Re: [M3devel] new NT386 snapshots
Jay:
I have both console and gui programs built using 4.1 that do pull stuff out of the environment. I've not noticed any problems with either mode.
>From my perspective, the old 4.1 seems more reliable than the current system in a number of respects. I have a new project with a hard deadline that I would like to use the new cm3 system for, but until these problems (pixmaps, buildstandalone, environ vars, serial i/o, etc.) can be resolved, I'm going to keep using 4.1 for my production work.
Regards,
Randy
>>> Jay <jayk123 at hotmail.com> 5/8/2008 2:46 PM >>>
http://modula3.elegosoft.com/cm3/uploaded-archives/
http://modula3.elegosoft.com/cm3/uploaded-archives/cm3-std-WIN32-NT386-d5.7.0.zip
http://modula3.elegosoft.com/cm3/uploaded-archives/cm3-min-WIN32-NT386-d5.7.0.zip
http://modula3.elegosoft.com/cm3/uploaded-archives/cm3-std-WIN32-NT386-d5.7.0-symbols.zip
These should have:
latest quake extensions
set relation fixes
other set fixes revealed through dynamic linking of one regression test
hypothetical ability to cross-build to AMD64_LINUX, AMD64_DARWIN
one jmpbuf size for all NT386 configurations (NT386, NT386GNU, NT386MINGNU)
Built with Visual C++ 9.0 Express, so you'll want:
http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en
Still more work to do though, e.g. assertion failures in unit tests, pixmap..
Fuller disclosure:
Something is leaking memory on my system such that "everything" starts "failing" and I have to reboot.
This isn't Modula-3 related.
Hopefully these files aren't damaged as a result.
Must be some buggy driver or something..
Aside:
The environment variable thingy has been bugging me a long time and I finally looked deeper at it.
It appears broken in CM3 4.x. I didn't check 3.x yet.
I'm still mulling a fix, and haven't run a repro of the break, but it's not a big deal either way.
Basically console apps use main that takes char** and gui apps use WinMain that doesn't get environment variables but the generated code calls GetEvironmentStrings() which returns null separated strings.
Must be that hardly anyone uses environment variables in Modula-3 on Win32 for this to have lingered so long, at least gui apps.
- Jay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20080508/ecb35793/attachment-0002.html>
More information about the M3devel
mailing list