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

Is there any reason to keep the NT Mini when the SNES version comes out? I assume it would do the NES and jailbreaks too??

 

Ya the minute it gets announced I'm ebaying my NT Mini that's for sure. Seems like a no brainer. A simple controller adapter would solve the SNES only controller problem.

Link to comment
Share on other sites

Unfortunately, the FPGA on there doesn't have many multipliers, and I used them all up so I can't port it.

 

Fixed-point math and lookup tables, c'mon.

 

Nah, I joke. I guess you used a really beefy FPGA for that one, and it was just an experiment, right?

Link to comment
Share on other sites

this was my big complaint with the cyclone V. the part I used (a cyclone III) had the same logic resources approximately, but a lot more multipliers. It was the 25K LE model C3, and the C5 is approximately the same. Interestingly the chip used on the ntm has 50K LEs about and 66 DSP units (multipliers) but for the A2 part I used, half the resources are not available. They are on the die but the compiler will not assign them because you didn't pay for them. I ran out of multipliers on the NES core and had to start converting some multipliers into bogo-multipliers, i.e. repeated shifting and adding or accumulation depending on the size. The video scaler stuff eats up nearly all of the multipliers between the HQX stuff and all the analog video mode things (composite, s-vid, component, etc).

 

The chip I did the mandelbrot on originally had no scaling of any kind and output RGB directly so I could use all of the resources for the mandelbrot. It had 7 rendering units running in parallel. I kind of want to revisit that project some time though and redo how the iterations were done to make it more efficient. Also I wanted to get a vastly higher resolution than 256*240 of the original. So it might show up one day on the ntm in some other format, like a very limited version that has no scaling and might be analog only or digital only output. We'll see.

  • Like 1
Link to comment
Share on other sites

Kevtris,

 

Is the gamate core possible on the nt mini? If so, how hard would it be to get it going?

 

And is it possible to do the NES overclock ppu feature on the nt mini to run NES games without lag?

 

Thanks!

Gamate is already on it. no I am not handling CPU overclocking because it shares a clock domain with the video.

  • Like 1
Link to comment
Share on other sites

Noticed this on the Everdrives forum.

 

http://krikzz.com/forum/index.php?topic=6645.30

 

Krikzz everdrive N8 cant run big games, in this case 16Mbit, the maker of the awesome Zelda and Mario hacks that require bigger memory and a fully featured MMC5 mapper support wont do anything to be able to support this.

 

I belive Kevtris said that there is no use to make another romcart since there is Powepak and Everdrive. I think it is use for another romcart. There is no other MMC5 support like the ones Kevtris implemented in the Nt mini, that runs the Legend of link flawlessly. Kevtris have the best library of mapper support for the NES, even VRC7, which is incredible to support just for 1? game.

 

I want a Kevtris-NES-everdrive-powerpak-thingy! :) Would say people would buy it if the price was under 200$.

Link to comment
Share on other sites

Noticed this on the Everdrives forum.

 

http://krikzz.com/forum/index.php?topic=6645.30

 

Krikzz everdrive N8 cant run big games, in this case 16Mbit, the maker of the awesome Zelda and Mario hacks that require bigger memory and a fully featured MMC5 mapper support wont do anything to be able to support this.

 

I belive Kevtris said that there is no use to make another romcart since there is Powepak and Everdrive. I think it is use for another romcart. There is no other MMC5 support like the ones Kevtris implemented in the Nt mini, that runs the Legend of link flawlessly. Kevtris have the best library of mapper support for the NES, even VRC7, which is incredible to support just for 1? game.

 

I want a Kevtris-NES-everdrive-powerpak-thingy! :) Would say people would buy it if the price was under 200$.

 

Perhaps the hack makers should have done so within the contemporary limits of the NES? Just sayin....

Link to comment
Share on other sites

 

Perhaps the hack makers should have done so within the contemporary limits of the NES? Just sayin....

The primary thing is that the MMC5 mapper are poorly implemented on the current flashcarts, its just made to run CV3.

Theese hacks runs fine with real MMC5 chips on real hardware. The hack are for sure within limits of NES capability. Games like that wasnt made back in the days cause the cost should be to high.

 

Kevtris mapper support are far beyond current flashcarts imo.

Link to comment
Share on other sites

So a jailbroken NT Mini should run it, since it can load ROMs off the SD, right? Or am I missing something, like MMC5 emulation support in the jailbroken firmware...

 

Yes, it runs perfectly. That is what I mean. The MMC5 support goes beyond CV3 in the jailbroken Nt Mini. This mapper support and support for bigger roms in a flashcart to be able to run on any NES would be neat.

Link to comment
Share on other sites

OK I gotcha now. My bad. Reading is fundamental. lol

 

I didn't realize that mapper support in the Everdrive N8 (which is how I play, in OG hardware) was lacking in places. It'd definitely be a cool bonus to run home-brew that needs it like that.

 

Ye. Its far from perfect in current flashcarts. And, if a hack runs fine with the original MMC5 chip as it does on the repos. Its not the hack that is the problem, its the implementation of the mapper.

 

I got the Nt mini so I'm not complaing, but Im just saying there is alot of people thats willing to pay good money for a ZimbaPak N8 ;)

Link to comment
Share on other sites

So I've looked at the user manual and these are all the shortcut keys it lists:
Select + Down = menu
Select + A = Power on/off
Select + up = Reset Game
Select + Right = Video Switch

hold up while powering up = analog video menu
hold down while powering up = controller test menu
hold start while powering up = reset nt mini settings to default

Am I missing something or is there no way to easily change the settings of your mini while a game is on/resume that game after you have changed them? I was trying out some nes palettes (neat update the the custom palettes you can apply will be available in the next Smokemonster pack update) and it was a real chore, as was changing the video settings. The only way I could find a way to do it was by using the code to turn the nt mini off, changing the settings, then loading the core I wanted and finding the game all over again.

Edited by Wolf_
Link to comment
Share on other sites

My point is that such games would never have existed during the run of the system. To me, it's verging on the concept of the OpCode SGM or 7800XM or IntelliXpander or similar. Like building a hot rod out of a '57 Chevy. Sure, you have something really cool and fun, but it's not really "original" or true to the design of the system. So to expect the current flash carts to support hacks like that are unlikely.

Link to comment
Share on other sites

My point is that such games would never have existed during the run of the system. To me, it's verging on the concept of the OpCode SGM or 7800XM or IntelliXpander or similar. Like building a hot rod out of a '57 Chevy. Sure, you have something really cool and fun, but it's not really "original" or true to the design of the system. So to expect the current flash carts to support hacks like that are unlikely.

I'm sure that the vast majority of people are unaware of flash carts (or at least unaware of them being good), or don't care because they strictly emulate. I doubt the concern someone might want to play their rom on original hardware ever entered their minds.

Link to comment
Share on other sites

So I've looked at the user manual and these are all the shortcut keys it lists:

Select + Down = menu

Select + A = Power on/off

Select + up = Reset Game

Select + Right = Video Switch

 

hold up while powering up = analog video menu

hold down while powering up = controller test menu

hold start while powering up = reset nt mini settings to default

 

Am I missing something or is there no way to easily change the settings of your mini while a game is on/resume that game after you have changed them? I was trying out some nes palettes (neat update the the custom palettes you can apply will be available in the next Smokemonster pack update) and it was a real chore, as was changing the video settings. The only way I could find a way to do it was by using the code to turn the nt mini off, changing the settings, then loading the core I wanted and finding the game all over again.

select+down to go into the menu, then hit start to bring up the settings stuff, which varies by core.

  • Like 1
Link to comment
Share on other sites

Unfortunately, the FPGA on there doesn't have many multipliers, and I used them all up so I can't port it.

Would like to see this on the Zimba3000. I consider myself a fractal geek so would be fun to play around with.

 

Bignum calculations would be super duper fast on an FPGA. The speed increase from 32-bit to 64-bit big-num integer maths is 400% on the same x86-64 class CPU. If you created say a 256-bit, or even possobly 1024-bit RISC CPU that basically does square and add repeatedly, then replicated your core until it filled the FPGA die, clocked at a couple hundred megahertz or whatever the max speed is for the FPGA, it would do laps around my AMD bulldozer (FX-8150 O.C. to 4.2Ghz). A slower 1024-bit CPU with less cores for really super duper deep stuff, and a faster 128 or 256-bit CPU for lighter zoom depths. Or you know, just dynamically scale the precision on the CPU to whatever depth you needed.

 

FPGAs should be far more efficient at massively parallel simple operations compared to traditional CISC CPUs like x86. Let me know if you want some alternate formulas for fratcals, Burning Ship, Celtic, Mandelbar, Perpendicular, Buffalo, etc. I catalogued a bunch of ABS() Mandelbrot variants in 2nd, 3rd, 4th, and 5th orders. Here's my 2nd and 3rd formula sheets:

https://stardust4ever.deviantart.com/art/Mandelbrot-ABS-Variations-Complete-Set-of-Formulas-487039852

https://stardust4ever.deviantart.com/art/Cubic-Mandelbrot-ABS-Variations-Incomplete-487039945

Link to comment
Share on other sites

Would like to see this on the Zimba3000. I consider myself a fractal geek so would be fun to play around with.

 

Bignum calculations would be super duper fast on an FPGA. The speed increase from 32-bit to 64-bit big-num integer maths is 400% on the same x86-64 class CPU. If you created say a 256-bit, or even possobly 1024-bit RISC CPU that basically does square and add repeatedly, then replicated your core until it filled the FPGA die, clocked at a couple hundred megahertz or whatever the max speed is for the FPGA, it would do laps around my AMD bulldozer (FX-8150 O.C. to 4.2Ghz). A slower 1024-bit CPU with less cores for really super duper deep stuff, and a faster 128 or 256-bit CPU for lighter zoom depths. Or you know, just dynamically scale the precision on the CPU to whatever depth you needed.

 

FPGAs should be far more efficient at massively parallel simple operations compared to traditional CISC CPUs like x86. Let me know if you want some alternate formulas for fratcals, Burning Ship, Celtic, Mandelbar, Perpendicular, Buffalo, etc. I catalogued a bunch of ABS() Mandelbrot variants in 2nd, 3rd, 4th, and 5th orders...

https://stardust4ever.deviantart.com/art/Mandelbrot-ABS-Variations-Complete-Set-of-Formulas-487039852

https://stardust4ever.deviantart.com/art/Cubic-Mandelbrot-ABS-Variations-Incomplete-487039945

The one I made had 7 cores running at 90MHz, doing 3 multiplies at a time. Each multiply is 36*36 bits giving a 72 bit product. So that's 21 multiplies/clock at 90MHz or or 1.8 billion multiplies/second. One thing I found super interesting is when the clock was too high, the output glitched. But the glitches were fractal in nature, and made up of interesting loops and curls. I did a total of 256 iterations and used a table LUT to palette entry.

 

After 7 cores, no more would fit because it was trying to generate them using logic elements. This killed the clock rate, too.

 

Each core handled 1/7th of the screen which wasn't the most efficient. A better method would be to render each scanline individually on the cores as they finish. This would prevent idle cores which was a problem on the current implementation.

 

For a hypothetical newer implementation, I would pipeline the processing so that the clock can go a lot higher than it does now and possibly add more iterations.

  • Like 2
Link to comment
Share on other sites

Interestingly the chip used on the ntm has 50K LEs about and 66 DSP units (multipliers) but for the A2 part I used, half the resources are not available. They are on the die but the compiler will not assign them because you didn't pay for them.

What a fucking waste of die space... :roll:

 

The one I made had 7 cores running at 90MHz, doing 3 multiplies at a time. Each multiply is 36*36 bits giving a 72 bit product. So that's 21 multiplies/clock at 90MHz or or 1.8 billion multiplies/second. One thing I found super interesting is when the clock was too high, the output glitched. But the glitches were fractal in nature, and made up of interesting loops and curls. I did a total of 256 iterations and used a table LUT to palette entry.

Yeah at 256 max iterations it would be limited utility if still fun to explore. My zoom videos typically got to 2^-1000 (E-300) or beyond... :P
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...