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.
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
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@reactos.com http://reactos.com:8080/mailman/listinfo/ros-dev