Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Introducing PCSX2 2.0! (pcsx2.net)
51 points by nfriedly on July 13, 2024 | hide | past | favorite | 9 comments


Recognize this from my youth (as a player) -- awesome that this project is still going, and this is a MASSIVE update.

Wonder how many young people are getting their introduction to CS/compilers/systems via hacking on pcsx2.


This does feel like a big release:

* Big picture mode

* Per-game settings and a built-in database of fixes that are applied automatically for know games

* Switch to Qt

* No more plugins, it's all a single codebase now

* Translation process improvements

And more!


> No more plugins, it's all a single codebase now

Interesting that it was considered a benefit before. I guess integration made it easier to manage than adopting the plugins.


They explain it in the article but I'll paraphrase here.

Historically there wasn't a single good answer/method that could be applied universally to many of the problems. Hence user selectable and configurable plugins to allow the user to experiment for what worked best for them.

That is no longer the case, the project has matured to the point that a optimal choice is known meaning that the existing plugin system only provided the user with a footgun. This they folded plugins and their developers into the codebase and built a database of known optimal configurations.


I read the article. You didn't read my comment.

My comment was actually curious about the overhead of rewriting the plugins to roll them in wondering how much effort that was.


I wouldn't imagine it was that much, I would suspect the API remains largely unchanged, just the library code gets compiled in rather then being loaded at runtime.

I read your comment as more not seeing the benefit of the change.


stupid question: what kinda knowledge and skills do you need to have to write an emulator from scratch? and also how do these people know the internals of PS2?


There are tutorials out there, that tend to start out with the "fantasy system", the chip8:

http://www.emulator101.com/introduction-to-chip-8.html

(You can google "chip8 tutorial rust|golang|c" to find language-specific guides.)

After that it's a matter of trial, error, and so much testing. I've written emulators for Z80-based systems and they're thankfully old enough that there are tons of documentation for them - often scattered, often incomplete, but still useful.

Jumping straight into a "big" system like an Xbox, PS/2, or similar is not recommended. But once you get a feel for architecture and how the various low-level things interact it's quite addictive to add more and more steps. Writing a gameboy/NES/SNES emulator should be a fun challenge for many people - you can get some stuff running in a month or two, maybe more, maybe less. But after that comes all the refinements and accuracy fixes that can take years. More modern systems are more complex, but also they offload a lot of stuff - you're not so much focused on CPU/BUS/AUDIO timing as on blenders, shaders, and things that are outwith the core. I'd not have the skills, patience, or interest in those things personally. I guess that's why I've been emulating CP/M recently - zero graphics!


Skills are the easy part. The hard part is having the time :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: