PPF-XBOX by MadHouse

PPF-XBOX is a fairly straight forward port of ApplyPPF by Icarus/Paradox.
It can apply PPF 1, 2, and 3 patches as well as undoing PPF 3 patches (if
undo information was included by the PPF creator).

Create a directory for PPF-XBOX on your xbox hard drive, and copy
PPF-XBOX.XBE into it.

Create a "Media" sub-directory under your PPF-XBOX directory and copy
the FONT.XPR into it.  If FONT.XPR cannot be fount in the Media directory
PPF-XBOX will not work.

Create an entry for PPF-XBOX in your dashboards' menu.  Alternately, you
can rename "PPF-XBOX.XBE" to "default.xbe" and the EvoX dashboard will
automatically pick it up - if you've placed it in a directory that EvoX
scans for applications.

PPF-XBOX is controlled by PPFX.LST.  This is a text file that contains
a list of patches to apply or undo, and it's based on the command syntax
for the command-line version of ApplyPPF3.

<command> <binary file to patch> <patch file>

Available commands:

a, A : Apply the patch to the binary file
u, U : Undo the patch from the binary file
b, B : Apply a BOS patch file to an AFS or XPR file (DoA3, DoAX)
m, M : Apply multiple patches to a single file using wildcard matching
x, X : Undo multiple patches to a single file using wildcard matching

The first parameter MUST be "a", "u", "b", "m", or "x" to indicate
whether PPF-XBOX is to apply the patch or undo the patch.

The second parameter is the name of the binary file that the patch will
be applied to.  It must be specified using the full path, but it can
be on any drive in the xbox.

The third parameter is the name of the patch to apply.  It must be
specified using the full path, but it can also exist anywhere on the

The drives available for PPF-XBOX to use are C:, D:, E:, F:, G:, X:,
Y:, and Z:.  D: is mapped to the directory where PPF-XBOX was launched
from and can be used as a shortcut to specify patches that are located
in the PPF-XBOX directory, or its sub-directories.  X:, Y:, and Z: are
mapped to the xbox utility drives and can be used to apply patches to
cached files.

A sample PPFX.LST file might look like:

a f:\games\MyGame\MyBinary.bin d:\MyPatch.PPF
u e:\games\AnotherGame\AnotherGame.exe d:\AnotherPatch.ppf
m e:\games\ThirdGame\BigArchive.AFS f:\patches\*
b e:\games\DoAX\datahdd.afs f:\doapatches\*.bos
x f:\games\MyGame\binary.bin d:\*.ppf


- Only PPF 3 patches can be undone, and only if the undo information
  was included when the patch was created.

- When using wildcard matching, if no extension is specified then
  PPF-XBOX will only look for patches with PPF and BOS extensions.

- BOS patches cannot be undone since they do not include the undo 

- BOS patches are usually applied to AFS and XPR files (used in the
  Dead Or Alive games).  Patches for AFS files will usually have
  names like "model.xpr.123.bos", while patches for XPR files will
  usually have names like "model.xpr.bos".  If a BOS patch file
  does not have all 4 sections of the name, it cannot be applied to
  an AFS file, as there will be no way to determine which resource
  inside the AFS is to receive the patch.  However, if a resource
  has been extracted from an AFS file, either type of BOS patch
  can be applied to it.

Currently, the only real option for PPF-XBOX is the background image.
If PPF-XBOX finds a file named "PPFX.JPG" in the PPF-XBOX directory,
it will use the JPEG image as the background.  If no such file is
found, PPF-XBOX will display its text over a black background.

Thanks to Boss302 for his BOS patch help.

Revision History:

Version 0.5
 Added "m", "b", and "x" command parameters

Version 0.3
 Added support for BOS patches for DoAX

Version 0.1
 Initial release with only PPF support