PCSX2: Difference between revisions

From PCSX2 Wiki
Jump to navigation Jump to search
Line 193: Line 193:
|Alexey Silinov
|Alexey Silinov
|
|
|Russia(?)
|Jan 2003-May 2003
|Jan 2003-May 2003
|Russia(?)
|?
|?
|-bgcolor="#FFFFFF" align="left"
|-bgcolor="#FFFFFF" align="left"
|asadr
|asadr
|
|
|?
|Jan 2003-...
|Jan 2003-...
|?
|?
|?
|}
|}

Revision as of 19:02, 15 October 2009

PCSX2 is a Playstation 2 emulator for Windows and Linux. It has been started by the team behind PCSX (PS1 emulator) back in 2002. The development remains mostly active through all these years. The emulator archived some playable speeds only by mid-2007 and the later versions have improved speed and compatibility making it both the ultimate solution for PS2 emulation and the instrument to keep and preserve the PS2 legacy in the modern world. Though not yet perfect the program can successfully emulate most of the commercial games for PS2 in playable speeds and good visuals (often even better than the original PS2 had ever archived).

Up until now the program has plugin architecture making it possible to expand it's capabilities by attaching additional plugins. Although the plugins are numbered and unlikely to increase their quantity in the near future the plugin approach still has its positive moments (it's possible to use newly updated plugins without changing the version of the main program and vice versa). As of late 2009 the program only supports x86 architecture and can efficiently use no more than 2 cores on multicore CPUs (1 core is used for the main emulation purposes and the second is for plugins' purposes like rendering graphics, output sounds or PAD works). While the increase of number of useful cores may happen in the future it still remains a mystery when this will happen because the division of the general emulation thread into two or more is a very hard and complex task (original PS2 has multi CPU architecture and the correct timing between emulated CPUs is complicated enough without dividing every CPU into more than one thread).

Mac OS X is not officially supported but you can still run PCSX2 under it.

Current PCSX2 notable features:

  • Recompilers for Emotion Engine (EE), Vector Unit 0 (VU0) and Vector Unit 1 (VU1). They are used to translate some parts of PS2 original machine code into x86 machine code, making the executing of it many times faster than the usual emulation. Due to the fact that PS2 machine code is absolutely different in almost every way possible from x86 these recompilers are probably the most complicated parts in PCSX2.
  • Dual core support makes PCSX2 use up to 2 cores speeding up the emulator significantly.
  • Proper SPU2 emulation helps to hear the real or even enhanced PS2 sound on the PC which is not the trivial task considered the lack of documentation and the fact that it has to synchronize with many emulated processors.
  • Full gamepad support makes it possible to emulate every Dual Shock 2 feature so no game will be unbeatable because of the PAD problems.
  • Patch system helps to create cheats for any game easily so you won't be frustrated when you cannot progress because of the extremely hard game boss. Also it can be used to patch code skipping some parts where emulation is still broken (which ultimately can make the game playable). This feature is quite user-friendly and easy to use.
  • Many optimizations (hacks) which tricks out the emulation making it faster where it could be very slow without them. You will be able to play certain games on the lower-end machines thanks to this feature.
  • Fully working memcards support. Which could prove some problematic because the lack of documentation made the developers reverse engineered this feature and saving/loading sometimes used to result in corruption of memcard before this complicated process was finished.
  • Fully working IPU support responsible for FMV (like MPEG videos for example). Now you can enjoy all the videos in cut scenes the games can offer.
  • PCSX2 is an open source project. So any developer can either join the PCSX2 team or fork the PCSX2 project granted he wants to improve the code in some way. This also means you are not charged for using the emulator and the GPL guarantees that you won't ever be. However you are encouraged to donate some money to developers so they will be motivated to continue their work (use make a donation button on the bottom of the front page of the official site).

However some emulation features still need an improvement and some are even not implemented yet.

Requirements

Hardware and Software

Harware requirements are very game-dependant although it mush be noted that the bottleneck of this emulator in most cases is CPU rather than GPU (video card). So the faster CPU you'll get the better PCSX2 will work for you. Some games however can be slowed down because of unoptimized GFX code or even because of your weak GPU card (for example Final Fantasy XII is said to use your GPU in full its potential). Intel CPUs are better than AMD ones with PCSX2. Though it doesn't mean in any way that you will be unable to play on AMD CPUs it still says that when in some PC games your AMD and your friend's Intel CPU will perform equally good you may notice that this is not the case for PCSX2.

The frequency of CPUs is not the ultimate meter of their success with PCSX2. The newer optimized CPUs perform better than the old ones using the same frequency. You can easily outperform Intel Pentium CPU with Intel Core CPU because of some optimizations in Intel Cores. However CPU frequency is one of the main factors for smooth PCSX2 use.

So these are rather rough and average stats/"facts" give you the idea what kind of PC you'll need for PCSX2 (remember that some games will be fully playable with the stats considerably lower than the following).

  • You'll need dual core CPU (single core with HT support won't be enough).
  • You won't be able to see some good performance with budget CPUs (like Celeron or Semptron).
  • For Intel it's good to use at least Code 2 Duo (started from 2006), for AMD you may want to start from Althlon X2 CPUs (started from 2005).
  • Quad core CPU will not improve your PCSX2 experience much (but can ease some cases like using GSDX in software renderer mode).
  • You'll need at least 2.0-2.5Ghz for Intel Dual Cores, and at least 2.5Ghz for AMD Athlon 64 X2 (index 4600+ and higher for stock CPUs). On 4.0Ghz+ overclocked Intel Code 2 Duo most known games are playable.
  • You may or may not want to overclock your CPU for some picky and slow games so consider buying a good cooler for it.
  • No laptop system will be able to show very good performance with PCSX2.

As for GPU requirements please look at GSDX page. But you will be able to play at least with Radeon X8xx and higher from AMD and with Geforce 6xxx and higher from nVidia.

There're no strict requirement for RAM. If your operating system can run some games so it will PCSX2 (it's not RAM hungry).

A choice between Windows and Linux is a fragile topic. However it's well known fact that you'll see some worse speeds in Linux (sometimes just slightly worse) and you won't be able to use GSDX (DirectX only) so the graphics won't be as good in most cases. Plus it will require some knowledge to compile and configure PCSX2 on Linux for your system. Though this choice will rather be based not on difference in speed and visuals but your preferences.

A choice between Windows XP and Windows Vista (Windows 7) is a matter of your GPU capabilities. If your graphics card supports DirectX 10+ (see GSDX page) it's wiser to use Vista (or Windows 7) because you'll be able to switch GSDX in DirectX 10 (as well as fall back to DirectX 9 mode).

BIOS

It could be easier for some to buy PS2 DVD off eBay and start playing in PCSX2. Sadly your original DVD is not everything you'll need to make PCSX2 work. You'll also need the BIOS dumped from your PS2. PS2 BIOS is copyrighted by Sony so getting it from anywhere but your own PS2 is illegal action like downloading PS2 DVDs from the Internet. So ultimately you'll have to have PS2 to dump your BIOS from it before you will start playing your PS2 DVDs on the PC. One region version of BIOS doesn't make the game from another region unplayable so if you have PAL BIOS on your PS2 you'll be able to play NTSC games and vice versa.

The dumping of BIOS can be quite complicated process and you may even consider asking for help from your more experienced friends or use the forums.

You may get some instructions here and start dumping by downloading the tool from this place or use the official guide here.

Development and support team

Note that this information is partly taken from the official readme. Some info has been brought to life from the old ChangeLog.txt. If you feel someone is missed here please take a moment and add him to the appropriate place.

Nickname Real Name Country Activity period Role and comments
Current active team members
saqib Pakistan from April 2005 Project leader, fixing bugs around (FPU, Interpreter, VUs..)
refraction Alex Brown England from June 2005 General Coding DMA/VIF etc
arcum42 from Oct 10, 2008 (playground) Linux compatibility and porting
cottonvibes from Aug 11, 2008 (playground) FPU and VU recompilers, general coding
drkIIRaziel Greece Memory management, emulation theory/principals, recompiler design.
gigaherz General coding, spu2ghz, cdvdGigaherz
Jake Stine (Air) USA from Oct 30, 2008 (playground) MTGS,counters, timing/syncing, general coding,SPU2-X
rama Germany from Aug 11, 2008 (playground) Resident hacker, uses random values until they fix something, then figures out why :P
tmkk VUs, recompilers, x86asm
gabest from Nov 2004 (metioned in logs) GSDX plugin
Current inactive team members
florin Florin Sasu Romania Nov 2002-... Master of HLE. Master of cd code and bios HLE..
Nachnbrenner Germany Nov 2004-... patch freak :P
aumatt Australia Feb 2004-... a bit of everything mostly handles CDVD cmds
Shadow George Moralis Greece May 2002-... Project founder, master of cpu, master of bugs, general coding...
Goldfinger Brazil June 2002-... MMI,FPU and general stuff
loser Australia March 2005-... obscure cdvd related stuff
zerofrog USA Jan 2006-... Recompilers, ZeroGS, x86-64, linux, optimizations, general fixes and new features
Linuzappz Argentina May 2002-... Project founder, master of The GS emulation and so many others..
basara Recompiler programmer. general coding
[TyRaNiD] May 2002-... GS programmer.General coding
Roor General coding
Alexey Silinov Russia(?) Jan 2003-May 2003 ?
asadr ? Jan 2003-... ?


Additional coding

F|RES, Pofis, Nocomp, _Riff_, fumofumo, pseudonym, Nneeve, efp (mentioned in logs), CKemu (mentioned in logs)

Testers, admins, stuff team

Plugins

Graphics plugins

Sound plugins

PAD plugins

Other plugins

Versions timeline

Setting up PCSX2 guides

Useful links