Mail Archives: djgpp/2000/12/12/18:28:04
Jack Klein wrote:
>
> Why do you assume you need DPMI at all? You have no need whatsoever
> to access DOS calls with BC 5.02. Just build Win32 console
> applications and you can use all of the standard C and C++ library
> functions. There is no need for DPMI.
>
> Jack Klein
Oops, my apologies. I didn't state clearly enough in the original message
that this course needs to to a lot of C <--> ASM glue code (it's a
systems-programming course, things like writing keyboard handling ISRs,
parallel-port drivers, etc.). So really we won't be using libraries
much at all -- it's all 'close to the metal' type stuff.
Our concern is whether it will be easy to convert the existing DJGPP
C and GAS assembler source to Borland's environment; VESA video BIOS calls
are also a big concern, as there are graphics assignments using it.
We have the Borland 5.00 compiler which has full support for standard
DOS program compilation, and also the newer version which has no DOS
support at all, so I guess my questions really are:
1) If we use the 5.0 compiler and make 16-bit DOS apps, is it true we don't
need DPMI at all, and can just call BIOS the traditional way, and bang
on hardware directly?
2) If we use the newer compiler, and compile win32 console apps, can these
access the BIOS and hit hardware directly as well? If so, does it look
the same from the assembly-coder's standpoint (other than being able
to use a flat address space, I suppose, which would be nicer)? The
textbooks on PC Assembler/Hardware Architecture all use DOS apps in their
examples of accessing hardware/BIOS directly. We NEED the development
environment to be somewhat compatible with the textbook.
3) And can we use VESA BIOS calls with either of the above schemes, without
DJGPP? (IE, what kind of support for VESA calls is there in TASM, Borland
C/C++)?
I hope this is clearer. Thanks again in advance,
-Russ
- Raw text -