I do know that to have more than one v86 prosseses to run on a i386+
machine, access to the paging system is needed, mainly to change the
physical address of the first virtural megabyte to somewhere else. Also
you would have to be able to tell the differnce between software
interrupts and CPU exeptions. The system and video bioses and can be
specialized for the emulation of the v86 machine. One would only have to
modify the freeware bioses from, lets say, Bochs. Also you would want to
reduce as much as possible the number of times going in and out of v86
mode. This mainly comes into play when you writing DPMI support. Also I
know that in most cases, DJGPP built programs can be executed directly
in a regular 386+ manner, but each DJGPP program would have to have a
separate v86 space. Aslo, the full screen dos video could be redirected
to the DirectX graphics system.
Alex Ionescu wrote:
crashfourit wrote:
What are the relevent ReactOS API calls for
building a dynamicly
loadable subsystem?
I'm asking this because I can't find the API documentation on the
website. (I looks more like the documentation is not yet completed.)
Other questions relevent to this:
How do I register a new executible file format? I.E. coff.
How do I register a new interrupt vector(s).
What are the API to control v86 prosses?
If y'all want to know what subsystem I want to write, it is DOS. This
is because I'm more familar with programing in DOS.
Hi,
The NTVDM subsystem isn't part of the typical dynamic subsystems
(personalites) that NT supports. It's more of an internal static thing
deeply connected to such things as V86, ABIOS, WOW16, etc. Once we
eventually set up all that backend, we will actually start needing
code for the actual VDM emulator. So at this point, unless you become
really familiar with the 16-bit emulation architecture on NT, I don't
think there is much you can do... and we probably won't ourselves
attack that for quite some time, but you're free to attempt it
yourself, and we'd appreciate it.
Best regards,
Alex Ionescu
_______________________________________________
Ros-dev mailing list
Ros-dev(a)reactos.com
http://reactos.com:8080/mailman/listinfo/ros-dev