Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rapidly flickering mouse cursor in Tex Murphy 2 #739

Closed
Arthandas opened this issue Nov 30, 2020 · 15 comments
Closed

Rapidly flickering mouse cursor in Tex Murphy 2 #739

Arthandas opened this issue Nov 30, 2020 · 15 comments
Labels
bug Something isn't working game compatibility Issues related to a specific game

Comments

@Arthandas
Copy link

Arthandas commented Nov 30, 2020

The cursor constantly flickers as shown in attached clip.
dosbox 2020-11-30 18-35-00-336.zip

My setup:
Win 10 64-bit, GTX 1060, 16gb ram, i5-7500

Version of dosbox-staging:
0.76.0-alpha-1016-g1702

Configuration parameters:
Default, I tried different output modes (surface mode kinda helps, it still flickers, just less) and number of cycles (the cursor flickers even when setting the cycles to 500). I also tried machine = vesa_nolfb (no effect).

Additional context
The issue persists in other DOSBox versions I tried (official bundled with the game, DOSBox X and Enhanced Community Edition).

@Arthandas Arthandas added the bug Something isn't working label Nov 30, 2020
@dreamer dreamer added the game compatibility Issues related to a specific game label Nov 30, 2020
@dreamer
Copy link
Member

dreamer commented Nov 30, 2020

Just today ripsaw merged some change to SVN to address cursor issues… not sure if they address your problem, but just in case: in a few minutes builds will be available here: https://github.com/dosbox-staging/dosbox-staging/actions/runs/392349312

In the meantime I'll try to reproduce the issue on Linux.

@kcgen
Copy link
Member

kcgen commented Nov 30, 2020

Also confirmed on Linux w/ latest master. The mouse cursor has a slight flicker.
origin/po/test-merge-4393 doesn't change it; still slightly flickering.

@Arthandas
Copy link
Author

I don't know if this helps but If you move the cursor down the screen to the action tabs, it completely stops flickering.

@kcgen
Copy link
Member

kcgen commented Nov 30, 2020

I don't know if this helps but If you move the cursor down the screen to the action tabs, it completely stops flickering.

When over the bottom action panel, the cursor changes to a yellow cursor and indeed stop flickering. But then as soon as you move it up outside the actions, it switches back to a target and resumes flickering. When flickering, the mouse response feels heavy and awkward, compared to the more fluid feeling down on the action bar.

This is a valuable observation @Arthandas, because it shows the issue is an interaction between the DOS game and DOSBox - and unlikely to exist host-side or in SDL.

@kcgen
Copy link
Member

kcgen commented Nov 30, 2020

YouTube is full of playthroughs, and the flicker is present in every recording that mentions being played with DOSBox.

This recording (https://www.youtube.com/watch?v=BG1mbhc0Cv0) doesn't mention using DOSBox, is distorted to 16:9 which often happens with mid/low cost external HDMI recorders, and the target cursor is rock-steady in the room. Because of the combination of these, I suspect it was recorded on a real DOS machine.

@Arthandas
Copy link
Author

Thanks for your time in researching this issue 👍 I hope it's an easy fix. I just can't look at the screen when the cursor flickers like that.

@grapeli
Copy link

grapeli commented Nov 30, 2020

It's the same everywhere. I checked under qemu, dosemu, dosemu2 and various dosboxes.
The cursor also flashes under dosemu in JSLinux (video).

@kcgen
Copy link
Member

kcgen commented Nov 30, 2020

@grapeli - thanks for the extensive comparisons!

@Arthandas , if we tinker with various timing intervals in the video code in an attempt to suppress this, there would surely be negative consequences for some unknown number of other games.

My hunch is the fix for this will likely require a change to the game itself. This is something that @ripsaw8080 on the vogons forums is famous for finding and fixing.

@Arthandas
Copy link
Author

Arthandas commented Nov 30, 2020

if we tinker with various timing intervals in the video code in an attempt to suppress this, there would surely be negative consequences for some unknown number of other games.

I hoped this could be fixed by changing some values in the .conf file... Also, I'm surprised no one reported it earlier. Well, there was one topic on GOG but it was ignored. I guess unlike me, people are not bothered by it.

@grapeli
Copy link

grapeli commented Nov 30, 2020

@Arthandas
I don't think anyone except the authors of the game's code could fix this bug.
During the game, press the F5 key and place the cursor on the panel. The mouse cursor does not blink.

@Arthandas
Copy link
Author

Arthandas commented Nov 30, 2020

I don't think anyone except the authors of the game's code could fix this bug.

Judging by the YT video posted earlier, the issue is not with the game, the cursor doesn't flicker in real DOS.

During the game, press the F5 key and place the cursor on the panel. The mouse cursor does not blink.

Interesting... You don't even need to place the cursor on the panel, it won't flicker as long as it's open, even if you place it outside.

@grapeli
Copy link

grapeli commented Nov 30, 2020

Judging by the YT video posted earlier, the issue is not with the game, the cursor doesn't flicker in real DOS.

I think I was in a hurry with this assessment.
I ran it under ScummVM and the cursor doesn't blink.

@kcgen
Copy link
Member

kcgen commented Dec 1, 2020

I ran it under ScummVM and the cursor doesn't blink.

That's expected.. ScummVM re-implements games/engines using modern languages and compilers, from which their executable interfaces directly with the host (as opposed to having anything to do with DOS/Mac/etc..), and then they parse the games' data content.

So this is more evidence that your point, "only the authors of the game's code could fix this bug", is still likely true.

Even if real DOS doesn't have the flicker, the issue of introducing regressions is overwhelming. Also, if other entirely different DOS emulators and even i386 VM (QEMU) exhibit it, this points further at the game itself causing it -- and possibly getting lucky on real hardware with some bug or undocumented/overlooked aspect.

@GranMinigun
Copy link
Contributor

Checked on WinXP machine - flicker is present, but only when cursor doesn't move. Though we replaced CRT monitor recently to TN one. It set to 720x400@70Hz, I think? Maybe the game works somehow differently in real 320x200 w/ double-scan?

@nemo93
Copy link
Collaborator

nemo93 commented Aug 26, 2021

Closing this one off for now. Feel free to reopen if you have new inputs/data.

@nemo93 nemo93 closed this as completed Aug 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working game compatibility Issues related to a specific game
Projects
None yet
Development

No branches or pull requests

6 participants