xboxscene.org forums

Author Topic: The "secrets" Of Bios Patching  (Read 35 times)

BenJeremy

  • Archived User
  • Hero Member
  • *
  • Posts: 5645
The "secrets" Of Bios Patching
« on: January 28, 2003, 10:50:00 AM »

Did that get your attention? Good.

If you belong to the Evolution-X or Xecutor development teams, how about illuminating the proper methods for patching the BIOS on the fly, and perhaps releasing a few slick tools/docs to help others achieve this goal. Maybe undead or Cherry have some input as well.

Perhaps I'm a bit selfish... I'd like to provide MXM with the ability to do IGR patching and perhaps a few other spiffy features. I think the information would be valuable, and would save a lot of others the time to recreate this functionality. It might spur others to create new features nobody's thought of.

Ultimately, it would also give BIOS writers some great ideas to incorporate into enhanced BIOSes, as well.

Just my opinion, for what it's worth.
Logged

dankydoo

  • Archived User
  • Full Member
  • *
  • Posts: 145
The "secrets" Of Bios Patching
« Reply #1 on: January 29, 2003, 10:38:00 AM »

seems as if we'll never know.
Logged

BenJeremy

  • Archived User
  • Hero Member
  • *
  • Posts: 5645
The "secrets" Of Bios Patching
« Reply #2 on: January 30, 2003, 03:19:00 AM »

QUOTE (dankydoo @ Jan 29 2003, 02:38 PM)
seems as if we'll never know.

:::sigh::: I can always hold out hope....
Logged

BenJeremy

  • Archived User
  • Hero Member
  • *
  • Posts: 5645
The "secrets" Of Bios Patching
« Reply #3 on: January 30, 2003, 03:40:00 AM »

QUOTE (rjm2k @ Jan 30 2003, 07:28 AM)
Couldn't you run evox on a debug bios and remotely step through the launch of a program to try and work out what they do to the bios?  Are you sure it's the bios and not the game that get's patched?  I wondered this because of the issues with IGR and apps compiled with newer xdk's than were around when evox was released.

Well, I doubt the debugger will muck around in the BIOS very nicely.

If Evo-X is patchign the XBEs, then it might be appending code to the end of the XBE, but it does this on the fly. The boot process doesn't really give you room to do this, so they have to patch the BIOS in some manner to hook the XBE loading, as well as gamepad input.

So in some fashion, they are patching the BIOS, and making the patch live past an XBE launch.

It would be very useful knowledge, and if they have no plans for expanding the features possible with that, it would be nice for the scene if it was shared so others could create enhancements based on BIOS patching.
Logged

undead

  • Archived User
  • Full Member
  • *
  • Posts: 143
The "secrets" Of Bios Patching
« Reply #4 on: January 30, 2003, 10:02:00 PM »

Kernel Stays in Memory.. it just reloads the Init Data section from flash..
Logged

BenJeremy

  • Archived User
  • Hero Member
  • *
  • Posts: 5645
The "secrets" Of Bios Patching
« Reply #5 on: January 31, 2003, 03:36:00 AM »

QUOTE (undead @ Jan 31 2003, 02:02 AM)
Kernel Stays in Memory.. it just reloads the Init Data section from flash..

OK, that's a start.

It would be GREAT if somebody would be kind enough to put out a sample project of an app launch with resident code installed.
Logged

undead

  • Archived User
  • Full Member
  • *
  • Posts: 143
The "secrets" Of Bios Patching
« Reply #6 on: February 01, 2003, 12:34:00 AM »

The Kernel Sits in Memory at start address of  0x80010000 You can try and patch some of the unused .EXE headers in RAM, shutdown your app, run a new one and inspect the changed area to see if the change persisted..  It theoretically should've.. Havnt tried it yet, but this is like 5 lines of code to test it..

not sure where you whould put your "igr" interrupt service routine and where you would "hook" it in, but thats at least a start...

Logged