Jump to content
Welcome to InsanelyMac Forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

  • Announcements

    • Allan

      Forum Rules   04/13/2018

      Hello folks! As some things are being fixed, we'll keep you updated. Per hour the Forum Rules don't have a dedicated "Tab", so here is the place that we have our Rules back. New Users Lounge > [READ] - InsanelyMac Forum Rules - The InsanelyMac Staff Team. 
Sign in to follow this  
Andy Vandijck

AnVMSR V1.0 - Tool and driver to read from or write to CPU MSR registers

11 posts in this topic

Recommended Posts

This tool is made by me for reading and writing to CPU MSR registers.

It works in kernel mode by a driver which is linked to the tool in user land with a user client.

Source is included ;)

WARNING: Don't randomly read or write to MSR registers... If you read or write invalid MSR registers, or invalid data written, your system will crash...

 

Usage:

anvmsr read E2

= read MSR register E2 and show value.

anvmsr write E2 0BAD

= write 0BAD to MSR register E2

 

Enjoy... :D

AnVMSR-1.0.zip

Share this post


Link to post
Share on other sites

Haven't tested yet, but thanks anyway. :)

Is there some software to read and interpret values of common PCI registers, such as LPC (D31:F0) or ME interface? Will be very useful too. ;)

Share this post


Link to post
Share on other sites

Haven't tested yet, but thanks anyway. :)

Is there some software to read and interpret values of common PCI registers, such as LPC (D31:F0) or ME interface? Will be very useful too. ;)

lspci? It included into DarwinDumper, see inside.

Andy,

See to compare msr_tools

Share this post


Link to post
Share on other sites

lspci? It included into DarwinDumper, see inside.

Andy,

See to compare msr_tools

Ok, just checked out the source...

I'll build and test that tool too ;)

Share this post


Link to post
Share on other sites

Forgive my ignorance but could this eventually develop into something that can allow us to bypass BIOS/AICPUPM patching for native power management? 

Share this post


Link to post
Share on other sites

Forgive my ignorance but could this eventually develop into something that can allow us to bypass BIOS/AICPUPM patching for native power management? 

Sorry, no.

MSR register 0xE2 has a property WriteOnce.

It means that if BIOS write something in it then further writing is impossible. This is the reason why you need to patch ASUS BIOS no matter what you do later.

Another method is to patch AICPUPM so that it will not use the register at all.

Share this post


Link to post
Share on other sites

Sorry, no.

MSR register 0xE2 has a property WriteOnce.

It means that if BIOS write something in it then further writing is impossible. This is the reason why you need to patch ASUS BIOS no matter what you do later.

Another method is to patch AICPUPM so that it will not use the register at all.

 

Thanks for the explanation :)

Share this post


Link to post
Share on other sites

I tried this tool to write 1FC to disable prochot (my CPU is throttling). The register reads 0x14005f so I tried with write 14005e but I get kernel panic. Throttlestop under Windows does just that and it works. I'm thinking if there's a way to mod the bios as we do for power management ..

Share this post


Link to post
Share on other sites

Just registered here to download this software,

 

Having some trouble getting the prebuilt binary to work. On an i5-540 with OSx 10.11.4 I did manage to make it read the registers, but writing anything (even the same value) results always in a freeze + reboot. Just interested in changing 0x1FC to disable thermal throttling.

 

Tried it on a couple of other computers (T9300 / OSx 10.10.5) and (i5-2557M / OSx 10.12.1) but couldn't get it to read anything, it just blurbs out "Can't get registry-entry path"

 

I installed the supplied kext (to both locations, just to be sure), also tried running the binary in superuser mode (although on the i5-540 it worked without any priviledges..) 

 

Am I missing some support package on those two machines? Xcode? 

 

Under Windows (with ThrottleStop) I managed to disable BD_PROCHOT on the i5-540, and under Ubuntu I guess it's disabled by default, but installing msr-tools and running read/write commands on 0x1FC worked without crashing.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.



×