trunk/src/mame/video/tc0480scp.c
| r31724 | r31725 | |
| 139 | 139 | |
| 140 | 140 | tc0480scp_device::tc0480scp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 141 | 141 | : device_t(mconfig, TC0480SCP, "Taito TC0480SCP", tag, owner, clock, "tc0480scp", __FILE__), |
| 142 | | // m_ctrl[0x18](0), |
| 143 | | m_ram(NULL), |
| 144 | | //m_bg_ram[4](NULL), |
| 145 | 142 | m_tx_ram(NULL), |
| 146 | 143 | m_char_ram(NULL), |
| 147 | | //m_bgscroll_ram[4](NULL), |
| 148 | | //m_rowzoom_ram[4](NULL), |
| 149 | | //m_bgcolumn_ram[4](NULL), |
| 150 | | //m_bgscrollx[4](NULL), |
| 151 | | //m_bgscrolly[4](NULL), |
| 152 | 144 | m_pri_reg(0), |
| 153 | 145 | m_dblwidth(0), |
| 154 | 146 | m_gfxnum(0), |
| r31724 | r31725 | |
| 163 | 155 | m_gfxdecode(*this), |
| 164 | 156 | m_palette(*this) |
| 165 | 157 | { |
| 158 | memset(m_ctrl, 0, sizeof(m_ctrl)); |
| 159 | |
| 160 | for (int i = 0; i < 4; i++) |
| 161 | { |
| 162 | m_bg_ram[i] = NULL; |
| 163 | m_bgscroll_ram[i] = NULL; |
| 164 | m_rowzoom_ram[i] = NULL; |
| 165 | m_bgcolumn_ram[i] = NULL; |
| 166 | m_bgscrollx[i] = NULL; |
| 167 | m_bgscrolly[i] = NULL; |
| 168 | } |
| 166 | 169 | } |
| 167 | 170 | |
| 168 | 171 | //------------------------------------------------- |
| r31724 | r31725 | |
| 275 | 278 | m_tilemap[3][i]->set_scroll_rows(512); |
| 276 | 279 | } |
| 277 | 280 | |
| 278 | | m_ram = auto_alloc_array_clear(machine(), UINT16, TC0480SCP_RAM_SIZE / 2); |
| 279 | | |
| 281 | m_ram.resize_and_clear(TC0480SCP_RAM_SIZE / 2); |
| 280 | 282 | set_layer_ptrs(); |
| 281 | 283 | |
| 282 | 284 | /* create the char set (gfx will then be updated dynamically from RAM) */ |
| 283 | 285 | m_gfxdecode->set_gfx(m_txnum, global_alloc(gfx_element(m_palette, tc0480scp_charlayout, (UINT8 *)m_char_ram, NATIVE_ENDIAN_VALUE_LE_BE(8,0), 64, 0))); |
| 284 | 286 | |
| 285 | | save_pointer(NAME(m_ram), TC0480SCP_RAM_SIZE / 2); |
| 287 | save_item(NAME(m_ram)); |
| 286 | 288 | save_item(NAME(m_ctrl)); |
| 289 | save_item(NAME(m_bgscrollx)); |
| 290 | save_item(NAME(m_bgscrolly)); |
| 291 | save_item(NAME(m_pri_reg)); |
| 287 | 292 | save_item(NAME(m_dblwidth)); |
| 288 | 293 | machine().save().register_postload(save_prepost_delegate(FUNC(tc0480scp_device::postload), this)); |
| 289 | 294 | } |