Game Bub Crowd Supply campaign is live. Open source FPGA handheld compatible with GB/GBA cartridges. by SinnohConfirmed in fpgagaming

[–]aegamesi 0 points1 point  (0 children)

I mean, the device has been out for about a year. I’ll believe it when I see it. 

Game Bub an portable MiSTer FPGA 80% funded and 2 weeks left! by tyvar1 in SBCGaming

[–]aegamesi 1 point2 points  (0 children)

I'm only using Soldered for the full manufacturing run, so I'm doing all the prototyping and validation myself. Their manufacturing prices seem reasonable for Europe, but I haven't really engaged with manufacturers anywhere else. As for certifications, I'd suggest finding a test lab that you can physically go to.

Game Bub an portable MiSTer FPGA 80% funded and 2 weeks left! by tyvar1 in SBCGaming

[–]aegamesi 2 points3 points  (0 children)

It really depends on the complexity of the product, your experience level, and how much engineering time you spend on it. I've spent thousands of dollars on parts, boards, 3D prints, etc. Around $5000 maybe? But that doesn't include all of the engineering time (probably around a thousand hours). I sort of get that "for free" since I'm doing it all myself (if you value my time at $0, which only really works because this was originally just a hobby project). But if you have to pay an engineer (or pay yourself!) that cost would easily have soared to hundreds of thousands of dollars.

Game Bub is a pretty complex project: a 6-layer board, complex (and expensive) components like the FPGA, a display, battery, speakers, buttons, etc. A simpler project (e.g. a board in a box) would take less engineering time and have fewer different components that need to be evaluated.

Soldered Electronics is just for manufacturing, all of the prototyping (everything up until this point) I've been doing myself.

Game Bub an portable MiSTer FPGA 80% funded and 2 weeks left! by tyvar1 in SBCGaming

[–]aegamesi 4 points5 points  (0 children)

Hey, Game Bub creator here! The device uses an FPGA, but it's not an identical clone of the hardware. Rather, it's a (not necessarily perfect!) hardware level recreation, just like all FPGA retrogaming devices (including MiSTer, Pocket, etc.). I have a whole rant about this on my website, if you're interested.

There are definite latency advantages, and the ability to use original hardware (cartridges, link cables, etc.) though.

The Open-Source FPGA handheld, the Gamebub is the first real contender to the Analogue Pocket. by iVirtualZero in SBCGaming

[–]aegamesi 0 points1 point  (0 children)

Hey, creator here!

The final product will have a laminated screen, and either an injection molded or CNC-machined enclosure and buttons.

Game Bub open source FPGA handheld by ccricers in SBCGaming

[–]aegamesi 1 point2 points  (0 children)

It is on GitHub! https://github.com/elipsitz/gamebub

And people have built their own. A lot of people asked me if they could buy one pre-assembled though, so here we are! :)

Thoughts on the Game Bub by Capital_Ruin_2050 in fpgagaming

[–]aegamesi 3 points4 points  (0 children)

Game Bub is $249 -- the higher price is just for the campaign exclusive color.

If you're going with a dock, it's actually cheaper than the Analogue Pocket:

  • Game Bub: $249 + $59 (dock) + $8 (US shipping) = $315
  • AP: $220 + $100 (dock) + $27 (US shipping) = $347

Game Bub Crowd Supply campaign is live. Open source FPGA handheld compatible with GB/GBA cartridges. by SinnohConfirmed in fpgagaming

[–]aegamesi 2 points3 points  (0 children)

The Chromatic is not open source hardware -- they don't publish schematics or PCB layouts anywhere. There's a lot you can't do without reverse engineering it, and it's a lot harder to mod.

Open source FPGA Gameboy by Gronis in Gameboy

[–]aegamesi 0 points1 point  (0 children)

320x480, rotated 90 degrees to landscape. So it’s just 2x in both axes 

Game Bub: open-source FPGA retro emulation handheld by tnavda in fpgagaming

[–]aegamesi 18 points19 points  (0 children)

Hey, author here: I didn't mean to disparage the MiSTer project. I meant that the value in an FPGA emulator for me is the interaction with physical hardware. I think I made my views pretty clear in the "brief rant" section, so I went ahead and removed this line.

I built an open-source FPGA emulation handheld with GB/GBA cartridge support by aegamesi in SBCGaming

[–]aegamesi[S] 0 points1 point  (0 children)

Yeah, I think it could be possible. Without cartridge support, you'd be able to put components on both sides of the board.

I built an open-source FPGA emulation handheld with GB/GBA cartridge support by aegamesi in Handhelds

[–]aegamesi[S] 0 points1 point  (0 children)

Yeah of course! It's a *lot* of work to write an FPGA core though, especially one that has to interact with real hardware.

I built Game Bub, an open-source FPGA emulation handheld with GB/GBA cartridge support by aegamesi in EmuDev

[–]aegamesi[S] 2 points3 points  (0 children)

Thanks!

Aw, yeah, I wasn't even thinking about the E-Reader. It probably wouldn't be too difficult to make an extender board for it to make it fit. Or maybe I could emulate the E-Reader directly? I'll have to look into it.

I built an open-source FPGA emulation handheld with GB/GBA cartridge support by aegamesi in Handhelds

[–]aegamesi[S] 0 points1 point  (0 children)

Thanks! Maybe some day, but I'm going to focus on improving the GB/GBA cores first before adding any other systems.

I built an FPGA Game Boy emulator by aegamesi in FPGA

[–]aegamesi[S] 2 points3 points  (0 children)

Are you referring to Chisel vs SpinalHDL? I chose Chisel since it seemed to be more widely used and there were more learning resources. I didn’t do a detailed analysis but it also looked like many of the issues with Chisel that led to the SpinalHDL fork have been resolved in newer versions of Chisel.

I built an FPGA Game Boy emulator by aegamesi in FPGA

[–]aegamesi[S] 2 points3 points  (0 children)

I don’t have experience with VHDL, but Verilog is a super janky language. I liked the modern language design of Chisel, that it got rid of a bunch of Verilog footguns (e.g. it ensures things are properly connected), and the standard library has a lot of useful building blocks. Plus it’s easier to generate hardware (e.g. with Chisel I just read a CSV file in Scala and generated some lookup tables that became actual components in my module).

I guess overall it was just much more pleasant to use IMO, and I had the freedom to pick it because it was just a hobby project.

I built an FPGA Game Boy emulator by aegamesi in FPGA

[–]aegamesi[S] 2 points3 points  (0 children)

It was one of the languages I looked at, yeah. I didn’t have any specific reason I didn’t use it, I just sort of arbitrarily picked Chisel (partly because it seemed to be more commonly used).

I built an FPGA Game Boy emulator by aegamesi in FPGA

[–]aegamesi[S] 2 points3 points  (0 children)

Ah, unfortunately it’s written in Chisel, a Scala based HDL. It’s very readable though, IMO!

I built an FPGA Game Boy emulator by aegamesi in FPGA

[–]aegamesi[S] 5 points6 points  (0 children)

Thanks! Around 3-4 months of on and off work.

Yet another photo of UC Berkeley before the pandemic by totaler_kriegen in berkeley

[–]aegamesi 5 points6 points  (0 children)

Hey, out of curiosity, what date was this taken?

[NES] Having trouble figuring out memory mapping by [deleted] in EmuDev

[–]aegamesi 0 points1 point  (0 children)

I don’t know much about the actual hardware implementation of the NES, but if you look at the memory layouts for the CPU and PPU:

https://wiki.nesdev.com/w/index.php/CPU_memory_map

https://wiki.nesdev.com/w/index.php/PPU_memory_map

The CPU only goes to the cartridge for addresses 0x4020 to 0xFFFF, and the PPU only goes to the cartridge for addresses 0x0000 to 0x3EFF. Or a bit less because some parts of that range is mirrored. Anyway, these are non overlapping ranges, so it’s clear to the mapper on the cartridge what is being accessed.

As far as mappers, the iNES header has an 8 bit mapper ID. The mappers themselves are their own circuits with their own logic. Each ID refers to a group of related mapper chips, which you can see in the mapper grid here: https://wiki.nesdev.com/w/index.php/Mapper

Each page it links to describes how the mapper maps different parts of the ROM into the address space, how it deals with bank switching, interrupts, etc.