Skip to content

S3 Trio64V2/DX not handling VGA wraparound #3899

@iamgreaser

Description

@iamgreaser

What happened?

When running Commander Keen 4 EGA on a real S3 Trio64V2/DX, the screen wraps correctly when moving up on the overworld map. But in 86Box, I end up seeing flicker when I do this.

This is a 50:50 blend of 2 screenshots giving a rough idea of the kind of flicker I get - there is a hard cutoff point where everything below said point is black:

image

Here's a VM with a bootable disk running a bare minimum DOS 6.20 and Commander Keen 4 EGA for testing:
s3-wrap-86box-img.zip
The VM is reasonably close to the hardware I actually have, although I've brought the CPU speed down to 100 MHz (my box actually runs the CPU at 266 MHz).

Configuration file

[General]
vid_renderer = qt_software
dpi_scale = 0
force_43 = 1

[Machine]
machine = spitfire
cpu_family = celeron_covington
cpu_speed = 100000000
cpu_multi = 1.5
cpu_use_dynarec = 1
fpu_softfloat = 1
time_sync = utc
fpu_type = internal
mem_size = 32768

[Video]
gfxcard = trio64v2dx_pci

[Input devices]
mouse_type = none

[Sound]
fm_driver = nuked
sndcard = sb16

[Network]
net_01_link = 0
net_02_link = 0
net_03_link = 0
net_04_link = 0

[Storage controllers]
hdc = internal
cassette_mode = load

[S3 Trio64V2/DX PCI]
memory = 2

[Sound Blaster 16]
base = 0220
base401 = 0330
irq = 5
dma = 1
dma16 = 5
opl = 1
control_pc_speaker = 0
receive_input = 1
receive_input401 = 0

[Floppy and CD-ROM drives]
fdd_01_type = 35_2hd
fdd_01_fn = keen4e-standalone.img

Operating system

Artix Linux

CPU

AMD Ryzen 7950X3D

86Box version

4.1 git master (2023-12-16) 4b402c2

Build architecture

Linux - x64 (64-bit)

Build type

  • New recompiler
  • Debug build

Download source

I built 86Box myself (please tell us more about your build configuration)

Additional context

Related to this bug: #347

The main differences are:

  • This is definitely a bug in 86Box confirmed against real hardware
  • I'm focused on a specific S3 Trio

There's a good chance I'll end up fixing this one myself, although I'm dreading how much of the S3 code needs to be rewritten. Probably won't need to touch the 15/16/24/32bpp stuff or the acceleration stuff.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions