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); |