# The game exits at once with code 0 and no message on a modern or emulated CPU

## Symptoms

The game starts and quits within a second, exit code 0, nothing on screen. A `+relay` trace
(`RelayFromInclude=winpod`) ends with the display queries (`GetDeviceCaps`) and then
`ExitProcess(0)`.

## Cause

POD Gold's CPU check (`FUN_004a3dfc`) sets a CPU kind from CPUID: Intel family 5 or 6, AMD K5
or K6, Cyrix family 5 or 6. Any other CPU keeps the initial `0xff`, and the start-up code
(`FUN_004a1460`) switches on the kind and calls the exit for anything not listed
(*observed*). QEMU's emulated CPU reports `AuthenticAMD` family 6, an Athlon, which did not
exist in 1997. The first edition's check did not quit.

## Evidence

The relay trace's last calls; the start-up function's `switch` with a default that exits; the
VM's `/proc/cpuinfo`.

## What to do

Change the check's default instead of its branches: POD Gold's patch turns the initial `0xff`
into 4 (Intel P6), so any CPU the game does not know is treated as one it does
(`run/wine/patch_winpod.py`). Mark it as a deviation. Before patching, try reading what each
kind selects (here: two sets of drawing routines) and pick the most common one.

## Tried

- Nothing else: the trace pointed straight at it.
