Anyone knows a tools masm32 or something that lets me to compile and link in DOS real mode? I needed because, I am doing PCI enumeration SMBUS related applications and any bus request is not working in DOS Virtual Mode which is expected. Thanks!
You need to be able to assemble and link under real-mode DOS, or just create real-mode DOS applications?
Quote from: MichaelW on February 20, 2007, 07:01:21 AM
You need to be able to assemble and link under real-mode DOS, or just create real-mode DOS applications?
yes former is true, I wanted to assemble and link under dos mode.
i am writing PCI enumeration application that runs in dos mode, but doesn't work on virtual mode. So I have to reboot to dos everytime I run or debug the application, if I compile and link in windows. that is why.
Have a look for a driver (e.g. GIVEIO.SYS) that will let a user-mode program access I/O ports in 2000/XP.
This will let you fine-tune the actual PCI I/O and makes writing a DOS program much easier...
Quote from: sinsi on February 24, 2007, 07:24:06 AM
Have a look for a driver (e.g. GIVEIO.SYS) that will let a user-mode program access I/O ports in 2000/XP.
This will let you fine-tune the actual PCI I/O and makes writing a DOS program much easier...
Or just use HX in plain DOS (http://www.japheth.de/Download/hxrt.zip
Quote from: japheth on February 24, 2007, 08:46:04 AM
Or just use HX in plain DOS (http://www.japheth.de/Download/hxrt.zip
So this will let you run ML and LINK from DOS (i.e. DOS 6.22) - no Windows?
Quote from: sinsi on February 24, 2007, 08:57:00 AM
So this will let you run ML and LINK from DOS (i.e. DOS 6.22) - no Windows?
It should at least - who needs this Widows crap? :8)
guyenMasm,
NASM is one possibility. The DOS versions, both the assembler and the disassembler, are 16-bit DOS programs. The most recent version is available here:
http://www.kernel.org/pub/software/devel/nasm/binaries/dos/
The NASM32 project includes some useful macros that should work with the DOS version:
http://www.asmcommunity.net/projects/nasm32/
Neither of the packages includes a 16-bit linker. NASM can create a COM file directly, but to create a (proper) EXE you must have a linker.
thanks all, I actually found the masm611 that installs and builds under real mode.