Mail Archives: djgpp/1996/11/22/18:43:19
Ove Kaaven (ovek AT arcticnet DOT no) wrote:
:> mcarter@ wrote:
:>
:> >I've got the new DJGPP binaries 2.7 for v2.1 and the assembler now recognizes
:> >Pentium instructions - great! RDTSC works fine but RDMSR does not. It gets
:> >encoded as 0x0F,0x32 which is right but I get the following error when it is run:
:>
:> >>Exiting due to signal SIGILL
:> >>Invalid Opcode at eip=00001581
:>
:> I think RDMSR is a privileged instruction, and must be run from ring
:> 0. To use it, either your DPMI host must "simulate" it (not too
:> likely), or you must use a ring 0 host, e.g. cwsdpr0.
Some time ago I changed CWSDPMI to simulate the privileged RDMSR/WRMSR
instructions even from ring 3. You can get the compiled version, sources
and diffs from my homepage (see below). But it works only if you don't
have emm386 or something similar active, because otherwise CWSDPMI can't
emulate because it runs itself in ring 3.
Hope this helps.
Ciao,
Manuel
------------------------------------------------------------------------------
Manuel Kessler
Graduate Student at the University of Wuerzburg, Germany, Physics Department
SNAIL: Zeppelinstrasse 5, D-97074 Wuerzburg, Germany
EMAIL: mlkessle AT cip DOT physik DOT uni-wuerzburg DOT de
WWW: http://cip.physik.uni-wuerzburg.de/~mlkessle
- Raw text -