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

Really stoked to see what happens! It seems like you have a pretty good grasp on what people would like and that modular video config sounds like a good way to please as many people as possible, since that's what people seem to fuss about the most. If you wanted to, maybe you could design the major ones you listed, and then release the schematics for the boards (I remember a few people wanted HDMI + analog audio for bunnyboy's AVS) so people could make their own custom A/V board.

Link to comment
Share on other sites

Hey all, just signed up here to show my interest and support for an 8bit and 16bit retro console FPGA workalike!

 

Just recently I randomly stumbled upon kevtris' FPGA console work through this oldish blog post, although I've also heard a lot of good things about the HDMI NES project and the Analogue NT. As a total electronics newbie, that post was my first ever exposure to the wild world of FPGA and my mind was pretty blown - it sounded like the holy grail of retro console hardware emulation/cloning! I spent hours looking up youtube videos of people running 8 and 16 bit games on their FPGA dev boards and I was seriously impressed with the effectiveness of what I was seeing. FPGA hardware emulation seems like a far better route than something like the Retron5, which is basically just unlisenced RetroArch cores running on android in a cheap shell that looks like a console. Jumping ahead a bit, I remember seeing the announcement of the RetroVGS and, frankly, I wasn't interested in it at all; some strange 'retro-modern' console that wanted to use carts and had Atari Jaguar shells? Not me for...

 

Luckily for me however, all this ridiculous RetroVGS drama brought my attention back over to kevtris' FPGA console and this forum thread! A new console that accurately plays retro games through hardware emulation of multiple platforms spanning multiple generations with digital video and audio output? What retro gaming enthusiast wouldn't like that?

 

Anyway, just to throw my two cents into the conversation, here's what's important to me personally or on my wishlist:

 

- NES / Famicom core

- Gameboy core

- SNES core

- Genesis core

- NeoGeo core

- TG-16 core

- Gameboy Advance core (Wishlist. Not sure if it's possible within your spec, but not a deal breaker at all.)

- MSX core (Wishlist also. Cool but not a deal breaker.)

- Any other cores are icing on the cake for me!

 

- HDMI output: It would be really awesome if it had similar features to the Hi Def NES (scaling modes, manual stretch/crop, scan lines, audio channel panning where applicable, palette modifiers where applicable, etc.). I do understand that the complexity of including all of those features may be higher now that you're dealing with multiple system cores, but I'd certainly love those features if possible. The idea of breaking off the AV output into a separate module/PCB to save costs and allow for customization sounds awesome if you think you can pull it off. Low latency HDMI is my preferred output though, and that's probably what I'll end up buying.

 

- SD Cards + Cart Adapters would be ideal for me: I have a decent collection of retro games on carts but I have a collection of 8/16bit ROMs for some of the games that are harder to find, translations, etc. I have a mix of English and Japanese carts and roms, and having both types of media would be very nice. Carts are great for that classic plug-and-play, retro gaming feel, and it's great to own hard copies of games that you like - but it's also very nice to have roms for obvious reasons. In some cases I have Japanese hard copies of games but English roms, and some carts are just impossible to come by on a reasonable budget. I don't mind buying extra cart adapters separately, of course.

 

- Input: USB sounds like a smart way to go if drivers and button binding aren't issues. I'm not sure how that whole thing will work, but I'm guessing you have it mostly figured out at this point. As long as I can plug in various usb controllers and bind my buttons for each player I'll be totally happy.

 

Obviously the price is up to you, it's clear how much time you've put into this project and your skills are unquestionable.

While it depends on the features of the final version, I'd be very happy to pay ~$200-250 for this system (main board + hdmi av board +/- 1-2 cart adapter(s) +/- simple case).

I'd be really happy with that! Regardless, this is a great project and I'm really looking forward to seeing it come to fruition.

Link to comment
Share on other sites

It seems like partnering with someone like 4-Play would be the best way to achieve this without having to do rework on the design as it is an external unit that is HID compatible.

Now personally I would like to see a professional looking injection moulded case with the 4-Play integrated but that's not likely realistic with the lower production numbers we're talking about here.

 

Still, If this project can achieve a $200-300 price point and support all of the listed consoles (plus TG16 and NeoGeo) with HDMI output and SDCard Loading and have a decent looking case I'm all for it.

I bet they could do well teaming up for a Kickstarter if the 4-Play was redesigned with all the ports in the front and the casing redesigned to make it stackable with whatever casing Kevin settles on but in a way that they look standalone by themselves so that one could buy one or the other or both together. Then have Kevin's device as the main thing being Kickstarted with the 4-Play and controller adapters as rewards. Then do the same with the Retrode people for the cart adapters. So, it would be a campaign centered around Kevin's device as the base unit with the other devices with their many controller and cart adapters for a build your own set up.

 

For one of the highest tiers they could have a premium model that combines all three into one casing. With that you could either hook it up to your TV and use Kevin's cores or hook it up to your PC and it passes through for using the controllers and carts(or SD card) with emulators. That would make it a more portable and versatile device.

  • Like 1
Link to comment
Share on other sites

Kev you know i'm on board man... and have voiced that several times (in-between acting stupid & horny on IRC... *cough* IRC crew you know who you are! ;))

 

As I've stated though nearly all of us who care about this kind of stuff already have Xbox 1's, Wii's, PC's etc. modified to play emulated systems just fine on our TV via component/hdmi/etc. We've been there, done that, with emulation. So I've always been really excited about this alternative. :)

 

 

 

 

Link to comment
Share on other sites

As a seperate but related curiousity, would a generic port that uses passive adapters for real controllers without any kind of protocol conversion (each core having the recreated system's input stage) be a reasonable feature, or would that be getting too complex when having to deal with both that and USB? I'd imagine there would also be the issues of either sourcing connectors or making people make thier own adapters.

To expand on this further, I'm curious to know if your cores are currently setup to allow this to work the way I would imagine it; does the i/o core output the replicated system's protocol to the main core, or does it use an intermediary format the main core deals with internally?

Link to comment
Share on other sites

@Asbrandt: yes, you would present a common input interface that all cores map into, because you'd want to minimize pin usage of the FPGA (and it also gives a convenient central place to remap buttons/keys). The MiST does this by mapping from the DB9 and USB ports into a common SPI interface presented to cores. I suppose it's possible to allow direct connections if you have free pins on the FPGA, but those pins could be used for other purposes (such as audio in/out for example).

Edited by Newsdee
Link to comment
Share on other sites

250px-Super-gameboy-player.jpg

250px-GameCube-Game-Boy-Player.jpg

:ponder:

 

In context:

 

For systems that were never on TV like Game Boy, Game Gear, etc. I would want them the same way by not being with black borders on every side with the image small in the middle and with no fake borders that make it look like a Game Boy or Game Gear. The only type of exceptions would be something like if I'm playing a Game Boy game in a Super Game Boy core.

 

You took that sentence too literally. I meant never originally on TV. My point was that if it is playing Game Boy, Game Gear, Atari Lynx, etc. then I don't want a simulated border on the screen that looks like one of those systems with a tiny screen in the middle or a tiny screen in the middle of a black void. I have some reasons for this preference:

 

1. My TV isn't right up to my face like a handheld so I want the game play area to take advantage of as much screen area as possible with the game going to the top of the screen and at the proper aspect ratio to see it.

 

2. Adding a simulated border doesn't make it more authentic because when I'm actually playing a handheld up close I become immersed in the game which makes everything off screen get blocked out of my consciousness just like the border around this laptop screen I'm typing on does until I think about it as I am now. A simulated border doesn't do that because it is on screen. Especially if I'm playing it in the dark and just want to see the game instead of a giant bright Game Boy.

 

3. As I stated,"The only type of exceptions would be something like if I'm playing a Game Boy game in a Super Game Boy core." because that is the authentic way it is played through a Super Game Boy.

 

In other words, I don't want to see this:

 

 

Or this:

 

 

But this is fine if a Super Game Boy is being emulated:

 

  • Like 1
Link to comment
Share on other sites

You are contradicting yourself saying you like borders but you don't. Which is it? The borders were a part of official hardware for displaying on TV sets. The reasons for this are rooted in the fact that classic consoles output a fixed resolution, 256x224 in the case of SNES. Game Boy games were smaller, ie 160x144 to be exact. There was no hardware scalining, and if there was, it would have looked bad. So the developers had a little fun and filled the remainder of the 256x224 frame with custom borders or loaded actual graphics off the cart as with Super Game Boy.

 

I kinda like the custom borders because and there's no reason not to provide this option (to scale or not) in the FPGA. Also for instance GBA at 240x160 would fit perfectly integer scaling at (3:3) to fill a 480p/i frame at 720x480. The aspect is a little off but it works. I believe the Retro Advance Port does this on my Super Retro Trio.

 

Also if Kevtris does a Game Boy core, he should do all four hardware variations (DMG, SGB, GBC, and GBA in backwards compatability mode - certain GBC games such as Shantea can detect GBA hardware) as games operate differently depending on the exact hardware.

Edited by stardust4ever
Link to comment
Share on other sites

You are contradicting yourself saying you like borders but you don't. Which is it?

The contradiction only exists in your interpretation because what I am thinking of has no contradictions. What I want is to not waste any screen space in the,"This movie has been formatted to fit your screen." sense.

 

The Atari Lynx, Game Gear, Game Boy, etc. were designed to fit on a tiny handheld screen. I don't mind the option of borders but if they are being emulated to play on the TV I prefer them to fill it in as if they were originally designed for a console instead of a handheld by not including a picture of the handheld to shrink the game play area when the space could be used to make the game play area bigger.

 

I see no need to have a border of an Atari Lynx on the screen to make it feel more authentic. That would be like emulating the Atari VCS with a wooden console TV as a border around it on my flat panel TV. Or like a Super Game Boy border with a wooden console TV as a border around it on my flat panel TV. I don't need screens within screens Emulation Inception.

 

I just want the actual border to my flat panel TV to be the border. If I want a more authentic experience with the borders then I would play an actual Game Boy or my Atari VCS on a wooden console TV but if I choose to play it on my flat panel then I want it to look like I'm playing it on my flat panel.

 

I'm making an exception for the Super Game Boy because it was actually on TV and that is how it looks. Therefore:

 

1. If I am playing a Game Boy game on a Game Boy core then I want the image to go to the top of the screen and then the sides to be at the proper length to get the correct aspect ratio to make the game play area as big as it can be on my TV without stretching it to widescreen.

 

2. If I am playing a Game Boy game on an SNES core then I want the Super Game Boy to show up because that is how Game Boy games were played on the SNES.

 

The option for borders is fine and the option to stretch to widescreen is fine too but the option I would prefer is to have my physical TV to take the place of a physical handheld with the proper aspect ratio instead of a simulation of the handheld within the screen.

  • Like 1
Link to comment
Share on other sites

Really stoked to see what happens! It seems like you have a pretty good grasp on what people would like and that modular video config sounds like a good way to please as many people as possible, since that's what people seem to fuss about the most. If you wanted to, maybe you could design the major ones you listed, and then release the schematics for the boards (I remember a few people wanted HDMI + analog audio for bunnyboy's AVS) so people could make their own custom A/V board.

And to add to it, maybe there could be basic cards/adapters (e.g. only HDMI) that would take up the whole "block" where the video connector would be, and maybe for the people that have fairly custom setups, allow two smaller blocks that would be daisy chained that would take up the same space as a large block? For example, maybe the first small block that connects to the console could be RGB or HDMI or composite, and then a second small block that attaches to the first video block could be the audio portion (coax, toslink, 3.5mm) so people could mix and match. Perhaps this would be a sufficient way to cut the cost to the majority of people that would be satisfied with HDMI since the base console would only need the interface, and then let the people with more adventurous setups pay for the appropriate adapters.

Link to comment
Share on other sites

I don't want a simulated border on the screen that looks like one of those systems with a tiny screen in the middle or a tiny screen in the middle of a black void.

 

Here you go.

Sound and MBC2 compatibility is still being worked on, but it's promising.

 

https://www.youtube.com/watch?v=ZDvGiZQMwEk

 

Source is here on github if anybody wants to have a go... ;)

 

Edited by Newsdee
Link to comment
Share on other sites

The following is a quote taken from the "main" Retro VGS thread, post #3317 to be exact, posted by kevtris. I think it should be displayed here for all to see. :)

 

If I'm going to work on something of this magnitude, it's going to be on my own terms, my way. I will still license my cores to them, but I doubt they will want to pay my fees for them. After all, they can just go to the Core Store and pick up a few. I'm not the only game in town.

 

The plans to work on my Zimba 3000 hasn't changed and I still plan on doing it. I got a lot of work ahead though to come up with something I think is viable to sell for a reasonable price.

Go Kev! :) :thumbsup:

  • Like 1
Link to comment
Share on other sites

I have been working a bunch trying to cut the costs down to the bone, and come up with something that tries to satisfy as many wants as possible. Looks like the cost of my target FPGA dropped a little so that's gonna help. I am still debating whether to go with a single FPGA that has partial reconfiguration, or two FPGAs.

 

The big problem is with a single FPGA and no partial reconfiguration, when swapping cores it will kill the video output until the new one is loaded. This will cause undesirable blips on the video while this happens. HDMI monitors might blip out for awhile during the clock drop as well. I don't know how big of a problem that will be on today's monitors.

 

That and handling the USB stuff will be the two biggest bug-a-boos. SD cards, scaling, etc. is all relatively straight forward and I have done them on other projects already, so I don't anticipate any large problems there. My scaling hardware's already done as see on the NES HDMI adapter, so pulling up gameboy or game gear, etc. to fit the screen is not a problem at all. I will have some kind of basic uniform scaler that all the cores use, so I don't have to keep reinventing the wheel here. Same with audio- I will have an audio scaler too that converts the target sample rate into a uniform 48KHz. This is done and working on the HDMI adapter too so it's a known quantity. SD card handling was worked out on my first FPGA chiptune synth so I am good there, though I will be rewriting it probably to speed it up a bunch. I don't want it to take forever to load i.e. SNES games or neogeo if I can get that far.

  • Like 10
Link to comment
Share on other sites

hi kevtris,

 

as we discussed on irc, i would be interested in buying one of these prototype/dev systems as a multisystem for homebrews. willing to drop $500 to help.

 

pop me a line here or on irc, it's all good.

 

edit: one ability i would like to see would be to be able to mix and match components together (where feasible), eg: NES CPU/PPU, NES+VRC/SID/YM/SN/AY sound (or 6502 + NES+VRC/SID/etc)

Edited by some_canuck
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...