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