Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

44 lines
850 B

__inline LPVOID QVMakeQGB(DWORD val, LPVOID pv) {
ASSERT(val < 0x80000000L);
if (val < 0x8000) {
WORD FAR* pw = (WORD FAR*) pv;
*pw = (WORD) val << 1;
return pw + 1;
}
else {
DWORD FAR* pw = (DWORD FAR*) pv;
*pw = (val << 1) | 1L;
return pw + 1;
}
};
__inline void* PVMakeQGB(DWORD val, void* pv) {
ASSERT(val < 0x80000000L);
if (val < 0x8000) {
WORD* pw = (WORD*) pv;
*pw = (WORD) val << 1;
return pw + 1;
}
else {
DWORD* pw = (DWORD*) pv;
*pw = (val << 1) | 1L;
return pw + 1;
}
};
__inline void* PVMakeQGA(WORD val, void* pv) {
ASSERT(val < 0x8000);
if (val < 0x80) {
BYTE* pw = (BYTE*) pv;
*pw = (BYTE) val << 1;
return pw + 1;
}
else {
WORD* pw = (WORD*) pv;
*pw = (val << 1) | 1;
return pw + 1;
}
};
#define PfromPcb(pv, cb) ((void*) (((BYTE*) pv) + cb))