To install Sound Blaster Audigy FX drivers on Windows XP using a vision LLM: screenshot each installer dialog, send the image to Claude Sonnet 4.6 or GPT-4o with a "click the Next button" prompt, parse the JSON response for the target button bounding box, and dispatch a synthetic click via SendInput. Total token cost per install: $0.05–0.15 over 30–60 screenshots. The whole pipeline runs hands-off in under 10 minutes.
Windows XP's installer ecosystem was built for a world that assumed a human was watching. Creative's Sound Blaster Audigy FX driver package (a current PCIe sound card sharing the Audigy brand, though not a hardware descendant of the Audigy 2 ZS's APU lineage) doesn't honor /S silent-install flags reliably — the installer pops modal dialogs for license acceptance, install path selection, Restart Now/Later, and driver-signing warnings. Traditional unattended deployment tools either skip these silently (causing install failure) or require per-dialog scripting with AutoHotkey/AutoIt (fragile, hard to maintain).
Vision LLMs bridge the gap. They don't need to know which dialog is coming — they look at the screen, identify interactive elements, and return a next-action decision. The retro-agent fleet at github.com/voidsstr/retro-agent runs this pattern against a dedicated WinXP SP3 rig, and the same approach works for any legacy Windows installer you'd rather not babysit.
This article covers the specific Audigy FX case from the retro-agent's production log, the vision pipeline implementation, failure modes encountered, and a comparison of Claude Sonnet vs GPT-4o accuracy on installer screenshots.
Key takeaways
- WinXP's Audigy FX driver installer can be automated end-to-end with a vision LLM + screenshot loop
- Claude Sonnet 4.6 and GPT-4o both achieve 90%+ button-ID accuracy on Win9x/XP installer dialogs
- Total token cost per complete driver install: $0.05–0.15 at current Claude pricing (May 2026)
- The same pipeline handles Voodoo3, GeForce 4 Ti, Realtek AC'97, and other period-correct drivers
- The Audigy FX needs a one-line INF edit to accept WinXP's OS-version check; the vision LLM handles the post-edit installer dialogs
Why WinXP installer automation defeats traditional silent-install flags
Per Microsoft's WinXP deployment documentation, unattended.txt and winnt.sif answer files handle Windows Setup itself — the OS installer. They don't extend to third-party driver packages bundled after Windows installation.
Creative's Audigy FX driver package (the Vista/Win7 package needed for WinXP compatibility after INF editing) uses InstallShield. InstallShield's /S flag is supposed to trigger silent mode, but two issues arise on WinXP:
- Driver-signing warnings: WinXP's driver-signing dialog is a kernel-level modal, not an InstallShield dialog.
/Sdoesn't suppress it. The dialog reads "The software you are installing has not passed Windows Logo testing" and requires clicking "Continue Anyway" — nothing in InstallShield's response file can pre-answer this.
- "Found New Hardware" wizard: After the INF is copied, WinXP's PnP subsystem launches its own wizard independent of the installer. This also requires human interaction unless you've pre-seeded the driver store (complex on a fresh install).
AutoHotkey can script both of these, but maintaining AutoHotkey scripts across multiple driver families and installer versions is fragile. A vision LLM handles all installer dialogs generically — it sees the dialog, identifies the button to click, and returns coordinates. No per-dialog scripting required.
How the vision LLM watches the screen — screenshot pipeline
The retro-agent runs a lightweight Python loop on a machine with RDP or VNC access to the WinXP guest:
The loop runs at 2-second intervals, screenshot → LLM → action → screenshot, until the LLM returns {action: 'done'} or a maximum step count (60 steps / 2 min) expires.
Screenshot pipeline cost: Each call to Claude Sonnet 4.6 with a 1920×1080 PNG screenshot uses approximately 1,500–2,000 input tokens for the image plus ~120 tokens for the text prompt. At Claude Sonnet 4.6 pricing (as of May 2026), a 40-screenshot install session costs approximately $0.07–0.12. GPT-4o costs roughly similar at current OpenAI pricing.
How the text LLM emits next-click decisions — JSON action protocol
The action protocol uses a small JSON schema to keep responses parseable:
The driver code interprets action=click by dispatching a SendInput (on the remote Windows guest via pywin32 or via xdotool on a Linux VNC controller) to the (x, y) coordinates returned by the LLM. The model is instructed to return absolute pixel coordinates based on the screenshot dimensions.
Reliability note: LLMs return plausible-looking coordinates but don't "measure" pixels — they estimate based on visual layout recognition. This works reliably for large dialog buttons (OK, Next, Cancel) but can miss small radio buttons or checkboxes. The pipeline handles this with a visual-confirmation step: after each click, wait 500ms, screenshot again, and verify the expected state change occurred. If the dialog didn't advance, retry with a tighter prompt.
Spec table — Audigy FX vs Sound Blaster Live! vs Audigy 2 ZS on WinXP
| Card | Interface | EAX Version | WinXP Driver | SNR | 2026 Sourcing |
|---|---|---|---|---|---|
| Creative Audigy FX | PCIe x1 | EAX 5.0 HD (software path) | Vista/Win7 + INF edit | 106 dB | $25–35 new (Amazon) |
| Sound Blaster Live! | PCI | EAX 2.0 | Official WinXP support | 98 dB | $15–25 used (eBay) |
| Audigy 2 ZS | PCI | EAX 4.0 Advanced HD (hardware APU) | Official WinXP support | 108 dB | $40–65 used (eBay) |
The Audigy FX needs an INF edit to install on WinXP. The vision LLM handles the post-edit installer dialogs autonomously; the INF edit itself is a 30-second text editor task (change the NTamd64.6.0 version check to NTx86.5.1 (for 32-bit WinXP) or NTamd64.5.2 (for XP x64 / Server 2003)).
Per-step walkthrough of the Audigy FX driver install with LLM commentary
The retro-agent's production log for a recent Audigy FX WinXP SP3 install (transcript, edited for brevity):
- Step 1 — Welcome screen: LLM returns
{action: click, target: "Next", x: 712, y: 490}. Dialog advances. - Step 2 — License Agreement: LLM detects license text is not scrolled to bottom; returns
{action: scroll, direction: down, amount: 400}. After scroll, re-screenshots, returns{action: click, target: "I accept the agreement", x: 381, y: 412}followed by{action: click, target: "Next"}. - Step 3 — Driver-signing warning: LLM identifies the WinXP "Logo Testing" dialog and returns
{action: click, target: "Continue Anyway", x: 388, y: 260}. This is the dialog that breaks all silent-install approaches. - Steps 4–7 — Installation progress + Restart: LLM waits through progress bars (returns
{action: wait, reason: "installation in progress"}when no interactive element is present), then clicks "Restart Now" at completion. - Post-reboot — Found New Hardware: WinXP PnP fires the "Found New Hardware" wizard for the newly-installed SB audio device. LLM recognizes the wizard and clicks through "Install the software automatically", advances through two more dialogs, completes.
Total steps: 23. Total tokens: ~38,000 input + ~4,600 output. Total cost at Claude Sonnet 4.6 May 2026 pricing: $0.08.
Failure modes — when the model hallucinates a button
In production testing, the vision LLM hallucinates coordinates in two classes of scenarios:
1. Overlapping windows: When two dialogs are stacked (common in older Windows installers), the LLM occasionally targets a button on the background window rather than the foreground. Mitigation: the pipeline's visual-confirmation step catches this — if the click produces no dialog state change, retry with the prompt "The foreground dialog should be the topmost window; click its [most appropriate action] button."
2. Progress bars mistaken for buttons: Some WinXP progress dialogs have a "Cancel" button that the model sometimes targets when instructed to "advance the installation." Mitigation: add explicit instruction: "Do not click Cancel unless the installation has failed with an error message."
3. Very small checkboxes (≤12px): The LLM's coordinate estimation degrades below ~16px target size. The driver-signing "Don't show this message again" checkbox is small; the model sometimes misses it by 5–10 pixels. Mitigation: for this specific dialog, hardcode a screen-coordinate override rather than relying on the LLM's estimate.
Hallucination rate on a clean WinXP SP3 Audigy FX install (retro-agent production data, May 2026): 2 of 23 actions required a retry. Both were caught by the visual-confirmation loop and corrected automatically.
Comparison: Claude Sonnet vs GPT-4 vision on driver-installer screenshots
The retro-agent tested both models against a corpus of 200 WinXP/Win98 installer screenshots with labeled correct actions:
| Model | Button ID accuracy | Coordinate accuracy (within 10px) | Avg latency per call | Cost per 40-step install |
|---|---|---|---|---|
| Claude Sonnet 4.6 | 93.5% | 88.0% | 1.1 sec | $0.08 |
| GPT-4o (2024-11-20) | 91.0% | 85.5% | 1.4 sec | $0.10 |
| LLaVA-1.6-34B (local) | 71.5% | 62.0% | 4.2 sec | $0 (GPU cost) |
| Qwen2-VL-7B (local) | 63.0% | 58.5% | 3.1 sec | $0 (GPU cost) |
Claude Sonnet 4.6 wins on accuracy and latency. Local open models are viable if you have a GPU with enough VRAM (≥24GB for LLaVA-1.6-34B at Q4), but the per-install failure rate nearly doubles. For production retro-agent runs where an unhandled failure requires human intervention, the $0.08 cloud model cost is well worth the reliability gap.
Adapting the technique to Voodoo, GeForce 4 Ti, Win98 INF surgery
The same pipeline handles other period-correct drivers with minor per-family modifications:
- Voodoo3 on Win98: The 3Dfx installer uses an older InstallShield version with different dialog geometry. The LLM adapts automatically since it's analyzing visual layout, not scripted coordinates.
- GeForce 4 Ti on WinXP: NVIDIA's legacy driver packages use a newer NSIS-style installer. The LLM handles it with zero modifications; NSIS dialogs have consistent visual language.
- Realtek AC'97 on WinXP: Realtek's installer is silent-install compatible (
/Sflag works), so the vision pipeline isn't needed. Test with/Sfirst before reaching for the LLM pipeline. - INF surgery (broken INF OS-version checks): The vision LLM can't edit text files. This step requires a Python subprocess that edits the INF before invoking the installer. The retro-agent's
inf_patcher.pymodule handles this: it parses the INF, finds OS-versionNTamd64.6.0entries, addsNTx86.5.1aliases (orNTamd64.5.2for XP x64), and saves. One-time 15-minute setup per driver family.
Bottom line + retro-agent repo link
Vision LLM automation turns a fragile, session-tied WinXP driver install into a $0.08 background task. The retro-agent fleet at github.com/voidsstr/retro-agent runs this in production for Audigy FX, Voodoo3, and GeForce 4 Ti installs. The code is open-source under MIT; the only requirement is a Python 3.11 environment and either an Anthropic API key (Claude Sonnet 4.6) or OpenAI key (GPT-4o).
For the Sound Blaster Audigy FX specifically: buy the card new from Amazon, edit one line in the Vista driver INF, invoke the vision-LLM pipeline, and you'll have software-path EAX 5.0 HD effects and 5.1-channel surround on WinXP SP3 in under 15 minutes with zero manual interaction.
Citations and sources
- github.com/voidsstr/retro-agent — Retro-Agent Project
- Creative.com — Sound Blaster Audigy FX Support & Drivers
- Vogons.org — Legacy Drivers & WinXP Hardware Forum
Related guides
- AI-Driven Driver Install on WinXP: Vision LLM Walks the Audigy FX Setup
- Sound Blaster Audigy FX vs Audigy 2 ZS for WinXP Gaming Builds
- Building a 2003-Era LAN Party Rig: Pentium 4, GeForce FX 5900, Audigy 2 ZS
Prices in this article were checked May 2026.
