[NTVDM]
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sat, 9 Nov 2013 22:15:40 +0000 (22:15 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sat, 9 Nov 2013 22:15:40 +0000 (22:15 +0000)
commit6da6a5ce564e359a1b88d51030ccf4a670d1f22d
tree00a2dad61c3fbcd9ec30842fbaea43823b85ccb9
parentbf61aa127848e6b998b2356bb7879530e58b9092
[NTVDM]
Start my work on modularizing registration of "32-bit" interrupts, i.e.
interrupts that are implemented in 32-bit mode, but are stubbed with 16-bit
code (so that 16-bit apps can call them).
The 16-bit stub code uses a BOP call to our Control BOP function (BOP 0xFF) which
can handle in theory many sub-functions (as the BOP 0x58 documented here: http://www.ragestorm.net/tutorial?id=27)
specified as an additional BYTE in the call:
0xC4 0xC4 bop_code <optional_bop_subfunction>
Here, for calling 32-bit interrupts we use our BOP 0xFF, subfunction 0xFF.
The final aim would be to generate the 16-bit stub code when one calls the RegisterInt32 helper function
(contrary to what's happening now, that is, the 16-bit stub code is generated for all of the interrupts
at BIOS initialization time, and we use it for BIOS and DOS interrupts).

svn path=/branches/ntvdm/; revision=60907
subsystems/ntvdm/bios.c
subsystems/ntvdm/bios.h
subsystems/ntvdm/bop.c
subsystems/ntvdm/bop.h
subsystems/ntvdm/dos.c
subsystems/ntvdm/dos.h
subsystems/ntvdm/emulator.c
subsystems/ntvdm/emulator.h