[POC] How far ...
kuroneko
Posts: 3,623
can one push the text resolution of a single cog VGA text driver? Colour depth and font source (RAM/ROM) are not relevant for this exercise but the driver must work at 80MHz.
- 32x15 VGA_Text (using VGA)
- 40x15 [thread=150593]full colour/paletted ROM font text driver (640x480 timing)[/thread]
- 50x18 [thread=150636]full colour ROM font text driver (800x600 timing)[/thread]
- 50xH [thread=136666]full colour RAM font text driver[/thread]
- 80xM [thread=151855]monochrome RAM font text driver[/thread]
- 100xM [thread=146085]monochrome RAM font text driver[/thread]
- ???
- 512x384 2 colour pixmap driver (64/85 columns with 8bit/6bit font), requires lots of memory, not counting font data
Comments
Doc
http://forums.parallax.com/showthread.php/129739
Andy
85 x 48 chars with a 6x8 font, or 64 x 48 chars with a 8x8 font.
But this needs a lot of memory (24kB for the bitmap alone) If 24 rows are enough then you can set the bitmap driver to 512x192 pixels, this will need only 12kB.
Andy
If not, the VGA timing Baggers used in the full color sprite tile driver linked in my sig might be interesting. It's 640x200 timing and it displays on every monitor I've tried and it does so at 640x400.
At full color, it's really tough to get it to 320 pixels. At text color depths, it should go quite a bit higher.
I really mean single cog driver which - given screen and font pointers - displays the text.
Does anyone think 100 columns (as the logical extension of 50xH) would be possible?
I'm curious now. Frankly, I think more than 640 pixels can be displayed with that timing, it's just often easy to refer to the ideal or nominal pixel count for the timing.
Re: 100 columns. I don't know. I need to look at your 50xH code and understand how it's currently doing things.
The white rectangles cover a 4 pixel block (1x waitvid), the odd pixels appear wider than the even ones. The attached archive will generate the screen the image is taken from (left, middle). The RGBY stripes have been manually added as markers.
What is the resolution of that display?
The driver is currently using about 320 hub windows for a (double) scanline and the line buffer is effectively blocked (each scanline re-reads the buffer). I had a go at scanline drivers a while back ([thread=142629]256x192[/thread], [thread=142764]400x300[/thread]). The 256x192 driver signals as 1024x768, a scanline takes about 420 hub windows and 315 of them can be reused (buffer is sampled during first scan line). Even if you reduce the scanlines to 3 (256x256) you get 315/210 which brings it into the current timing range but still allows you to re-use the scanline buffer earlier.
Driver is now available [thread=146236]over here[/thread].