HOW TO QUICKLY MIGRATE TO ANOTHER DOS-EXTENDER: I devenloped the 386Power DOS-EXTENDER for myself so i suited it to my needs, and updated and improved it gradually (nearly just for fun). The current release is improved if compared to the previous ones but still has its limitation. My main interests are in graphics/audio and game programming not into coding dos-extenders. Because of this i made the current "dos-extender interface" designed to be quickly portable. The XGE library ( that big pack of useful routines for graphics and "gaming") can be quickly migrated to ANOTHER dos-extender, let's see how: ALL the library code assumes is that there are TWO code segments a 16bit segment called code16 (used directly just by the 386timer and 386keyb code) and a big 32bit segment called code32. STARTING from code32 offset zero there is a "table" of pointers and variables that are the "real" dos-extender interface. If you wan to use another dos-extender, just code an "interface" module that sets up a big 32bit segment called code32 and has the same "segment head" of the 386Power code32 (the variables and pointers that HAVE to be into the beginning of code32 are "listed" into the head32.inc header) (head32.inc contains the "interface definitions" that let EXTERNAL DRIVERS to be "linked in" into a 386Powered :) program). Once you do this and add to the "interface" module the routines pointed by the pointers declared into the "header", you are ok and ready to run. This migration is made easier if you can use a dos-extender with a standard DPMI interface ("a DPMI server") If you can do this, you just have "turn on" the DPMI interface and then jump to the Boot16 label into 386power.asm [the 386Power starting point]. ( Remember to change the "startup directive" located at the end of 386power.asm from Boot16 to "what is it". For example: Currently you will see at the end of 386Power.asm the following: .... ; Boot16 is program starting point end Boot16 To make the "DPMI loader" start first, simply do the following: dpmi_server_wakeup: call Initialize_external_DPMI_server jmp Boot16 ..... ..... ; dpmi_server_wakeup is "new" starting point end dpmi_server_wake TRAN'S NEWER DOS-EXTENDERS (the newest i know is pmode307.zip and you can find it in the internet ftp site called x2ftp.oulu.fi) ARE DPMI SERVERS!!! So if you prefer Tran's dos-extenders (after all, Tran is the dos-extender expert) you can migrate to it by including its code into 386power.asm and adding three lines!!!! [ Uhm! If i remember well, the irq reflection under VCPI/XSM/"raw 386" with Tran's dos-extender DOES NOT automatically reflects IRQs from real-mode to protected mode, this will be up to you ( using the "callback" functions) ]