[comp.sys.ibm.pc] Use of BIOS in 386 mode

moll@umn-cs.CS.UMN.EDU (Rick Moll) (02/20/89)

Can a program running in paged/protected 386 mode still make use of
the BIOS routines, which are presumably 8086 code, to service I/O
interrupts?  If so, how is it done?

I have a CSS 80386 motherboard with an Award BIOS and some vanilla AT
type devices (EGA, Seagate 251, etc.).  I was thinking of playing with
some standalone 386 programs and wondered if I'd have to write my own
low-level I/O.

If it isn't possible for me to use the BIOS, where do I get
documentation on low-level operation of the I/O devices (register
addresses and layouts, function codes, etc.)?

I'll be grateful for any advice.
-- 
Richard J. Moll			...rutgers!umn-cs!moll 
				moll@umn-cs.cs.umn.edu

mcdonald@uxe.cso.uiuc.edu (02/20/89)

>Can a program running in paged/protected 386 mode still make use of
>the BIOS routines, which are presumably 8086 code, to service I/O
>interrupts?  If so, how is it done?

Actually running in 386 mode? No.

On the other hand, if you didn't REALLY mean "standalone" but would
be happy to run 386 programs under DOS, it can easily be done.
Among others, Phar Lap software will sell you a `something' (software)
which will hook your genuine 386 code to DOS, and also to bios.
You can use DOS calls, bios calls, and have interrupts serviced by
bios, or by your 8086 code, or by your 80386 code, all your choice.
I have used it and it all works. Unfortunately, the `something'
comes with their assembler and costs quite a bit.

Doug McDonald