> PSP games running in the browser without an emulator. The game's MIPS machine code is translated ahead of time into C++, compiled to WebAssembly, and linked against a small reimplementation of the PSP's operating system and graphics chip that draws with WebGL2.
Feels slightly pedantic to point this out, but this describes an emulation stack. A lot of emulators are already doing some kind of lift+JIT on the target's machine code (just not through WASM)
The CPU is also in a bit of a funny place because the transpiled C++ looks to be translating instructions into manipulation of a MIPS CPU state object.
Yeah, maybe that's the difference. I was trying to probe the semantics, not so much a "gotcha". Parts of this stack are quite bespoke for this one game.
AI is completely cracking up the emulation bubble. We're not even emulating things anymore, we're just reverse engineering things and directly porting games. This is an awesome timeline for old game preservation. These fuckers aren't profiting from the games anymore, yet they won't release their IP, or update their old games to newer, more accessible platforms. So I really appreciate the work these kinds of developers have been doing.
Tbh, I think it's not an awesome timeline. AI is kinda motivating everyone to do everything on their own instead of gathering up and contributing to one (or two) projects, which is something I'm worried about in Open Source software as a whole. If we were using AI to contribute to a single decomp, making it as good as it could possibly be and gathering knowledge about the game, it would probably be much, much better. Instead, we are getting a mountain of shoddy, vibe-coded ports
Isn't this technically illegal to reverse engineer and share? It's awesome but I feel like it'll hasten big companies to lobby and make some harsh laws around this type of thing. I'm surprised Claude/Fable allows this? Or do we trick them to do it?
It’s legal to have a ROM of a game you actually owned and ripped. This is simply allowing the ROM that you actually own to be played on a different console, the web.
In this case, the user is distributing the ROM which is illegal. But the method to make it work on the web is fair use. The legal way to do it would be a website where users “insert” their own rom and the website simply lets you play that ROM on the web.
I understand where you are coming from, but look at what else copyright protection has brought: studios and publishers are so insecure that they want to lock consumers out of 10+ year old games so that they don't have to compete with (their own) past games.
Maybe putting some pressure on making games that are actually new and different isn't a bad thing.
I don't think reverse engineering or open source is creating the starving artists.
Also, video game programmers are already starving artists comparatively. To many people want to make video games to exploitation is rife. Only publishers benefit from your rhetoric. At least artists get royalties
> Also, video game programmers are already starving artists comparatively.
So this is making it better for them?
> To many people want to make video games to exploitation is rife. Only publishers benefit from your rhetoric. At least artists get royalties
Now both the publisher and the artist (we can now include game developer) will get $0 and cannot have it both ways.
We can accept mass decompilation of games and existing ones being sold today and offered for free, and also accept significant layoffs and the collapse of an entire industry.
> A small PSP kernel. Whatever the game asks of the PSP's operating system is answered by high-level emulation in profile/host
So this is just an emulator with extra steps. The kind of bad emulator that requires game-specific patches instead of getting the emulation correct to begin with, and is embedding the emulator into a binary together with the game. Absolute slop.
> The kind of bad emulator that requires game-specific patches instead of getting the emulation correct to begin with, and is embedding the emulator into a binary together with the game. Absolute slop.
There's kind of a bitter lesson variant with AI coding where the work to make a simple, consistent, flexible, DRY platform or library isn't really worth it when anyone can press a button and get a variant customized to their needs in minutes.
People playing the game don't care about the elegance of the emulator, and if there is a bug in the slop, they can just have their AI fix it immediately and keep playing.
Or they can just save their time/money, use a human-crafted emulator, and not deal with their game crashing constantly and all manner of stupid bugs. It is genuinely insane that you believe your average joe video game player would rather spend $100~200 on a subscription, prompt for an emulator, then prompt it over and over to fix showstopping bugs rather than playing something that works for free, and yet that is what you are supposing when you suggest they "don't care" about the "elegance" of the emulator.
You would at least have a point if people were slopping out emulators for things that didn't exist but, surprise surprise, we still don't have a Switch 2 emulator. Almost like this entire notion is a complete fraud and all it can do is regurgitate existing code poorly.
if you liked this topic, you might be interested in https://thegamingemporium.com/recent/
> PSP games running in the browser without an emulator. The game's MIPS machine code is translated ahead of time into C++, compiled to WebAssembly, and linked against a small reimplementation of the PSP's operating system and graphics chip that draws with WebGL2.
Feels slightly pedantic to point this out, but this describes an emulation stack. A lot of emulators are already doing some kind of lift+JIT on the target's machine code (just not through WASM)
Most people would say that Ahead-of-time (AOT) compilation or static recompilation is not considered traditional emulation.
You are no longer emulating the CPU but the rest of the system you are absolutely emulating. So I think it's very close to traditional emulation.
The CPU is also in a bit of a funny place because the transpiled C++ looks to be translating instructions into manipulation of a MIPS CPU state object.
https://github.com/jessicanataliagta/PSPRecomp/blob/main/src...
I think of an emulator as a separate project/product typically. Perhaps that's what they are saying?
Yeah, maybe that's the difference. I was trying to probe the semantics, not so much a "gotcha". Parts of this stack are quite bespoke for this one game.
I remember trying to emulate this game on my i7 laptop a decade ago. It was running like 15 FPS.So for me this look like magic.
I saw one yesterday for GTA 6 it was taken down. Somebody can probably dig up the X link.
AI is completely cracking up the emulation bubble. We're not even emulating things anymore, we're just reverse engineering things and directly porting games. This is an awesome timeline for old game preservation. These fuckers aren't profiting from the games anymore, yet they won't release their IP, or update their old games to newer, more accessible platforms. So I really appreciate the work these kinds of developers have been doing.
Tbh, I think it's not an awesome timeline. AI is kinda motivating everyone to do everything on their own instead of gathering up and contributing to one (or two) projects, which is something I'm worried about in Open Source software as a whole. If we were using AI to contribute to a single decomp, making it as good as it could possibly be and gathering knowledge about the game, it would probably be much, much better. Instead, we are getting a mountain of shoddy, vibe-coded ports
> This is an awesome timeline for old game preservation
How? The ISOs/ROMs were already preserved and playable on emulators on newer platforms
Isn't this technically illegal to reverse engineer and share? It's awesome but I feel like it'll hasten big companies to lobby and make some harsh laws around this type of thing. I'm surprised Claude/Fable allows this? Or do we trick them to do it?
It’s legal to have a ROM of a game you actually owned and ripped. This is simply allowing the ROM that you actually own to be played on a different console, the web.
In this case, the user is distributing the ROM which is illegal. But the method to make it work on the web is fair use. The legal way to do it would be a website where users “insert” their own rom and the website simply lets you play that ROM on the web.
Also pedantic but: it’s jurisdiction dependent
there is no ROM in the linked github repo
That’s fair, I saw a screenshot of God of War running in the browser in the ReadMe so assumed the person put it online.
> Isn't this technically illegal to reverse engineer and share?
Software engineers are devoid of copyright and trademark laws and want everything to $0 and will become the new starving artists without knowing it.
Don't be surprised to see far more mass layoffs in the games industry.
I understand where you are coming from, but look at what else copyright protection has brought: studios and publishers are so insecure that they want to lock consumers out of 10+ year old games so that they don't have to compete with (their own) past games.
Maybe putting some pressure on making games that are actually new and different isn't a bad thing.
> I understand where you are coming from...
I don't think you do. But please continue.
> Maybe putting some pressure on making games that are actually new and different isn't a bad thing.
That's not the point. It is what comes afterwards and software engineers cannot have it both ways.
This will make game studios move to world models with the real game being never released, but only simulated and streamed to you.
So let's see what happens.
And why do you think people won't be able to rip the streamed games too?
I don't think reverse engineering or open source is creating the starving artists.
Also, video game programmers are already starving artists comparatively. To many people want to make video games to exploitation is rife. Only publishers benefit from your rhetoric. At least artists get royalties
> Also, video game programmers are already starving artists comparatively.
So this is making it better for them?
> To many people want to make video games to exploitation is rife. Only publishers benefit from your rhetoric. At least artists get royalties
Now both the publisher and the artist (we can now include game developer) will get $0 and cannot have it both ways.
We can accept mass decompilation of games and existing ones being sold today and offered for free, and also accept significant layoffs and the collapse of an entire industry.
Been working on this same idea for Super Smash Bros. Melee on the GameCube! Also runnable in the browser: https://github.com/nikhilunni/melee
Port is about 80% done, but completely mechanical with AI and an oracle (the Dolphin emulator)
Nothing will happen.
> A small PSP kernel. Whatever the game asks of the PSP's operating system is answered by high-level emulation in profile/host
So this is just an emulator with extra steps. The kind of bad emulator that requires game-specific patches instead of getting the emulation correct to begin with, and is embedding the emulator into a binary together with the game. Absolute slop.
> The kind of bad emulator that requires game-specific patches instead of getting the emulation correct to begin with, and is embedding the emulator into a binary together with the game. Absolute slop.
There's kind of a bitter lesson variant with AI coding where the work to make a simple, consistent, flexible, DRY platform or library isn't really worth it when anyone can press a button and get a variant customized to their needs in minutes.
People playing the game don't care about the elegance of the emulator, and if there is a bug in the slop, they can just have their AI fix it immediately and keep playing.
Or they can just save their time/money, use a human-crafted emulator, and not deal with their game crashing constantly and all manner of stupid bugs. It is genuinely insane that you believe your average joe video game player would rather spend $100~200 on a subscription, prompt for an emulator, then prompt it over and over to fix showstopping bugs rather than playing something that works for free, and yet that is what you are supposing when you suggest they "don't care" about the "elegance" of the emulator.
You would at least have a point if people were slopping out emulators for things that didn't exist but, surprise surprise, we still don't have a Switch 2 emulator. Almost like this entire notion is a complete fraud and all it can do is regurgitate existing code poorly.
maybe i will finally able to play MGSolid saga on a browser on my mac :)
Insane that we can now decompile PSP games to WebGL. Emulation has come far from 2006 where ePSXe the PS1 emulator would only run on a beefy Pentium.