drc: finish GTE reg liveness analysis
[pcsx_rearmed.git] / readme.txt
CommitLineData
303ee308 1
2PCSX-ReARMed - yet another PCSX fork
3
c9dbba7f 4http://notaz.gp2x.de/pcsx_rearmed.php
5
303ee308 6
7About
8-----
9
10PCSX ReARMed is yet another PCSX fork based on the PCSX-Reloaded project,
11which itself contains code from PCSX, PCSX-df and PCSX-Revolution. This
12version is ARM architecture oriented and features MIPS->ARM recompiler by
3938f69a 13Ari64, NEON GTE code and more performance improvements. It was created for
14Pandora handheld, but should be usable on other devices after some code
15adjustments (N900 version is also available).
303ee308 16
c9dbba7f 17PCSX ReARMed features GPU plugin from PCSX4ALL project.
303ee308 18
19
20Usage
21-----
22
23This version features a framebuffer driven menu that can be used to run
24games and configure the emulator.
25
33716956 26Supported CD image formats:
f932e54b 27- .bin/.cue
28- .bin/.toc
29- .img/.ccd/.sub
30- .mdf/.mds
303ee308 31- .Z/.Z.table
33716956 32- .bz/.bz.table
33- .ZNX/.ZNX.table (partial)
34- EBOOT.PBP (PSP, partial)
303ee308 35
7ca0ce80 36CDDA (CD audio) only supported when .cue/.toc/.ccd/.mds files are present.
900acfae 37There is support for redump.org .sbi files, which can be used instead of
38.sub files to save space (name it the same as .cue/.bin, just use .sbi
39extension). This is required for Libcrypt copy protected game support.
303ee308 40
c9dbba7f 41The emulator can simulate BIOS, which means BIOS files are not required,
42however implementation is not complete and some games still need real BIOS
43to work. To use real BIOS, copy uncompressed BIOS files to
44[sd card]/pandora/appdata/pcsx_rearmed/bios/
45then select the BIOS you want to use in Options->BIOS/Plugins menu.
46
799b0b87 47Analog controllers are supported using nubs, but this is disabled by
48default and needs to be enabled in 'Controls' menu.
7ca0ce80 49There is also touchscreen based GunCon support, which also requires
50appropriate controller selected in controls configuration.
799b0b87 51
303ee308 52
ee78346e 53Plugins
54-------
55
56GPU (graphics) and SPU (sound) plugins can be selected in
57[BIOS/Plugins] menu:
58
59builtin_gpu - the P.E.Op.S. GPU plugin, most accurate but slow.
60gpuPCSX4ALL.so - plugin from PCSX4ALL project. Faster but has some glitches.
61gpuGLES.so - experimental port of P.E.Op.S. MesaGL plugin to OpenGL ES.
62 Occasionally faster but has lots of glitches and seems to
63 be rather unstable (may crash the system).
7ca0ce80 64builtin_spu - P.E.Op.S. SPU plugin.
ee78346e 65spunull.so - NULL plugin, i.e. no sound emulation.
66
67
9af2e936 68Changelog
69---------
70
cbd45cda 71r10 (2011-10-10)
72+ added Caanoo port
73+ completely rewrote memory handlers
aaac9c7e 74+ added fixed frameskip option
cbd45cda 75+ added ability to change PSX clock
76+ implemented GTE dead flag detection
77* switched to larger timeslices for better performance
78* fixed some cases of flickering
aaac9c7e 79* fixed a crash in PCSX4ALL GPU plugin
80* fixed several dynarec compatibility related issues (hopefully)
cbd45cda 81* fixed multiple SPU regressions from r9 and earlier
aaac9c7e 82* fixed frame limiter issue that sometimes caused stuttering
83* fixed some minor GUI issues
84
7ca0ce80 85r9 (2011-08-13)
86* fixed various dynarec integration issues that were causing instability
87* merged latest Ari64 dynarec code for some performance improvement
88* changed frameskip handling in builtin and PCSX4ALL plugins,
89 fixes some cases where it would not work
90* merged PCSX4ALL 2.2 GPU code to it's plugin
91* fixed PCSX4ALL GPU inline asm, was miscompiling for ARMv7.
92+ added CDDA handling for eboot format
93* improved CDDA handling for all image formats that support it
94* various compatibility/accuracy improvements
95* optimized PEOPS SPU core
96* various menu adjustments
97* changed scaling options a bit, there are now two 4:3 options:
98 integer and fractional
99+ added some basic memory card manager, which allows to change
100 or remove cards (remove needed for Tenka)
101+ added GunCon support
102+ added gpuPEOPS2 plugin (peops rendering + new emulation code)
103
3938f69a 104r8 (2011-03-22)
105* improved recompiler performance for some games
106* fixed a few recompiler related compatibility issues
107 (also fixes broken memcard support in some games)
108* fixed some graphics problems caused by frameskip.
109 Note that not all problems were fixed, so if you see graphics
110 glitches try turning off frameskip or using different GPU plugin.
111+ added screenshot function
112+ added some code to attempt to sync with pandora's LCD better
113* merged a few compatibility fixes from PCSX-Reloaded
114* fixed and issue with external controllers
115* added experimental ability to use nubs as buttons
116
900acfae 117r7 (2011-03-02)
118+ implemented most used GTE operations in NEON
119* merged latest Ari64's recompiler patches
120* removed some code from the recompiler that is unneeded for R3k
121* added some special handlers for constant reads
122* some moderate builtin GPU and SPU optimizations
123+ added redump.org SBI support
124* tuned frameskip code again
125* fixed one 'analog controller not working' issue
126* fixed a crash in builtin gpu code
127* fixed cdrom slowdown issue
128* fixed my stupid bug in the recompiler that slowed down
129 recompilation a lot
130* some other refactoring
131
acb57d8d 132r6 (2011-02-10)
133+ added analog controller support using nubs (disabled by default)
134+ added control config saving
135+ added support for ingame actions (eg. savestate load)
136+ added 'auto' region option and made it default
137+ added cd swap functionality
138+ added maemo frontend from Bonapart
139 (with some tuning, source code only)
140* reworked key configuration to be less confusing
141* fixed 'SPU IRQ wait' option sometimes causing noise
142 and turned it on by default
143* fixed mono xa masking (was causing noise)
144* fixed word access macros in dfxvideo (darkness problem)
145* changed GPU DMA timing back to 1.92 levels
146* backported more fixes from PCSX-Reloaded project
147 (mostly shalma's work, see GIT)
148* fixed a few more recompiler issues
149+ fixed frameskip in builtin plugin
150
5b09a334 151r5 (2011-01-31)
152+ added support for .bz format, also partial support for
153 .znx and eboot.pbp formats
154+ merged latest cdrom code from PCSX-Reloaded project
155* fixed remaining savestate incompatibilities between PCSX4ALL
156 and P.E.Op.S. GPU plugins
157* fixed channel disable preventing irqs in P.E.Op.S. SPU plugin
158* fixed some alignment issues
159+ added handling for branches in delay slots
160+ fixed some unexpected drops to menu
161* fixed lots of recompiler related issues (see GIT)
162+ added watchdog thread to detect emulator lockups
163* minor frontend adjustments
164
c9dbba7f 165r4 (2011-01-15)
166+ added real BIOS support (and various things for it to work)
167* fixed various recompiler issues
168+ added interpreter option (useful to overcome dynarec bugs)
169* fixed some memory card related issues with HLE bios
170* rewrote frame limiter (old was sometimes sleeping needlessly)
171
ee78346e 172r3 (2011-01-05):
173+ added Pickle's port of gpu-gles from psx4m project
174+ added PCSX4ALL gpu as a plugin
175* improved gpu plugin support
176+ added savestate preview
177* various frontend fixes
178
179r2 (2010-12-29):
9af2e936 180* fixed memcard paths
181* fixed a keybind copy-paste bug
182* properly implemented pad handling
ee78346e 183 (inputs no longer control both emulated pads at once)
9af2e936 184* fixed a crash caused by framebuffer out of range access
185* fixed SWL/SWR handling (usually resulted in graphic glitches)
186* fixed BxxZAL (Medal of Honor)
187* fixed alignment crash in color space conversion code (Lunar)
188* fixed SWC2 occasional use of wrong address register (Parasite Eve)
189* fixed firstfile() handling in HLE BIOS (broken memory cards in some games)
190+ added per-game configs (controls still not saved though)
191+ added simple plugin select interface to the menu
192
ee78346e 193r1 (2010-12-25):
9af2e936 194* initial release
195
196
303ee308 197Credits / License
198-----------------
199
f932e54b 200Emulator core:
201
303ee308 202(C) 1999-2003 PCSX Team
6b8a7b88 203 (c) 1998 Vision Thing
204 Linuzappz <linuzappz@pcsx.net>
205 Shadow <shadow@pcsx.net>
206 Pete Bernett <psswitch@online.de>
207 NoComp <NoComp@mailcity.com>
208 Nik3d
209 Akumax <akumax@pcsx.net>
210
303ee308 211(C) 2005-2009 PCSX-df Team
6b8a7b88 212 (c) Ryan Schultz <schultz.ryan@gmail.com>
213 (c) Andrew Burton <adb@iinet.net.au>
214 (c) Stephen Chao <schao@myrealbox.com>
215 (c) Marcus Comstedt <marcus@mc.pp.se>
216 Stefan Sikora <hoshy@schrauberstube.de>
217
900acfae 218(C) 2009-2011 PCSX-Reloaded Team
6b8a7b88 219 edgbla (Root counters, various core/plugin fixes)
900acfae 220 shalma (GTE Divider, many core improvements, sound plugin fixes)
6b8a7b88 221 Firnis (GTE code from PCSX-Revolution Project)
222 Gabriele Gorla (MDEC decoder)
6b8a7b88 223 Peter Collingbourne (Various core/psxbios fixes)
ee78346e 224 Dario, NeToU, siveritas (Various bugfixes)
6b8a7b88 225 Wei Mingzhi (Maintainer, input plugin, iso/cheat support, misc stuff)
226
ee78346e 227PCSX4ALL GPU plugin:
228 (C) 2010 PCSX4ALL Team
229 (C) 2010 Unai
230 Franxis <franxism@gmail.com>
231 Chui <sdl_gp32@yahoo.es>
232
233GLES plugin (psx4m project):
f932e54b 234 (C) 1999-2009 by Pete Bernert
235 EQ
236 Olli Hinkka
237 Proger
238 Pickle
239
1775933a 240builtin GPU/SPU plugin:
241 (C) Pete Bernert and the P.E.Op.S. team
242
243builtin SPU plugin:
244 (C) Pete Bernert and the P.E.Op.S. team
245 (C) SPU2-X, gigaherz, Pcsx2 Development Team
246 shalma
f932e54b 247
248MIPS->ARM recompiler:
1775933a 249 (C) 2009-2011 Ari64
6b8a7b88 250
f932e54b 251integration, optimization and frontend:
252 (C) 2010-2011 notaz
303ee308 253
22d3b349 254some implementation ideas (and maybe code?) likely originated from
255MAME/smf/pSXauthor and were integrated by various people to PCSX.
256
303ee308 257Source code is released under GNU GPL license, version 2 or later.
258See COPYING included in the archive (.pnd can be extracted using unsquashfs).
259The source code is available in a GIT repository at:
260
261git://notaz.gp2x.de/~notaz/pcsx_rearmed.git
262