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

It was the original platform. All others were ports. That also explains why the way it controlled didn't necessarily seem optimized on other systems. Same thing with games like Lode Runner. It's a testament to how great those games designs were that it didn't really matter.

 

I've only played the Sega reprogrammed versions, coin-op and Master System, and they are fantastic.

Link to comment
Share on other sites

[...]

 

At the time, I don't know if zumba existed or not. I have had the name "Zimba 3000" for about 6 or 7 years now, but I never revealed it until the whole retro video game system debacle. You can call it the "Z3K" if you need something easier to remember.

I think "Zimba" is a really nice name, but I have another suggestion as well... :grin:

 

CHAMELEON 3000

  • Like 1
Link to comment
Share on other sites

I'm so curious how Kevtris programs FPGA's... it would be neat to see what goes into it/how it's done. Sounds like magic to me.

There are plenty of open-source projects. Check out the FPGA thread and there's an example from a University project:

http://atariage.com/forums/topic/262816-its-fun-to-play-on-the-f-p-g-a/page-2

 

Beyond that there are tutorials over at the MiST wiki, which are relevant for any Altera FPGA with minor tweaks.

Link to comment
Share on other sites

 

I think the limitation was actually the size of the FPGA, because a smaller FPGA would require PSRAM/SRAM and not just DRAM to make up for the lack of block memory. Hence bandwidth comes into play.

 

Like if you physically look at a SNES and the PCE, they sometimes use the exact same PSRAM. https://console5.com/wiki/SRAM_256Kb:_32K_x_8-bit

well the problem with PCE is the cartridges can run at over 7MHz access rate which is a bit too fast for the SDRAM. there's plenty of blockram to do the 64K worth of VRAM (this goes for SNES, and genesis too). But bulk storage for the game ROM needs external memory since 256K+ worth of it is too big for BRAMs. I had a funny idea with the PCE though where I might be able to do 2 or 3 read bursts depending on the instruction the CPU is executing to make it work but I would need to mull it over more and get more technical information. PCE tech information seems pretty hard to come by, at least with the couple hours I wasted on google searching. lots of dead links and dead ends

 

 

 

Isn't this an FPGA with those cores?

 

http://www.mcchome.arcaderetrogaming.com/

 

Funny story about that. They contacted me and really wanted me to port my cores to their system and the guy was super pissed off that I wouldn't do it and wanted to make my own system.

 

I signed up here because of this project - looks really promising especially since it has already started with the nt mini.

I really like the idea of a modular system running off SD cards with options for analogue AV, cartridge adapters if you want them, standardised connector for pad adapters - sounds amazing!

A few questions if I may;

Is it likely that the Z3K will be able to support SNES, MD & PCE?

With regards to MD & PCE are CD hardware cores feasible?

Is it possible to implement tools for the gameboy cores for backing up saves/data from the carts, I think it was mentioned there are similar tools in the NES core for dumping the cart?

Are you planning to build in bluetooth support for pads?

I want to do those three systems, but there will probably be no CD hardware. the amount of work for it is insane. Unfortunately there's only one of me and an unlimited number of systems to do. I am not really planning on adding dumping functionality for other systems, even though it could be done. I just don't have time really with everything else. I have copyNES functionality simply because I had the dumper plugins already done, so making them work on the nt mini was easy.

 

I am not doing bluetooth.

  • Like 2
Link to comment
Share on other sites

All these updates and cores are simply incredible!

 

The question I have is how accurate are cores? I know they are not emulation and simulate the chip but how the heck does that happen? Are the chips from the original system ran through some reverse engineering process and the individual gates, etc.. are simulated with the core? Must be something like this since it is much better than emulation?

 

I truly have no idea as you can tell.. just curious.. :)

Link to comment
Share on other sites

All these updates and cores are simply incredible!

 

The question I have is how accurate are cores? I know they are not emulation and simulate the chip but how the heck does that happen? Are the chips from the original system ran through some reverse engineering process and the individual gates, etc.. are simulated with the core? Must be something like this since it is much better than emulation?

 

I truly have no idea as you can tell.. just curious.. :)

 

FPGA development of chips is done by typically probing the original chips with oscilloscopes. Basically you put a probe on all the (usually clock, address and data) pins, and record it (which an analogy would be recording multi-channel audio, except you're recording sometimes as many as 64 channels at once.) Sometimes you have to sample from more than one chip to get a big picture of what is actually happening. Like to re-implement a game console you likely have to probe all the chips and the cartridge bus. If there are expansion chips in the cartridge, or external expansion parts, you need to probe those too.

 

Like the SNES is probably more complicated by the fact that some expansion parts have since stopped being usable (like the BS-X), so even if you can do a FPGA of the base unit, you will never be able to use a real BS-X unit, and emulating one might never be possible either.

  • Like 2
Link to comment
Share on other sites

I had a funny idea with the PCE though where I might be able to do 2 or 3 read bursts depending on the instruction the CPU is executing to make it work but I would need to mull it over more and get more technical information.

You might be able to get away with that, it's a very good idea.

 

The instructions are sequential bytes, with lengths of 1,2,3,4 and 7.

 

 

I want to do those three systems, but there will probably be no CD hardware. the amount of work for it is insane. Unfortunately there's only one of me and an unlimited number of systems to do.

I hear you, especially for the SegaCD which is basically a whole different computer tacked on to the design with a DMA channel to access the original MegaDrive.

 

It's an ugly hack. Quite clever ... but ugly.

 

The PCE-CD is a lot cleaner, acting much more like a traditional computer-expansion with a pseudo-scsi chip, and the ADPCM chip-n-ram, and not much else.

 

But still, as you say, it would be a lot of work, and you're only human.

 

Sad to hear from my POV though, because it's the CD games that really make the PCE totally unique for its time.

  • Like 1
Link to comment
Share on other sites

Thanks a lot for the reply =]

This gives me more reason to show support get a nt mini now - I appreciate it is a crazy amount of work to code the 16 bit systems!

With regards to the PCE CD the clever chap at https://gdemu.wordpress.com/is making a a CD FGPA, wonder if it would ever be possible to collaborate?

Looking forward to the Z3K, will be buying it for sure, off to buy a nt mini now =]

  • Like 1
Link to comment
Share on other sites

All these updates and cores are simply incredible!

 

The question I have is how accurate are cores? I know they are not emulation and simulate the chip but how the heck does that happen? Are the chips from the original system ran through some reverse engineering process and the individual gates, etc.. are simulated with the core? Must be something like this since it is much better than emulation?

 

I truly have no idea as you can tell.. just curious.. :)

As accurate as I can get 'em. Typically I read everything I can find on the system in question, then build custom hardware to test the system. I have used a logic analyzer before (200 channels), and signaltap (an on-FPGA logic analyzer) along with other more pedestrian methods like a multimeter to trace out the circuit on something. There's also a cartridge emulator that I can use to probe the hardware in real time. I used that for the last couple systems I reverse engineered and it made the job sooo much faster. There's a bunch of videos on youtube of me doing reverse engineering work if you want to see how I do it.

 

https://www.youtube.com/channel/UCOkbec10-yP76r-NXibyMew

 

I'm sure there's still some bugs lurking in dark corners of things, but I do fix them as they are discovered.

  • Like 3
Link to comment
Share on other sites

Got my Nt Mini yesterday, awesome system.

 

Having trouble with the analogue output, dont know if anybody else have issues like me.

Ordered a cable from retrocables.uk, they have a breakout converter to euro-scart. The colors are greenish, like the red-signal is missing. Also the RGB-blanking signal seems to be missing.

 

Checked the analogue nt mini specification for the analogue output, pin 5,10,15 is labeled "detection", what is that?

Euro-TV:s that supports RGB depends on a RGB-blanking signal (+5v with a 180ohm resistor) to scart pin16 (RGB blanking).

 

The RGB-blanking does not seem to be connected, is there any +5V out on the DB-15 from the Nt Mini?

Edited by atmn
  • Like 1
Link to comment
Share on other sites

Got my Nt Mini yesterday, awesome system.

 

Having trouble with the analogue output, dont know if anybody else have issues like me.

Ordered a cable from retrocables.uk, they have a breakout converter to euro-scart. The colors are greenish, like the red-signal is missing. Also the RGB-blanking signal seems to be missing.

 

Checked the analogue nt mini specification for the analogue output, pin 5,10,15 is labeled "detection", what is that?

Euro-TV:s that supports RGB depends on a RGB-blanking signal (+5v with a 180ohm resistor) to scart pin16 (RGB blanking).

Maybe this is related? Some retrogamingcables have had issues.

 

I actually am still getting issues even without the retrogamingcables, but it's something to check out

 

Something that could help narrow it down would be to try the composite, component, or rgb video cables from monoprice. My NT Mini came with an issue where it won't output composite, in component the R-Y signal is missing, and in RGB the R signal is missing. Turns out they all come from the same pin (pin 1). It could also be an issue with one of the other pins, not sure.

 

I had to contact customer support and sent my NT Mini in, due to this.

 

Unfortunately, I found one more report of the same issue on twitter, so perhaps there are more consoles out there with the issue.

 

https://twitter.com/gamespite/status/839902281772466176

 

 

 

As for detection, if Pins 4 and 5 are connected then the NT Mini will know to output composite video

Edited by rezb1t
Link to comment
Share on other sites

Maybe this is related? Some retrogamingcables have had issues.

 

Something that could help narrow it down would be to try the composite, component, or rgb video cables from monoprice. My NT Mini came with an issue where it won't output composite, in component the R-Y signal is missing, and in RGB the R signal is missing. Turns out they all come from the same pin (pin 1). It could also be an issue with one of the other pins, not sure.

 

I had to contact customer support and sent my NT Mini in, due to this.

 

Unfortunately, I found one more report of the same issue on twitter, so perhaps there are more consoles out there with the issue.

 

https://twitter.com/gamespite/status/839902281772466176

 

 

 

As for detection, if Pins 4 and 5 are connected then the NT Mini will know to output composite video

 

It could be a greater problem, people in general running HDMI I belive.

 

If its RGB, how should the detection pins be configured?

 

Dont know where I can pull +5V from, the USB maybe.. In the documentation it says to pull +5V from the USB. Guess I'll try that and see if its working then. It might think its component or something? due to the greenish color. Mine aint flickering like in the youtube clip, its steady but with wrong colors.

 

Wierd that they doesnt use pin 12 or pin 9 since they are not connected , for optional +5V i mean.

Edited by atmn
Link to comment
Share on other sites

You might be able to get away with that, it's a very good idea.

 

The instructions are sequential bytes, with lengths of 1,2,3,4 and 7.

 

 

 

I hear you, especially for the SegaCD which is basically a whole different computer tacked on to the design with a DMA channel to access the original MegaDrive.

 

It's an ugly hack. Quite clever ... but ugly.

 

The PCE-CD is a lot cleaner, acting much more like a traditional computer-expansion with a pseudo-scsi chip, and the ADPCM chip-n-ram, and not much else.

 

But still, as you say, it would be a lot of work, and you're only human.

 

Sad to hear from my POV though, because it's the CD games that really make the PCE totally unique for its time.

And the contents of a CD doesn't fit onto an SD card? If one can't play the real thing, then perhaps reading the CD data from the SD card could be a good compromise?

  • Like 1
Link to comment
Share on other sites

Got my Nt Mini yesterday, awesome system.

 

You got lucky. My buddy said he wasn't getting his until next Tuesday and he ordered the second they restocked. Kinda shitty considering how expensive shipping was. Anyway, I told him to come over and play mine. I'll probably be playing Zelda Breath of the Wild all weekend. icon_smile.gif

  • Like 3
Link to comment
Share on other sites

As accurate as I can get 'em. Typically I read everything I can find on the system in question, then build custom hardware to test the system. I have used a logic analyzer before (200 channels), and signaltap (an on-FPGA logic analyzer) along with other more pedestrian methods like a multimeter to trace out the circuit on something. There's also a cartridge emulator that I can use to probe the hardware in real time. I used that for the last couple systems I reverse engineered and it made the job sooo much faster. There's a bunch of videos on youtube of me doing reverse engineering work if you want to see how I do it.

 

https://www.youtube.com/channel/UCOkbec10-yP76r-NXibyMew

 

I'm sure there's still some bugs lurking in dark corners of things, but I do fix them as they are discovered.

 

Great stuff and a lot of work!! Woah!?!

 

How can this FPGA system emulate Amiga hardware? Wouldn't it be much more complex than a PCE?

 

http://www.mcchome.arcaderetrogaming.com/

 

Thanks so much for all the work and support!!!

Link to comment
Share on other sites

Maybe this is related? Some retrogamingcables have had issues.

 

I actually am still getting issues even without the retrogamingcables, but it's something to check out

 

Something that could help narrow it down would be to try the composite, component, or rgb video cables from monoprice. My NT Mini came with an issue where it won't output composite, in component the R-Y signal is missing, and in RGB the R signal is missing. Turns out they all come from the same pin (pin 1). It could also be an issue with one of the other pins, not sure.

 

I had to contact customer support and sent my NT Mini in, due to this.

 

Unfortunately, I found one more report of the same issue on twitter, so perhaps there are more consoles out there with the issue.

 

https://twitter.com/gamespite/status/839902281772466176

 

 

 

As for detection, if Pins 4 and 5 are connected then the NT Mini will know to output composite video

 

 

It could be a greater problem, people in general running HDMI I belive.

 

If its RGB, how should the detection pins be configured?

 

Dont know where I can pull +5V from, the USB maybe.. In the documentation it says to pull +5V from the USB. Guess I'll try that and see if its working then. It might think its component or something? due to the greenish color. Mine aint flickering like in the youtube clip, its steady but with wrong colors.

 

Wierd that they doesnt use pin 12 or pin 9 since they are not connected , for optional +5V i mean.

So I was just reading through the comments for the week and was surprised to find a link to one of my videos. That's me in the video having an issue with the RGB cable from RetroGamingCables.co.uk. Robert from RGC and I went back and forth via email with me sending pics and probing clumsily with a multimeter. I'm not very well versed in cable making so I was reliant on him telling me what to do. Ultimately, I got the cable to output RGB by simply soldering Pins 10 and 4 together on the male cable end that plugs into the back of the Nt mini. That was it. With pins 10 and 4 soldered together, I got RGB. Not soldered together, and I got Component. My soldering jobs aren't the best so Robert agreed to send me a new cable that he made himself. It's in the mail.

Link to comment
Share on other sites

And the contents of a CD doesn't fit onto an SD card? If one can't play the real thing, then perhaps reading the CD data from the SD card could be a good compromise?

 

A SD-card that can read at 6MB/sec = 40X cd-rom, but it doesn't have the same access time as one. Since a Sega CD or PCE is 1X or 2X class hardware, you have a timing issue already in that the card doesn't align with the access pattern expected. This is critical for redbook audio.

 

Low level CD-ROM access is a huge pain to emulate, even in software emulators, and it's often why you're forced to rip the disc instead, but when you rip the disc, you typically lose access to the redbook audio. Even cd-emulators tend not to emulate redbook audio, even if the image has it.

 

In the case of the PCE, I think the cd-rom is just a regular off-the-shelf NEC SCSI drive, and the expansion interface board is just a bridge+sram. The SegaCD likewise appears to use off-the-shelf Sony cd-rom units and JVC manufactured units using the same Sony IC's, except the entire "segacd" unit is the interface and bridge board.

 

But overall I think the difficulty has more to do with having to emulate something unnecessary when there is no real hardware to interface with. Like if you look at the SNES SuperDisc: https://forums.nesdev.com/viewtopic.php?f=12&t=13907,you'll see that they reversed engineered the commands from the BIOS. So perhaps with the other consoles it may be be less involved by looking for the CD commands on the expansion bus and just move pointers around on a memory-mapped disc image stored in RAM.

Link to comment
Share on other sites

NT Mini arrived!

 

Just did the best thing ever (possibly a slight exaggeration but good anyway), used copynes to save my Zelda cart and game saves, this particular cart has my original games saves probably from around 1990, now safely backed up :-)

 

Got to go, lots of playing to do.

Edited by Radfoo
Link to comment
Share on other sites

Arrived here as well, to those still waiting you're probably on the other end of the country and UPS is really the slowest/worst shipping service. Apparently they're using it because they have the best insurance options however, so not Analogue's fault.

 

Found a couple of small nitpicks that can maybe be solved in a future firmware update. I'm getting audible pops sometimes when I reset the game or load a new one using the NES core. Also in Skate Or Die on the freestyle section the fencing and checkerboard patterns on the level are constantly flashing, may be a problem in some other games as well using this kind of graphic.

 

Other than that though I'm finding this thing to be leaps and bounds better than the AVS. Something about the feel of the games and also the 5x by 6x setting with 1080p just make everything way better. Also the scanlines are actually even and working unlike on the AVS, I would appreciate a thickness option for them however like the framemeister. They are a hair too thin imo, but very nice nonetheless.

 

If this thing didn't have the core store then the ports would be a major issue, too tight and too easy to wiggle the cart during gameplay, but with a 64 gb SD card I don't see any reason to ever use them.

 

Thanks for putting together a premium product @analogue & @kevtris, you guys are real heroes in the community. Can't wait to see what you come up with next, and I'll be first in line to pay 500-600$ if a premium zimba is released. Going back to cheapo plastic after using this thing would be a serious downgrade.

Edited by Tusecsy
  • Like 4
Link to comment
Share on other sites

well the problem with PCE is the cartridges can run at over 7MHz access rate which is a bit too fast for the SDRAM. there's plenty of blockram to do the 64K worth of VRAM (this goes for SNES, and genesis too). But bulk storage for the game ROM needs external memory since 256K+ worth of it is too big for BRAMs. I had a funny idea with the PCE though where I might be able to do 2 or 3 read bursts depending on the instruction the CPU is executing to make it work but I would need to mull it over more and get more technical information. PCE tech information seems pretty hard to come by, at least with the couple hours I wasted on google searching. lots of dead links and dead ends

 

One can always ask for an Nt Mini ++ with a 5CEA9 at 301K LE and 12Mbit of block RAM (that's > 1MBytes) for just 350$ extra (that's the full price of the FPGA)

If memory serves aside SFII (2MBytes) all PCE card games are <= 512KBytes .... and can fit ..... just saying.

 

The 5CA7 at 150K LE seems to be running at 200$ for 6Mbits (that's > 512K), so maybe it can be used in the Nt Mini ++ (not sure it's a drop in replacement as it may have different pinout/packaging, but if it is it would not even required any change on the HW manufacturing side with the exception the "sarcastic note" below).

 

<sarcasm>

I can see a platinum case for the Nt Mini ++, with a diamond encased on the power button!!

</sarcasm>

  • Like 1
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...