Difference between revisions of "Sprite Masking and Overflow Test ROM"
From Sega Retro
Line 38: | Line 38: | ||
==Test results== | ==Test results== | ||
+ | ===Hardware=== | ||
+ | |||
+ | ===Emulators=== | ||
Note: Using latest versions of emulators, unless otherwise stated.{{#vardefine:screenwidth|120}} | Note: Using latest versions of emulators, unless otherwise stated.{{#vardefine:screenwidth|120}} | ||
{| class="prettytable sortable" | {| class="prettytable sortable" | ||
Line 179: | Line 182: | ||
|- | |- | ||
|[[Gens Plus!]] | |[[Gens Plus!]] | ||
− | | | + | |2005-08-06 |
− | | | + | |{{bobscreen|SMaOTR H32 GensPlus.png|width={{#var:screenwidth}}}} |
− | | | + | |{{bobscreen|SMaOTR H40 GensPlus.png|width={{#var:screenwidth}}}} |
| | | | ||
|- | |- | ||
Line 281: | Line 284: | ||
|- | |- | ||
|[[Kega Fusion]] | |[[Kega Fusion]] | ||
− | | | + | |2010-03-07 |
− | | | + | |{{bobscreen|SMaOTR H32 KegaFusion.png|width={{#var:screenwidth}}}} |
− | | | + | |{{bobscreen|SMaOTR H40 KegaFusion.png|width={{#var:screenwidth}}}} |
| | | | ||
|- | |- |
Revision as of 14:00, 7 April 2019
Nemesis' Sprite Masking and Overflow Test ROM is a test ROM used to verify the emulation of several Sega Mega Drive VDP quirks, including sprite limits.
Tests
The following tests are performed by the Sprite Masking and Overflow Test ROM.
Terminology:
- H32 == 256x224 display mode
- H40 == 320x224 display mode.
- Sprite mask: A sprite with X=0.
Tests:
- Max Sprites Per Line: 16 in H32, 20 in H40.
- Max Sprite Dots - Basic: Up to 256 sprite dots in H32; 320 in H40.
- Max Sprite Dots - Complex: Same as previous, except it verifies that sprites are cut off in the middle.
- Sprite Mask: Verifies that lower-priority sprites are masked if a sprite mask exists and is not the first sprite on the line.
- Sprite Mask S1: Verifies that lower-priority sprites are *not* masked if a sprite mask exists and is the first sprite on the line.
- Mask S1 On Dot Overflow: Verifies that sprite masks at the beginning of the line are ineffective if sprite dot overflow occurs on the previous line.
- Mask S1,X=1 S2,X=0: Verifies that the non-existent sprite masking "Mode 2" is not implemented.
- Mask S1,X=40 S2,X=0: Same as previous.
- Max Sprites Per Frame: 64 in H32, 80 in H40.
For tests with two results, the left result indicates that the minimum boundary is respected, and the right result indicates that the maximum boundary is respected.
Test #6 is conditional on test #5 passing. If test #5 passes, then test #6 passing is an error (indicated by a red line underneath "PASS").
Downloads
![]() |
Download Sprite Masking and Overflow Test ROM Sprite Masking and Test ROM (3 kB) (info)
|
Test results
Hardware
Emulators
Note: Using latest versions of emulators, unless otherwise stated.
Emulator | Release date | H32 Mode | H40 Mode | Comments |
---|---|---|---|---|
AGES | ||||
BizHawk | ||||
BlastEm | ||||
D-DGen | ||||
DebuGens | ||||
DGen | ||||
DrMD | ||||
DualGens | ||||
Exodus | ||||
FB Alpha | ||||
GenaDrive | ||||
Genecyst | ||||
GenEm | ||||
Generator (emulator) | ||||
Genesis Plus | ||||
Genesis Plus GX | ||||
Genesis4iphone | ||||
Genital | ||||
Gens | ||||
Gens (Nick o'DIMM) | ||||
Gens (XPort) | ||||
Gens KMod | ||||
Gens Plus! | 2005-08-06 | |||
Gens Re-Recording | ||||
Gens Tracer | ||||
Gens X | ||||
Gens/GS | 2009-11-22 | |||
Gens/GS II | 2016 | |||
Gens32 | ||||
Gensoid | ||||
Genux | ||||
GigaDrive (GP32) | ||||
HazeMD | ||||
Higan | ||||
IDC Log Gens | ||||
JEnesis | ||||
JEnesisDS | ||||
Kega | ||||
Kega (emulator) | ||||
Kega Fusion | 2010-03-07 | |||
Kega Lazarus | ||||
KGen | ||||
KGen98 | ||||
Mednafen | ||||
Megadrive Emulator | ||||
Megasis | ||||
Mimic | ||||
NeoGenesis | ||||
PGen | ||||
PicoDrive | ||||
PicoDrive (Windows) | ||||
PicoDriveDS | ||||
PSPGenesis | ||||
Regen | ||||
RetroCopy | ||||
RetroDrive | ||||
SegaEMU | ||||
SGens | ||||
St0rm | ||||
VGen | ||||
Xe | ||||
Xega | ||||
Xenesis |
External links
- http://gendev.spritesmind.net/forum/viewtopic.php?p=8364 Original topic discussing emulation sprite masking, along with the post of the Test ROM