VGA Character Display - uses only 2.6KB
cgracey
Posts: 14,206
Here is a fast and memory-efficient VGA character display. Unlike tv_terminal, this uses only 1 COG and does not need to maintain a whole bitmap. It only needs·one word for each character on the display. It uses the Propeller's internal font. This should be handy for debugging.
You can send data to it like a terminal and it will wrap around and scroll. It also has a customizable palette which can be programmed to use any of the 64 possible VGA colors for different foregrounds and backgrounds. Also, there's row and column positioning so that you can control where something gets printed if you need to. There's also decimal, hex, and binary printing, along with strings and characters.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
Post Edited (Chip Gracey (Parallax)) : 5/17/2006 9:47:02 AM GMT
You can send data to it like a terminal and it will wrap around and scroll. It also has a customizable palette which can be programmed to use any of the 64 possible VGA colors for different foregrounds and backgrounds. Also, there's row and column positioning so that you can control where something gets printed if you need to. There's also decimal, hex, and binary printing, along with strings and characters.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
Post Edited (Chip Gracey (Parallax)) : 5/17/2006 9:47:02 AM GMT
Comments
Does Parallax·is considering·to sell a decent VGA display size say, 5.7 inches?
I will subscribe to one.
Makes me wonder why I have spent so much time developing my own GPU when I can get one for $25...lol
cbmeeks
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Metroid Classic:
http://metroidclassic.com
Metroid Forums:
http://eblarg.com/bbs/mc
=========
DMCA Sucks
RIAA Sucks
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
1+1=10
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Who says you have to have knowledge to use it?
I've killed a fly with my bare mind.
Chip Gracey
Parallax, Inc.
Next up... keyboard (as soon as I get my ps/2 jacks...) [noparse]:)[/noparse]
(For now, I'm gonna play with the vga_text and add a box w/ color and highlight overlay and memory (so it will replace the text under it when it's done... heck, this is better then VBDOS (Which I still have and use....)... just need some forms stuff and it's a good to go thing...
Come to think of it, the programming and the looks and feel of the vga terminal... it is very much like vbdos...
Hmmmmmm...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Just tossing my two bits worth into the bit bucket
KK
·
1) Wouldn't have thought it was possible.
2) Got it to work without to much difficulty.
Next: What about backspacing? I see that vga_text.spin has a backspace function. Just got to figure out how to get the keyboard to work it....
Attached is the simple program using Chip's vga_text.spin and vga.spin programs
(Note: cpin and dpin are not the same as on the demo board.)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
I added a mouse and cursor with display of·it's x , y locations and the word data of the screen[noparse][[/noparse] ] memory.
I would like to improve the indication of the mouse/cursor location but I don't understand the bit pattern calculations
vga_text_PY.spin
· PUB print(c)
·· · screen[noparse][[/noparse]row * cols + col] := (color << 1 + c & 1) << 10 + $200 + c & $FE
' idealy I would invert foreground and/or background color to indicate cursor position· if I understood the bit positions i could xor them.
Phillip Y.