Live data from Hacker News

Retro Boy: simple Game Boy emulator written in Rust, can be played on the web

github.com

61–70 of 108 posts

Re: Retro Boy: simple Game Boy emulator written in Rust, can be played on the web

#62

Tangentially related - I recently picked up a retro gaming handheld from Aliexpress for the meagre sum of £50, which is capable of playing consoles from gameboy to snes to playstation 1, and apparently even a smattering of N64 and dreamcast (with poor performance). There are a dizzying array of options (game boy form factor, horizontal, clamshell design ala the advance SP), and although I'm sure the build quality lea…

if people want more info on these devices, russ from retro game corps does a ton of reviews on them, from the cheapest (that are less than 30 euro) to the really expensive ones (600+!).

i myself own a retroid pocket 5, one trimui brick (which my wife adores) and a steam deck (yes, it's an amazing retro gaming machine).

(retro catalog also has a ton of technical information, including ratings)

https://www.youtube.com/@RetroGameCorps

https://retrogamecorps.com/

https://retrocatalog.com/

Re: Retro Boy: simple Game Boy emulator written in Rust, can be played on the web

#64

Tangentially related - I recently picked up a retro gaming handheld from Aliexpress for the meagre sum of £50, which is capable of playing consoles from gameboy to snes to playstation 1, and apparently even a smattering of N64 and dreamcast (with poor performance). There are a dizzying array of options (game boy form factor, horizontal, clamshell design ala the advance SP), and although I'm sure the build quality lea…

Miyoo Mini Plus. It's fantastic!

Re: Retro Boy: simple Game Boy emulator written in Rust, can be played on the web

#65
Really love seeing more Game Boy emulators written in Rust, especially with browser support — awesome project!

If you're into this space, I’ve been building https://afterplay.io — a browser-based retro gaming platform with support for a bunch of systems (GB,GBC, GBA, SNES, NDS, PS1, etc). It runs entirely in the browser with save states, cloud sync, and native mobile support via Capacitor.

Also has some fun stuff like netplay (multiplayer over the web), Link Cable Support and RTC manipulation, and customisable touch controls.

Always exciting to see more emulators pushing what’s possible on the web.

Re: Retro Boy: simple Game Boy emulator written in Rust, can be played on the web

#68

Tangentially related - I recently picked up a retro gaming handheld from Aliexpress for the meagre sum of £50, which is capable of playing consoles from gameboy to snes to playstation 1, and apparently even a smattering of N64 and dreamcast (with poor performance). There are a dizzying array of options (game boy form factor, horizontal, clamshell design ala the advance SP), and although I'm sure the build quality lea…

Miyoo Mini Plus. It's fantastic!

Nice! I went for the Anbernic 40xxH and it's a joy to use. The only thing I wish worked differently was Retro Achievements working offline!

Re: Retro Boy: simple Game Boy emulator written in Rust, can be played on the web

#69
post #4

It plays really slow in Firefox, and there are also audio issues (they may be related?) But in Chrome, this plays really well! Great work!

For me it runs at full speed in both stable and developer versions of Firefox (but even then, audio is bad at times). But still, I looked at performance out of curiosity. After running it under FF's profiler for a moment, it looks like a sync executed after every opcode recalculates the framebuffer (`step_until_next_audio_buffer -> cpu::microops::read_byte_from_memory -> emulator::sync -> gpu::scanline::write_scanlin…

Yeah, still being on Windows 10, I almost didn't put the complaint in the comment. Lots of reasons it might just be an environment issue for me.

But, in my development experience with firefox, the issues it seems to have always seem performance related (or compliance with web standards related), and I figured that even if others weren't seeing the issue, there was still probably something underlying that could be figured out. So thanks for going through the debug! It's nice to know that there may be an optimization available for the project, and it feels like it might even be an additional performance gain for chromium, if I'm understanding you right? Might be some reason they need to do that sync after every opcode, but I agree with your suspicion that the canvas is probably being over-rendered to.

Post reply on HN