mirror of https://github.com/PCSX2/pcsx2.git
199 lines
6.8 KiB
Plaintext
199 lines
6.8 KiB
Plaintext
P.E.Op.S. PS2 CDVD emulation plugin
|
|
---------------------------------------------------------------------------
|
|
|
|
The P.E.Op.S. PS2 CDVD plugin is based on the P.E.Op.S. PSX
|
|
CDR plugin which is based on Pete's CDR ASPI/IOCTL plugin
|
|
for Windows.
|
|
|
|
---------------------------------------------------------------------------
|
|
Introduction - 19.11.2003
|
|
----------------------------------------------------------------------------
|
|
|
|
PS2 emulation is growing.
|
|
|
|
Oh, don't get me wrong, it will still need a lot of time until
|
|
you can really play your favourite PS2 games on the PC (ehe...
|
|
and I remember how I got flamed away nearly two years ago by
|
|
die-hard know-it-alls when I predicted that it will need at
|
|
least 'a couple of years' for 'playable' PS2 emulation).
|
|
|
|
But yeah, it is growing. Lotsa nice guys are spending their
|
|
free time coding on PCSX2, for example. One of them is Shadow...
|
|
and he never gets tired to ask me for some PS2 plugins, ehe.
|
|
|
|
Well, what to say? Last week I had some free time as well,
|
|
Shadow asked for a CDVD plugin, and so I got to work. I took
|
|
the P.E.Op.S. cdr sources, added the PCSX2 interface, changed
|
|
some lines of code, asked a few stupid questions (hi to
|
|
linuzappz), tested it with a few PS2 dvds and cds, and it was
|
|
done.
|
|
|
|
Of course it's not 100% complete. There are a few (but not
|
|
important) things missing, more cd/dvd modes have to get
|
|
investigated and added, etc. But basically I hope it will
|
|
work just fine with the current PCSX2 version. So go on,
|
|
and give it a try :)
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
Requirements:
|
|
|
|
* A cdrom/dvd drive (yeah, you need a dvd drive to play dvds...
|
|
no emails please telling me that your cd drive doesn't work
|
|
correctly with dvds).
|
|
* The ASPI layer with W9x/ME
|
|
* Nothing special with W2K/WXP
|
|
* Some PS2 cds/dvds.
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
Installation:
|
|
|
|
just copy the file cdvdPeops.dll into your PCSX2 \plugins
|
|
directory, that's all.
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
Configuration (similar to the P.E.Op.S. psx cdr plugin):
|
|
|
|
You HAVE TO configure the plugin before you use
|
|
it the first time. There are only a few options
|
|
available:
|
|
|
|
0) Interface
|
|
-----------------
|
|
|
|
If you are using W9x/ME, you have to use the ASPI Interface.
|
|
If you are using NT/W2K/XP, you have the free choice:
|
|
ASPI (if it's installed), or IOCTL scsi commands.
|
|
|
|
1) Drive
|
|
--------------
|
|
|
|
Well, that's self-explaining. Just select the drive
|
|
you want to use. "NONE" is NO drive... you have to
|
|
select a real one.
|
|
|
|
2.) Caching
|
|
-------------------------------------
|
|
|
|
To get more speed, there are five caching modes:
|
|
None, Read ahead, Async, Thread and Smooth.
|
|
|
|
- 'None' is the slowest mode, but it should work on
|
|
most drives.
|
|
- 'Read ahead' will read more sectors at once, speeding up
|
|
mdecs. There is a small chance that a few drives cannot
|
|
do it, so set it to 'None', if you are having troubles.
|
|
- The 'Async mode' will do read ahead and some additional
|
|
'intelligent' asynchronous reads... that mode is recommended
|
|
with the ASPI interface, it can squeeze some more speed
|
|
out of your drive :)
|
|
- The 'Thread mode' will speed up the IOCTL interfaces,
|
|
since that ones can't do real async reading. So, when
|
|
you are using W2K/XP, and you have no ASPI installed,
|
|
try this mode for best speed.
|
|
- Some drives will have speed problems reading ps2
|
|
cds/dvds, this caching mode will try to solve such issues.
|
|
|
|
|
|
Also available: an additional data cache option, which
|
|
will store up to 4 MBytes of already read sectors. This
|
|
can speed up certain games, which are re-reading the
|
|
same range of sectors again and again.
|
|
|
|
|
|
3.) Speed limitation
|
|
-------------------------------
|
|
|
|
Some drives will work better (less noisy and smoother)
|
|
if you limit the drive speed. Not all drives are supporting
|
|
the "set speed" command I am using, though.
|
|
If your drive doesn't support it, a message will be displayed
|
|
on startup. There are some tools in the net which will
|
|
offer the same function, prolly for a wider range of drives,
|
|
so you can also try one of them, if the plugin speed limit fails.
|
|
|
|
|
|
4.) Don't wait til drive is ready
|
|
-----------------------------------------------
|
|
|
|
By default my plugin is asking the cd/dvd drive on startup,
|
|
if its state is ready (that means: a cd is inserted and the
|
|
drive can start reading).
|
|
A few drives will not answer that question (bah, bah, bah),
|
|
and the screen will stay black... forever :)
|
|
If you are encoutering that problem, you can turn on the
|
|
"Don't wait..." option, but be warned: it can cause problems
|
|
(blue screens, for example) if the plugin starts reading and
|
|
there is a problem with the drive...
|
|
|
|
|
|
5.) Check drive tray state
|
|
-----------------------------------------------
|
|
PCSX2 may ask the plugin if the tray is open or closed. If
|
|
this option is turned off, the plugion always will respond
|
|
"closed". If this option is enabled, the plugin will try
|
|
to ask the drive for the tray state. Since I couldn't test
|
|
this option yet, I suggest to leave it off (and honestly,
|
|
are you able to run a multi-dvd game which needs disc
|
|
changing right now in PCSX2?) :)
|
|
|
|
|
|
6.) Try again on reading error
|
|
-----------------------------------------------
|
|
It might happen that your drive can't read a certain sector at
|
|
the first time, if your cd/dvd is scratched. Therefore I've added
|
|
that option, by activating it you can tell the plugin to try it
|
|
up to 10 times again before reporting the read error to the
|
|
main emu.
|
|
If you want, you can also activate some error message box,
|
|
if a sector is not readable (just to inform you something is
|
|
going wrong).
|
|
|
|
|
|
7.) Use PPF patches (not available yet)
|
|
---------------------------------------
|
|
|
|
- TODO :)
|
|
|
|
|
|
8.) Subchannel reading (not available yet)
|
|
------------------------------------------
|
|
|
|
- MAYBE TODO :)
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
Conclusion:
|
|
|
|
You never ever can escape your Shadow ;)
|
|
|
|
For version infos read the "version.txt" file.
|
|
|
|
And, peops, have fun!
|
|
|
|
Pete Bernert
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
P.E.Op.S. page on sourceforge: https://sourceforge.net/projects/peops/
|
|
|
|
P.E.Op.S. developer:
|
|
|
|
Pete Bernert http://www.pbernert.com
|
|
Lewpy http://lewpy.psxemu.com/
|
|
lu_zero http://brsk.virtualave.net/lu_zero/
|
|
linuzappz http://www.pcsx.net
|
|
Darko Matesic http://mrdario.tripod.com
|
|
syo http://www.geocities.co.jp/SiliconValley-Bay/2072/
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
Disclaimer/Licence:
|
|
|
|
This plugin is under GPL... check out the license.txt file in the /src
|
|
directory for details.
|
|
|
|
----------------------------------------------------------------------------
|