Click to See Complete Forum and Search --> : Tools for real mode msdos
doublehook
October 23rd, 2002, 01:11 PM
I need information about compilers, linkers and
editors for programmig real mode msdos programs.
I want to make old "com" and "exe" msdos programs.
Actually I work with Visual C++ and MASM for Windows,
I think I can't make old exe programs with thouse IDEs.
Thak you.
JMS
October 23rd, 2002, 01:55 PM
hmmm.... as I remember Visual C++ version 1.52 was the last version which allowd you to create 16 bit dos programs... was also the last version which allowed you to create Windows 3.1 programs.. Ok so the way to create a com file is to just create an exe with this compiler then there was a command line tool which came with the compiler called exetobin or exe2bin or something like that. It would take an exe file and convert it to a com file. there were issue though. I believe only relatively small programs could become com files as com executables didn't have all the abilities of the newer more advanced exe executalbes.. Think the exe's allowed for more segmented memory or segmented memory where com's were just simple binary dumps of what would be executed..
Good luck.. if you know of a MSDN registered dude the 1.52 version of Visual C++ is still availible on the Microsoft Website if you have the privleges to go out and get it..
Paul McKenzie
October 23rd, 2002, 02:49 PM
Originally posted by doublehook
I need information about compilers, linkers and
editors for programmig real mode msdos programs.
I want to make old "com" and "exe" msdos programs.
Actually I work with Visual C++ and MASM for Windows,
I think I can't make old exe programs with thouse IDEs.
Thak you. This was discussed briefly a week ago. You can get a free DOS compiler from Digital Mars. Their C++ compiler is available at www.digitalmars.com.. It formerly was the Symantec C++ compiler, but Walter Bright (the creator) took complete rights to it, and is now distributing it for free. He's even updating it constantly so as to keep up with the C++ language specs.
From what I know of, the MSVC 1.52c is not a free compiler, and you have to be a subscriber of MSDN to get it. Too much money for an outdated C++ compiler if you ask me. The Digital Mars compiler is a command-line driven C++ compiler, but you get an IDE and extensive HTML documentation if you pay the $30 for the CD. I've used it many times and have had no problems building 16-bit EXE files with it. So if you're interested in creating 16-bit real mode programs using "modern C++", i.e. templates, streams, exception handling, etc., plus various C99 extenstions it's the only 16-bit compiler I know of that does this.
Regards,
Paul McKenzie
Paul McKenzie
October 23rd, 2002, 02:52 PM
I just realized that the full documentation is at the digital mars site:
http://www.digitalmars.com./ctg/ctg.html
Regards,
Paul McKenzie
doublehook
October 24th, 2002, 08:38 PM
Thank You. :-)
dumah
October 26th, 2002, 02:12 PM
You can produce COM files with MASM (ML.exe), but you will need an old version of the linker to link it...
Iczelion provides a copy of the old LINK.exe on his site
doublehook
October 28th, 2002, 03:17 PM
Thank You Again. I understand why when I tried
to do it with MASM it failed. I remember the
compilation returns success but the linker returned
"fixup" error.
dumah
October 28th, 2002, 03:38 PM
Originally posted by doublehook
Thank You Again. I understand why when I tried
to do it with MASM it failed. I remember the
compilation returns success but the linker returned
"fixup" error.
Yeah as long as you set the right directives and pass the right switch to ML (to tell it that this is a 1 section prog) then you get no complaints, but as the linker expects to output PE executables, it gets a little upset when you want a COM file :)
As I said, Iczelion's (http://spiff.tripnet.se/~iczelion/) site offers the old linker for download, and that is happy to chuck out COM files
codeguru.com
Copyright Internet.com Inc., All Rights Reserved.