Jump to content
IGNORED

FPGA Based Videogame System


kevtris

Interest in an FPGA Videogame System  

682 members have voted

  1. 1. I would pay....

  2. 2. I Would Like Support for...

  3. 3. Games Should Run From...

    • SD Card / USB Memory Sticks
    • Original Cartridges
    • Hopes and Dreams
  4. 4. The Video Inteface Should be...


  • Please sign in to vote in this poll.

Recommended Posts

Hypothetical question here: can the nt mini cores be ported over to the super nt without modification? I mean, I know not all the hardware is the same, but its the same Altera Cyclone V at the heart of both beasts, no? Hypothetically speaking of course...

I mean, it wouldnt be worth tinkering with merging the firmwares or anything, riiiiight?

I remember Kevtris saying on the MLiG livestream that theoretically porting the cores to the newer FPGA chip would require some work, but that it wouldn’t be very difficult to do. But he can’t comment on anything jailbreak related, it was a technical question about the chips themself and their differences.

 

If porting the cores requires even a little bit of work, then I fear we may never get them on the Super NT. If the ported cores were to just show up in a jailbreak firmware, it would be hard to keep up any plausible deniability about who the jailbreak firmware author is.

Link to comment
Share on other sites

I remember Kevtris saying on the MLiG livestream that theoretically porting the cores to the newer FPGA chip would require some work, but that it wouldn’t be very difficult to do. But he can’t comment on anything jailbreak related, it was a technical question about the chips themself and their differences.

 

If porting the cores requires even a little bit of work, then I fear we may never get them on the Super NT. If the ported cores were to just show up in a jailbreak firmware, it would be hard to keep up any plausible deniability about who the jailbreak firmware author is.

 

The FPGA may be from the same family, but it's not the difference between a 486DX33 and 486SX25 (where an entire logic chunk is missing, but most software doesn't use it.) If you program a FPGA, it needs to know what the pins connect to, and likewise how it's interfaced with the MCU. Off hand, even the memory might be different.

 

Like it's certainly doable if you have the source code to the FPGA, but someone who does this would likely not want to maintain two versions of the core, (one for nt mini and one for super nt) let alone any future systems. Even if it was an "open platform" that anyone could write a core for, the amount of people who actually have RE's SNES systems or any other system isn't that high. You're looking at not simply implementing the instructions, but all the timing quirks and bugs intentionally. And not everything runs at 60hz or close-to-60hz.

Link to comment
Share on other sites

 

 

 

Why would I care what other people own?

 

 

 

 

 

You are everything that's wrong with discussion on the internet. Arguing semantics to make yourself seem smart when in reality your comment(s) were completely and utterly unnecessary and useless.

 

 

You mean under 230$ thanks to a 350% price-gouge markup on shipping costs?

 

When you buy an OSSC you can use it with at least a dozen other systems, you do realize this right....?

 

 

That's fine, made a nice chunk of change off it (didn't like the way the transparent edition ended up looking compared to the mockup anyway), and I'll rebuy it once Kevtris gets off his ass and finally ports the cores...

 

 

Shouldn't be. Same core architecture. Too bad the guy who programs it refuses to comment on the issue.

You are such an entitled and disrespectful person. Kevtris doesn't owe anyone anything. "Get off his ass" really? The amount of time Kevtris has put into the Super NT is crazy.

 

There are reasons he can't talk about it and if you can't figure out why then you are just being woefully ignorant. People like you are going to make Kevtris question whether all his hard work is worth it.

  • Like 6
Link to comment
Share on other sites

 

With all the talk about a genesis FPGA I was wondering if anyone tried the retro-bit Genesis to SNES cart adapter (retrogen).

I wonder if it works on the super nt as I have a pretty extensive genesis cart collection.

 

 

Yes it technically works as advertised, but it can not pass hd video to the Super NT's hdmi output. The SNES system is only used as a power supply and for controller input. The following teaser video shows the expected behavior you can expect from plugging in one of these adapters:

 

Yes, you can now play GBA games on your Super NT!!! :o

 

 

Sort of. :P

 

 

Retrobit made three adapter models, an NES, a Genesis, and a GBA. These are system-on-a-chip clones which output composite video / audio via a 1/8" trrs jack. Audio is also passed onto the SNES through the expansion pins. Composite video passes as well via the expansion pins to compatible Retrobit branded SNES clones such as Retro Duo, Super Retro Trio, and Retro Duo Portable. I bought the GBA adapter as a companion for my Super Retro Trio. It works great on my CRT.

 

Obviously the Super NT cannot upscale the native composite video output (unless someone mods the super nt console by cramming an xrgb mini, framemeister, or ossc inside it) so you need a set of trrs a/v cables to output to a crt or 240p composite compatible flat panel.

 

You might just have to wait for Analogue or someone else to annouce an FPGA Genesis clone. If anyone is up to the challenge, it's Kevtris. In the mean time, feel free to continue using your Genesis with standard definition outputs. ;-)

 

 

Unless you'd be satisfied with composite output from a Genesis clone, you're better off avoiding it.

 

If it worked like a Super Game Boy, it would be tempting even with flaws. But it just draws power from it and interfaces with the Super Nintendo controllers. AV output is via a composite output on the adapter itself.

 

Same deal with Retro-Bit's GBA adapter for the SNES. Just draws power and interfaces with the Super Nintendo's controllers. No audio/video is fed through the Super Nintendo.

 

They're basically novelty items in the classic gaming world. From the convenience and setup simplification side, they didn't go all the way with video/audio fed through the SNES for one reason or another. And as far as playing Genesis and GBA games goes, they don't do a particularly great job at that, either.

Basically what he said.

Link to comment
Share on other sites

It is very easy to hack nes and other Nt Minis cores to super nt. Right now i playing nes roms with super nt.

Video proof of this or it didn't happen. And no, the Retrobit cartridge adapters don't count. :P

 

I wanna believe this, but.... can you show me, or tell me how to do it?

 

 

How you doing this?

 

 

He's not. It's not possible, unless Kevtris decides to officially, unofficially, or through another proxy release a jailbroken firmware to add more cores.

Link to comment
Share on other sites

RadikusRLZ, come on, share your firmware with us. Are you seriously going to keep that just for yourself?

+1. Until he shows us the cards he's holding in his hand, he's bluffing, and he knows it.

 

Classic Poker Face. Make everyone believe you've got a royal flush when you're really sitting on a pair of deuces. Everyone folds, and you take home the pot.

Link to comment
Share on other sites

If porting the cores requires even a little bit of work, then I fear we may never get them on the Super NT. If the ported cores were to just show up in a jailbreak firmware, it would be hard to keep up any plausible deniability about who the jailbreak firmware author is.

Plausible deniability went out the door when the JB version of the latest firmware was posted on Github just hours after the official version dropped on Analogue. No way it got hacked that fast. Kevtris has an evil twin out there working hard for all us filthy ROM pirates... :ahoy:

 

In all seriousness, I still think new JB cores are a possibility. We'll just have to wait and see what comes out in future revisions.

  • Like 2
Link to comment
Share on other sites

Can you guys try, to not act like bickering children? Read the thread and then try to argue how this whole thing is not an insult to Kevin.

 

:thumbsdown:

Just for the record, I was not the one contributing most of the bickering. But you posted immediately below my speculation about JB cores, leading me to believe I was somehow responsible?

Link to comment
Share on other sites

I doubt the old core binaries work without modification. Altera's tool/IDE ask you to setup your project with the precise FPGA chip you target, so I assume there are very specific optimizations.

 

Genesis core already exists, just get a MiSTer if you can't wait.

Presumably the FPGA has a bunch of i/o. The j/b cores don't specifically use the cart ports unless an adapter is provided. So we have the hdmi interface, sd card slot, and controller ports. Super NT uses only two controller ports rather than five (nt mini used 4 controllers plus the exp port). Super NTT data controller has different mapping than Famicom NTT data controller so cores using these inputs have to be remapped. It is also plausible the way the jb cores interface the ram may be completely different, as well as an entirely new menu interface. So in addition to potentially rewiring the fpga i/o, some non-trivial changes have to be made to accommodate hardware changes.

 

However, we have a standard form factor going forward with the cyclone 5. Assuming no major changes to Super NT hardware needs to be made to accommodate a Mega NT core, the same pcb layout and form factor could be modified to accommodate a Genesis cart slot. And a parallel connected SMS slot would negate the need for a pin adapter for SMS games. It would then be easy to ad core support for FM sound, SG-1000/3000 games, and GG with a simple pin adapter.

 

I think the Mega NT could use a similar form factor to Super NT, and an SMS slot would open it to European Sega fans and lessen the sting for lack of CD and 32X accommodation.

Link to comment
Share on other sites

Just for the record, I was not the one contributing most of the bickering. But you posted immediately below my speculation about JB cores, leading me to believe I was somehow responsible?

 

Just a response to multiple people really, wasn't directed at you.

  • Like 1
Link to comment
Share on other sites

That's fine, made a nice chunk of change off it (didn't like the way the transparent edition ended up looking compared to the mockup anyway), and I'll rebuy it once Kevtris gets off his ass and finally ports the cores...

Kevtris owes you nothing. If the core store gets onto the SNT, it'll be a cool bonus, but nobody is entitled to it.

  • Like 2
Link to comment
Share on other sites

FYI the bitstream that one downloads into an FPGA really sets every single used LUT and every single used interconnect switch.

Each LUTs (for SRAM based FPGA) is simply a small memory (16 bits worth of for a 4-LUT and 64 bits worth of for a 6-LUT) and it is programmed like any other SRAM, interconnect switches are SRAM based as well to program their state (what they actually connect) ... so in the end each and every LUT/interconnect-switch ends up programmed via a bit somewhere in a distributed SRAM. The details of which bit acts on which LUTs/switch are known to Altera (and its Quartus sw) and have not been made public and vary by FPGA family and between members of the same family (less radically but still).

Bigger FPGAs have more of each (LUTs/switches) AND they are not simply "mapped" at higher addresses so to speak, there's no such a thing but bear with me.

So loading the bitstream for a specific FPGA onto a bigger one (even same family) has an extremely high chance of not working (it could theoretically work if the bigger one is literally an addendum of LUTs and interconnect-switch that all come after the ones "in common" with the little counterpart in programming order AND they have the exact same I/O mappings).

On top of that one has also to assume that the 2 FPGAs have the same I/O pins/counts and that all the I/O pins are mapped in compatible ways between the 2 systems (Nt Mini and Super Nt) which I severely doubt given the carts slot even have different pin-count and other obvious differences.

 

Kevtris saying that with work the cores can be ported really means he has to amend the VHDL/Verilog (not sure what he prefers to use) to remap what needs remapping, adapt what needs adapting, and then re-synth for the bigger FPGA.

 

So, no, it's not a matter of just trying, unless of course we are extremely lucky and Altera made the 2 FPGAs in question back compat for designs that fit the smaller one AND kevtris designed the 2 systems to be back compat wrt I/O pins, timings, RAM etc...

  • Like 1
Link to comment
Share on other sites

 

Retrobit made three adapter models, an NES, a Genesis, and a GBA. These are system-on-a-chip clones which output composite video / audio via a 1/8" trrs jack. Audio is also passed onto the SNES through the expansion pins. Composite video passes as well via the expansion pins to compatible Retrobit branded SNES clones such as Retro Duo, Super Retro Trio, and Retro Duo Portable. I bought the GBA adapter as a companion for my Super Retro Trio. It works great on my CRT.

 

Obviously the Super NT cannot upscale the native composite video output (unless someone mods the super nt console by cramming an xrgb mini, framemeister, or ossc inside it) so you need a set of trrs a/v cables to output to a crt or 240p composite compatible flat panel.

 

 

You know, it's very likely, but not impossible to just figure out what pin the composite video comes off of on those adapters and push it directly to the upscaler, however that would also likely take up a significant amount of FPGA space just to do something poorly. In rubbish clones that support this, they likely just put a switch on the signal pin, so if the signal was present it turned off the video at the encoder. So in those devices it's probably something easily done. But in the Super NT, that's an entire ADC step just for "a competitors inferior product".

 

Rather it would make more sense to just produce FPGA "pin converters" that the SuperNT is actually aware of, so if you plug a MD/SMS/GG cart into one, the FPGA in the SuperNT switches to that core, and off it goes. If you plug an ARM SoC for GBA, it just uses the SuperNT for everything but the CPU. And so forth. Like, I do feel we're going in circles here, but the entire purpose of these carts is really to save having to put a HDMI switch, reaching around TV's in cabinets, or having to reach up to wall mounted TV's to unplug things, which is what you had to do with a lot of the one-sided RCA cables.

Edited by Kismet
Link to comment
Share on other sites

You know, it's very likely, but not impossible to just figure out what pin the composite video comes off of on those adapters and push it directly to the upscaler, however that would also likely take up a significant amount of FPGA space just to do something poorly. In rubbish clones that support this, they likely just put a switch on the signal pin, so if the signal was present it turned off the video at the encoder. So in those devices it's probably something easily done. But in the Super NT, that's an entire ADC step just for "a competitors inferior product".

 

Rather it would make more sense to just produce FPGA "pin converters" that the SuperNT is actually aware of, so if you plug a MD/SMS/GG cart into one, the FPGA in the SuperNT switches to that core, and off it goes. If you plug an ARM SoC for GBA, it just uses the SuperNT for everything but the CPU. And so forth. Like, I do feel we're going in circles here, but the entire purpose of these carts is really to save having to put a HDMI switch, reaching around TV's in cabinets, or having to reach up to wall mounted TV's to unplug things, which is what you had to do with a lot of the one-sided RCA cables.

There's no use trying to separate the composite signal at the cartridge port and send it to an upscaler. The mono audio adc in the avs, nt mini, and stereo adc take an analog sound waveform and convert it directly to digital pcm. This is easy and fairly lossless as a sound signal is essentially a one-dimensional waveform.

 

Grayscale film video is essentially a 3 dimensional signal (x + y + time), 5 when you add color. You got rgb plus x and y coordinates then time. This signal is compressed to a single time domain using ntsc encoding, and much data is lost or compressed to achieve this. You've got coming artifacts, color bleed, and so on. There is no adc conversion going on inside the super nt with graphics or spc audio. Everything is read digitally off the cartridge, processed, converted into audiovisual content, then upscaled so that it fits into modern hdmi spec.

 

The FPGA isn't equipped to handle upscaling of composite input, and a dedicated upscaler might produce a signal slightly prettier than the internal video adc inside your hdtv.

 

What might work is a full on hardware approach, by taking physical gba hardware, detaching the lcd screen, and encoding the screen content at the pixel level for streaming into the snes in a similar fashion to how the msu-1 injects video. I'm not sure if 160x240 exceeds the maximum pixel count or not. The GBA image would also be palletized slightly to match the 5-bit rgb of the snes. Brian Parker of RetroUSB once built a Game Boy Player for the NES called retrovision. Perhaps a similar hardware clodge could be built for Super Nintendo and work with both original hardware and Super NT.

 

As for the Retro Advance Port (or the Genesis and NES add-ons), nothing useful signal you can really tap at the cartridge port that can't be accessed directly by the trrs jack on the side. The NT Mini would likely expect a digital output on any pin aside from the Super Game Boy audio, and is not equipped to upscale a composite feed.

Link to comment
Share on other sites

 

What might work is a full on hardware approach, by taking physical gba hardware, detaching the lcd screen, and encoding the screen content at the pixel level for streaming into the snes in a similar fashion to how the msu-1 injects video. I'm not sure if 160x240 exceeds the maximum pixel count or not. The GBA image would also be palletized slightly to match the 5-bit rgb of the snes. Brian Parker of RetroUSB once built a Game Boy Player for the NES called retrovision. Perhaps a similar hardware clodge could be built for Super Nintendo and work with both original hardware and Super NT.

 

As for the Retro Advance Port (or the Genesis and NES add-ons), nothing useful signal you can really tap at the cartridge port that can't be accessed directly by the trrs jack on the side. The NT Mini would likely expect a digital output on any pin aside from the Super Game Boy audio, and is not equipped to upscale a composite feed.

 

I wasn't suggesting it was a good idea to support those composite video devices because that just perpetuates GIGO (Garbage in Garbage Out).

 

The solution for the SuperNT, would be to literately have a "GBA Head" where the SoC in the cartridge communicates with the SuperNT which operates as the video, audio, and input. It would not work on a real SNES, because a real SNES does not have the bandwidth to do this. The MSU-1 Video likewise is hamstrung to bandwidth, because a hardware decoder was not designed. What comes off the MSU-1 is literately uncompressed 8-bit images, and there's not enough bandwidth to do it at 256x256, because how it works is basically a kludge.

 

If kevtris wanted to make a MSU-2 which uses the same instructions, but adds dedicated "play/seek/pause" video instructions, that would be the only practical way to make 60fps compressed video operate. That video would be pushed to that EXT layer.

 

But a "SoC" expansion, like what those carts do, would need to actually tell the SuperNT to switch to "video head" mode, and emulate the VDP/PPU/GPU/etc parts in the SuperNT, while leaving whatever complicated CPU parts in the cart slot.

 

Like really, there is not a lot of point of building something like that other than to build something akin to a "GB/GBA Player" as reverse engineering the GBA Player is likely something not unreasonable. But without the SuperNT having documentation, the only person who can do this is kevtris/Analogue.

  • Like 1
Link to comment
Share on other sites

I don't really want to interrupt your discussion, but there's one little thing that drives me crazy. :-D Why do you guys keep saying Mega NT? Mega Nintendo? Seriously? ;) I think it's quite clear that Nt means Nintendo.

 

Something like Analogue SG (Sega's first console was the SG-1000) would be much more likely. Depending on its capabilities and variations (Master System / SG-1000 / Gamegear / MegaDrive/Genesis cartridge ports) for example the name could also be Master SG or more likely Mega SG.

Edited by kwnage
Link to comment
Share on other sites

Could it not be possible to add a option to get actual speeds over HDMI without the workarounds?

I know it might be offspec, but some monitors/tvs can handle those signals aswell.. Like the OSSC, hits the HDMI with whatever it gets feeded..

Link to comment
Share on other sites

Could it not be possible to add a option to get actual speeds over HDMI without the workarounds?

I know it might be offspec, but some monitors/tvs can handle those signals aswell.. Like the OSSC, hits the HDMI with whatever it gets feeded..

 

http://atariage.com/forums/topic/242970-fpga-based-videogame-system/page-265?do=findComment&comment=3959153

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...