Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Mar 2004 00:59:50 -0600
From:      Dan Nelson <dnelson@allantgroup.com>
To:        Jason Dictos <jason.dictos@yosemitetech.com>
Cc:        "'freebsd-questions@freebsd.org'" <freebsd-questions@freebsd.org>
Subject:   Re: Using int 13 while BSD is running
Message-ID:  <20040310065950.GA94513@dan.emsphone.com>
In-Reply-To: <E50A109EE98AA049BAA09D725DB0714F01AD3BA4@mail.tapeware.com>
References:  <E50A109EE98AA049BAA09D725DB0714F01AD3BA4@mail.tapeware.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In the last episode (Mar 09), Jason Dictos said:
> I'm investigating what resources are out there for accessing bios
> addressable devices while BSD is up and running. The situation is
> this, currently we licenses Caldera DOS for a program we wrote which
> uses the int13 extensions to manipulate the systems hard drive (i.e.
> to recover partition tables and what not). This forces our
> application to be written in 16 bit mode, but it does allows us to
> not have to worry about loading any driver which would be hardware
> specific to access the hard drive. Is there any way to write a driver
> for BSD which would put the processor into real mode, therefore
> allowing us to use the int 13 api of the bios to read and write hard
> drives? That way we could package a stripped down BSD kernel which
> loaded our driver and gave our application access to hard disks
> without having to load any device driver.

I guess it's possible, since you have to use the bios to make VESA
video calls, and they work.  /sys/i386/isa/vesa.c has most of the stuff
you would need.  Also see the i386_vm86() userland function; you may not
even need to mess around inside the kernel.

Alternatively, have you taken a look at FreeDOS?  You can probably use
your exisitng code unchanged on it, or use either DJGPP or OpenWatcom
to build 32-bit executables that run under a DOS extender.

www.freedos.org
www.delorie.com
www.openwatcom.org

-- 
	Dan Nelson
	dnelson@allantgroup.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040310065950.GA94513>