It is currently Sat Oct 21, 2017 1:37 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 103 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 7  Next
Author Message
 Post subject: Re: FPGA project
PostPosted: Wed Nov 03, 2010 11:10 am 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 10065
Location: Rio de Janeiro - Brazil
kevtris wrote:
I don't want someone taking my code and building some products around it, then me not getting a cut of that.

Although I do understand the feeling (and would probably be worried about this myself in your situation), rationally this doesn't make much sense. In both scenarios (somebody stealing your design vs. nobody stealing your design) you don't get any money. So the thing you oppose to is someone else making money from your work, which in practice doesn't change anything for you, it's just a moral thing. And to prevent that you end up preventing people with honest intentions to benefit from your work as well (people who would pay for an accurate NES clone, for example).

I'm not saying that you guys should or shouldn't open source your projects, I'm just pointing out that this is one of those paradoxical things to think about.


Top
 Profile  
 
 Post subject: Re: FPGA project
PostPosted: Wed Nov 03, 2010 1:14 pm 
Offline
User avatar

Joined: Sat Oct 29, 2005 2:09 am
Posts: 500
Location: Indianapolis
tokumaru wrote:
kevtris wrote:
I don't want someone taking my code and building some products around it, then me not getting a cut of that.

Although I do understand the feeling (and would probably be worried about this myself in your situation), rationally this doesn't make much sense. In both scenarios (somebody stealing your design vs. nobody stealing your design) you don't get any money. So the thing you oppose to is someone else making money from your work, which in practice doesn't change anything for you, it's just a moral thing. And to prevent that you end up preventing people with honest intentions to benefit from your work as well (people who would pay for an accurate NES clone, for example).

I'm not saying that you guys should or shouldn't open source your projects, I'm just pointing out that this is one of those paradoxical things to think about.


Actually this time I *do* plan on trying to get it manufactured, and to open the hardware and some code as a development system aimed at making FPGA consoles.

If I sold it, cost would be around $180 or so (possibly cheaper), along with my bitstreams for the various FPGA stuff I designed (like the NES core) and a set of developer documents/files that have pre-made interfaces for SDRAM and stuff.

The idea being, someone could program their own console or other thing on it, and then share the bitstream with others (or open source their code, etc). Think of it kinda like a PowerPak but for CONSOLES :-)

After this FPGA NES is done, I was going to start work on another one, but I am not sure which. I have FPGA console cores mostly done for the following systems: C64, gameboy, atari 8 bit, and colecovision/sms. When I say "mostly", I mean the CPU + audio + bankswitching is 100% done, and fully debugged. I used these bits in my FPGA chiptune synthesizer. The only thing needed to get them finished as full blown consoles is just video.

The hardware I came up with this time is very compact- it's the same size as an NES cartridge PCB. I designed it this way so I could use NES carts as cheap cases, with the connectors for power/video/etc sticking out the back where the cartridge would've plugged into the NES. On the front are two USB controller ports and a microSD card for the data.

Back jacks are RGB, DVI, stereo audio, feature connector (I have NES/SNES controllers plugged in here), and power. There's an 18Mbit serial SRAM on here along with 16*8M SDRAM.

It can output any video mode in any standard using some cheap ebay-available adapters. composite, s-video, RGB (all three in PAL, NTSC, and compatible modes (interlaced, etc)), then RGB in VGA rate, component, and DVI.

So far I created a digital RGB to NTSC encoder that works great as well as a true "real NES" video output encoder that produces an exact clone of the NES video levels and everything, complete with the proper dot crawl and bleedover and emphasis effects. Component is very easy to add but I don't have a monitor to test it out on and DVI hasn't been enabled yet but it's on the board. I was waiting for my micro so I could program it thru the I^2C port.

here's a picture of it.

http://blog.kevtris.org/blogfiles/IMG_2931.JPG

_________________
/* this is a comment */


Top
 Profile  
 
 Post subject: Re: FPGA project
PostPosted: Wed Nov 03, 2010 1:38 pm 
Offline
User avatar

Joined: Thu Oct 21, 2004 4:02 pm
Posts: 210
Location: San Diego
kevtris wrote:
Actually this time I *do* plan on trying to get it manufactured, and to open the hardware and some code as a development system aimed at making FPGA consoles.

If I sold it, cost would be around $180 or so (possibly cheaper), along with my bitstreams for the various FPGA stuff I designed (like the NES core) and a set of developer documents/files that have pre-made interfaces for SDRAM and stuff.

If you're doing market research, I'll take one of those at nearly any price. If you're taking reservations, I'll take serial number 0001 :)
This is actually very much what I was imagining for this project, looks like once again Kev is ahead of the game! The important things (to me) are:
- the core NES pieces and mappers can be viewed/modified. This allows the community to find bugs and fix them. It also becomes permanent documentation on the behavior of the original system.
- cheap enough for any moderately serious console collector to purchase
- compatibility with modern TV's and displays. HDMI anyone?
- allows for use of original controllers (using RetroZone style connectors), or anything else. I can see wireless NES controllers being desirable.
- The "ugly stuff" can remain proprietary, allowing the vendor some ability to protect their investment. This includes all the glue that takes the CPU/APU/PPU/mappers and connects them to the outside world. Bugs in this area would have to be fixed by the vendor (aka Kevin)

Given this new information, I'd like to suspend my original message. This might be the shortest time ever for me to abandon a project! Of course, if the FPGANes never makes it to market then we'll have to re-open this discussion :(


Top
 Profile  
 
 Post subject: Re: FPGA project
PostPosted: Wed Nov 03, 2010 1:39 pm 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 10065
Location: Rio de Janeiro - Brazil
kevtris wrote:
So far I created a digital RGB to NTSC encoder that works great as well as a true "real NES" video output encoder that produces an exact clone of the NES video levels and everything, complete with the proper dot crawl and bleedover and emphasis effects.

Ah, I was about to ask about that! =) I think this is pretty important.

Anyway, it's nice that you actually plan on selling a product, this changes everything. I really hope you can get it released.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 2:34 pm 
Offline
Formerly 65024U

Joined: Sat Mar 27, 2010 12:57 pm
Posts: 2257
Best read ever. Not only RGB, But classic NES mode?!?!?! HOLY HEAVEN. :D


This seems awesome. And if your looking for something after this, maybe NeoGeo on FPGA? NeoGeo is hard to find and you'd probably pay the dev cost for a FPGA one for a normal one! :P I just think neo-geo would be cool because they're so rare. Atleast i've never seen one. :/


That NES FPGA is...wow. Fantastic. I still can't believe this just happened. I'll probably end up buying one eventually. I can't wait until this gets released. Going to add alot of RGB to my Crystalis! :D


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 3:37 pm 
Offline
User avatar

Joined: Mon Sep 27, 2004 2:13 pm
Posts: 1667
Location: .ma.us
65024U wrote:
This seems awesome. And if your looking for something after this, maybe NeoGeo on FPGA? NeoGeo is hard to find and you'd probably pay the dev cost for a FPGA one for a normal one! :P I just think neo-geo would be cool because they're so rare. Atleast i've never seen one. :/
Neo Geo will fit into many FPGA now but there's a huge difference in complexity between a 68000 core and a 6502 core. AFAIK, nobody has written a hardware accurate 68000... With all the microcode it's a huge task and challenge, I'm not sure that stuff has even been reverse engineered... There's also a memory & latency issue; Neo basically has 5x 200ns buses of different widths opposed to 2x 8-bit in the NES and it's hard to meet the timing requirements with a single SDRAM, regardless of how fast. Anyway, a real Neo Geo home console is <$200 and an arcade board (MVS) is <$100 and they aren't as rare as one might think.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 3:59 pm 
Offline
Formerly 65024U

Joined: Sat Mar 27, 2010 12:57 pm
Posts: 2257
Thats true, and I do understand that it's hard to re-make a chip with FPGA's, it's just that I have no doubt kev and everyone could do it if it interested them. I just was saying, if anything, I think that would be the coolest.


I ran across a page with a FPGA system of some kind....I think it was for arcade games or something, but it was to be build and sold and users made the game and it looked pretty cool and sounded very interesting. Let me provide a link.....

http://www.fpgaarcade.com/


It seems like they have a 68K running with a FPGA add on from the April 28th 2010 update.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 4:20 pm 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
I'd much rather see the limited resources people have put to use improving the NES situation, rather than being spread thin in an attempt to emulate everything.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 4:33 pm 
Offline
Formerly 65024U

Joined: Sat Mar 27, 2010 12:57 pm
Posts: 2257
Yeah but a guild to build-your-own-RGB-PPU-and-6502 kit with a 500x500 breadboard wouldn't be that great of an addition to the NES aftermarket products.....but I will say this, it'd be way too cool for me not to get. :P


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 5:58 pm 
Offline
User avatar

Joined: Wed Dec 06, 2006 8:18 pm
Posts: 2801
blargg wrote:
I'd much rather see the limited resources people have put to use improving the NES situation, rather than being spread thin in an attempt to emulate everything.


Curious, what exactly in the "NES situation" needs improving? Not that I disagree with the premise but I was curious what exactly you think should be a priority.

Personally I'd like to see a truely hardware accurate clone of the NES/Famicom.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 6:51 pm 
Offline
NESICIDE developer
User avatar

Joined: Mon Oct 13, 2008 7:55 pm
Posts: 1026
Location: Minneapolis, MN
blargg wrote:
I'd much rather see the limited resources people have put to use improving the NES situation, rather than being spread thin in an attempt to emulate everything.


I'm also curious what a list of things that could be done to improve the NES situation might look like. I started my project with the idea that it would eventually improve the NES situation, but my idea of the NES situation at the time was self-centered [I wanted to improve *my* own situation WRT NES development ability].

Personally I'd love to see a completely accurate software simulation [and of course a completed NESICIDE]. In my dream-like state that I attempt to refer to as my reality, the 2A03 and 2C02 chips have been decapped, photographed, and completely analyzed--and given to the community for everyone to use.

Yes I am aware of the Virtual6502 which is gigantic cool...but it of course doesn't have any of the APU. A decapped 6581 looks incredibly complicated for just the 3 channels it has...I'm really curious how the APU fits in the 2A03. Surely the BCD isn't *that* big of a portion of the die?


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 03, 2010 7:17 pm 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
It's not about things that need improving, just improving things that can be improved. Off the top of my head:

* High-quality tutorials
* A lot more work on the Wiki
* Programming libraries
* More test ROMs

My idea of quality is pretty high (I rarely meet it either). I think a lot of documentation and tutorials are poor, not just for the NES, but anything. I desire to have things that are clean, concise, and well-written for the intended audience. So I always see the NES as having plenty of room for improvement, which is all the well, because I like improving things.


Top
 Profile  
 
 Post subject: Re: FPGA project
PostPosted: Wed Nov 03, 2010 7:47 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19113
Location: NE Indiana, USA (NTSC)
teaguecl wrote:
- compatibility with modern TV's and displays. HDMI anyone?

HDMI is complicated and probably involves a whole bunch of patent licensing. It'd also need an upscaler, as I imagine most TVs wouldn't handle a 280x240 signal. It's probably not even necessary because the NES composite video signal is compatible with every TV and VCR that I've tried it on, as well as a DVD recorder. I've run into issues with one SD DVR, but that could be fixed by adding an interlace mode that more faithfully meets the NTSC timing specification:
  • Stall the CPU and most of the PPU (but not the color generator) by three master clock cycles in each hblank, making each line 341.25 dots long instead of 341. This changes the dot crawl pattern from 3-line to 2-line.
  • In every other field, display the post-render scanline (line 240) twice. The Dendy console's PPU displays 51 of these to make games designed for NTSC timing work on 50 Hz PAL, and games work with 51, so surely games would with with two.
  • Make the other field's vsync signals a half scanline later.
blargg wrote:
Off the top of my head:

* A lot more work on the Wiki

Feel free to spray constructive criticism across talk pages, and I'll try to address issues that you raise.


Top
 Profile  
 
 Post subject: Re: FPGA project
PostPosted: Thu Nov 04, 2010 12:21 am 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6289
Location: Seattle
tepples wrote:
teaguecl wrote:
- compatibility with modern TV's and displays. HDMI anyone?

HDMI is complicated and probably involves a whole bunch of patent licensing.
Fortunately it's just DVI. The only complications come from HDCP, which as a transmitter you can ignore.

Quote:
stuff about NTSC compatibility
Oh, augh, please no. Just upscale it to 480p and stop there -- when I look at 240p content displayed as 480i even with a good interlacer it looks awful. A lot of things in NES games have been designed to be exactly one pixel high, and if it jitters vertically as a 480i signal implies it looks terrible.


Top
 Profile  
 
 Post subject: Re: FPGA project
PostPosted: Thu Nov 04, 2010 6:32 am 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
tepples wrote:
blargg wrote:
Off the top of my head:
* A lot more work on the Wiki

Feel free to spray constructive criticism across talk pages, and I'll try to address issues that you raise.

I wouldn't have mentioned unless someone asked, because the task of even evaluating things is a lot of work in itself. I must admit, I was impressed with all the work done on the Wiki during my absence from earlier this year.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 103 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 7  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group