Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
04716 Graphics Minor Always Mar 4, 2012, 23:21 2 days ago
Tester M.A.S.H. View Status Public Platform MAME (Self-compiled)
Assigned To Resolution Open OS
Status [?] Confirmed Driver
Version 0.145u3 Fixed in Version Build
Fixed in Git Commit Github Pull Request #
Summary 04716: 280zzzap, 280zzzapa: Graphics cut off
Description In Datsun 280 Zzzap the gfx of the racing guy is cut off (see animated GIF) since MAME 0.111u6.
Steps To Reproduce
Additional Information The mw8080bw.c video rendering changed in MAME 0.111u6.

MAME 0.111u6:
"Implemented video circuits in the Midway 8080 driver based on schematics.
Note that this affected the visible area, so overlays will need to be adjusted.
Standardized the visible area across all games [Zsolt Vasvari]."

This changed the look of every Midway 8080 games. In 0.111u5 the gfx is more stretched (see Seawolf animated GIF).
The position of the crosshair is now wrong. And in Datsun 280 Zzzap the gfx of the racing guy is cut off (see animated GIF).


The new video parameters are defined in includes/mw8080bw.h.

#define MW8080BW_MASTER_CLOCK (19968000.0)
#define MW8080BW_CPU_CLOCK (MW8080BW_MASTER_CLOCK / 10)
#define MW8080BW_PIXEL_CLOCK (MW8080BW_MASTER_CLOCK / 4)
#define MW8080BW_HTOTAL (0x140)
#define MW8080BW_HBEND (0x000)
#define MW8080BW_HBSTART (0x100)
#define MW8080BW_VTOTAL (0x106)
#define MW8080BW_VBEND (0x000)
#define MW8080BW_VBSTART (0x0e0)
#define MW8080BW_VCOUNTER_START_NO_VBLANK (0x020)
#define MW8080BW_VCOUNTER_START_VBLANK (0x0da)
#define MW8080BW_INT_TRIGGER_COUNT_1 (0x080)
#define MW8080BW_INT_TRIGGER_VBLANK_1 (0)
#define MW8080BW_INT_TRIGGER_COUNT_2 MW8080BW_VCOUNTER_START_VBLANK
#define MW8080BW_INT_TRIGGER_VBLANK_2 (1)
#define MW8080BW_60HZ (MW8080BW_PIXEL_CLOCK / MW8080BW_HTOTAL / MW8080BW_VTOTAL)



Example: If you set HBEND to 0x004 you get the old 0.111u5 screen:

#define MW8080BW_HBEND (0x000)
to
#define MW8080BW_HBEND (0x004)
Github Commit
Flags
Regression Version 0.111u6
Affected Sets / Systems 280zzzap, 280zzzapa
Attached Files
gif file icon Datsun 280 Zzzap MAME 0.111u5 + 0.111u6 + 0.143u3.gif (13,429 bytes) Mar 4, 2012, 23:21 Uploaded by M.A.S.H.
M.A.S.H.
gif file icon Seawolf MAME 0.111u5 + 0.111u6 + 0.143u3.gif.gif (13,282 bytes) Mar 4, 2012, 23:21 Uploaded by M.A.S.H.
M.A.S.H.
Relationships
There are no relationship linked to this issue.
Notes
4
User avatar
No.08320
hap
Developer
Mar 5, 2012, 17:09
The 4-pixel border is intentional, and I don't see anything wrong with the crosshair position in seawolf: missiles aiming accuracy is perfect.

The raceguy feet cut off is a bug tho, CPU timing related.
User avatar
No.13716
M.A.S.H.
Senior Tester
Mar 20, 2017, 12:46
Fixed the cut off problem ( very simple):
https://github.com/mamedev/mame/pull/2171
User avatar
No.24023
Robbbert
Moderator
2 days ago
The log is incorrect - I didn't update the additional information.
User avatar
No.24030
hap
Developer
2 days ago
The fix for 280zzzap is simple: update screen before writing to video RAM. Doing so would probably fix other small issues that we don't know about on 8008bw hardware games.
But the (mw)8080bw video hw emulation is not at all coded with partial screen updates in mind, it'd need to be refactored a lot. It currently loops through all RAM instead of cliprect bounds, nor does it check cliprect.contains()