35 const uint8_t* tiledata,
int indexoffset) {
36 int tx = (tile.
id_ / 16 * 512) + ((tile.
id_ & 0xF) * 4);
37 uint8_t palnibble = (uint8_t)(tile.
palette_ << 4);
40 for (
int yl = 0; yl < 512; yl += 64) {
43 for (
int xl = 0; xl < 4; xl++) {
46 uint8_t pixel = tiledata[tx + yl + xl];
49 canvas[index + r ^ 1] = (uint8_t)((pixel & 0x0F) | palnibble);
50 canvas[index + r] = (uint8_t)((pixel >> 4) | palnibble);
75 int tile_address,
int tile_address_floor,
76 uint8_t floor_graphics) {
77 auto f = (uint8_t)(floor_graphics << 4);
81 rom_data[tile_address + f + 1]);
83 rom_data[tile_address + f + 3]);
85 rom_data[tile_address + f + 5]);
87 rom_data[tile_address + f + 7]);
90 rom_data[tile_address_floor + f + 1]);
91 gfx::TileInfo floorTile6(rom_data[tile_address_floor + f + 2],
92 rom_data[tile_address_floor + f + 3]);
93 gfx::TileInfo floorTile7(rom_data[tile_address_floor + f + 4],
94 rom_data[tile_address_floor + f + 5]);
95 gfx::TileInfo floorTile8(rom_data[tile_address_floor + f + 6],
96 rom_data[tile_address_floor + f + 7]);
99 for (
int xx = 0; xx < 16; xx++) {
100 for (
int yy = 0; yy < 32; yy++) {