Live data from Hacker News

There oughta be a WiFi Game Boy cartridge

there.oughta.be

21–30 of 101 posts

Re: There oughta be a WiFi Game Boy cartridge

#21
post #12

It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting. At what point are you basically just using the game boy's screen connected to a much more powerful external computer? It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNE…

You have protocol offload engines on modern NICs, what's wrong with basically a "Wifi Offload Engine"?

> It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNES game" but at that point the SNES is doing very little processing compared to the pi's SoC which is doing 100% of the 3d rendering.

Oh you're gonna really hate this:

https://www.theverge.com/2020/12/16/22178922/snes-mod-ray-tr...

Re: There oughta be a WiFi Game Boy cartridge

#22
post #12

It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting. At what point are you basically just using the game boy's screen connected to a much more powerful external computer? It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNE…

You have protocol offload engines on modern NICs, what's wrong with basically a "Wifi Offload Engine"? > It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNES game" but at that point the SNES is doing very little processing compared to the pi's SoC which is doing 100% of the 3d render…

And that's the point of these esp modules in the first place. They were originally intended as sdio wifi modules to give plug and play wifi support to various embedded systems.

Re: There oughta be a WiFi Game Boy cartridge

#23
post #5

That design is badly missing some registers (D-type flip-flops) -- the whole "let's read/write multiple bytes and discard the first one because the ESP is not ready yet" seems like a super hacky solution. A pair of something like 74574's would make this so much easier. When sending to ESP, register latches the last byte written and then ESP can read it at its leisure. When reading from ESP, ESP pre-loads the data int…

That's the first thing that popped out to me reading this too, bit then ended up on 'there's a perfectly good SPI bus on the link cable". With it hooked up there, you can power the esp with its own battery, and switch out carts (or more likely roms on a flash cart) for the application you want to run. IRC and Gopher ROMs can just share a wifi module.

Re: There oughta be a WiFi Game Boy cartridge

#24
post #4

I probably would have hooked it up to the link cable, which is just a SPI port. Then different carts can use it as they see fit.

This would be great. Playing unmodified multiplayer games w/ others locally wirelessly and, if latency allowed, over a network, would be a ton of fun. It would also allow for some players to be on physical hardware vs. emulators.

Re: There oughta be a WiFi Game Boy cartridge

#25
post #12

It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting. At what point are you basically just using the game boy's screen connected to a much more powerful external computer? It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNE…

True but as you hint, it's been done many times in the past. Even the NES had audio bypass somehow, Castlevania has its own DSP on the cartridge.

Re: There oughta be a WiFi Game Boy cartridge

#26

Earlier quoted context omitted.

Well, that's been done also: https://www.youtube.com/watch?v=ar9WRwCiSr0 Also, commercial 3D SNES games sometimes had to bring their own coprocessors, so it's fully in line with tradition: https://en.wikipedia.org/wiki/Super_FX

Just to super-upvote: the reverse emulation video is my second favorite tech demo of all time. It is fantastic.

That video is gold. Then again, anything Tom7 does is great.

Re: There oughta be a WiFi Game Boy cartridge

#27
post #4

I probably would have hooked it up to the link cable, which is just a SPI port. Then different carts can use it as they see fit.

This would be great. Playing unmodified multiplayer games w/ others locally wirelessly and, if latency allowed, over a network, would be a ton of fun. It would also allow for some players to be on physical hardware vs. emulators.

Oh, I didn't think about that. It'd probably take some interpretation of the individual game protocols to get over the hump of the latency, but probably doable.

Re: There oughta be a WiFi Game Boy cartridge

#28
post #12

It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting. At what point are you basically just using the game boy's screen connected to a much more powerful external computer? It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNE…

> It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting.

As a sometimes hobbyist homebrewer, instinctively I am inclined to agree. But I'll argue the counter-case.

The Game Boy (and consoles like the NES and SNES) were intended to be expanded with additional hardware in the cartridge, from the beginning in anticipation of new technology. There were commercial GB games in Japan that included an infrared transceiver, for example. Same with vibrators and battery-backed save RAM and so on. While extra cartridge hardware was never more than marginal on the Game Boy, it was fairly prominent on the NES/Famicom and especially the SNES.

And it was used to make full 3D games for the SNES. Much of Star Fox is drawn with 3D polygons, and would have been impossible without a co-processor to do the 3D rendering. So it includes the Super FX chip on-board, which is a fast coprocessor with vector facilities. In some Super FX games, the console's baseline hardware was basically relegated to being a glorified framebuffer displaying the coprocessor's rendered output.

And in some cases, no amount of extra hardware will circumvent the limitations of the hardware, which makes it a legitimate programming and game design challenge, IMO. You just can't display a full-screen bitmap on a Game Boy without tricks. There simply isn't enough onboard video RAM to hold a distinct 8x8 tile for every tile on screen. No coprocessor will work around that. It might give you an infinite source of tiles rendering a 3D scene for example, but you still have to shuffle them in and out of VRAM, which is a major bottleneck for complex Game Boy designs aiming for full screen and full framerate effects.

Re: There oughta be a WiFi Game Boy cartridge

#29
post #12

It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting. At what point are you basically just using the game boy's screen connected to a much more powerful external computer? It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNE…

Not to beat a dead horse here, but everything cartridge based games did was “cheating” by your standard

Anyone remember Mode 7 style of rendering?

Re: There oughta be a WiFi Game Boy cartridge

#30
post #12

It seems a little like cheating to put modern microcontrollers inside the cartridge that do all the heavy lifting. At what point are you basically just using the game boy's screen connected to a much more powerful external computer? It would be like me creating a new "SNES game" with a raspberry pi stuffed inside the cartridge with GPIOs mapped to the SNES cartridge interface and saying "there oughta be a full 3d SNE…

Gonna pile on the bandwagon here and add, it shouldn't be a "central computer" that has all the cool shit and you attach peripherals to it. We should be merging equally powerful computers together, it should be a symbiotic relationship between different parts that get better over time. Two computers are better than one
Post reply on HN