Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
08042 Graphics Minor Always Jul 29, 2021, 04:31 Aug 3, 2021, 10:12
Tester Cow View Status Public Platform MAME (Official Binary)
Assigned To Kale Resolution Fixed OS Windows 10 (64-bit)
Status [?] Resolved Driver
Version 0.234 Fixed in Version 0.235 Build 64-bit
Fixed in Git Commit e4963f1 Github Pull Request #
Summary 08042: finalapr, finalapr1, finalaprj: Flagman doesn't do his job
Description The dude at the end of a race is supposed to wave a chequered flag. but in MAME, he does nothing
Steps To Reproduce Finish a race
Additional Information
Github Commit
Flags Verified with Original, Verified with Code
Regression Version
Affected Sets / Systems finalapr, finalapr1, finalaprj
Attached Files
mp4 file icon Mame 2021.07.28 - 23.25.26.07_Trim.mp4 (2,573,852 bytes) Jul 29, 2021, 04:31 Uploaded by Cow
Relationships
There are no relationship linked to this issue.
Notes
3
User avatar
No.19126
MetalGod
Senior Tester
Jul 29, 2021, 08:29
I've checked some old mame videos. It seems this animation has never been emulated.
User avatar
No.19127
Haze
Senior Tester
Jul 29, 2021, 10:41
very strange bug I have to say. I wonder if it's some glitch that happens when machines aren't linked, or maybe a strange protection.

could be another missing video feature, but I'm struggling to think how.

could also finally be a CPU bug
User avatar
No.19131
Kale
Developer
Aug 2, 2021, 20:29
Used finalaprj as base:

Routine at 0xc2f0 draw tiles for the flagman.
It reads location $bed5a which is never updated by the i960 code, it effectively changes the flag position in 8 step chunks.
The only place where it writes data there is at 0x1309c: going backward it looks like that there's a read bit 1 at 0x3460 in network area ($30380002) where branch is never taken. If this branch is taken then game effectively updates the timer but also checks if bit 7 of the exact same network port is disabled at 0x34f0, otherwise tight loops.

TL;DR: network flags must be in "empty" state for non-linked machine to fix this.