summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/system1.c
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2013-07-20 21:46:00 +0000
committer Aaron Giles <aaron@aarongiles.com>2013-07-20 21:46:00 +0000
commitda8170e0afeaf525ee0bbaf11f5da17d7506e789 (patch)
tree7d48e7f15f6d32f4351c3d90f8ad5b84d00e2437 /src/mame/video/system1.c
parent9f6786631f40c6cceed128b3131d86a2210748d0 (diff)
Memory system: added endianness to the memory_share class.
Tilemap system: numerous changes: * Moved remaining legacy macros and typedefs to tilelgcy.h. This revealed a few drivers mixing and matching modern & legcy, which have now been fixed. * Changed get info callback signature to no longer pass the user_data pointer, but instead pass a reference to the tilemap object itself. Updated those few drivers using user_data to pull it out of the tilemap object with the new user_data() getter method. * Changed get info and mapping callbacks to be device_delegates so that they can be described at config time. * Added tilemap_memory object that is used internally for reading/ writing to memory that backs a tilemap. This object is used to track a memory pointer that backs tilemap memory, and also is designed to transparently handle all bus width and endianness associated with reading and writing data in a tilemap. * Incorporated two tilemap_memory objects (basemem and extmem) into the tilemap object and added accessors to them, as well as read/write handlers for reading/writing to entries stored in the memory. This means that tilemap get info callbacks can now easily read data out of the tilemap in a generic way. * Rejiggered the initialization sequence for tilemap objects so that the tilemap_manager is not required to be present at instantiation. * Created a new tilemap_device, which can be used to declare a tilemap in the machine config, and which also is a tilemap object itself. The tilemap device will look for shared memory regions called "<tag>" and "<tag>_ext" and automatically plug them into the tilemap. The device also provides write handlers that can be used to write to the tilemap memory and mark tiles dirty, saving the need for each driver to write their own. Device system: moved required/optional device finders to a new header devfind.h. Atari drivers: removed all playfield and alpha memory and tilemap variables, apart from those needed by atarivc-using games (this will become a device in a future update). Updated all Atari 16-bit drivers to use the new tilemap_device instead, which provides all the needed functionality in a more generic way.
Diffstat (limited to 'src/mame/video/system1.c')
-rw-r--r--src/mame/video/system1.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mame/video/system1.c b/src/mame/video/system1.c
index 6b235784301..1ae6f611981 100644
--- a/src/mame/video/system1.c
+++ b/src/mame/video/system1.c
@@ -98,7 +98,7 @@
TILE_GET_INFO_MEMBER(system1_state::tile_get_info)
{
- const UINT8 *rambase = (const UINT8 *)param;
+ const UINT8 *rambase = (const UINT8 *)tilemap.user_data();
UINT32 tiledata = rambase[tile_index*2+0] | (rambase[tile_index*2+1] << 8);
UINT32 code = ((tiledata >> 4) & 0x800) | (tiledata & 0x7ff);
UINT32 color = (tiledata >> 5) & 0xff;