Ah yes. Forgot to post that I did that. Thanks.
I have one last assembly bit to fix now. Its a fair bit more complicated. Its in the same pentime header file. Ill paste it here for now to avoid making another new thread, and hope to get some clues from some of you clever peeps.
Code:
/* Test to see if we have a Pentium or not. Note that this test is reliable
* enough for a tools project (where we can put in an overide switch) but not
* for a released product.
*/
extern unsigned char Pentium(void);
#pragma aux Pentium = \
"pushfd" \
"pop eax" \
"or eax, 00200000h" \
"push eax" \
"popfd" \
"pushfd" \
"pop eax" \
"mov ecx, eax" \
"and eax, 00200000h" \
"cmp eax, 0" \
"je not_Pentium" \
"mov eax, ecx" \
"and eax, 0ffdfffffh" \
"push eax" \
"popfd" \
"pushfd" \
"pop eax" \
"and eax, 00200000h" \
"cmp eax, 0" \
"jne not_Pentium" \
"is_Pentium: mov al, 1" \
"jmp finish" \
"not_Pentium: mov al, 0" \
"finish: nop" \
value [al] \
modify [eax ecx]