git-svn-id: http://pcsx2.googlecode.com/svn/trunk@409 96395faa-99c1-11dd-bbfe-3dabce05a288

This commit is contained in:
refraction
2009-02-06 19:04:13 +00:00
parent 57616b8916
commit 43198a7e84
332 changed files with 0 additions and 30368 deletions
-87
View File
@@ -1,87 +0,0 @@
Pcsx2 Compilation Guide
Linux Users
-----------
Make sure you have these packages:
gtk2
opengl
libbz2
libjpeg
glew-dev
libxxf86vm-dev
x11proto-xf86vidmode
automake and autoconf (verion >= 1.9)
Nvidia Cg-Toolkit (http://developer.nvidia.com/object/cg_toolkit.html)
libasound-dev
joystick
When first building, the Pcsx2 programs need to configure the Makefiles for your specific OS. type:
# sh build.sh all
The program and all plugins will be installed in the pcsx2 bin dir. After that, just launch pcsx2 (make sure you have a PS2 bios dump in the bios directory).
To rebuild any changes to the source code type:
# sh build.sh install
Typeing sh build.sh without the install will just build the programs without copying them to the bin dirctory (bin/plugins for all plugins).
To clean all object files type:
# sh build.sh clean
If there is a plugin that is giving you errors and you want to skip it, modify the corresponding build.sh to skip it (otherwise execution of the script will stop until the error is resolved).
Special Options (modify PCSX2OPTIONS in build.sh)
--enable-debug {Build with symbols and no optimizations}
--enable-devbuild {Build with extra tests}
--disable-recbuild {Disables all architecture dependent recompilation code}
--enable-sse2 {Enables x86 SSE2 extensions}
--enable-sse3 {Force enables x86 SSE3 extensions}
For plugin authors: Your Makefile should support the 'install' option.
When debugging, make sure to add
handle SIGSEGV noprint ignore pass
to .gdbinit
Windows Users
-------------
Make sure you have: Nvidia Cg-Toolkit (for ZeroGS)
Open the corresponding Visual Studio sln files for all projects, compile, and move the executables appropriately. Pcsx2 and some plugins require masm to assemble (ml for win32, ml64 for win64).
At the moment, MinGW is not supported, however there's a good chance the cygwin toolset will work.
email zerofrog@gmail.com for any compilation/linking issues in any Linux/Windows distribution.
Global defines
--------------
Pcsx2 uses global defines to detect the OS, architecture, and different compilation options. They are:
_MSC_VER - used to detect Visual Studio's cl compiler
_WIN32 - used to detect windows compilation
__LINUX__ - used to detect linux compilation (a lot of times it is assumed that linux is running when _WIN32 is missing)
__x86_64__ - defined for x86-64 architectures only.
PCSX2_DEVBUILD - used to enable runtime debugging and developer specific features of pcsx2 (disabled on releases)
PCSX2_VIRTUAL_MEM - switches the way pcsx2 handles memory. VM enabled builds are valid for both windows and linux and they speed up games. However, there are less stable than TLB builds.
PCSX2_NORECBUILD - ignore all recompiler code so that Pcsx2 can be built for different architectures. Note that there are a couple of places that use asm code even in interpreter (coroutines in IPU).
_DEBUG - build with extra debug information
NDEBUG - build without absolutely no debug information
ZEROGS_SSE2 - controls sse2 usage in zerogs
compile with -D_FILE_OFFSET_BITS=64 if iso is failing to load large files
Binary file not shown.

Before

Width:  |  Height:  |  Size: 245 KiB

-183
View File
@@ -1,183 +0,0 @@
<!-- NOTES:
When converting a 'Master Code', do NOT include the patch if it's address starts with '9' or 'F'.
memory.c:
RAM
0x00100000-0x01ffffff this is the physical address for the ram.its cached there
0x20100000-0x21ffffff uncached
0x30100000-0x31ffffff uncached & acceleretade
0xa0000000-0xa1ffffff MIRROR might...???
0x80000000-0x81ffffff MIRROR might... ????
1xxxxxxx is reserved for mapping of hardware registers (GS, IPU, DMA etc.), If your patch address
(when porting from CB, AR, GS etc) is in this range, simply change the leading '1' to 0 (to be
consitant, though it could be put at 2,3).
IOP is mapped at 0xbc000000 - 0xbc1fffff.
GAME:
The master container for the entire patch, all your patches must fall within the openning tag and
the closing tag!
title=""
The games name, it's prefered that you follow the standard layout used in betatesting, this is
clear to the end user as it is displayed in the console window. I personally place the CRC of
the patch in addition to the title, so they can clearly see what patch is in operation.
COMMENT:
The <comment> tag is the traditional comment tag which displays in the console output, you can put
anything here, though it's recommended that the Author / Source Authors (eg; Cheat Author) names
are placed here.
XML COMMENT:
You may notice that this piece of text is contained within XML comment tags, you can use these freely
to add notes, disable areas (so they don't show in the GUI) etc
GROUP:
Acts as a 'folder', to contain groups, multi liner grouped patches and single line patches. A <group>
allows you to enable or disable everything contained within it. If you wrap a <group></group> around
-untitled- <patch> entries, it causes the grouped <patch>'es to act as one - aka 'multi liner grouped'
(eg; patches that write multiple values to memory, but have one effect, such as 4 values to raise
character X's MP).
title=""
Gives the groups name that will be displayed in the GUI.
enabled=""
All patches are off by default, until turned on via the GUI via a tickbox, however by setting
enabled="true" in the patch, this overrides the default state, usefull for "Emulation Fixes" that
force the game to work!
PATCH:
The core reason this whole thing exists!
title=""
If the patch only requires one address for data to be written to, the patch must have a name! This
allows it to show up in the GUI as "whatever title you gave it" and can be toggled on and off via
the GUI. If the patch needs multiple addresses it must have -no- title="" text and be wrapped in a
<group> so that all <patch> enties are enabled at once.
applymode=""
Has two values "startup"/"vsync", exactly the same as the old patch=0/1, if set to "startup" the
patch will be applied when the ELF boots (or once if game is already running), if set to "vsync"
the patch is applied every vsync (50/60
times per second).
Startup: is best used when the address only needs to be patched once and isn't effected anywhere by
the game.
Vsync: is best used when the value could be altered by the game, eg; INF money, INF HP etc.
address="FFFFFFFF"
Where are you putting the 'value'?
size=""
This can be set to 8,16,32,64
8 (Byte): Address can have any ending. Max 8bit value FF.
16 (Short): Address must end with 0, 2, 4, 6, 8, a, c, e. Max 16bit value FFFF.
32 (Word): Address must end with 0, 4, 8, c. Max 32bit value FFFFFFFF.
64 (Double): Address must end with 0, 8. Max 64bit value FFFFFFFFFFFFFFFF.
value="FFFFFFFF"
What are you writing to 'address'? -->
<GAME title="Final Fantasy X [SCES 50490] (E) [A39517AB]">
<COMMENT>patches by CKemu</COMMENT>
<GROUP title="General Cheats">
<PATCH title="Max Gil" applymode="vsync" address="0031D218" size="32" value="05F5E0FF"/>
<GROUP title="All Aeons Activated">
<PATCH applymode="vsync" address="0031EFFC" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F090" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F124" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F1B8" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F24C" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F2E0" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F374" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F408" size="8" value="11"/>
<PATCH applymode="vsync" address="0031F49C" size="8" value="11"/>
</GROUP>
<GROUP title="Have All Items">
<PATCH applymode="vsync" address="000FFF30" size="32" value="96F30000"/>
<PATCH applymode="vsync" address="000FFF38" size="32" value="26730001"/>
<PATCH applymode="vsync" address="000FFF3C" size="32" value="A6F30002"/>
<PATCH applymode="vsync" address="000FFF40" size="32" value="8FA20000"/>
<PATCH applymode="vsync" address="000FFF48" size="32" value="080932B5"/>
<PATCH applymode="vsync" address="0024CACC" size="32" value="0803FFCC"/>
<PATCH applymode="vsync" address="0024C9D4" size="32" value="24110063"/>
<PATCH applymode="vsync" address="0024C9E0" size="32" value="A2D10000"/>
<PATCH applymode="vsync" address="0031D39C" size="32" value="20012000"/>
</GROUP>
<GROUP title="Have All Key Items">
<PATCH applymode="vsync" address="0031D95C" size="32" value="FFFFFFFF"/>
<PATCH applymode="vsync" address="0031D960" size="32" value="000FFFFB"/>
<PATCH applymode="vsync" address="0031983C" size="32" value="00000101"/>
</GROUP>
<GROUP title="All OverDrives">
<PATCH applymode="vsync" address="0031D23C" size="32" value="FFFFFFFF"/>
<PATCH applymode="vsync" address="0031D240" size="32" value="FFFFFFFF"/>
<PATCH applymode="vsync" address="0031D244" size="32" value="FFFFFFFF"/>
</GROUP>
<GROUP title="All OverDrive Modes for Everyone">
<PATCH applymode="vsync" address="0031EB24" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031EC4C" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031EE9C" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031ED74" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031EBB8" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031EE08" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031ECE0" size="32" value="0001FFFF"/>
<PATCH applymode="vsync" address="0031EF30" size="32" value="0001FFFF"/>
</GROUP>
<GROUP title="HyperMode">
<PATCH applymode="vsync" address="0011ADA4" size="32" value="00000003"/>
<PATCH applymode="vsync" address="0057F68C" size="32" value="43800000"/>
</GROUP>
</GROUP>
<GROUP title="Tidus">
<PATCH title="Overdrive Meter Maxed" applymode="vsync" address="0031EAD5" size="8" value="FF"/>
<PATCH title="Max Sphere Level (99)" applymode="vsync" address="0031EAD7" size="8" value="63"/>
<PATCH title="Max Strength (255)" applymode="vsync" address="0031EACB" size="8" value="FF"/>
<PATCH title="Max Defence (255)" applymode="vsync" address="0031EACC" size="8" value="FF"/>
<PATCH title="Max Magic (255)" applymode="vsync" address="0031EACD" size="8" value="FF"/>
<PATCH title="Max Magic Defence (255)" applymode="vsync" address="0031EACE" size="8" value="FF"/>
<PATCH title="Max Agility (255)" applymode="vsync" address="0031EACF" size="8" value="FF"/>
<PATCH title="Max Luck (255)" applymode="vsync" address="0031EAD0" size="8" value="FF"/>
<PATCH title="Max Evasion (255)" applymode="vsync" address="0031EAD1" size="8" value="FF"/>
<PATCH title="Max Accuracy (255)" applymode="vsync" address="0031EAD2" size="8" value="FF"/>
<GROUP title="Max HP (99,999)">
<PATCH applymode="vsync" address="0031EAB8" size="32" value="0001869F"/>
<PATCH applymode="vsync" address="0031EAC0" size="32" value="0001869F"/>
</GROUP>
<GROUP title="Max MP (9,999)">
<PATCH applymode="vsync" address="0031EABC" size="16" value="270F"/>
<PATCH applymode="vsync" address="0031EAC4" size="16" value="270F"/>
</GROUP>
<GROUP title="Have All Skills, White Magics and Black Magic">
<PATCH applymode="vsync" address="0031EADA" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EADC" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EADE" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EAE0" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EAE2" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EAE4" size="16" value="FFFF"/>
</GROUP>
</GROUP>
<GROUP title="Auron">
<PATCH title="Overdrive Meter Maxed" applymode="vsync" address="0031EBFD" size="8" value="FF"/>
<PATCH title="Max Sphere Level (99)" applymode="vsync" address="0031EBFF" size="8" value="63"/>
<PATCH title="Max Strength (255)" applymode="vsync" address="0031EBF3" size="8" value="FF"/>
<PATCH title="Max Defence (255)" applymode="vsync" address="0031EBF4" size="8" value="FF"/>
<PATCH title="Max Magic (255)" applymode="vsync" address="0031EBF5" size="8" value="FF"/>
<PATCH title="Max Magic Defence (255)" applymode="vsync" address="0031EBF6" size="8" value="FF"/>
<PATCH title="Max Agility (255)" applymode="vsync" address="0031EBF7" size="8" value="FF"/>
<PATCH title="Max Luck (255)" applymode="vsync" address="0031EBF8" size="8" value="FF"/>
<PATCH title="Max Evasion (255)" applymode="vsync" address="0031EBF9" size="8" value="FF"/>
<PATCH title="Max Accuracy (255)" applymode="vsync" address="0031EBFA" size="8" value="FF"/>
<GROUP title="Max HP (99,999)">
<PATCH applymode="vsync" address="0031EBE8" size="32" value="0001869F"/>
<PATCH applymode="vsync" address="0031EBE0" size="32" value="0001869F"/>
</GROUP>
<GROUP title="Max MP (9,999)">
<PATCH applymode="vsync" address="0031EBEC" size="16" value="270F"/>
<PATCH applymode="vsync" address="0031EBE4" size="16" value="270F"/>
</GROUP>
<GROUP title="Have All Skills, White Magics and Black Magic">
<PATCH applymode="vsync" address="0031EC02" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EC04" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EC06" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EC08" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EC0A" size="16" value="FFFF"/>
<PATCH applymode="vsync" address="0031EC0C" size="16" value="FFFF"/>
</GROUP>
</GROUP>
</GAME>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More