Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

SSE instructions in DOS programs? (Developers)

posted by Laaca(R) Homepage, Czech republic, 03.01.2019, 12:51

In theory - SSE instructions use a new set of registers which have to be preserved when task swithing by OS.
So there is a security mechanism when SSE capable OS must report "I know these SSE-registers". It is done by setting bits in CR4 register.

When these bits are not set and the SSE instruction occurs it should raise a CPU exception even in single-task OS.

However today I tried to provocate this exception and I was not able to do it. I used a clean MS-DOS 7.1 without any drivers and CWSDPMI r3 from 1995 and no exception was raised.

It looks that the 9. and 10. bits in CR4 are set by my BIOS.

UPDATE:
I loaded CWSDPR0 and loaded the CR4 register. The 9.bit is set, the 10.bit not.

I am not sure what does it mean, wikipedia says this: contol registers


Anyway, I give it up, the result for me is that CPUID test for SSE is OK for real life.

---
DOS-u-akbar!

 

Complete thread:

Back to the forum
Board view  Mix view
15725 Postings in 1440 Threads, 261 registered users, 9 users online (0 registered, 9 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum