mame/src/emu/emumem_hedw2.cpp
AJR efed2ea2c2 TMS340X0 updates
- tms34020: Upgrade data bus to 32 bits and add preliminary masking for 16-bit operations
- tms34010, tms34020: Eliminate pure 8-bit read/write bus accesses (these are always read-modify-write, even if aligned)
- btoads, midxunit: Use 8-bit handlers for NVRAM, reducing size to 8192 bytes
- midwunit, midxunit: Eliminate dependencies on midtunit driver
2020-08-19 17:43:27 -04:00

227 lines
15 KiB
C++

// license:BSD-3-Clause
// copyright-holders:Olivier Galibert
#include "emu.h"
#include "emumem_hedw.ipp"
template class handler_entry_write_dispatch<17, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 0, 1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 0, 1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 0, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 0, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 1, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 1, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 1, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 1, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 1, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 1, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 2, 3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 2, 3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 2, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 2, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 2, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 2, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 2, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 2, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 3, 0, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 3, 0, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 3, -1, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 3, -1, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 3, -2, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 3, -2, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<17, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<17, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<18, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<18, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<19, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<19, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<20, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<20, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<21, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<21, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<22, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<22, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<23, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<23, 3, -3, ENDIANNESS_BIG>;
template class handler_entry_write_dispatch<24, 3, -3, ENDIANNESS_LITTLE>;
template class handler_entry_write_dispatch<24, 3, -3, ENDIANNESS_BIG>;