Register Manipulation Services
Register manipulation services are provided by the following functions. VDD can use these functions to get and set registers as needed to communicate with the 16-bit modules.
The register functions are very useful in a VDD if your modified 16-bit module calls the VDD directly (through DispatchCall), since the direct interface between an MS-DOS application and a VDD require certain arguments be passed in registers.
ULONG getEAX( ); | VOID setEAX(ULONG); |
USHORT getAX( ); | VOID setAX(USHORT); |
UCHAR getAL( ); | VOID setAH(CHAR); |
UCHAR getAH( ); | VOID setAL(UCHAR); |
ULONG getEBX( ); | VOID setEBX(ULONG); |
USHORT getBX( ); | VOID setBX(USHORT); |
UCHAR getBL( ); | VOID setBH(UCHAR); |
UCHAR getBH( ); | VOID setBL(UCHAR); |
ULONG getECX( ); | VOID setECX(ULONG); |
USHORT getCX( ); | VOID setCX(USHORT); |
UCHAR getCL( ); | VOID setCH(UCHAR); |
UCHAR getCH( ); | VOID setCL(UCHAR); |
ULONG getEDX( ); | VOID setEDX(ULONG); |
UCHAR getDH( ); | VOID setDX(USHORT); |
ULONG getESP( ); | VOID setDH(UCHAR); |
USHORT getSP( ); | VOID setDL(UCHAR); |
ULONG getEBP( ); | VOID setESP(ULONG); |
USHORT getBP( ); | VOID setSP(USHORT); |
ULONG getESI( ); | VOID setEBP(ULONG); |
USHORT getSI( ); | VOID setBP(USHORT); |
ULONG getEDI( ); | VOID setESI(ULONG); |
USHORT getDI( ); | VOID setSI(USHORT); |
ULONG getEIP( ); | VOID setEDI(ULONG); |
USHORT getIP( ); | VOID setDI(USHORT); |
USHORT getCS( ); | VOID setEIP(ULONG); |
USHORT getSS( ); | VOID setIP(USHORT); |
USHORT getDS( ); | VOID setCS(USHORT); |
USHORT getES( ); | VOID setSS(USHORT); |
USHORT getFS( ); | VOID setDS(USHORT); |
USHORT getGS( ); | VOID setES(USHORT); |
ULONG getCF( ); | VOID setFS(USHORT); |
ULONG getPF( ); | VOID setGS(USHORT); |
ULONG getAF( ); | VOID setCF(ULONG); |
ULONG getZF( ); | VOID setPF(ULONG); |
ULONG getSF( ); | VOID setPF(ULONG); |
ULONG getIF( ); | VOID setAF(ULONG); |
ULONG getDF( ); | VOID setZF(ULONG); |
ULONG getOF( ); | VOID setSF(ULONG); |
USHORT getMSW( ); | VOID setIF(ULONG); |
VOID setDF(ULONG); | VOID setOF(ULONG); |
VOID setMSW(USHORT); |