tweak road position in Final Lap / 2 / 3, Suzuka 8 Hours / 2, Lucky & Wild to better match hardware videos (Four Trax is uncertain) (#8092)

This commit is contained in:
David Haywood 2021-05-22 11:43:25 +01:00 committed by GitHub
parent c9debe9adf
commit 6b63e81d7c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 5 deletions

View File

@ -1788,6 +1788,7 @@ void namcos2_state::configure_c45road_standard(machine_config &config)
{
NAMCO_C45_ROAD(config, m_c45_road);
m_c45_road->set_palette(m_c116);
m_c45_road->set_xoffset(-72);
}
void namcos2_state::configure_namcos2_sprite_standard(machine_config &config)

View File

@ -345,6 +345,7 @@ void tceptor_state::tceptor(machine_config &config)
NAMCO_C45_ROAD(config, m_c45_road);
m_c45_road->set_palette(m_palette);
m_c45_road->set_xoffset(-64);
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60.606060);

View File

@ -25,9 +25,9 @@
* 0x1fa00..0x1fbdf xxx- ---- ---- ---- priority
* ---- xxxx xxxx xxxx xscroll
*
* 0x1fbfe horizontal adjust?
* 0x0017
* 0x0018 (Final Lap3)
* 0x1fbfe horizontal adjust? (Thunder Ceptor suggests maybe not although isn't on Namco System 2)
* 0x0017 (Suzuka 8 Hours / Four Trax / Lucky & Wild)
* 0x0018 (Final Lap / Thunder Ceptor)
*
* 0x1fc00..0x1fddf selects line in source bitmap
* 0x1fdfe yscroll
@ -86,7 +86,8 @@ namco_c45_road_device::namco_c45_road_device(const machine_config &mconfig, cons
m_tileram(*this, "tileram"),
m_lineram(*this, "lineram"),
m_clut(*this, "clut"),
m_transparent_color(~0)
m_transparent_color(~0),
m_xoffset(0)
{
}
@ -174,7 +175,7 @@ void namco_c45_road_device::draw(bitmap_ind16 &bitmap, const rectangle &cliprect
screenx |= ~0x7ff;
// adjust the horizontal placement
screenx -= 64; // needs adjustment to left
screenx += m_xoffset; // needs adjustment to left
int numpixels = (44 * ROAD_TILE_SIZE << 16) / dsourcex;
unsigned sourcex = 0;

View File

@ -29,6 +29,8 @@ public:
// C45 Land (Road) Emulation
void set_transparent_color(pen_t pen) { m_transparent_color = pen; }
void set_xoffset(int xoffset) { m_xoffset = xoffset; }
void draw(bitmap_ind16 &bitmap, const rectangle &cliprect, int pri);
protected:
@ -60,6 +62,7 @@ private:
optional_region_ptr<uint8_t> m_clut;
tilemap_t * m_tilemap;
pen_t m_transparent_color;
int m_xoffset;
};