Ask other emulator groups to help out
#11
I've played a lot of games in PCSX2 that could be considered playable. But enjoyable? That number drops drastically. The number of games that have minor to severe graphical glitches, CPU problems, require constant tweaking, savestating, and other workarounds is tremendous.

If I were to say how many games were playable on PCSX2 based on what I've observed, I'd put it more in the 50 - 60% range. But alas, different definitions. One is a hard definition that makes categorizing much easier, and the other is just me looking at it as a gamer.

Anyway, asking other emulator groups to help out doesn't work (very well) because a lot of the time people are working on the emulator they want to work on. There is some cross interest, but, for the most part, they're set. Add in the extra high difficulty of understanding PCSX2's codebase, and that's why you see less contributors.
Reply

Sponsored links

#12
It does depend highly on how you define playable. If requiring software mode for instance, makes it not playable(which for some it does) then it drops to around 70%. If having a bug with a known work around counts, it drops to 50%. And so on.

I don't think (most) of PCSX2 codebase is as bad as is commonly believed. I am a programmer myself, though I don't usually work in C. I've been trying to understand things lately, and the only thing I've really had trouble following are the recompilers themselves(which I couldn't understand in a perfect situation with my current knowledge), and GSdx. I can already hear it being said "Well, that's the core of the emulator" and yeah it is sorta. A core that hasn't been touched in a long time because those who wrote it are gone, and those left don't really have the skill or time, and no one that does wants to join. I'm not faulting anyone here, I'm just saying you can't expect people who don't have the time or skill to magically fix it. Anyone who wants to help is welcome, but that's not a skillset many people(or even many programmers) have. Thus the problem.

Now I'm not saying PCSX2 is not complicated. It surely is. But so is the machine which it emulates. That has a big role in things too.
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply
#13
I don't mean PCSX2's codebase is all horrible and such when I say it's extra high difficulty; I mean there's a lot of challenges around it. GDSX is one thing, but, the amount of PS2 homebrew and documentation doesn't seem to be as good as there is for GameCube and Wii (and the ease of using it is harder on PS2 from my personal experience.)

The PS2 itself is a beast, PCSX2 is old in the tooth, it's going to have some code that doesn't make sense just as every other project that spans a decade will.

As for software renderer? I don't think that makes it unplayable. PCSX2's software renderer is pretty awesome, really. My main issue with PCSX2 has been things I can't really get around. Driv3r's horrible fog and constantly changing palettes on the cars, Burnout 3: Takedown's spotty (at best) physics, missing graphics (the sky was missing even in software last I checked) make it so much worse to play than on my PS2. I have an expensive capture card, so playing it on console isn't so bad, really, but I tend to like using emulators, call me a reverse purist or something. Rogue Galaxy will crash if you use special attacks on enemies that are shielded (and the work around on the wiki is to guard break them before using special attacks). Can you avoid that and beat the game? Sure. Same for falling through the ground several times, falling through the ceiling, enemies sliding away without an animation, etc.

There are several games that work better though too, MGS2 was playable, MGS3 needed a few settings changed, but worked well enough. As far as I could get into Godhand seemed fine. But for every good experience I have, I have another one that's equally frustrating.

At some point, playable stopped being enjoyable with a lot of the games I played in PCSX2. I totally get the definition of playable on the wiki, it's a hard definition that makes it easy to rate games.
Reply
#14
- Jackie Chan Adventures - fix in Software, but slow (2d game graphics)
- Superman return (and other game) - green, red, yellow vertical stripes (not fix the past 10 years)
- Musashi: Samurai Legend - Very Bad Graphic (hardware and software)
.....
Software is very slow, so just to fix bugs,
but should not be used to play
Reply
#15
(02-26-2015, 08:12 AM)n1dminhd Wrote: Software is very slow, so just to fix bugs,
but should not be used to play
if you have a decent PC it's not slow...
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply
#16
(02-26-2015, 07:17 AM)JMC47 Wrote: Burnout 3: Takedown's spotty (at best) physics, missing graphics (the sky was missing even in software last I checked) make it so much worse to play than on my PS2

Dunno about the physics issues, never had(or noticed them).

The sky is fixed in software IF software is enabled BEFORE the race starts. At that point you can even switch back to hardware and it will be fine. Either way I play and very much enjoy B3 in PCSX2. It's a matter of opinion, of course. Some people are more tolerant of issues than others obviously.

Anyway some of this stuff is inherent to emulation. For instance, I had a good experience with Xenoblade in Dolphin, but Tales of Symphonia was glitchy enough to make me prefer buying the HD remake on PS3.

FWIW we are in the process of implementing that "perfect" rating - it's in the gameindex.dbf now as #6. So that's something. Then we will have something more than just "playable," something that indicates the experience is as good as or better than the console itself.

Edit: And yes, the age of PCSX2 and the many many different parts written by many different people definitely complicates things.

I hope that I can become a useful contributor. I have written a couple of(much simpler) emulators myself(chip-8 and 6502), but the big thing for me right now is learning C(I use BASIC). I've made some tinkers here and there, and the EE overclock one has proven rather popular. I'm not gonna revolutionize things, and recompilers are beyond me, but I'd like to help and hope to be of use.
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply
#17
(02-26-2015, 08:18 AM)jesalvein Wrote: if you have a decent PC it's not slow...

You actually need just a modern cpu and not even a high-end model. Most modern quad-or-more-cores can be sufficient to play in software mode (especially those of intel).
Reply
#18
(02-26-2015, 10:29 AM)willkuer Wrote: You actually need just a modern cpu and not even a high-end model. Most modern quad-or-more-cores can be sufficient to play in software mode (especially those of intel).


(02-26-2015, 08:18 AM)jesalvein Wrote: if you have a decent PC it's not slow...

I know and I'm also trying to upgrade computer. But software mode still requires too much computer hardware
Reply
#19
(02-26-2015, 12:06 PM)n1dminhd Wrote: I know and I'm also trying to upgrade computer. But software mode still requires too much computer hardware

Considering each chip in the EE need to be perfectly synchronised with the others, the raw power to emulate this isn't that high...
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply
#20
(02-26-2015, 09:50 AM)Blyss Sarania Wrote: Edit: And yes, the age of PCSX2 and the many many different parts written by many different people definitely complicates things.

I hope that I can become a useful contributor. I have written a couple of(much simpler) emulators myself(chip-8 and 6502), but the big thing for me right now is learning C(I use BASIC). I've made some tinkers here and there, and the EE overclock one has proven rather popular. I'm not gonna revolutionize things, and recompilers are beyond me, but I'd like to help and hope to be of use.

Sounds great! Smile
PCSX2's code is actually pretty interesting and there's a lot one can learn from it.
It is a challenge and should be seen as such though!

If you run into recompiler code, skip parts you don't understand. Just the function names are pretty telling already. Rec code can be easily spotted by the x86emitter functions like xMOV, xADD etc.
Whenever you see those, it's basically assembler style instructions that are written to a buffer and get executed by the CPU.

C is a great language to work directly with the hardware.
It's very powerful and it doesn't hold your hand. If you want to write past an array's boundaries, go right ahead (but know the consequences Wink ).
You'll get the fastest and most efficient programs with C.
It's entirely your responsibility to make your code safe though.
The entire Linux Kernel is C btw Wink
Reply




Users browsing this thread: 2 Guest(s)