VDC VGA Mania by Akronyme Analogiker
: : |-----------------------------------------------------------------------| | Akronyme Analogiker - We try to fail better! ........................ | |-----------------------------------------------------------------------| | VDC VGA Mania | |-----------------------------------------------------------------------| : : PRODUCT NAME : ............................................ VDC VGA Mania GROUP : ...................................... Akronyme Analogiker PLATFORM : ..... Commodore 128 (64K VDC-RAM needed for graphic modes) RELEASE DATE : ........................................... Sep, 21nd 2013 CODE : .............................................. Tokra, Mike : : |-----------------------------------------------------------------------| : : SUCCESSFULLY TESTED ON: .......................................... C128 with 64K expanded VDC-RAM ........................................ Richard42's RGBI->RGBA converter ................................... simple 9-pin RGBI to 15-pin VGA cable .............................................. two different VGA-monitors DESCRIPTION: A small presentation of how the VDC-chip can be put in a VGA-compatible mode of nearly 31.5kHz and 60Hz: - adjustable text-mode (up to 50 chars in full color) - slideshows of possible graphic modes: -- 320x480 8x2 color resolution -- 360x480 8x3 color resolution -- 400x480 monochrome Converters and sources are included. INSTRUCTIONS: Just run "vdc vga mania" to start. You will be asked to connect a VGA-monitor to the RGB-out of your C128. The VDC will then go into a 50x25 text-mode that you can adjust to your needs and likes. Because of the higher horizontal frequency about 50 chars is the maximum width that's possible to display. If you try to higher the VDC will not keep up and the screen will look garbled. You can squeeze out a few more chars if you go to monochrome mode, but I found 50 to be the highest stable and sensible text-resolution. The slideshows will show two pictures each, the first one being the same for each mode, so you can compare quality between the different resolutions. The higher the color resolution is, the less width is possibe again because of the VDC needing to keep up with the display. You can adjust the picture position with the cursor keys. The converters for the color graphics work on the PC and expect a .ppm (Portable Pixel Map)-file to convert in exactly the right resolution named 'input.ppm' - it then produces some files which can be read by the appropriate -view BASIC-application on the C128. The converter for the monochrome 400x480 mode is a simple BASIC-program which expects a .pgm (Portable Graymap)-file. I suggest using this one in VICE and warp-mode. TECHNICAL INFO: The idea for this small demo came out of a discussion on the commodore128.org-forum about connecting the C128 to a VGA-monitor in the 80-column mode which the VDC chip produces: http://www.commodore128.org/index.php?topic=3877 The C128 in 80-column-mode puts out a signal that is pretty much like the old CGA of early IBM PCs. You have a horizontal frequency of about 15.7kHz and a vertical frequency of 60Hz for NTSC and 50Hz for PAL making it possible to display such a signal on a TV relatively easily as well. Also, the signal is digital (RGBI). You have 8 colors with (RGB) with intensity (I) either turned on or off for a total of 16 colors. Now, VGA has horizontal frequency of 31.5 kHz (roughly twice as much as the C128) and colors are analog RGB. To be able to display a C128's signal on VGA you need to double the horizontal frequency as well as convert the 16 digital colors to analog values. The frequency doubling is usually done by a line-doubler like the GBS-8220. This uses digital signal processing to create a completely new picture out of the data it receives. The color-conversion from digital RGBI to analog RGB can be done in several ways. The easiest solution is to just connect the R, G and B like with this cable: http://www.ambery.com/db9todbadca.html You get only 8 out of 16 colors this way and the signal levels will be way to high (RGBI uses 5V-levels, while VGA uses 0.7V). While this works for a first test this is obviously not the desired solution. An easy and cheap enough solution is a small resistor-network of which several layouts can be found around the internet. A very good explanation can be found at Hydrophilic's site: https://sites.google.com/site/h2obsession/CBM/C128/rgbi-to-vga This way you get 16 colors, although you get the color dark-yellow instead of brown. The color brown is a special case, you can read about that in Wikipedia: http://en.wikipedia.org/wiki/Color_Graphics_Adapter#With_an_RGBI_monitor The most elegant RGBI->RGBA conversion I have seen yet was provided by Richard42 in the commodore128.org-forum. This also includes a fix for the color brown. Read more about this in the forum-thread mentioned at the start. Now, to get back to what this program actually does: It alleviates the need for the digital signal-processing or line doubler (for which you would need the GBS-8220) by putting the VDC into a mode of nearly 31.5kHz and 60Hz which VGA-monitors will recognize. While you still need the conversion of the color from digital to analog, the VDC-chip will actually provide the signal that is displayed on the VGA-monitor. : : |-----------------------------------------------------------------------| : : SPECIAL THANKS TO : ................................................ Mike (for his brilliant as ever graphics converters) MORE THANKS TO : ................................. Richard42, Hydrophilic GREETINGS TO: The members of the Commodore128.org-forum Tokra, signing off, Sep, 21st 2013... Contact: tokra@tokra.de
[ back to the prod ]