12 ms·
There oughta be a WiFi Game Boy cartridge
- CyberRabbi 5y agoCool project. Only issue I see is the use of an old eeprom. These types of projects tend to use flash roms these days.
- monocasa 5y agoI 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.
- EvanAnderson 5y agoThis 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.
- monocasa 5y agoOh, 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.
- EvanAnderson 5y agoThis isn't a rabbit home I can go down right now, but there's some background here: https://blog.gbplay.io/2021/05/10/An-8-Bit-Idea_The-Internet-of-Game-Boys.html https://blog.gbplay.io/2021/05/10/An-8-Bit-Idea_The-Internet...
- mediocregopher 5y agoWonderful, pure creativity and determination at work here. It's so cool to see what wild ideas people will follow through with. A gemini client would be a cool next step for this: https://gemini.circumlunar.space/ https://gemini.circumlunar.space/
- spicybright 5y agoI think gopher would be better, just by how much content is available on it and how stupid simple it is. But either option would be really flipping cool to see!
- makeworld 5y agoGemini actually has more domains than Gopher these days, from the statistics I've seen. Maybe not more content, due to Gopher's history, it's hard to say.
- classichasclass 5y agoI think Gopher would be ideal here, based on screensize and the CPU capability.
- jedimastert 5y agoHow would I go about finding/discovering gopher content? That sounds like fun!
- spicybright 5y agoOh man, you're in for a treat today :) So, while gopher works like any website (you can host your own server for people to visit), the main hub of the "gophersphere" is floodgap. It's run by someone who runs spiders to index sites, and maintains an html gopher proxy, so you can browse gopher sites from your browser. https://gopher.floodgap.com/gopher/gw.lite https://gopher.floodgap.com/gopher/gw.lite So starting there will let you branch off to whatever you find interesting! If you dig enough, there's content you won't find anywhere on the modern web too, especially from really old sites that are still being hosted from back in the heyday. The further you go, the more old stuff you'll find. It feels like exploring ancient ruins that have been long abandoned. What's unique about Gopher (at least to me,) is it goes a bit beyond just hosting content like how we see the modern web. There's a lot of history and culture around it. The protocol itself is extremely interesting to dig into. It's simple enough you can use telnet or curl to browse (clunkily of course), but there were many attempts to extend it in crazy ways. For example: https://en.wikipedia.org/wiki/GopherVR https://en.wikipedia.org/wiki/GopherVR How it started and became popular is very cool to look into as well. Currently, the main content creators on gopher share a deep "counter-culture" attitude towards the modern web. You'll almost never find an ad, or junky blog posts that are nothing but fluff. No popups, no politics (like the EU banner thing), or even seeing a webpage being rendered as it loads. It's all so simple the only thing you can host is pure content and links. And users/content creators take a lot of pride in that fact. Anyways, apologies for the ramble. It's just a big passion of mine. Good luck on your first dive :)
- theamk 5y agoThat 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 into register, and then gameboy reads data from the register. This generates interrupt which ESP uses to load next byte into register. Moreover, there might be a right logical series which will be compatible with both 3.3 and 5V busses. Then one could replace the level converters with register, keeping the overall complexity about the same.
- monocasa 5y agoThat'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.
- pezezin 5y agoI'm not an expert, but I think a better solution would be to use a dual ported RAM that both the ESP and the Gameboy can access. The Gameboy has a dedicated memory area for cartridge RAM, A000 to BFFF.
- aphroz 5y agoIt reminds me the wifi modem I use for the Commodore 64
- aphroz 5y agoI am looking forward to see cloud gaming for the Game Boy!
- pineconewarrior 5y agoAmazing project and cool blog! What a great domain name, too. Thanks for sharing!
- cheschire 5y agoIndeed the entire URL is quite well done. https://there.oughta.be/a/wifi-game-boy-cartridge https://there.oughta.be/a/wifi-game-boy-cartridge It would be neat (and terrible) if suggestions could be submitted through error handling. https://there.oughta.be/a/submission-page-for-ideas https://there.oughta.be/a/submission-page-for-ideas
- jm547ster 5y ago> https://there.oughta.be/a/submission-page-for-ideas https://there.oughta.be/a/submission-page-for-ideas Domain hack innovation seems to be stifled, perhaps a victim to the specificity of the ICANN expansion
- VikingCoder 5y agoI'm very much reminded of "Reverse emulating the NES to give it SUPER POWERS!" [1] [1]: https://www.youtube.com/watch?v=ar9WRwCiSr0 https://www.youtube.com/watch?v=ar9WRwCiSr0
- tyingq 5y agoThere are some similar efforts to add WiFi to old 8-bit computers. The TRS-IO is pretty neat. It bridges the wifi to an IO bus, and provides both a "retro app store" program and a way to make samba shares look like local drives. https://github.com/apuder/TRS-IO https://github.com/apuder/TRS-IO
- umvi 5y agoIt 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 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. All that said, this project is still pretty sweet and I enjoyed the writeup.
- roywiggins 5y agoWell, that's been done also: https://www.youtube.com/watch?v=ar9WRwCiSr0 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 https://en.wikipedia.org/wiki/Super_FX
- sdenton4 5y agoJust to super-upvote: the reverse emulation video is my second favorite tech demo of all time. It is fantastic.
- EvanAnderson 5y agoThat video is gold. Then again, anything Tom7 does is great.
- jgwil2 5y agoWhat's your favorite?
- sdenton4 5y agoMonty Montgomery on analog-digital conversion: https://www.youtube.com/watch?v=cIQ9IXSUzuM https://www.youtube.com/watch?v=cIQ9IXSUzuM
- iszomer 5y agoReminds me of the WiFi232 by Paul Rickards, presented by LGR a few years back. https://www.youtube.com/watch?v=fsS0E4G310Y https://www.youtube.com/watch?v=fsS0E4G310Y
- bredren 5y agoThe explainer video quality is so high, I’m impressed. For example, at 3:49–is that a custom 3d animation simply for that point in the narration?
- phendrenad2 5y agoThis has been done before: https://hackaday.io/project/20769-wifi-game-boy-cartridge https://hackaday.io/project/20769-wifi-game-boy-cartridge
- GuestHNUser 5y agoThey talk about that project in the video.
- phendrenad2 5y agoReminds me of the Gameboy Floppy Disk Drive or the Gameboy CD-ROM Drive: https://hxc2001-free-fr.translate.goog/gbdk/?_x_tr_sch=http&_x_tr_sl=fr&_x_tr_tl=en&_x_tr_hl=en https://hxc2001-free-fr.translate.goog/gbdk/?_x_tr_sch=http&... http://hackedgadgets.com/2006/03/19/gameboy-atapi-cd-player/ http://hackedgadgets.com/2006/03/19/gameboy-atapi-cd-player/
- acehw 5y agoWhat are the theoretical and effective max wifi speeds?
- prytania 5y agoI’ve never felt more self-conscious of my skill set
- hwc 5y agoOr you can just buy a Nintendo Switch. I wonder why they don't have game-boy emulation yet.
- stephen_g 5y agoVery cool project, and impressive he got it working! I feel like possibly a better way to deal with the communication though might be to put a dual-port RAM [e.g. 1] in-between the gameboy and the microcontroller, and load in a program to it so the Gameboy is just waiting for certain areas of memory to be updated (with flags that one side sets as 'new data' and then the gameboy flips). Basically some kind of circular buffer of commands, and as long as there's enough space in there and you only fill it from the microcontroller slower than the Gameboy can process them, you wouldn't need to have careful synchronisation. The microcontroller just has to check that the next slot in the circular buffer has had its status bit flipped to 'processed' (or hasn't been used yet) before putting the next command/data in. 1. https://www.renesas.com/us/en/products/memory-logic/multi-port-memory/asynchronous-dual-port-rams/7005-8k-x-8-dual-port-ram https://www.renesas.com/us/en/products/memory-logic/multi-po...
- tikiman163 5y agoI know this isn't a humor website, but I'm seriously tempted to post the "but why?" meme. My personal mantra is that everything worth doing is difficult, but I've always had the perspective that this is not a symetric relationship. This was certainly difficult for him to do, and the engineering aspects of it are "cool", but this doesn't solve an actual problem. With the same amount of effort he could have written new/better drivers for a raspberry-pi peripheral, or contributed to one of the open source OS projects in a meaningful way. Hell, if this he did this just for fun, then this is definitely the kind of guy who burns out well before they turn 40. Efforts like this shouldn't be applauded or critically reviewed with advice to make it better, they should be discouraged. This kind of project is not merely a waste of time, if it were I would have no valid complaint to make. It is a waste of time that burns out a highly capable person, and too many people in the tech community are ready to applaud the effort.
- Pompidou 5y agoIt's a very weird opinion. In this way : good writers loose their time by writing good books while they would better write good documentations and advertisements for tech products, good political leader would better lead tech companies instead of taking care of the people every day life, and so on. I personally think the world would be far better if everybody was able to deploy such skills and talent in everyday life instead of giving all their full potential to private companies.
- sonovice 5y agoI can only speak for myself but having a fun (but non-trivial) hacks side project helps me to actually prevent burn out.
- thehappypm 5y agoLearning is pointless now?
- hattori31 5y agoWhat is the point of anything if its not making money? /S
- pvillano 5y agoAll The Woulda-Coulda-Shouldas Layin' In The Sun, Talkin' 'Bout The Things They Woulda-Coulda-Shoulda Done... But All Those Woulda-Coulda-Shouldas All Ran Away And Hid From One Little Did. -Shel Silverstein That being said, the way I would have done it is...
- msk-lywenn 5y agoI wonder if he talked with the developer of Super Tilt Bro whom is doing a Smash Bros clone for the NES that includes online gaming through a WIFI chip in the cartridge. https://sgadrat.itch.io/super-tilt-bro https://sgadrat.itch.io/super-tilt-bro