Minimal TV or VGA pins
Toby Seckshund
Posts: 2,027
I wonder if there has been any work done on the absolute minimum number of output pins tha are required to get basic black and white pics?
I realize that sync outputs would leave it at 2 for tv and 2(?) probably 4 for vga.
I am trying to bolt a Z80 with ram onto the side of a prop (Nascom dream) and would like to start with max free pins. Black and white would be in keeping too!
(Please be kind too my probable ignorance)
Toby Seckshund.
I realize that sync outputs would leave it at 2 for tv and 2(?) probably 4 for vga.
I am trying to bolt a Z80 with ram onto the side of a prop (Nascom dream) and would like to start with max free pins. Black and white would be in keeping too!
(Please be kind too my probable ignorance)
Toby Seckshund.
Comments
H, V and Video. Drive R, G and B from the Video pin via 3 x 150R resistors.
I am trying to nail a Z80 to a prop doing a ULA sort of thing and wanted to keep all pins available for my enevitable lack of thinking here at the start.
I have started by a very basic multiplex of the data and addr and will try to use the /busack etc to DMA.
I know I could use Triblade or its original i8080 but I am determined to get down to learning myself, instead of using other peoples good work and wishing it actually did what I wanted.
A couple of pins for a debug screen and eventually the 48x16 real screen would be required, it always seems they come in bunches of 4 pins or 8.
When the pin is floating, both /hsync and /csync will be high. When driven low, /vsync will be low; when driven high, /hsync will be low. You will need to use XOR gates that can source at least 15mA at 3V.
-Phil
_
Post Edited (Phil Pilgrim (PhiPi)) : 4/4/2009 8:59:47 PM GMT
One solution, tried and true, is a N8VEM Z80 CP/M board talking via standard RS232 to a PockeTerm propeller vga/keyboard board.
This uses serial, and of course this is slow. Loading a 30k program via serial at 38400 baud is about 100x slower than loading it via parallel from a 'ram disk'.
So if you want to connect the two together, the very best solution is to use 16 address lines, 8 data lines and some handshaking lines. Unfortunately, this leaves you with hardly any propeller pins left.
Then there are compromise solutions. You could use an 8 bit 'data bus' between the two, plus maybe a couple of handshaking lines. You could latch the data out into an octal latch eg an HC373 from the Z80. The propeller can latch a byte out directly. You *might* be able to trap an OUT on the Z80 lines by the propeller directly as the prop is running 20x faster than the Z80. But a latch would be more robust. Then perhaps some 245 bidirectional bus transceivers to control the direction. I'd probably go for this sort of 10 line compromise, as it leaves enough prop pins free to do vga/keyboard/serial, ie the clever stuff a prop can do, but still gives you fairly fast parallel data transfer to the Z80.
How far along are you with a schematic etc?
White is logic high; sync, logic low; blank level, CTRB programmed for DUTY mode with FRQB set to $4924_0000. The advantage of this over tri-stating for the blanking level is that the Propeller's video generator can be used to generate the visible stuff while CTRB is active. When the video output is high, it's ORed with the DUTY output to yield a high; when low, the DUTY-mode value takes over. CTRB is simply turned off during the syncs, which has to be handled in software.
The resistor values have an output impedance of 75 ohms and will drive a 75-ohm load at 1V P-P. The cap is there to filter the DUTY doody.
-Phil
_
If it involves another chip, in my opinion it may as well be another prop with all the benefits it has, and just communicate over 2 pins at 14Mbps.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, SixBladeProp, website (Multiple propeller pcbs)
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Airspace V - international hangar flying!
www.airspace-v.com/ggadgets for tools & toys
I have done much as you say hc573's hc245 and a few glue gates. Only one 32k sram so far as I seem to have a load of "pulls" (even a 6116, I tremember going green with envy when a mate got some of those back in the early 80@'s.
If it is not a total whast of space I'll try to get it out
·
-Phil
Your output series resistors are 150R whereas the prop circuits use 240R for H & V sync. I presume the value is not that critical ???
For the composite 1-pin video, what would be your suggestions if 2 pins were available?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
240R is actually closer to the mark for all the resistors (including the RGB outputs). I had mistakenly assumed that the output level into a 75R load should be 1V P-P when, in fact, the specs call for 0.7V P-P. Neither value provides the correct 75R source impedance, though. To do that you'd have to combine a series resistor (of a different value) with a resistor to ground. But for short cables, it seems not to matter.
BTW, good catch with the buffers and inverters!
-Phil
I am using your concept in an upcoming project and I already require an inverter. I did not want to use a 74xx86 exclusive or so I was working out the truth table and discovered it was only an inverter and buffer. I thought it worthwhile posting.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Just make sure that the inverters you use can source enough current to drive a 75-ohm load adequately, if necessary. I've even seen HYSYNC and VSYNC driver circuits that completely omit the series resistors from logic gate outputs, along with docs that claim the sync outputs need to be TTL compatible. Also, bear in mind that your RGB output pin needs to source about 30mA to drive all three VGA color inputs.
-Phil
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
What electronics need - MORE POWER!!!!!!!
The old calculation code is still there but commented out. If you want to run this to get the parameters calculated for a different size/clock, then you will need to temorarily·comment out half the fonts for space. I am working on doing the calcs in spin (if required).
I have found that 270R is a brighter display. The code is set to use pin 14 which lines up with the 270R. It is fine to test with an existing TV circuit.
I would appreciate any feedback regarding how it displays on various monitors/TVs.
Original 1-pin TV by Eric Ball http://forums.parallax.com/showthread.php?p=862419· (thread appears to have lost it's subject)
My 1-pin Keyboard thread http://forums.parallax.com/showthread.php?p=862504
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
· Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz
Post Edited (Cluso99) : 2/19/2010 2:49:39 AM GMT
Note ochrev is not calculated nor required. I will remove the definition from the 1-pin TV code next update.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
· Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz
One Pin TV Text driver· http://forums.parallax.com/showthread.php?p=822453
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
· Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz