       ___  _____  ___  ___   __
|\   |  |     |    |    |  | |  |
| \  |  |     |    |__  |__| |__|
|  \ |  |     |    |    |    |\
|   \| _|_    |    |__  |    | \
    _
   | \ \   /
   |_/  \ /
   | \   |
   |_/   |

 __              ___ 
|     /\  |\   |  |  | /
|__  |__| | \  |  |  |/
   | |  | |  \ |  |  |\
___| |  | |   \| _|_ | \


Installation:
1) Copy nitePR.prx to ms0:\seplugins\
2) Copy UCUS-98645.txt to ms0:\seplugins\nitePR\
2) If ms0:\seplugins\game.txt doesn't exist, create it
3) In ms0:\seplugins\game.txt add this line: ms0:/seplugins/nitePR.prx
4) Save ms0:\seplugins\game.txt
5) Turn off the PSP and then turn it on again while holding R-TRIGGER
6) In OE's BIOS, go under plugins and when you see nitePR, enable it

Usage:
1) Start SOCOM FTB 2 (USA)
2)
   Method 1: Easy ON, easy OFF 
   a) Press the Volume + and - buttons at the same time to bring up the cheat selection menu
   b) At the menu, press X to select/deselect cheats
   c) Press O to return back to the game
   d) Press the NOTE button to turn on/off the selected cheats
   e) You can freely press the + and - buttons to bring up the cheat menu, and then deselect cheats to turn them off individually

   Method 2: Always On
   a) Press the Volume + and - buttons at the same time to bring up the cheat selection menu
   b) At the menu, press [] to enable/disable cheats
   c) What [] does is that it allows you to select cheats to have ALWAYS on!
   d) Cheats selected with X turn on/off with the music button, but cheats selected with [] don't!!!
   e) [] cheats stay forever on until deselected in the cheat menu or CONVERTED to an X cheat by clicking X on a []fied cheat =3

   ... btw [] = Square button on the PSP

PLEASE READ BELOW!!!
Issues:
1) Compressed cheats (identified by cheats that start with 0x40______ such as the one shot kill cheat) are not supported
   One can decompress such cheats easily by hand - please DO NOT ask me how to go about doing this for I don't care
   If you experience crashing, most of the times it's due to an inproper cheat or improperly converted cheat

2) Byte cheats (identified by cheats that start with 0x00______) have to be converted like this:
   CWCheat format:
        0x00______ 0x000000__
   NitePR format: (remove the 6 zeroes)
        0x00______ 0x__
   So 0x00ABCDEF 0x000000FF would become 0x00ABCDEF 0xFF
   If you experience crashing, most of the times it's due to an inproper cheat or improperly converted cheat

3) Word cheats (identified by cheats that start with 0x10______) have to be converted like this:
   CWCheat format:
        0x10______ 0x0000____
   NitePR format: (remove the 4 zeroes)
        0x10______ 0x____
   So 0x10ABCDEF 0x0000FFFF would become 0x10ABCDEF 0xFFFF
   If you experience crashing, most of the times it's due to an inproper cheat or improperly converted cheat
   
4) "Pressing the music button causes the game to crash"
    a) Try using the default UCUS-98645.txt that came with the zip file (for debugging purposes)
    b) Try disabling all plugins (since it might be CWCheat competing for memory in the PSP)

5) "Pressing the music button causes the TINT to freeze off or never turn on again"
    a) This is a problem with cache issues. The non-graphical cheats will turn on/off accordingly - so no need to panic.
    b) Will be replaced by a much simpler and bug-free mechanism in the future versions

6) "Can I change the buttons?"
    a) Yes you can - see "extended.txt"
    b) As well as ability to change SAVE GAME MAC address without reflashing - see "extended.txt"

7) "Will other PSP games work?"
    a) Yes, make an appropriate text file in the ms0:\seplugins\nitePR\ folder!
    b) The text file name uses the game's ID (which should be on the side of the UMD box)

8) "Does NitePR support cheats that are BYTEs and WORDs ... or only DWORDs?"
    a) Since version C, support for BYTEs and WORDs have been added, look at Issues #2 and #3 to see how to convert byte/word cheats

9) "For some reason, with NitePR my game music shuts off!"
    a) NitePR (in order to draw to the screen without flicker) needs to have extra memory to draw the visuals to. Sometimes this collides with games causing wierd errors like such.
    b) Nothing can be done about it right now =/

10) "What's the Cheat Hz for? - it's under the PRX menu"
    a) Setting this to 0 means Cheat freezing is Off
    b) WARNING - do not touch this if you have no clue what you're doing!
    c) Most SOCOM cheats work by changing the game code - so those cheats only need to be applied once
    d) But for other games, the cheats work by constantly resetting a value, let's say the player health, to 100
    e) To enable such functionality in NitePR, just set this to anything other than 0 to enable cheat freezing
    f) Using this in NitePR for SOCOM, esp. online causes a lot of lag + slowdown... hence expect to lose network connection constantly!!!

UCUS-98645.txt file syntax:
1) Format of a cheat
#CHEAT NAME
0x________ 0x________
0x________ 0x________
0x________ 0x________

2) For X-type cheats: 
The ! symbol tells NitePR to "select" the cheat by default
#!CHEAT NAME
0x________ 0x________
0x________ 0x________
0x________ 0x________

3) For []-type cheats:
Notice what's different from before? There's TWO ! after the # this time and NOT just one
The !! symbol tells NitePR to "select" the cheat by default
#!!CHEAT NAME
0x________ 0x________
0x________ 0x________
0x________ 0x________

4) Comments
Comments are denoted by a SEMICOLON
They are IGNORED by NitePR upon loading up
So put whatever you want there
They're useful for grouping cheats into one cheat but allowing you to identify the cheats later when looking at socom.txt directly
(For example, look at the "Boot-Cheats" in UCUS-98645.txt )

#!CHEAT NAME
;This line allows you to see Jesus
0x________ 0x________
;No clue what this line does
0x________ 0x________
;Mhmm - I smell tacos
0x________ 0x________

5) A note about CWCheat:
CWCheat cheats are in this format:
0x##AAAAAA 0xVVVVVVVV

Where:
## = type
AAAAAA = address
VVVVVVVV = value

If the type is 00, the value is a byte
If the type is 10, the value is a word (2 bytes)
If the type is 20, the value is a dword (4 bytes)
If the type is 40, the cheat altogether is a simple RLE-type compressed cheat

6) A note about NitePR
NitePR cheats are in this format:
0x##AAAAAA 0xVVVVVVVV

Where:
## = ANY NUMBER, could be FF, 10, 50, etc., whatever it is, NitePR ignores this value for now!!! It will be used later to help create DMA cheats
AAAAAA = address
VVVVVVVV = value

If the value is 2 digits, the value is a byte... example is 0x25
If the value is 4 digits, the value is a word (2 bytes)... example is 0x3F01
If the value is 8 digits, the value is a dword (4 bytes)... example is 0x13A100EE