• DarthYoshiBoy
    link
    fedilink
    1710 months ago

    Honestly the 1600x1440 screen on the Analogue Pocket and the ability to drive it is what you’re paying for when you buy it.

    There’s not going to be a device that can drive all those pixels at less than the Analogue Pocket’s price for some time yet. Sure, none of the Game Boy systems used anywhere near that many pixels, but the fact that the Analogue Pocket screen is so ridiculously pixel dense it can emulate the original attributes of the OG screens from the devices that their FPGA is mimicking means you’re going to pay a premium for that (or any) device doing full hardware replication at that level.

    Honestly seeing the Analogue Pocket emulate the way that the original DMG GameBoy screen pixels seemed to slightly hover over the background (slightly casting a shadow) was mind-blowing. You can’t get that unless your screen actually has those original pixel attributes or you’ve built a display with enough resolution to emulate what those characteristics looked like. See: https://cdn.arstechnica.net/wp-content/uploads/2021/12/PXL_20211213_155424062.jpg (Seriously, zoom in and notice the mimicry of the shadows under darker pixels, it’s just crazy to see in person.)

    • Nix
      link
      fedilink
      English
      110 months ago

      What do you mean by drive it?

      • DarthYoshiBoy
        link
        fedilink
        110 months ago

        The original Game Boy Color has a screen that is only 160 pixels x 144 pixels at a 6bit color depth. That color depth means it can keep track of 6bits of color information for each pixel (technically the GBC screen CAN display 15bits of color information, but it’s limited in software to 6bits absent certain tradeoffs.)

        This isn’t exactly how it all works, but I’m going to just do some quick and dirty math really quickly that sorta simply illustrates how this works. To adequately display a 60fps image on the GBC display at the 6bit color depth of the screen, we’d need to be able to process 23,040 pixels (each with 6 bits of color data) every 60th of a second. To simplify further, there’s 138,240 bits of data to process every 16.6ms just to “drive” the display, or put another way 138,240 bits of data to process to ensure that the display gets all the information it needs to build a complete picture every 60th of a second.

        So for a 1600x1440 display, you’re looking at 2,304,000 pixels, and the Analogue Pocket has a 16bit color depth, so you’re going to need to be able to process 36,864,000 bits of data every 16.6ms to “drive” that display.

        Getting a GPU/CPU/FPGA that can handle 138,240 bits of data every 16.6ms is a fairly easy task these days. Getting a GPU/CPU/FPGA that can handle 36,864,000 bits of data every 16.6ms is also a pretty easy undertaking these days, but it’s much more power intensive and it’s going to cost a bunch more. All of which is beside the shader calculations the Pocket adds in to do things like emulating the pixel fade of old LCDs or other effects that further emulate the properties of the original displays which requires further processing.

        The tradeoff is that you can build a more detailed image with all those extra pixels, but you’re going to pay for it both in electrical power spent, heat generated, and costs sunk.