AITech PSC1106 Mini-HOWTO

Introduction

This file is by Peter Caffin. Its home is http://it.net.au/~pc/comp/linux/psc1106.html. Last update was on May 28th 1999.

I'm planning on submitting this HOWTO to the Linux Documentation Project once all the bugs are completely gone (it's getting close now). Until then, I'd like to keep it on one system only. No mirroring, okay.

I cannot and will not guarantee that using the information on this page won't cause burnt out system components. It's unlikely, but, I'll make no guarantees. AITech's site has useful specs and hardware info.

Note that AITech International does not support its products under Linux, officially or otherwise. Don't hassle them about it. They were very supportive of the idea of having their product working under Linux, even if they didn't have time to spend on it themselves. Contrast this approach with the evil Logitech after they took over from Connectix in making the Quickcam.

Also note that I'm not on AITech's payroll (not even freebies), so any email I get on this will be responded to if/when I get time.

PSC1106: a general description

The PSC1106 by AITech is a portable VGA to TV converter. Essentially, you plug one of these into your VGA card's output port instead of a monitor cable. From there you attach it to an RF Modulator and then attach the RF Modulator to your television.

The easiest RF Modulator to get hold of is the one set as "Aux" in either a video cassette recorder or in a late-model television set.

  .-----.         .---------.        .----.
  | VCR +-aux-----| PSC1106 |----vga-+ PC |
  `--+--'         `---------'        `----'
     |        .----.                       
     +-aerial-| TV |
              `----'

Another option is to use an RGB monitor (essentially, it's an RF Modulator and display tube all in one). The RGB monitors in Australia are all PAL system compatible, so go for this if you can. I'm not sure what the situation is for other countries.

  .-----.         .---------.        .----.
  | RGB +-coax----| PSC1106 |----vga-+ PC |
  `-----'         `---------'        `----'

I have tested the settings for PAL on both an RGB monitor (much like an RF Modulator and display tube all in one) and with a PAL TV and VCR combination. All text mode resolutions are readable on both of these setups. Brian F. Hensch (bhensch@deskmedia.com) has tested some X11 settings, but, isn't all that interested in text mode Linux with the device.

AITech indicate that there are similarities in the specs of the PSC1106 and:

Let me know if you have success or failure with this file on any of the above hardware.

What's the quality of the screen image? The fuzziness really depends on the size and quality of your TV set. Older colour sets give the worst results (anything more than 80x43 text resolution is illegible). New colour sets are okay up to 80x50. Black & White sets and RGB monitors provide legible results at 80x60 text res. If all you want is legibility and you're happy to sacrifice colour, then B&W TV's will provide the best results when displaying to an audience.

Flicker rate is acceptable and only noticable if you're looking especially for it :). Flicker and fuzziness in X are the same as when using SVGATextMode (ie, the app that lets you tweak that text mode).

A word of warning with regard to use of the AITech converters under Linux for those with NTSC. NTSC does not have enough scan-lines to give a full picture at 640x480. AITech's drivers under MS DOS and MS Windows work by resizing the visible screen dimensions.

  .--------------------.    .--------------------.
  | PAL (640x535 max)  |    | NTSC (640x440 max) |
  |                    |    |                    |
  |                    |    |                    |
  |                    |    |                    |
  |                    |    |                    |
  |                    |    |                    |
  |                    |    `--------------------'
  `--------------------' 

A description of which TV formats are used in which countries is at http://www.cdireland.com/video_standards.htm.

Technically, PAL maximum resolution has 625 lines at 25 frames per second. Note that PAL is completely different to PAL-M. NTSC has 525 lines at 30 frames per second. Most televisions produced prior to the very late 1990s do not show the full screen width.

A number of lines in PAL and NTSC are commonly used for encoding simple info services. These are a bit like early BBSes which are available with a suitable decoder, often incorporated into the TV. They are also often used for encoding subtitles for the hearing-impaired.

System settings

Text Mode

The PSC1106 has working DOS and Windows drivers, but nothing for Unix. And they're loathe to distribute their source code. So, other solutions must be found. Luckily, this is possible using SVGATextMode. To get this package, go to Koen Gadeyne's site at http://www.ccc.nottingham.ac.uk/~etzpc/stm.html.

Settings for the PAL system are not likely to work for NTSC. PAL uses a scan rate of ~50 Hz while NTSC apparently uses a scan rate of ~60 Hz. My approach at getting the initial modelines was simply to use the DOS drivers to set the PSC1106 and then use the DOS version of SVGATextMode's grabmode to capture the correct settings.

Your /etc/TextConfig file should contain one of the following "sets":

  "p80x25" 28.054 640 672 768 808 400 502 508 625 -Hsync +Vsync font 9x16 # first set PAL
  "p80x43" 25.069 640 672 768 808 344 482 488 625 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 672 768 808 400 502 508 625 -Hsync +Vsync font 9x8
  "p80x60" 25.071 640 672 768 808 480 540 546 625 -Hsync -Vsync font 8x8
 
  "p80x25" 28.054 640 680 776 808 400 502 508 625 -Hsync +Vsync font 9x16 # second set PAL
  "p80x43" 25.069 640 680 776 808 344 482 488 625 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 680 776 808 400 502 508 625 -Hsync +Vsync font 9x8
  "p80x60" 25.071 640 680 776 808 480 540 546 625 -Hsync -Vsync font 8x8
 
  "p80x25" 28.054 640 688 784 808 400 502 508 625 -Hsync +Vsync font 9x16 # third set PAL
  "p80x43" 25.069 640 688 784 808 344 482 488 625 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 688 784 808 400 502 508 625 -Hsync +Vsync font 9x8
  "p80x60" 25.071 640 688 784 808 480 540 546 625 -Hsync -Vsync font 8x8
 
  "p80x25" 28.054 640 696 792 808 400 502 508 625 -Hsync +Vsync font 9x16 # fourth set PAL
  "p80x43" 25.069 640 696 792 808 344 482 488 625 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 696 792 808 400 502 508 625 -Hsync +Vsync font 9x8
  "p80x60" 25.071 640 696 792 808 480 540 546 625 -Hsync -Vsync font 8x8

  "p80x25" 25.069 640 672 768 800 350 430 438 525 +Hsync -Vsync font 8x14 # first set NTSC
  "p80x43" 25.069 640 672 768 800 344 430 438 525 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 672 768 800 400 452 460 525 +Hsync -Vsync font 9x8
  "p80x60" 25.071 640 672 768 800 480 498 506 525 -Hsync -Vsync font 8x8

  "p80x25" 25.069 640 680 776 800 350 430 438 525 +Hsync -Vsync font 8x14 # second set NTSC
  "p80x43" 25.069 640 680 776 800 344 430 438 525 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 680 776 800 400 452 460 525 +Hsync -Vsync font 9x8
  "p80x60" 25.071 640 680 776 800 480 498 506 525 -Hsync -Vsync font 8x8

  "p80x25" 25.069 640 688 784 800 350 430 438 525 +Hsync -Vsync font 8x14 # third set NTSC
  "p80x43" 25.069 640 688 784 800 344 430 438 525 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 688 784 800 400 452 460 525 +Hsync -Vsync font 9x8
  "p80x60" 25.071 640 688 784 800 480 498 506 525 -Hsync -Vsync font 8x8

  "p80x25" 25.069 640 696 792 800 350 430 438 525 +Hsync -Vsync font 8x14 # fourth set NTSC
  "p80x43" 25.069 640 696 792 800 344 430 438 525 +Hsync -Vsync font 8x8
  "p80x50" 28.054 640 696 792 800 400 452 460 525 +Hsync -Vsync font 9x8
  "p80x60" 25.071 640 696 792 800 480 498 506 525 -Hsync -Vsync font 8x8

The sets are arranged from "right" (first set) to "left" (fourth set). Use only one of the sets and only use a set which matches your television type.

Play around with each of them until you get the one which works best with your TV. I use the second set of PAL modes and it looks nice (though the higher resolutions don't transfer that well with colour televisions; works well with B&W TV and RGB monitors though).

Note that the NTSC settings are extremely experimental. Please let me know if they work or don't. If this paragraph exists in a recent document, it means nobody has emailed me. Be the first.

X Window System

Set up your XFConfig file to include your VGA card. Replace the modeline selections that may exist in your XFConfig file with the new settings.

Settings for PAL:

   Modeline "640x535" 25.07  640 672 768 808 535 550 556 625 -hsync -vsync
   Modeline "640x480" 25.18 640 660 756 796 480 540 546 625 -hsync -vsync

Then ensure you have a line which reads Modes "640x535" "640x480" in SubSection "Display". Both settings for PAL has been tested on my PAL TV (in fact, I'm using it to edit this file now).

Some monitors might not like 640x535 mode so, if you're using a monitor along side your PAL set, be careful.

Settings for NTSC, provided by Brian F. Hensch (bhensch@deskmedia.com):

   Modeline "600x440" 25.175 600 660 756 800 440 471 473 525
Brian writes: "I'm using the PSC1106 on my Linux machine with a Trident TGUI9440AGI, with a 600x440 resolution as a suggestion I took from AI-Tech's web site. This resolution seems to limit the edge clipping on the NTSC TVs."

SVGALib

I personally don't recommend using SVGALib applications with PSC1106 devices. Depending on what card you're running, SVGALib will either mangle your modeline settings or ignore them completely. It's extremely hit-and-miss and most games also have their X11 counterparts these days.

SVGALib also has a tendency to crash, leaving a crunched video mode. Running stm without parametres will often reset this. Beware the dreaded blank screen (which can only be reset by shutting down and restarting).

That said, if you really really want to try working with SVGALib, edit /etc/vga/libvga.config. Hopefully your SVGA card will be handled. If not, try to find out if your card is "backwards compatible" with the cards listed. Worth trying if you're not sure are: Trident, Oak and S3. Chipset VGA is, ahem, a bit more generic than even these.

These are the working settings I've managed to get working so far:

   "640x350" 25.071 640 664 760 808 350 482 488 625 +Hsync -Vsync # Working PAL settings
   "640x400" 25.071 640 664 760 808 400 502 508 625 -Hsync +Vsync  
   "640x480" 25.071 640 664 760 808 480 540 546 625 -Hsync -Vsync  

   "640x350" 25.071 640 680 776 800 350 430 438 525 +Hsync -Vsync # Working NTSC settings
   "640x400" 25.071 640 680 776 800 400 452 460 525 -Hsync +Vsync  
   "640x480" 25.071 640 680 776 800 480 498 506 525 -Hsync -Vsync 

The following settings work as X Window modelines but are rejected by SVGALib because they use clocks (DCL) under 16.25.

   "320x200" 9.24   320 336 434 536 200 230 231 266 doublescan    # 'Dud' PAL settings
   "320x400" 12.535 320 344 512 400 400 502 508 625 -Hsync +Vsync 

   "320x400" 12.536 320 344 512 400 400 452 460 525 -Hsync +Vsync # 'Dud' NTSC setting

They ought to work if you edit the source code for SVGALib and disable the check procedure mentioning 16.25 (comment out the checking procedure with /* and */) and recompile. I haven't tested this, but, it seemed a reasonable suggestion when I saw it on Usenet (thanks to whoever it was -- I've misplaced your name/address).

If the idea of editing source code frightens you, forget I mentioned it ;).


it.net.au/~pc | mailto: