From 41d365a71f674df8de2446d010645df33aa7c9d3 Mon Sep 17 00:00:00 2001 From: Phil Bennett Date: Tue, 12 Oct 2010 19:15:56 +0000 Subject: [PATCH] video/neogeo.c: Call optimize_sprite_data() at VIDEO_RESET (for the convenience of Neo Geo CD) [Barry Rodewald] From Barry Rodewald To submit@mamedev.org Date Wed, Sep 29, 2010 at 6:30 AM Subject A couple of fixes... Hi, Here are a couple more small fixes, one is an i386 fix, the other for Neo Geo. The first one is a fix for unaligned word and doubleword I/O reading and writing. It makes 16 and 32-bit I/O accesses become effectively a set of 8-bit accesses, preventing accesses from being re-aligned to an incorrect I/O port. This fixes issues in the FM-Towns where programs would set the palette by using MOV DX,FD92; OUT DX,EAX; (or similar) which would cause it to write to I/O ports 0xfd90-93, instead of 0xfd92-95 as it should. The second is not so much of a fix, but as a convenience for the Neo Geo CD, by calling optimize_sprite_data() at VIDEO_RESET(), which will re-convert sprite data after it has been copied into RAM. Otherwise, sprites will always be wrong. Thanks, Barry Rodewald mailto:bsr@xnet.co.nz --- src/mame/video/neogeo.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mame/video/neogeo.c b/src/mame/video/neogeo.c index 7cb49821f47..0013065c9e7 100644 --- a/src/mame/video/neogeo.c +++ b/src/mame/video/neogeo.c @@ -909,6 +909,7 @@ VIDEO_RESET( neogeo ) { start_sprite_line_timer(machine); start_auto_animation_timer(machine); + optimize_sprite_data(machine); }