Dual VIDC Enhancer

Full standards compliant VGA for the Archimedes

The Dual VIDC Enhancer has been superseded by the Ultra VIDC Enhancer.

A traditional VIDC Enhancer adds a 36MHz oscillator to an Archimedes letting it achieve the higher resolution SVGA screen modes whilst it "gets by" on the mid-sized VGA screen modes with non-standard VGA refresh rates as delivered by the on board 24MHz VIDC clock.

The design of the VIDC Enhancer I used is no different to most original third party VIDC Enhancers in this respect offering the ability to add just one extra oscillator to the Archimedes.

Unfortunately, some monitors are less forgiving than others and refuse to display the Archimedes VGA screen modes when driven from the on board 24MHz oscillator because the H-Sync and V-Sync refresh rates are 4.7% slower than they should be. This is especially true of more modern flat screen LCD/TFT monitors.

The Retro-Kit VIDC Enhancer

To complicate matters, the Archimedes can deliver several MODEs for display on a Television or 15KHz monitor. For these MODEs to work correctly when connected to a VGA monitor, they are re-mapped to similar resolutions using VGA refresh rates. This only occurs under RISC OS 3 and because the older Archimedes' use a 24MHz oscillator, the refresh rates are just outside the VGA standard for the resolution. As you can see from the photo below, it shows the refresh rates for a 720x400 resolution which should have a 31.5KHz H-Sync and 70Hz V.Sync but are both 4.7% slower than the actual VGA standard. Some monitors can handle this shortfall however the official Acorn documentation on these re-mapped MODEs indicates that they are not guaranteed to work on all monitors.

Mode 15 re-mapped to 720x400 @70Hz

The 4.7% drop in refresh rate speeds is down to the fact that the MODEs should be driven by a 25.175MHz oscillator which is simply not present in the older Archimedes models. To address this 4.7% shortfall, I thought about how I could connect two of my VIDC Enhancer boards together and I set about building a 25.175MHz version of the board to do just that. I configured the 25.175MHz board to pass through all the motherboard IC connections to the original 36MHz board I'd already installed and stacked them together with the 25.175MHz VIDC Enhancer at the bottom.

This stacked configuration delivers the missing 25.175MHz and 36MHz clock speeds that later Acorn computers have built-in together with older Archimedes that have been fitted with a Watford Electronics Super VIDC. The dual configuration also provides the Sync on Green fix having the jumper configuration on the 36MHz VIDC Enhancer board.

The VIDC Enhancer plus

Once installed, I needed a way to control both VIDC Enhancers so I modified the source code to Andreas Barth's AutoVIDC to allow it to control two VIDC Enhancer boards by controlling both Aux 1 and Aux 2 pins on the Archimedes' AuxIO header. Achieving this involved adding three new * commands to the module and defining two additional MODE lists to set the VGA MODEs to be automatically be "Enhanced" using the 25.175MHz oscillator. Andreas has kindly allowed me to distribute my updated AutoVIDC module which I'm calling AutoVIDC+ to distinguish it from Andreas' original. AutoVIDC+ is backwards compatible with the original AutoVIDC.

How AutoVIDC+ works

AutoVIDC+ defines two extra mode lists for VGA MODEs because of the special use situation for MODEs 0 to 15 and 41 to 46 when they are used with a VGA or SVGA monitor which re-maps them to similar resolution VGA screen MODE. When re-mapped these MODEs display in a letterbox fashion. In a standard Archimedes, this means the MODEs are generated from the 24MHz clock and are 4.7% slower than they should be and may not display correctly on modern monitors.

The two VGA MODE lists are used to define when the VIDC Enhancer should be enabled for standard VGA screen modes and secondly, the re-mapped modes that are only "Enhanced" when the Archimedes is connected to a VGA monitor.

Once the screen mode has been defined as requiring "Enhancement" using the 25.175MHz oscillator, the AutoVIDC module selects the correct clock signal for the MODE and allows the VIDC chip to deliver VGA compliant refresh rates.

Mode 15 re-mapped and enhanced

As you can see from the photo below, the Acorn documented "letterboxing" is present, however the height of the display is slightly greater than when the MODE is driven by the 24MHz clock.

MODE 15 remapped to a VGA compatible mode with letterboxing

Displaying VGA 640x480 8bpp @60Hz

When switching to MODEs 26 to 28, the modified AutoVIDC module selects the 25.175MHz oscillator and the Archimedes delivers a slightly sharper image at the VGA compliant refresh rate of 31.5KHz and 60Hz as can be seen in the photo's below.

Mode 28 detail

MODE 28 full

VIDC Enhanced refresh rates for VGA

Displaying VGA 800x600 4bpp @56.2Hz

Finally, when switching to MODEs 29-31, the AutoVIDC module enables the 36MHz oscillator and allows the Archimedes to drive the SVGA screen modes which are unobtainable on the older Archimedes models without the 36MHz VIDC Enhancer.

Mode 31 detail

MODE 31 full screen VIDC Enhanced 36MHz oscillator

800x600 SVGA refresh rates

Dual VIDC Enhancer Mode enhancement details

The table below shows the MODEs that the updated module automatically enhances when under software control and the VIDC board responsible for enhancing them along with the horizontal and vertical sync rates.

MODEs VIDC Enhancer
(dotclock) 
H. sync rate V. sync rate
0-15* 25.175MHz 31.5kHz 70.1Hz
26-28 25.175MHz 31.5kHz 59.9Hz
29-31 36MHz 35.1kHz 56.2Hz

The table below shows the refresh rates of the same MODEs where no VIDC Enhancers are fitted and the MonitorType is set to VGA or SVGA.

MODEs VIDC Enhancer
(dotclock) 
H. sync rate V. sync rate
0-15* 24MHz 30.0kHz** 66.8Hz
26-28 24MHz 30.0kHz** 57.1Hz
29-31 24MHz Unavailable

Where the MonitorType is set to TV or Multisync, MODEs 0 to 15 revert to their standard refresh rates and a VIDC Enhancer is not required as the refresh rates are well within the supported ranges for these types of display.

MODEs VIDC Enhancer
(dotclock) 
H. sync rate V. sync rate
0-15 24MHz 15.6kHz 50Hz

* These MODEs are only enhanced when the Archimedes is connected to a VGA or SVGA monitor.

** These sync rates seem to be borderline and monitors that start with a minimum sync rate of 30.0kHz may still not display these modes correctly.

The software module also allows both boards to have extra MODEs defined as being enhanced manually by use of the * commands AutoVIDC36Set and AutoVIDC25Set. This is useful for games that create custom modes dynamically. By setting a range of MOD