Live data from Hacker News

Analogue 3D

analogue.co

51–60 of 83 posts

Re: Analogue 3D

#51
post #25

Earlier quoted context omitted.

Words can have multiple meanings? In the market space they play in, and the audience to whom they speak, "emulation" is well known to mean software emulation targeted at dumped ROMs. And since there are lots of hardware devices out there that are generic compute devices with pre-installed software emulators that claim to play the same games (via said ROMs), they make the point to clarify that this isn't one of those…

The issue I have is that they’re implying it’s inherently better than software emulation, perhaps because it more accurately reproduces the behavior. But an FPGA emulator isn’t necessarily any more accurate. I think it’s dishonest marketing, and they know it. The low contrast, fine print at the bottom doesn’t make the same claim: > 3. Analogue 3D is not designed using software emulation. It is designed using a specia…

That's probably not even correct. Unless they've decapped the chip and reverse engineered the physical transistors (like Visual6502 did), it's not a "transistor level implementation". I have no reason to believe they did so because it wouldn't be reasonable. It's almost certainly an HDL-level implementation.

Unless they're stretching the definition of "transistor level" to mean "we use transistors to simulate the original transistors", but that would also include software emulation that runs on CPUs. It reads like marketing copy written by someone who doesn't even know what an FPGA is.

Re: Analogue 3D

#52
post #18

Earlier quoted context omitted.

There's a pretty big difference between a 1-to-1 simulation of the real hardware and a software emulator. Look into what it took to get cycle-accurate emulation of the SNES with higan...

But it isn’t a 1-to-1 simulation of the real hardware. Unless they have the original designs for the chips used in the N64, they’re still implementing something with likely very different internals on an FPGA. You can get the same accuracy in a software emulator. If they want to claim it’s better because it’s more performant, or because it can use original cartridges, or it can produce better analog video output, tha…

That is only true as the speed of the system performing the emulation approaches infinity ;-)

Yes, you can do all the same things in software, in fact it is trivial, just take the same output from you EDA tools and run it in a simulator. Of course that is so slow it cannot interface with (most) real external HW like CRTs and accessories, but in some technical sense it is software taking the exact same set of inputs as an FPGA, and generating the exact same outputs (just much, much slower).

If we accept that as the premise then then we can consider emulators an optimization where instead of using the simulated verilog we try to manually write code that performs equivalent operations, but can run fast enough to hit the original timing constraints of the HW we are replacing. The thing is that the code is constrained by the limits of the modern HW it is running on, and sometimes the modern HW just cannot do what legacy HW did.

An NES does not have a frame buffer (it does not even have enough ram to hold ~5% of a rendered frame of its output!). To cope with that the games generate their output line by line as that the video signal is being generated. What that means is that you click a button on the controller it can change the output of the scanline that is currently writing to the screen (and you can release it updating the output before the frame is being generated, changing subsequent lines). IOW, the input latency is less than a single frame of input. That is not true with modern computers where we render into a memory mapped frame buffer which is then transmitted to the screen with a complex series of of chips including the GPU and DC, and ultimately synchronized on the blanking intervals.

On an FPGA you can design a display pipeline that matches that of legacy consoles, and get the same latency. Of course you could also do the same thing in software emulation on a computer if you clock it so high that it renders and outputs one frame of video for each scanline of output on the original, but given the NES had a framerate of ~60 (59.94) fps and vertical resolution of 240p that comes out to a framerate of ~14,400 fps to hit the latency target for accurate emulation.

Now in practice most of the time it is a non-issue and emulation is more than sufficient, but some old games do very funky things to exploit whatever they could on the limited HW they run on.

It is also worth noting that FPGAs are a lot more interesting for older systems. Once you get to more modern systems that look more like modern computers the strict timing becomes less important. In particular, once you get to consoles that have frame buffers the timing becomes much less sensitive because the frame buffer acts as a huge synchronization point where you can absorb and hide a lot of timing mismatches.

Re: Analogue 3D

#53
post #4

This is one of those products where my first reaction is "Well, that's silly who would pay for that" And then I remember how wrong I was about e.g. the candy-colored iMacs. Let's see where this goes.

Enough people to make it worthwhile. It won't be a massive mass market product like the NES Classic but like their past releases they will sell what they make. N64 has pretty garbage video out sans mods with IIRC no RGB support on any model. Having a nice 4K N64 that works out of the box will definitely appeal to some retro collectors.

The french, not european, french n64 has almost RGB built in! The motherboard was designed to and the pads are there for a few resistors and transistors. If you do add them and use an RGB cable from, say, a french super nintendo, you get the best analog RGB output there is on original n64. Well, 50Hz RGB. I still love mine

https://web.archive.org/web/20190406032415/http://pakupakust...

Re: Analogue 3D

#54
post #52

Earlier quoted context omitted.

But it isn’t a 1-to-1 simulation of the real hardware. Unless they have the original designs for the chips used in the N64, they’re still implementing something with likely very different internals on an FPGA. You can get the same accuracy in a software emulator. If they want to claim it’s better because it’s more performant, or because it can use original cartridges, or it can produce better analog video output, tha…

That is only true as the speed of the system performing the emulation approaches infinity ;-) Yes, you can do all the same things in software, in fact it is trivial, just take the same output from you EDA tools and run it in a simulator. Of course that is so slow it cannot interface with (most) real external HW like CRTs and accessories, but in some technical sense it is software taking the exact same set of inputs a…

Regardless of framebuffering and all that nonsense, at the end of the day, pixels have to be pushed onto the physical display, bit-by-bit. I've wondered if it would be possible for a screen to simulate CRT-style line drawing by exploiting that.

So, if the multiplexing is done line-by-line, for example, then one could simulate a CRT by driving the pixels directly, without a framebuffer. It wouldn't be easy, but that's partly why framebuffers are a thing - they're easier than not having one.

Re: Analogue 3D

#55
post #52

Earlier quoted context omitted.

But it isn’t a 1-to-1 simulation of the real hardware. Unless they have the original designs for the chips used in the N64, they’re still implementing something with likely very different internals on an FPGA. You can get the same accuracy in a software emulator. If they want to claim it’s better because it’s more performant, or because it can use original cartridges, or it can produce better analog video output, tha…

That is only true as the speed of the system performing the emulation approaches infinity ;-) Yes, you can do all the same things in software, in fact it is trivial, just take the same output from you EDA tools and run it in a simulator. Of course that is so slow it cannot interface with (most) real external HW like CRTs and accessories, but in some technical sense it is software taking the exact same set of inputs a…

I'm not saying that FPGAs aren't interesting, or don't have the possibility of allowing one to produce highly accurate emulators. I think that FPGA emulators are really cool -- I've written one! Check the website linked from my profile.

I'm taking issue with how Analogue markets their products. If they want to talk about the specific benefits their products have (like low latency, or video output, or original cartridges, or accuracy), great! But the claim that they're making is that their work involves "No Emulation". And through that, they're implying that FPGA based emulators are inherently better. And they're not. It's a different set of tradeoffs, and they certainly have the possibility to have certain advantages, but that's still all up to the quality of the implementation. Which is exactly the way that software emulators work too.

Re: Analogue 3D

#56

Earlier quoted context omitted.

It's a discussion that's been going on for a long time. Is it "Emulation" or is it more like "Simulation" or even "Recreation", and are those things actually different from each other or is it just wordsmithing. In the end, it's a third party that's not the original hardware manufacturer trying to re-implement a hardware platform, so there's always room for errors and inaccuracies, so it's fair to say it goes into th…

Yeah, I guess it's mostly just wordsmithing. But I don't think it's pedantry: by making the claim that their hardware isn't emulation, it implies that it's somehow better than software emulators. There's just an entirely different set of tradeoffs here, and FPGA emulators are not inherently more accurate than software emulators.

I get it though it just "feels" more real than running a piece of software, and it's cool to be able to play original cartridges and use original peripherals. But indeed, in the end it is a form of emulation, and even if someone is able to re-create the original hardware 1:1 including all the undocumented/buggy/unexpected behavior, I'll leave it open if people actually want that. A lot of us want modern amenities: HDMI/Upscaled output, Save States, better controller support, the ability to play ROM files instead of just the original systems, etc. Oh, and HD texture packs would be nice as well. Netplay over the Internet even for games that only have local multiplayer! Oh, and there's Achievements as well. Light Guns still won't work though.

I'm "guilty" of that myself: I ordered the Duo because I really want a PC Engine system, even though Mesen is a perfectly fine emulator and I probably don't want to play my original HuCards anyway out of fear to eventually break them.

I think the N64 might be in a bit unique situation because all the emulators for it are kinda crap, which is why I was surprised to see an announcement of an FPGA version. But I also saw a breakthrough recently in the MiSTer project, so I guess it's finally time - and if they really managed to re-create the Silicon Graphics GPU, I'm impressed, because even though it's 25 years old, a 3D Graphics Chip is still quite a feat.

One thing that FPGAs can potentially do better is to emulate the entire system without needing a crazy PC. Stuff like "A memory fetch takes two clock cycles, but actually, the first clock cycle leaves garbage on the bus, and if a Sound DMA triggers, it will fetch that garbage, and that is actually required for Game X to work well". (There was a GameBoy Advance emulator that found something among those lines being the reason why one of the Pokemon games doesn't work properly in an emulator. And I remember there being one SNES helicopter game where the shadow under the helicopter never showed up in emulators of the time, because it used some crazy exact timing to render it on original hardware).

Doing a cycle-exact simulation of an entire system is pretty hard (All the "How to write an emulator" tutorials just do a big switch statement of CPU opcodes and call it a day), and it's harder the more advanced the system gets. So an FPGA still has the _potential_ to be a better implementation overall, but it's always going to be that system that's "Accurate except where people want anachronism" but always limited in what kind of additional enhancements it can make (HD Texture Packs, CRT Filters, Retro Achievements, Local Multiplayer over the Internet, with matchmaking)

Re: Analogue 3D

#57
post #25

Earlier quoted context omitted.

Words can have multiple meanings? In the market space they play in, and the audience to whom they speak, "emulation" is well known to mean software emulation targeted at dumped ROMs. And since there are lots of hardware devices out there that are generic compute devices with pre-installed software emulators that claim to play the same games (via said ROMs), they make the point to clarify that this isn't one of those…

The issue I have is that they’re implying it’s inherently better than software emulation, perhaps because it more accurately reproduces the behavior. But an FPGA emulator isn’t necessarily any more accurate. I think it’s dishonest marketing, and they know it. The low contrast, fine print at the bottom doesn’t make the same claim: > 3. Analogue 3D is not designed using software emulation. It is designed using a specia…

Analogue's devices seem to be widely loved and well regarded both by consumers and reviewers.

Are you really just mad about their choice of words?

I think it's pretty clear that Analogue's offerings are significantly different than most of the rest of the "retro games" market, and I don't blame them for calling out that difference in a way that's easy for the audience to understand, and to play to their strengths (i.e. works with real physical carts), particularly given the legal grey zone around ROM hacks and console emulation in general.

If you look at the entire device they're selling, and not just the software part, I think it's totally fair to say they are more accurate. A software emulator cannot run a physical ROM cart, right?

If you have boxes of SNES or N64 carts in your basement, and you want to use those, there's no software emulator out there that can help you (without additional steps or equipment).

Re: Analogue 3D

#58
post #33

Earlier quoted context omitted.

Did someone else release or announce an N64 FPGA device? I didn't hear anything about it.

what difference does it make that it's an FPGA?

I’m the clone scene FPGA is synonymous with quality and accuracy, regardless of whether that’s true or not.

Re: Analogue 3D

#59
post #27

Earlier quoted context omitted.

Sure, it’s not a software emulator, but it’s still an emulator. And Analogue’s use of “No Emulation” is dishonest: it implies that it’s somehow inherently better than a software emulator, which it isn’t. E.g. you can have an inaccurate FPGA-based emulator, and a highly accurate software-based emulator.

Where's the emulation? If you program an FPGA to reproduce a system, there's no emulation... you might have bugs but there are bugs in hardware too.

If you program an FPGA using the same HDL that was used to manufacture the original system then sure, it will behave identically (at least to the extent permitted by the laws of physics). However, if you are reverse engineering the chips and replicating the HDL without being able to peek at their actual circuitry, it is no different from doing the same in a pure software emulator from an accuracy standpoint. The only advantage of FPGA-based emulation in this case is that it can interface in real time with no latency to physical hardware such as game cartridges containing additional CPUs and whatnot - useful for consoles like the SNES, but such cartridges were not really a thing on the N64.

Re: Analogue 3D

#60

Oooh, this is exciting. I have two Analogue pockets, and really like the device. For reference, the Analogue pitch is: frame accurate / CPU cycle accurate classic gaming device simulation using a hefty FPGA. The proposal is that this feels better / different from emulators. The pockets have some 'sugar' around simulating CRT colors and bleed for a more authentic experience. All this is generally my experience with th…

> That said, the software ecosystem side of these devices feels like a near total disaster; I think it's a combination of legal concerns around copyright for ROMs, and the company's DNA. The amount of work to play, say Zelda on an Analogue Pocket, is akin to jailbreaking an Android phone, circa 2013. Lots of sdcard downloads, firmware checks, custom software tools, arcane paths through the OS software. I think they could afford to make a cleaner and easier software path.

Huh what? That's absolutely not true. I just went to https://github.com/spiritualized1997/openFPGA-GB-GBC and followed the instructions: All you have to do is copying files onto a microSD card. Custom tools are not needed. You can skip firmware checks (wcgw).

All my Gameboy ROMs play without any issues so far. Yes, you have to pay attention to put the files in the correct directories, but I wouldn't call that a "disaster".

Post reply on HN