Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

SSE in DOS under JEMM386 ?? (DOSX)

posted by Rugxulo Homepage, Usono, 04.01.2008, 01:03

> > It seems that you have to enable the CR4 bit 9 (OSFXSR) as well
> > as enable CR0's MP (bit 1) but disable CR0's EM (bit 2).
>
> And the problem is - why don't you do this ?

For one thing, I don't really know what I'm doing, it's a bit out of my league. Anyways, even if I ignored this, it works under XP. But my goal is to work (also) under pure DOS.

> You compiled a DGJPP port ? The source seems to access those bits - did
> you add this code ?

Yes. PAQ8o8 is the latest PAQ8 series compressor/archiver, and I made it automatically detect NOASM/MMX/SSE2 instead of requiring a recompile or separate .EXE.

> Anyway, all CR's are privileged resources, thus you
> will need a Ring0 DPMI host (like CWSDPR0 or WDOSX) or a host emulating CR
> accesses (HDPMI32).

I didn't try with HDPMI32. Actually, I was using XP, and now I'm using Vista. I'm somewhat limited in what cpus I can try at the moment.

> Or did you try with the greatest CWSDPMI only and
> didn't work ?

Under QEMU, it reports a page fault. But PMODETSR (from my disk #2) seems to work, at least with HIMEMX.

> Is this the problem ? But why related to JEMM386/HIMEMX ?
> :confused:

I need to try in real DOS (eventually), but in QEMU, trying SSE2 w/ PMODETSR under JEMM386 crashes QEMU! (Doh!)

> > I really wish I could test under Vista
>
> Vista is the best DOS ? :lol3:

I wish I could use the same DOS binary under Vista that works fine under XP. Oh well.

> You didn't really describe the problem.

Problem: SSE2 doesn't work without OS support (e.g. which DOS doesn't implicitly have). I weakly tried, but I'm not sure I did it correctly.

> P.S.: SSSSSE5 was released recently. SSE/SSE2 is obsolete :lol3:

SSE5 is AMD's latest, to be implemented in 2009. SSE4.1 and SSE4.2 are Intel's crud to be released sometime next year (??). SSSE3 is only supported on Intel's Core 2. But my AMD Athlon64x2 supports SSE, SSE2, SSE3 (as opposed to Athlon XP only supporting SSE). From what I've been told, 3dnow! was AMD's answer to MMX, and SSE2 is actually what SSE should've been (and SSE2 obsoletes MMX in most/all ways).

> TEST: OK, all what I get from your port is a Page Fault :-(

Under real DOS? QEMU or BOCHS? CWSDPMI or other DPMI host? JEMM386 or HIMEMX?

> Hint: write a small test prog using FASM with or without enabling the CR
> bits and executing just 1 SS instruction ... based on USEDPMI.ASM or my
> DOS/32A example.

There's already a FASM example, and it works in pure DOS, but it's pretty simplistic. I want it to work under DJGPP. (Most of my problems are lack of cpus to test. QEMU is probably not 100% accurate/reliable.)

> BTW: Why bother with Causeway, DOS/32A reportedly enables SSE also :clap:

Well, the .ASM part doesn't work with OpenWatcom (yet) because of different calling conventions which I'm too dumb to understand so far.

> PPSS: FB graphics ;-)

I know, I know. :-P

---
Know your limits.h

 

Complete thread:

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