VOGONS


Reply 40 of 45, by simone2016

User metadata
Rank Newbie
Rank
Newbie

Erik, wonderfull work. So Sprite re-definition mid-screen is possible. Fast rate video slo-mo of the screen is amazing!
The PC1 have 2 x 4416 DRAM - giving us 16KB RAM (4 x 16.384 bit x 2 chip = 16kByte), but hey we can change with 4464 and have plain 64kB!
Actually I'm trying something more complex like 640x200 x 16 color with i.e. ESP32. And unlocking also 640x400 with per-frame page change...

Reply 41 of 45, by willow

User metadata
Rank Member
Rank
Member

this utility works with dosbox ?

Reply 42 of 45, by Jinxter

User metadata
Rank Member
Rank
Member
willow wrote on 2026-03-13, 12:35:

this utility works with dosbox ?

I'm not sure i know what util that is.

But the programs written for the PC1, does not work in DOSBox.

Check out my YouTube channel: Retro Erik https://www.youtube.com/c/RetroErik
My collection: https://retro.hageseter.com
X: https://x.com/Retro_Erik

Reply 44 of 45, by Jinxter

User metadata
Rank Member
Rank
Member

AGI 16-Color Drivers for Olivetti Prodest PC1 (V6355D Hidden Mode)

I've created patched CGA overlays that give Sierra AGI v2 games true 16-color graphics on the Olivetti Prodest PC1, using the Yamaha V6355D's hidden 160×200×16 graphics mode.
Drivers available for: King's Quest I, II, III, Leisure Suit Larry, Police Quest I, Space Quest I, II

How AGI graphics work
All AGI games store their graphics as vector drawing commands and sprites using 16 EGA color indices. The AGI interpreter renders these into an internal 160×200 framebuffer with 16 colors — this is the true native resolution of all AGI graphics, regardless of adapter. On EGA, the overlay doubles each pixel horizontally to fill a 320×200 screen. On CGA, the overlay converts colors to NTSC composite artifact patterns. On the PC1, the V6355D hidden mode displays 160×200×16 natively — the exact resolution and color depth of AGI's internal framebuffer, with no pixel doubling or color reduction needed.

The CGA overlay already produces a byte format identical to V6355D's VRAM layout (4bpp packed nibbles, 80 bytes/row, interlaced banks), so the patch only changes 10 bytes — the mode register and VRAM segment. No rendering code was modified.

How to use
Copy the matching CGA_GRAF.OVL for your game version to your game disk
Run AGIPAL.COM once before launching the game — this programs the V6355D DAC with the standard 16 EGA colors. The palette is mode-independent and stays set for the entire session. We chose the EGA palette because it's the canonical palette that AGI games were designed for — every color in the game art targets these exact 16 colors.

Note on text
Game graphics look perfect — all vector art and sprites go through the overlay and display correctly in 16 colors. However, text in the status bar and dialog boxes shows some colored fringing (cyan/red pixels around character edges). This happens because the AGI interpreter draws text via INT 10h BIOS calls, which bypass the overlay and write directly to VRAM in CGA 2bpp format. Since the V6355D is in 4bpp mode, adjacent pixel pairs get merged into wrong colors at character edges. The text is fully readable — the artifacts are purely cosmetic. A fix via an INT 10h hook TSR is possible but we decided the extra complexity wasn't worth it for a cosmetic issue.

Github and download: https://github.com/RetroErik/PC1-AGI-Driver-Download

Check out my YouTube channel: Retro Erik https://www.youtube.com/c/RetroErik
My collection: https://retro.hageseter.com
X: https://x.com/Retro_Erik

Reply 45 of 45, by digger

User metadata
Rank Oldbie
Rank
Oldbie

Really impressive work! Awesome to see a game from the era finally making optimal use of the capabilities of the Olivetti Prodest PC1.

People would have been blown away by this back in the 80s for sure. 😅

By the way, one additional thing to possibly play with:

If I'm not mistaken, both the Sierra and LucasArts artists were a bit frustrated by the harshness of the original CGA/Tandy/EGA 16-color palette, particularly with regards to the lack of a color that would reasonably resemble the skin color of light-skinned characters. AGI games in PCjr/Tandy and EGA modes would typically use bright red for this, but it would look a bit off. This is the reason why artists of at both these companies made extensive use of color dithering to make the most of those rigid 16 colors in later adventure games that used the full 320x200 resolution.

If I'm not mistaken, Sierra used different 16-color palettes on the Atari ST and Amiga ports of AGI adventure games for exactly this reason. Those platforms allowed the selection of 16-color palettes out of a range of 4096 colors. They took advantage of that to tweak the palettes to become more... uhm... palatable. 😉

Maybe you could experiment with making a variant of an AGI driver/patch that would pick a 16-color palette from the 512 available colors on the Olivetti Prodest PC1 that would be closer to the 16-out-of-4096 color palettes used on those other platforms?

It also makes me wonder if Sierra did anything similar when they released an MCGA-compatible version of the AGI interpreter that displayed the 16-color games in 256-color mode.