High Quality Graphics - Can it be done
computer guy
Posts: 1,113
I am wanting to make something similar to this
I am confident that I can program most aspects of the project using the propelller however I am confident that the propeller isn't capable of the high resolution GUI display.
Is there a device or an IC that I can use that will enable the propeller to display a high resolution GUI without using too many propeller pins or taking years of code writing?
Thanks
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Building Blocks To The Propeller Chip A web site designed to help people who are new to the propeller chip.
Guitar Hero controller using the prop (WIP) --> HERE
I am confident that I can program most aspects of the project using the propelller however I am confident that the propeller isn't capable of the high resolution GUI display.
Is there a device or an IC that I can use that will enable the propeller to display a high resolution GUI without using too many propeller pins or taking years of code writing?
Thanks
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Building Blocks To The Propeller Chip A web site designed to help people who are new to the propeller chip.
Guitar Hero controller using the prop (WIP) --> HERE
Comments
8MB Ram/8MB Flash and a Max 2 1270 CPLD which could generate the video for you.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
http://www.youtube.com/watch?v=Z8bfXVOExXo·(D/AVE, http://www.altera.com/support/examples/nios2/exm-tes-demo.html)
I have no idea how much this particular·IP core costs, but suffice to say this video shows that·something like this·is possible without using mainstream graphics chips.
Another, which I think is open source:
http://www.youtube.com/watch?v=RttajqhNpzw
http://www.frank-buss.de/yagraphcon/index.html
Whatever mechanism you use, the problem then is how to get image bitmaps to the screen. This is still going to be a bottleneck whatever way you go. The less Prop pins you use, the more of a bottle neck it will be. The YaGraphCon demo shows speed over USB for example.
The bigger issue, IMHO, is the iPod interface. Is the protocol (both low-level electrical and high-level command) well documented enough to consider creating a homebrew HomeDock?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Composite NTSC sprite driver: Forum
NTSC & PAL driver templates: ObEx Forum
OnePinTVText driver: ObEx Forum
? [noparse]:)[/noparse] )
Open source:
http://sourceforge.net/projects/genode-fx/
When ordering you will be able to order with CPLD not programed or with the CPLD programed with any code you like. I will be including a programing rig free with those devolers willing to pre order.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
When ordering you will be able to order with CPLD not programed or with the CPLD programed with any code you like. I will be including a programing rig free with those devolers willing to pre order.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
I'll probably take that road ;-)··· Interfacing to an old isa video card seems like an interesting project...·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
I need my project to have a nice looking GUI but don't think I have the ability to make this happen.
Thank you
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Building Blocks To The Propeller Chip A web site designed to help people who are new to the propeller chip.
Guitar Hero controller using the prop (WIP) --> HERE
for you to write your own code all from scratch would not be to easy.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
So would this be assuming objects that met those requirements are written?
I don't think it's unfair to suggest that there are limitations to what can be easily accomplished with the Propeller, or any platform for that matter.· At some point you simply need a bigger tool that is better suited for the task; unfortunately that often means additional complexity as well.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
You can't do high res graphics on the prop by itself but you can do decent low res mostly text based stuff on it. if text based low res graphics are good enough for you then check out the obex. if you want high res the super prop has same form factor and pin layout as dip 40 prop so you can design for it now.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
Seriously, I think that kind of display is above the propeller. I would consider some other device for display. Frankly, one of those single board computers running some lean OS would be my target platform for this kind of thing. Those things are cheap too! There are lots of cool boot options, including USB flash drive. The whole thing could boot in a few seconds, run silent, and display a very nice screen with only a modest graphics system.
A coupla hundred bucks for the board, nice enclosure (or hack your own) and a week spent learning the OS and locating the necessary drivers, would be where I would start. From there, the actual application can be some high level language of your choice.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
The link you provided is probably beyond the Prop and definitely beyond a CPLD, you need at least as Cyclone II or Stratix FPGA running the Altera Avalon soft core processor with lots of dedicated Ram on its own to pull it off.
Not a project for beginners or folks who need hand holding at all.
The other FPGA demo also requires a FPGA as opposed to a CPLD.
You'd probably better off getting as Potatohead pointed out some kind of low cost SBC with lots of Ram and say a DSP as a target platform for video work. Something like the Beagle Board running QNX.
But it still possible to interface a Prop board to say a Spartan 3 kit and use it as a high end video processor for the Prop.
Cheaper route would be getting a used ISA video card and interface it to the Prop.
FWIW
Looking at the display examples on that link, it seems that given up to 64 colors available to for Propeller video, the output could be massaged to do some GUI shading and text areas ... even a watermark might be possible. It would require a different driver approach though. Maybe I've missed the point of the topic?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Steve
Propeller Tools
Maybe ping Coley and Baggars about PROPGFX. The interface on that one is very cool. 8 data pins are used for comms, or a serial interface can be used at a lower speed. I'm not sure what the upper resolution options are, but color selection is good on the full PROPGFX. That's essentially a device that is a Propeller, that won't take the coding work to build up the display capability.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
As Localroger said, Morpheus may do what you want.
Currently, I have the following drivers:
640x480 @ 69Hz
800x600 @ 60Hz
1024x768 @ 51Hz
All of these modes are using four colors from a palette of 256 colors... but you get a separate palette for each scan line!
As soon as I finish tweaking these drivers a bit more, I will start making 256 color per pixel drivers.
Here are the 256 color per pixel modes I am currently planning on supporting:
256x192 (with 1024x768 monitor timing)
320x240 (with 640x480 monitor timing)
400x300 (with 800x600 monitor timing)
Later I may be able to do a 512x384 mode as well - but that one is on the bleeding edge of what an 80MHz Morpheus can do.
The graphics API will be the same for the 256 color modes as well (except they will ignore Palette calls)
Please see http://forums.parallax.com/showthread.php?p=818362 towards the bottom for screen shots of some of my demo's.
Here is my current Spin graphics API: (I will be expanding it in the future)
* Cls(color) - PASM fast screen clear routine
* Pen(color) - set the drawing color to one of the four colors per pixel
* Plot(x,y) - PASM fast pixel plotting
* Plot(x,y,c) - PASM fast pixel plotting, also specifies color
* Rectangle(x,y,w,h) - draw a rectangle
* Circle(x,y,c) - draw a circle
* FilledRectangle(x,y,w,h) - draw a filled rectangle, PASM accelerated
* FilledCircle(x,y,w,h) - draw a filled circle, PASM accelerated
* PutChar(x,y,ch) - output 8
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Composite NTSC sprite driver: Forum
NTSC & PAL driver templates: ObEx Forum
OnePinTVText driver: ObEx Forum
Color depth is a problem, but the rest of what is depicted there isn't.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
This is best done using something like a fanless Intel Atom motherboard
booting Linux.
Linux/NASM/C is the way to do this.
I love the prop but this is a better choice IMO.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"Where am I? Where am I going? Why am I in a handbasket?"
different display modes and simultaneously and transparently refreshed the dynamic RAM in such a way that the
CPU could also always access it... (The resulting pixelmap function was bizarre though.) Other 8-bitters were
more or less clever.
How about a CoProp and old 30 pin 1 MB Simm DRAM (if they are still heaped up in surplus) which should
facilitate 256 colors with 1024x768, and the Propeller video generator may be merely helpful for interlaced
video sync if it is needed. A few 74HCTxxx glue logic could generate the video output.
-One cog for DRAM refresh timed for optimal video output
-One cog for DRAM access
-Everything else for a video codec or two and text and graphics commands.
Most of CoProp's pins will need to be connected to the DRAM simm.
BTW, which video codecs can be done or have been done on the Prop yet?
Simplest ones still in use are what? ... M-JPEG? FLIC? "Dialup Webcam"? Stuff from 1995?
- 1MB 30 pin sims were usually 70ns - 80ns
- 1024x768 @ 60Hz uses a 65MHz dot clock - there is no way of getting 65MB/sec from such an old simm
Now more modern ram, and a small FPGA could do it if it acted like a peripheral for a prop.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
Morpheus & Mem+dual Prop SBC w/ 512KB kit $119.95, 2MB memory IO board kit $89.95, both kits $189.95
www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
Still, having some kind of a richly textured and colored Propeller compatible TV/VGA GUI is very attractive.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Steve
Propeller Tools
I figure I can use 3 cogs, one each for RGB, to generate 24-bit data at 640x480...
Maybe 6 cogs can do 1024x768...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm
Some how generate a serial bit stream, where the prop inserts to most 8 significant bit·x 3
To reduse pin count this could help.
MHL-to-HDMI compliant bridge
http://www.siliconimage.com/products/product.aspx?id=130
but maybe creating a MHL signal is as hard as HDMI,
so maybe a RGB parallel input chip is needed.
http://www.siliconimage.com/products/category.aspx?cid=27&fid=1
The DVI data channel operates at a bit-rate multiple of 10 times the frequency of the clock signal. In other words, for every DVI clock there are 10 bits provided on each of the three data channels.
The data is encoded using a standard 8b/10b encoding to provide a minimum transition density in which there are no more than five consecutive bits of the same value, which is necessary to provide reference edges for clock/data recovery circuits.
As indicated in version 1.0 of the specification, the clock rate is the same as the pixel rate plus framing overhead, while there are usually 24 bits per pixel.
For example, a (640 × 480) @ 60·Hz display has a pixel rate of 18.4·MHz (plus blanking overhead) so this is the minimum needed clock.
·But the data is actually (640 × 480) @ 60·Hz × 24 bits per pixel which is 442·Mbit/s, or 147·Mbit/s per channel.
Include TMDS overhead and you need a 184·Mbit/s data stream on each of the three data channels.
Post Edited (tonyp12) : 9/27/2009 3:48:00 PM GMT
I've just dropped down to 16-bits to see if I can go to 1280x720 using 6 cogs... Also, I want to see if I can use the extra pins to interface sram chips for frame buffers...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm