I think I can shed a little light on the issue, it's your monitor. The first video drivers availible use non-standard screen dimensions. CRT monitors will take whatever you throw at them and do a decent job at displaying it. LCD screens are another matter, depending on the manufacturer and somewhat on the cost of the monitor, it may not be able to display anything that isn't a standard pair of dimensions. As JT has discovered, Chip's later drivers are standard dimensions so they should work, Chip used a cheap 15" LCD monitor to develop the newer drivers.
And as an aside, the NTSC driver with sprites and tiles that I wrote "HEL_Engine*.spin", I tried it on 50 plus tvs, lcds, plasmas, and more, so if you want tile graphics and a few sprites that driver WILL work on anythnig. But, since its single cog, its only 160x190, if I recal with 4-8 sprites. But, if you don't need high resolution VGA, that's a good driver especially since it has sprites.
The other higher performance drivers written by the demo coders for NTSC will work as well with tweaks, but the programmers didn't have the resource of hundreds of tv's to choose from like I did to test. So like Paul says, the LCD/Plasma displays are VERY finicky about timing and dimensions. So regardless, if you are going to deploy an app with propeller powered graphics, TEST it out, otherwise people will have trouble running it on certain displays. For example, I had the NTSC driver working on 10 sets here perfectly, but I finally found a couple it work work well on. One didn't give me color, the other simply wouldn't sync. But, by making it work on those thru trial and error and parameterization testing, not only did I get it to work, but then all kinds of plasma, and HD tvs, WEGAs etc. that had trouble worked. The thing to remember is this is SOFTWARE based video more or less, the hardware serializes data for us, but the timing is up to us, so we have to be careful [noparse]:)[/noparse]
I expected to do a lot of "fiddling" to get output on the VGA monitor - no problem with that. Actually, that is
kind of the fun part of the old-fashioned hacking. I have been reading The Book all along, but I am still not
sure of which parameters I should be fooling with.
There are a lot of VGA programs, parts and pieces but I am not sure which ones fall into which categories
right now. I downloaded everything mentioned in the forum, tried all of them on this el cheapo VGA monitor
(actually two of them) and the only display I ever got was "Out of Range" on two programs. All the others
didn't even change the little activity light in the on/off button.
If someone could mention the particular variables I should mess with or even provide some actual values
that they found to work, I would be most grateful. In the meantime, I will continue to plow ahead until I can
get something to display on the monitor, even if it is only a line, a dot or cursor. From that point on, I can
make progress.
Fred2,
I had to dig my hydra out of the closet to check this ( I almost put it in the round file cabinet). I ran the·RGW VGW· VGA Demo , It just displays color but seems to work ok.
Brian
PS - Your not going to be able to use any of the propeller code thats not made for the Hydra· unless you change the clock , vga ,keyboard and mouse setups.
Post Edited (Brian Beckius) : 1/30/2007 3:16:23 AM GMT
I can't find RGW VGA Demo on the CD -- perhaps you mean RGW VGA Test?
I loaded RGW VGA Test and ran it -- I get a message "Out of Range" on the VGA monitor. At least I
get some indication that the monitor is getting something. All the other VGA programs get zilch.
The chapter on Cog Video Hardware indicates that Counter A in PLL mode 1 is the frequency base
for VGA output. If the monitor says what it is receiving is "Out of Range", then perhaps fiddling with
that setting could bring about an acceptable signal, huh? The text says to set counter A to PLL mode
and place the proper value into the freq register but it doesn't seem clear to me just how to do that.
What is the proper value and how do you place it in the freq register?
Anyway, I have printed out RGA_VGA_Test and VGA_drv_010 and will study those against the COG
Video Hardware chapter. Perhaps it will become clear where the modifications could be done.
Or perhaps someone could give me a jump start with some directed changes. This old head is
getting sort of worn out after a good many years....
Fred2,
Yes it was RGW VGA test ,I was using a old vga monitor not a lcd . I do remember Chip saying somthing about lcd monitors being fussy, I was trying to find that post but couldn't .
Fred,
Same results, except my monitor says "mode not supported" , I don't even want to tell you the things I'm thinking about typing right now , but I'll bite my finger . Don't get me wrong , I love everything I've ever bought from Parallax .But from what I've seen Parallax employees work 26 hours a day and some of there suppliers work 8 hour days. I'll try to convert one of the propeller demo's to the hydra tonight , I know they work on my lcd.
Brian
PS. Other hand was still free :-)
Post Edited (Brian Beckius) : 1/30/2007 1:38:38 PM GMT
On your suggestion, I have been working with VGA Test and finally! I got some results.
By fiddling with _xinfreq, trying different values, I finally got success with _xinfreq = 12_000_000.
The display looks beautiful, and I think this may start me on the road to my goal.
I tried reading the Cog Video Hardware chapter again and again and I think that helped a lot, too.
I am certainly in your debt for the suggestion -- don't bite off any more fingers...
I had been searching the assembler code to find where the ctra gets a value. Tried
a lot of values but no results. Your adaptation works wonderfully -- I'm thinking of
doing a scan-compare to find your conversion values -or- could you list them if it
isn't too much trouble. At last, I seem to be making some progress........
All I did was port this from demo board to the Hydra where I just changed it from 5mhz to 10mhz crystal and reassigned which pins were connected to the VGA.· I didn't look at the source beyond that to see how it worked.
A local customer here in OZ (A experienced the follwoing.
No output at all on Compsite video output and also not working to VGA monitor.
He found that removing the crystal and re inserting he got the composite video to work..
Still has an issue with the VGA but probably this is related to some issues that we have read here in the forum.
Has anubody else experienced the crystal issue as mentioned ???
Any cluse to why the VGA still does not work ??
The crystal can get loose due to shipping, so its always a good idea to give the propeller a good press as well as the xtal. As far as the VGA, he needs to use the version of code from the book with the correct VGA port, or change the VGA port bits to the hydra's if they are different. And of course have the VGA enable switch next to the left of the cart port as mike mentioned set to ON.
Got FemtoBasic running on my Hydra - wonderful! Now I would like to find out how to attach
an SD card to the unit. When I type "files", I get the message "Can't mount SD card". Of course,
there is no SD card there. However, the only external connector I see is for the game cartridge,
so I assume there must be an adapter to fit the SD card to it, huh?
The source code for FemtoBasic is also a wonderful tutorial for spin routines as well. A great
model to emulate!
Towards the bottom of the "FemtoBasic Notes" file, there's a comment:
"In the case of the Demo Board, you just have to wire 6 of the SD card pins to +3.3V-Vcc, Gnd-Gnd, DO-I/OPin0, Clk-I/OPin1, DI-I/OPin2, CS-I/OPin3. In the case of the Hydra, you'll have to use a memory expansion or I/O expansion card and wire up a cable (I used the two ends of a 3-pin servo cable and cut it in half) with +3.3V-33VCC, Gnd-Gnd, DO-I/O_0, Clk-I/O_1, DI-I/O_2, CS-I/O_3."
fred2 said...
By fiddling with _xinfreq, trying different values, I finally got success with _xinfreq = 12_000_000.
The display looks beautiful, and I think this may start me on the road to my goal.
I have a cheap LCD monitor that can take pretty much anything - provided the horizontal/line and vertical/field frequencies are between 30-60kHz and 50-75Hz respectively (so not that much really). With those VGA demos, the refresh rate (vertical frequency) is >90, causing "Out Of Range" every time.
I'm guessing increasing _xinfreq above the actual oscillators value 'underclocks' the Propeller, which would reduce the refresh rate, however it might also mess up other objects with precise timing (maybe?). vga_drv_010 includes parameters for messing with its speed (tick rate?); dropping vga_rate from 16_000_000 to, say, 12_000_000 also reduces the refresh rate, hopefully without affecting anything else.
Playing with the 'sync' and 'porch' pixel values, I could move the display around the screen - which worked a lot better than trying to use the monitor's controls, although very easy to mess up!
I still have not been able to get a proper display on many of the demo programs, they all
seem to break with about 2/3 of the page on the left, a space, and the 1/3 on the right. Some
work alright, usually the text programs like Basic, but graphics hardly ever.
Some break horizontally also and display from about the third or fourth line at the top of
the screen. This seems kind of obvious that it is a problem mostly with the monitor screen.
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/27/2007 2:36:18 AM GMT
The other higher performance drivers written by the demo coders for NTSC will work as well with tweaks, but the programmers didn't have the resource of hundreds of tv's to choose from like I did to test. So like Paul says, the LCD/Plasma displays are VERY finicky about timing and dimensions. So regardless, if you are going to deploy an app with propeller powered graphics, TEST it out, otherwise people will have trouble running it on certain displays. For example, I had the NTSC driver working on 10 sets here perfectly, but I finally found a couple it work work well on. One didn't give me color, the other simply wouldn't sync. But, by making it work on those thru trial and error and parameterization testing, not only did I get it to work, but then all kinds of plasma, and HD tvs, WEGAs etc. that had trouble worked. The thing to remember is this is SOFTWARE based video more or less, the hardware serializes data for us, but the timing is up to us, so we have to be careful [noparse]:)[/noparse]
Andre'
kind of the fun part of the old-fashioned hacking. I have been reading The Book all along, but I am still not
sure of which parameters I should be fooling with.
There are a lot of VGA programs, parts and pieces but I am not sure which ones fall into which categories
right now. I downloaded everything mentioned in the forum, tried all of them on this el cheapo VGA monitor
(actually two of them) and the only display I ever got was "Out of Range" on two programs. All the others
didn't even change the little activity light in the on/off button.
If someone could mention the particular variables I should mess with or even provide some actual values
that they found to work, I would be most grateful. In the meantime, I will continue to plow ahead until I can
get something to display on the monitor, even if it is only a line, a dot or cursor. From that point on, I can
make progress.
Thanks for the responses!
Fred2
get any VGA output.· I see a program called VGA_hires_txt.spin mentioned quite
often but after searching pretty thoroughly, I can't find it available anywhere.
Could I possibly use this one on my HYDRA?· And where can I obtain it?
I am desperate to get something displayed on my VGA monitor....
Fred2
I had to dig my hydra out of the closet to check this ( I almost put it in the round file cabinet). I ran the·RGW VGW· VGA Demo , It just displays color but seems to work ok.
Brian
PS - Your not going to be able to use any of the propeller code thats not made for the Hydra· unless you change the clock , vga ,keyboard and mouse setups.
Post Edited (Brian Beckius) : 1/30/2007 3:16:23 AM GMT
I can't find RGW VGA Demo on the CD -- perhaps you mean RGW VGA Test?
I loaded RGW VGA Test and ran it -- I get a message "Out of Range" on the VGA monitor. At least I
get some indication that the monitor is getting something. All the other VGA programs get zilch.
The chapter on Cog Video Hardware indicates that Counter A in PLL mode 1 is the frequency base
for VGA output. If the monitor says what it is receiving is "Out of Range", then perhaps fiddling with
that setting could bring about an acceptable signal, huh? The text says to set counter A to PLL mode
and place the proper value into the freq register but it doesn't seem clear to me just how to do that.
What is the proper value and how do you place it in the freq register?
Anyway, I have printed out RGA_VGA_Test and VGA_drv_010 and will study those against the COG
Video Hardware chapter. Perhaps it will become clear where the modifications could be done.
Or perhaps someone could give me a jump start with some directed changes. This old head is
getting sort of worn out after a good many years....
Fred2
Yes it was RGW VGA test ,I was using a old vga monitor not a lcd . I do remember Chip saying somthing about lcd monitors being fussy, I was trying to find that post but couldn't .
Brian
Ps I'll try it on my lcd after I post this.
Same results, except my monitor says "mode not supported" , I don't even want to tell you the things I'm thinking about typing right now , but I'll bite my finger . Don't get me wrong , I love everything I've ever bought from Parallax .But from what I've seen Parallax employees work 26 hours a day and some of there suppliers work 8 hour days. I'll try to convert one of the propeller demo's to the hydra tonight , I know they work on my lcd.
Brian
PS. Other hand was still free :-)
Post Edited (Brian Beckius) : 1/30/2007 1:38:38 PM GMT
On your suggestion, I have been working with VGA Test and finally! I got some results.
By fiddling with _xinfreq, trying different values, I finally got success with _xinfreq = 12_000_000.
The display looks beautiful, and I think this may start me on the road to my goal.
I tried reading the Cog Video Hardware chapter again and again and I think that helped a lot, too.
I am certainly in your debt for the suggestion -- don't bite off any more fingers...
Fred2
It works beautifuly...
I had been searching the assembler code to find where the ctra gets a value. Tried
a lot of values but no results. Your adaptation works wonderfully -- I'm thinking of
doing a scan-compare to find your conversion values -or- could you list them if it
isn't too much trouble. At last, I seem to be making some progress........
Fred2
Thanks for your efforts...
Fred2
A local customer here in OZ (A experienced the follwoing.
No output at all on Compsite video output and also not working to VGA monitor.
He found that removing the crystal and re inserting he got the composite video to work..
Still has an issue with the VGA but probably this is related to some issues that we have read here in the forum.
Has anubody else experienced the crystal issue as mentioned ???
Any cluse to why the VGA still does not work ??
Ronald Nollet Australia
Andre'
data I am seeing is the actual memory data but the VGA screen is showing me the memory
address followed by 8 bytes of data.· HOORAY!
Anyway, thanks for everyone's help getting me to this point.· Now I would like to get the
maximum text display·resolution possible.· I'm not too concerned with graphics display right
now, just something that might be comparable to a Basic program screen with just text.
Is there an existing test program that has just keyboard input and output at this resolution?
fred2
Andre'
an SD card to the unit. When I type "files", I get the message "Can't mount SD card". Of course,
there is no SD card there. However, the only external connector I see is for the game cartridge,
so I assume there must be an adapter to fit the SD card to it, huh?
The source code for FemtoBasic is also a wonderful tutorial for spin routines as well. A great
model to emulate!
Fred2
"In the case of the Demo Board, you just have to wire 6 of the SD card pins to +3.3V-Vcc, Gnd-Gnd, DO-I/OPin0, Clk-I/OPin1, DI-I/OPin2, CS-I/OPin3. In the case of the Hydra, you'll have to use a memory expansion or I/O expansion card and wire up a cable (I used the two ends of a 3-pin servo cable and cut it in half) with +3.3V-33VCC, Gnd-Gnd, DO-I/O_0, Clk-I/O_1, DI-I/O_2, CS-I/O_3."
You'll have to make your own adapter. The other end of the cable attaches to a SparkFun breakout board for an SD card socket (www.sparkfun.com/commerce/product_info.php?products_id=204).
I have a cheap LCD monitor that can take pretty much anything - provided the horizontal/line and vertical/field frequencies are between 30-60kHz and 50-75Hz respectively (so not that much really). With those VGA demos, the refresh rate (vertical frequency) is >90, causing "Out Of Range" every time.
I'm guessing increasing _xinfreq above the actual oscillators value 'underclocks' the Propeller, which would reduce the refresh rate, however it might also mess up other objects with precise timing (maybe?). vga_drv_010 includes parameters for messing with its speed (tick rate?); dropping vga_rate from 16_000_000 to, say, 12_000_000 also reduces the refresh rate, hopefully without affecting anything else.
Playing with the 'sync' and 'porch' pixel values, I could move the display around the screen - which worked a lot better than trying to use the monitor's controls, although very easy to mess up!
seem to break with about 2/3 of the page on the left, a space, and the 1/3 on the right. Some
work alright, usually the text programs like Basic, but graphics hardly ever.
Some break horizontally also and display from about the third or fourth line at the top of
the screen. This seems kind of obvious that it is a problem mostly with the monitor screen.
fred2