コード例 #1
0
ファイル: nforcepc.cpp プロジェクト: fesh0r/mame-full
void it8703f_device::write_logical_configuration_register(int index, int data)
{
	configuration_registers[logical_device][index] = data;
	switch (logical_device)
	{
	case LogicalDevice::Keyboard:
		if (index == 0x30)
		{
			if (data & 1)
			{
				if (enabled_logical[LogicalDevice::Keyboard] == false)
					map_keyboard_addresses();
				enabled_logical[LogicalDevice::Keyboard] = true;
				logerror("Enabled Keyboard\n");
			}
			else
			{
				if (enabled_logical[LogicalDevice::Keyboard] == true)
					unmap_keyboard_addresses();
				enabled_logical[LogicalDevice::Keyboard] = false;
			}
		}
		break;
	}
}
コード例 #2
0
ファイル: nforcepc.cpp プロジェクト: fesh0r/mame-full
void it8703f_device::map_extra(address_space *memory_space, address_space *io_space)
{
	memspace = memory_space;
	iospace = io_space;
	io_space->install_device(0, 0xffff, *this, &it8703f_device::internal_io_map);
	if (enabled_logical[LogicalDevice::Keyboard] == true)
		map_keyboard_addresses();
}
コード例 #3
0
ファイル: fdc37c93x.cpp プロジェクト: SailorSat/cabmame
void fdc37c93x_device::write_keyboard_configuration_register(int index, int data)
{
	if (index == 0x30)
	{
		if (data & 1)
		{
			if (enabled_logical[LogicalDevice::Keyboard] == false)
				map_keyboard_addresses();
			enabled_logical[LogicalDevice::Keyboard] = true;
			logerror("Enabled Keyboard\n");
		}
		else
		{
			if (enabled_logical[LogicalDevice::Keyboard] == true)
				unmap_keyboard_addresses();
			enabled_logical[LogicalDevice::Keyboard] = false;
		}
	}
}
コード例 #4
0
ファイル: fdc37c93x.cpp プロジェクト: SailorSat/cabmame
void fdc37c93x_device::remap(int space_id, offs_t start, offs_t end)
{
	if (space_id == AS_IO)
	{
		if (sysopt_pin == 0)
			m_isa->install_device(0x03f0, 0x03f3, read8_delegate(FUNC(fdc37c93x_device::read_fdc37c93x), this), write8_delegate(FUNC(fdc37c93x_device::write_fdc37c93x), this));
		else
			m_isa->install_device(0x0370, 0x0373, read8_delegate(FUNC(fdc37c93x_device::read_fdc37c93x), this), write8_delegate(FUNC(fdc37c93x_device::write_fdc37c93x), this));
		if (enabled_logical[LogicalDevice::FDC] == true)
			map_fdc_addresses();
		if (enabled_logical[LogicalDevice::Parallel] == true)
			map_lpt_addresses();
		if (enabled_logical[LogicalDevice::Serial1] == true)
			map_serial1_addresses();
		if (enabled_logical[LogicalDevice::Serial2] == true)
			map_serial2_addresses();
		if (enabled_logical[LogicalDevice::RTC] == true)
			map_rtc_addresses();
		if (enabled_logical[LogicalDevice::Keyboard] == true)
			map_keyboard_addresses();
	}
}