diff options
Diffstat (limited to 'src/emu/tilelgcy.h')
-rw-r--r-- | src/emu/tilelgcy.h | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/src/emu/tilelgcy.h b/src/emu/tilelgcy.h index db0bb33d207..71707d10b6b 100644 --- a/src/emu/tilelgcy.h +++ b/src/emu/tilelgcy.h @@ -42,6 +42,28 @@ #ifndef __TILELGCY_H__ #define __TILELGCY_H__ + +//************************************************************************** +// MACROS +//************************************************************************** + +#define TILE_GET_INFO(_name) void _name(driver_device &device, tilemap_t &tilemap, tile_data &tileinfo, tilemap_memory_index tile_index) +#define TILEMAP_MAPPER(_name) tilemap_memory_index _name(driver_device &device, UINT32 col, UINT32 row, UINT32 num_cols, UINT32 num_rows) + +#define SET_TILE_INFO(GFX,CODE,COLOR,FLAGS) tileinfo.set(device.machine(), GFX, CODE, COLOR, FLAGS) + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// legacy callbacks +typedef void (*tile_get_info_func)(driver_device &device, tilemap_t &tilemap, tile_data &tileinfo, tilemap_memory_index tile_index); +typedef tilemap_memory_index (*tilemap_mapper_func)(driver_device &device, UINT32 col, UINT32 row, UINT32 num_cols, UINT32 num_rows); + + + //************************************************************************** // FUNCTION PROTOTYPES //************************************************************************** @@ -51,9 +73,9 @@ // create a new tilemap; note that tilemaps are tracked by the core so there is no dispose inline tilemap_t *tilemap_create(running_machine &machine, tile_get_info_func tile_get_info, tilemap_mapper_func mapper, int tilewidth, int tileheight, int cols, int rows) -{ return &machine.tilemap().create(tilemap_get_info_delegate(tile_get_info, "", &machine), tilemap_mapper_delegate(mapper, "", &machine), tilewidth, tileheight, cols, rows); } +{ return &machine.tilemap().create(tilemap_get_info_delegate(tile_get_info, "", machine.driver_data()), tilemap_mapper_delegate(mapper, "", machine.driver_data()), tilewidth, tileheight, cols, rows); } inline tilemap_t *tilemap_create(running_machine &machine, tile_get_info_func tile_get_info, tilemap_standard_mapper mapper, int tilewidth, int tileheight, int cols, int rows) -{ return &machine.tilemap().create(tilemap_get_info_delegate(tile_get_info, "", &machine), mapper, tilewidth, tileheight, cols, rows); } +{ return &machine.tilemap().create(tilemap_get_info_delegate(tile_get_info, "", machine.driver_data()), mapper, tilewidth, tileheight, cols, rows); } #endif /* __TILELGCY_H__ */ |