45 lines
850 B
C
45 lines
850 B
C
|
|
__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))
|