-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Renderware (Heavy iron) potential fix. #2139
Comments
I will note forcing it worked, but it was a MASSIVE hack and will probably break other games. The game constantly turns the EIE bit on and off, but letting it do this doesn't work. |
What was EIE again? Debug feature they forgot to turn off or crazy code? :) |
It is the master interrupt enable bit on the cop2, if I recall correctly |
That just sounded like something Mr. Data would say xD |
I meant Master, stupid phone. Not sure what the game is doing or how Play! managed to fix it. I'm guessing they had a problem we didn't have but didn't have a problem we do have |
Enable IE: This bit enables or disables the IE (Interrupt Enable) bit. Thisbit is cleared by the DI instruction and set by the EI instruction. 0 → disables all interrupts regardless of the value of the IE bit. 1 → enables the IE bit. (All interrupts are enabled if IE=1, EXL=0, and ERL=0.) Note: IM enables individual interrupt For me it is the user (I think you don't need kernel privilege to use EI/DI instructions) master/atomic enable interrupt. |
So yeah, they're probably timing something, is my guess. |
Fixed in #3172 |
What is this?
The modified renderware engine used by Heavy Iron for The Incredibles and Spongebob games never worked on PCSX2, the only raison that these games worked is there is a Patch to avoid the issue.
Play!
A another Ps2 emulator (Play!) have a fix for this but it doesn't seems to be responsive on PCSX2 according to a forum post.
EIE bit
So here is the issue: the EIE bit. According to #Refraction, forcing the EIE bit to be set Under WriteCP0Status seems to fix the game.
This issue was made has a discussion purpose
The text was updated successfully, but these errors were encountered: