It can be used to trace syscalls made by the game - and find out which ones PPSSPP isn't running correctly.

6. If you're a developer, contribute. Even if you're not sure you're up to the task of working on an emulator, if you have a PSP you can tinker with it and find out what we're doing wrong. See here for more info:

Thanks for this Unknown, I didn't know I could send reports to a server directly from the emulator, It is enabled now.

I wish I could help even more but I'm not a programmer, I know a little Ruby but nothing of C++, but I will see if I can find a good course of it and dig into it, I'm very interested in the emulator and wish to help more (If you could help me with a link to a C++ course it would be awesome!)

Well, if you know Ruby, I'd recommend just trying to get into it and see where you land. The pspautotests are very simple and self contained.

That said, I'd start by trying to understand JpcspTrace, and using it on a game or to. For example, the default config just watches for sceKernelThreadCreate and sceUtilitySavedataInitStart iirc, and you can look at the log and see how that works. Just being able to trace the calls and compare with the log in the emulator can already really help find bugs and problems making games not work right.

Hi, is there any guide to understand how ppsspp works? I mean not 500 - 1000 page book about emulators, but just a short guide, like, which file to start, or a link to the oldest ppsspp build, so i can start reading simpler code, and follow the improvements?

So if I enable the reporting and a crash occurred the emu reports it automatically ? or do I have to intentionally look for bugs ?

Athlon x4 635 @3.5
660 OC 2GB
4GB DDR3 @7-7-7-20
Gamers cannot gain anything without first giving something in return, to obtain something of equal value must be lost that is gaming world's first law of equivalent exchange. In those days, I really believed that would be the world's one and only truth.

Clearly, it is happening, although only in certain games. This gives a big clue as to what might be wrong in those games, and also means that if a developer has one of those games, it's probably really useful to debug that particular issue.

Anyway, if it doesn't happen, it won't get reported. So to some degree, looking for issues helps. But, just playing games is enough - it'll find them automatically as they happen.

The best way to find when a problem started is bisecting. That is, you try one a bunch ago, see if it works, and if it does, try in between, etc. If you have 1000 changes to try (meaning: the last version you know did work was 1000 versions ago), you can find it in about 10 attempts (less if you're lucky) if you do this correctly.

However, there aren't builds available for every change, unfortunately. So if you find at least the first broken version and the most recent working version, that gives a range to examine.