Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API to notify kernel or dashboard IGR hook #79

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

API to notify kernel or dashboard IGR hook #79

wants to merge 3 commits into from

Conversation

JayFoxRox
Copy link
Owner

This emulates part of XAPILIB::XInputGetState and hardcodes a solution for the checks performend by nkpatcher.

FIXME:

  • Lib-ify
  • Improve API
  • Debug and walk-through to make sure everything is fine
  • Entirely untested
  • Test with different optimizations to check if code is good
  • Test with function inlining
  • Test with other IGR solutions

@JayFoxRox
Copy link
Owner Author

@InternalLoss said:

can confirm your igr.xbe does not work on EvoX M8+

nkpatcher support (which should be implemented here) still untested.

// It hooks KeRaiseIrqlToDpcLevel and the caller must have a specific pattern of bytes.
// This assembly block matches that.
uint8_t irql;
asm volatile("movl $0x55500555, %%edx;\n" // Marker to make it easier to find

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suppose that marker is for finding that code-part when looking at the compiled result via an hex editor?
Additional, it bothers me a bit that the comment is behind it, instead of on top of it - as it with all other asm-comments. But thats just my taste 😛

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes; and it's a single line to make it more compact when I want to delete it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants