Reply 20 of 26, by RayeR
- Rank
- Oldbie
Some step further in MTRR under v86 mode weirdness:
Japheth: JEMM isn't involved, AFAICS, since it has no control of what bits a DPMI host might set in page tables.
You could try to use HDPMI instead of the DOS4GW DPMI host and see if that makes any difference. HDPMI doesn't set the "write through" or "cache disable" page table bits for DPMI function 0800h (map physical device).
Yes!
When I loaded HDPMI32 -r then DOS4GW games benefits from MTRR WC speed up!
Unfortunatelly it's not compatible with Yamaha's DSDMA.EXE. When I load it after HDPMI32 it cancel the speed up effect. If I try to load HDPMI32 after DSDMA then HDPMI32 prints nothing and is not loaded.
So question remains - what changes when HDPMI32 -r is loaded for DOS4GW programs? I still can see DOS4GW startup message but I would expect that it forwards DPMI requests from the application to loaded DPMI server. OK, then there must be something different with memory mapping function that DOS4GW does differently than HDPMI32/CWSDPMI.
Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA