Removed need for pc_vga_io_init also made accessors for linear access to VGA memory needed for some models (no whatsnew)

This commit is contained in:
Miodrag Milanovic 2012-09-30 14:04:32 +00:00
parent af196ad1fa
commit c713a0578b
24 changed files with 138 additions and 220 deletions

View File

@ -2058,41 +2058,6 @@ void pc_vga_cirrus_init(running_machine &machine, read8_delegate read_dipswitch)
}
void pc_vga_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset)
{
int buswidth;
UINT64 mask = 0;
buswidth = machine.firstcpu->space_config(AS_PROGRAM)->m_databus_width;
switch(buswidth)
{
case 8:
mask = 0;
break;
case 16:
mask = 0xffff;
break;
case 32:
mask = 0xffffffff;
break;
case 64:
mask = -1;
break;
default:
fatalerror("VGA: Bus width %d not supported\n", buswidth);
break;
}
io_space.install_legacy_readwrite_handler(port_offset + 0x3b0, port_offset + 0x3bf, FUNC(vga_port_03b0_r), FUNC(vga_port_03b0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3c0, port_offset + 0x3cf, FUNC(vga_port_03c0_r), FUNC(vga_port_03c0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3d0, port_offset + 0x3df, FUNC(vga_port_03d0_r), FUNC(vga_port_03d0_w), mask);
mem_space.install_legacy_readwrite_handler(mem_offset + 0x00000, mem_offset + 0x1ffff, FUNC(vga_mem_r), FUNC(vga_mem_w), mask);
}
VIDEO_START( vga )
{
int i;
@ -2106,18 +2071,17 @@ static VIDEO_RESET( vga )
pc_vga_reset(machine);
}
void *pc_vga_memory(void)
READ8_HANDLER(vga_mem_linear_r)
{
return vga.memory;
return vga.memory[offset];
}
size_t pc_vga_memory_size(void)
WRITE8_HANDLER(vga_mem_linear_w)
{
return vga.svga_intf.vram_size;
vga.memory[offset] = data;
}
static struct eeprom_interface ati_eeprom_interface =
{
6, /* address bits */
@ -2503,45 +2467,6 @@ WRITE8_HANDLER( tseng_mem_w )
Trident implementation
******************************************/
void pc_svga_trident_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset)
{
int buswidth;
UINT64 mask = 0;
buswidth = machine.firstcpu->space_config(AS_PROGRAM)->m_databus_width;
switch(buswidth)
{
case 8:
mask = 0;
break;
case 16:
mask = 0xffff;
break;
case 32:
mask = 0xffffffff;
break;
case 64:
mask = -1;
break;
default:
fatalerror("VGA: Bus width %d not supported\n", buswidth);
break;
}
io_space.install_legacy_readwrite_handler(port_offset + 0x3b0, port_offset + 0x3bf, FUNC(vga_port_03b0_r), FUNC(vga_port_03b0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3c0, port_offset + 0x3cf, FUNC(trident_03c0_r), FUNC(trident_03c0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3d0, port_offset + 0x3df, FUNC(trident_03d0_r), FUNC(trident_03d0_w), mask);
mem_space.install_legacy_readwrite_handler(mem_offset + 0x00000, mem_offset + 0x1ffff, FUNC(trident_mem_r), FUNC(trident_mem_w), mask);
// D3h = TGUI9660XGi
svga.id = 0xd3; // TODO: hardcoded for California Chase
}
static UINT8 trident_seq_reg_read(running_machine &machine, UINT8 index)
{
UINT8 res;
@ -4863,40 +4788,6 @@ WRITE8_HANDLER(vga_port_gamtor_03d0_w)
}
}
void pc_vga_gamtor_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset)
{
int buswidth;
UINT64 mask = 0;
buswidth = machine.firstcpu->space_config(AS_PROGRAM)->m_databus_width;
switch(buswidth)
{
case 8:
mask = 0;
break;
case 16:
mask = 0xffff;
break;
case 32:
mask = 0xffffffff;
break;
case 64:
mask = -1;
break;
default:
fatalerror("VGA: Bus width %d not supported\n", buswidth);
break;
}
io_space.install_legacy_readwrite_handler(port_offset + 0x3b0, port_offset + 0x3bf, FUNC(vga_port_gamtor_03b0_r), FUNC(vga_port_gamtor_03b0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3c0, port_offset + 0x3cf, FUNC(vga_port_gamtor_03c0_r), FUNC(vga_port_gamtor_03c0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3d0, port_offset + 0x3df, FUNC(vga_port_gamtor_03d0_r), FUNC(vga_port_gamtor_03d0_w), mask);
mem_space.install_legacy_readwrite_handler(mem_offset + 0x00000, mem_offset + 0x1ffff, FUNC(vga_gamtor_mem_r), FUNC(vga_gamtor_mem_w), mask);
}
static void ati_define_video_mode(running_machine &machine)
{
@ -5464,38 +5355,3 @@ WRITE8_HANDLER(cirrus_03c0_w)
}
cirrus_define_video_mode(space.machine());
}
void pc_svga_cirrus_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset)
{
int buswidth;
UINT64 mask = 0;
buswidth = machine.firstcpu->space_config(AS_PROGRAM)->m_databus_width;
switch(buswidth)
{
case 8:
mask = 0;
break;
case 16:
mask = 0xffff;
break;
case 32:
mask = 0xffffffff;
break;
case 64:
mask = -1;
break;
default:
fatalerror("VGA: Bus width %d not supported\n", buswidth);
break;
}
io_space.install_legacy_readwrite_handler(port_offset + 0x3b0, port_offset + 0x3bf, FUNC(vga_port_03b0_r), FUNC(vga_port_03b0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3c0, port_offset + 0x3cf, FUNC(cirrus_03c0_r), FUNC(cirrus_03c0_w), mask);
io_space.install_legacy_readwrite_handler(port_offset + 0x3d0, port_offset + 0x3df, FUNC(vga_port_03d0_r), FUNC(vga_port_03d0_w), mask);
mem_space.install_legacy_readwrite_handler(mem_offset + 0x00000, mem_offset + 0x1ffff, FUNC(vga_mem_r), FUNC(vga_mem_w), mask);
}

View File

@ -17,13 +17,7 @@ MACHINE_CONFIG_EXTERN( pcvideo_ati_isa );
VIDEO_START( vga );
void pc_vga_init(running_machine &machine, read8_delegate read_dipswitch);
void pc_vga_cirrus_init(running_machine &machine, read8_delegate read_dipswitch);
void pc_vga_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset);
void pc_vga_gamtor_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset);
void pc_svga_trident_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset);
void pc_svga_cirrus_io_init(running_machine &machine, address_space &mem_space, offs_t mem_offset, address_space &io_space, offs_t port_offset);
void pc_vga_reset(running_machine &machine);
void *pc_vga_memory(void);
size_t pc_vga_memory_size(void);
void pc_video_start(running_machine &machine);
void s3_video_start(running_machine &machine);
@ -31,10 +25,12 @@ DECLARE_READ8_HANDLER(vga_port_03b0_r);
DECLARE_READ8_HANDLER(vga_port_03c0_r);
DECLARE_READ8_HANDLER(vga_port_03d0_r);
DECLARE_READ8_HANDLER(vga_mem_r);
DECLARE_READ8_HANDLER(vga_mem_linear_r);
DECLARE_WRITE8_HANDLER(vga_port_03b0_w);
DECLARE_WRITE8_HANDLER(vga_port_03c0_w);
DECLARE_WRITE8_HANDLER(vga_port_03d0_w);
DECLARE_WRITE8_HANDLER(vga_mem_w);
DECLARE_WRITE8_HANDLER(vga_mem_linear_w);
/* per-device implementations */
DECLARE_READ8_HANDLER(tseng_et4k_03b0_r);
@ -129,7 +125,17 @@ DECLARE_WRITE16_HANDLER(mach8_ec3_w);
DECLARE_READ8_HANDLER(ati_mem_r);
DECLARE_WRITE8_HANDLER(ati_mem_w);
DECLARE_READ8_HANDLER(cirrus_03c0_r);
DECLARE_WRITE8_HANDLER(cirrus_03c0_w);
DECLARE_READ8_HANDLER(vga_gamtor_mem_r);
DECLARE_WRITE8_HANDLER(vga_gamtor_mem_w);
DECLARE_READ8_HANDLER(vga_port_gamtor_03b0_r);
DECLARE_WRITE8_HANDLER(vga_port_gamtor_03b0_w);
DECLARE_READ8_HANDLER(vga_port_gamtor_03c0_r);
DECLARE_WRITE8_HANDLER(vga_port_gamtor_03c0_w);
DECLARE_READ8_HANDLER(vga_port_gamtor_03d0_r);
DECLARE_WRITE8_HANDLER(vga_port_gamtor_03d0_w);
/*
pega notes (paradise)
build in amstrad pc1640

View File

@ -543,7 +543,7 @@ WRITE16_MEMBER(calchase_state::calchase_dac_r_w)
static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32, calchase_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM // VGA VRAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(trident_mem_r, trident_mem_w, 0xffffffff) // VGA VRAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
AM_RANGE(0x000c8000, 0x000cffff) AM_NOP
//AM_RANGE(0x000d0000, 0x000d0003) AM_RAM // XYLINX - Sincronus serial communication
@ -600,6 +600,9 @@ static ADDRESS_MAP_START( calchase_io, AS_IO, 32, calchase_state )
AM_RANGE(0x02f8, 0x02ff) AM_NOP //To debug
AM_RANGE(0x0320, 0x038f) AM_NOP //To debug
AM_RANGE(0x03a0, 0x03a7) AM_NOP //To debug
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(trident_03c0_r, trident_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(trident_03d0_r, trident_03d0_w, 0xffffffff)
AM_RANGE(0x03e0, 0x03ef) AM_NOP //To debug
AM_RANGE(0x0378, 0x037f) AM_NOP //To debug
// AM_RANGE(0x0300, 0x03af) AM_NOP
@ -978,7 +981,6 @@ DRIVER_INIT_MEMBER(calchase_state,calchase)
m_bios_ram = auto_alloc_array(machine(), UINT32, 0x20000/4);
pc_vga_init(machine(), read8_delegate(FUNC(calchase_state::vga_setting),this));
pc_svga_trident_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
init_pc_common(machine(), PCCOMMON_KEYBOARD_AT, calchase_set_keyb_int);
intel82439tx_init(machine());

View File

@ -545,7 +545,7 @@ static WRITE32_HANDLER( atapi_w )
// Memory is mostly handled by the chipset
static ADDRESS_MAP_START( gammagic_map, AS_PROGRAM, 32, gammagic_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_NOP
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x00100000, 0x07ffffff) AM_RAM
AM_RANGE(0x08000000, 0xfffdffff) AM_NOP
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("user", 0x20000)/* System BIOS */
@ -564,6 +564,9 @@ static ADDRESS_MAP_START( gammagic_io, AS_IO, 32, gammagic_state)
AM_RANGE(0x00f0, 0x01ef) AM_NOP
//AM_RANGE(0x01f0, 0x01f7) AM_READWRITE_LEGACY(atapi_r, atapi_w)
AM_RANGE(0x01f8, 0x03ef) AM_NOP
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f0, 0x0cf7) AM_NOP
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_device, read, write)
AM_RANGE(0x0400, 0xffff) AM_NOP
@ -796,7 +799,6 @@ MACHINE_CONFIG_END
DRIVER_INIT_MEMBER(gammagic_state,gammagic)
{
pc_vga_init(machine(), read8_delegate(FUNC(gammagic_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
init_pc_common(machine(), PCCOMMON_KEYBOARD_AT, gammagic_set_keyb_int);
kbdc8042_init(machine(), &at8042);
atapi_init(machine());

View File

@ -53,8 +53,12 @@ static ADDRESS_MAP_START( gaminator_map, AS_PROGRAM, 32, gaminator_state )
AM_RANGE(0x20000000, 0x2003ffff) AM_RAM
/* standard VGA */
// AM_RANGE(0x40000000, 0x40000fff) AM_RAM // regs
AM_RANGE(0x44000000, 0x4401ffff) AM_RAM // VRAM
//AM_RANGE(0x40000000, 0x40000fff) AM_RAM // regs
AM_RANGE(0x400003b0, 0x400003bf) AM_READWRITE8_LEGACY(vga_port_gamtor_03b0_r, vga_port_gamtor_03b0_w, 0xffffffff)
AM_RANGE(0x400003c0, 0x400003cf) AM_READWRITE8_LEGACY(vga_port_gamtor_03c0_r, vga_port_gamtor_03c0_w, 0xffffffff)
AM_RANGE(0x400003d0, 0x400003df) AM_READWRITE8_LEGACY(vga_port_gamtor_03d0_r, vga_port_gamtor_03d0_w, 0xffffffff)
AM_RANGE(0x44000000, 0x4401ffff) AM_READWRITE8_LEGACY(vga_gamtor_mem_r,vga_gamtor_mem_w, 0xffffffff) // VRAM
// AM_RANGE(0x44000000, 0x44007fff) AM_RAM AM_SHARE("tmapram1") // puts strings here, looks almost like a tilemap, but where are the tiles?
// AM_RANGE(0x440a0000, 0x440a1fff) AM_RAM AM_SHARE("tmapram2") // beetlem (like above, mirror?)
@ -1255,7 +1259,6 @@ READ8_MEMBER(gaminator_state::vga_setting ) { return 0xff; } // hard-code to col
DRIVER_INIT_MEMBER(gaminator_state,gaminator)
{
pc_vga_init(machine(), read8_delegate(FUNC(gaminator_state::vga_setting),this));
pc_vga_gamtor_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0x44000000, machine().device("maincpu")->memory().space(AS_PROGRAM), 0x40000000);
}

View File

@ -169,7 +169,7 @@ WRITE8_MEMBER(magtouch_state::magtouch_io_w)
static ADDRESS_MAP_START( magtouch_map, AS_PROGRAM, 32, magtouch_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
AM_RANGE(0x000d8000, 0x000dffff) AM_ROMBANK("rombank")
AM_RANGE(0x000f0000, 0x000fffff) AM_RAM AM_REGION("bios", 0 )
@ -180,6 +180,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( magtouch_io, AS_IO, 32, magtouch_state )
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x02e0, 0x02e7) AM_READWRITE8(magtouch_io_r, magtouch_io_w, 0xffffffff)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f8, 0x03ff) AM_DEVREADWRITE8("ns16450_0", ns16450_device, ins8250_r, ins8250_w, 0xffffffff)
ADDRESS_MAP_END
@ -250,7 +253,6 @@ ROM_END
DRIVER_INIT_MEMBER(magtouch_state,magtouch)
{
pc_vga_init(machine(), read8_delegate(FUNC(magtouch_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
GAME( 1995, magtouch, 0, magtouch, magtouch, magtouch_state, magtouch, ROT0, "Micro Manufacturing", "Magical Touch", GAME_NOT_WORKING | GAME_NO_SOUND )

View File

@ -535,7 +535,7 @@ static I8237_INTERFACE( dma8237_2_config )
static ADDRESS_MAP_START(midqslvr_map, AS_PROGRAM, 32, midqslvr_state)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c3fff) AM_ROMBANK("video_bank1") AM_WRITE(isa_ram1_w)
AM_RANGE(0x000c4000, 0x000c7fff) AM_ROMBANK("video_bank2") AM_WRITE(isa_ram2_w)
AM_RANGE(0x000e0000, 0x000e3fff) AM_ROMBANK("bios_ext1") AM_WRITE(bios_ext1_ram_w)
@ -559,6 +559,9 @@ static ADDRESS_MAP_START(midqslvr_io, AS_IO, 32, midqslvr_state)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
AM_RANGE(0x01f0, 0x01f7) AM_READWRITE(ide_r, ide_w)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f0, 0x03f7) AM_READWRITE(fdc_r, fdc_w)
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
@ -673,7 +676,6 @@ void midqslvr_state::machine_start()
kbdc8042_init(machine(), &at8042);
pc_vga_init(machine(), read8_delegate(FUNC(midqslvr_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
void midqslvr_state::machine_reset()

View File

@ -113,7 +113,7 @@ public:
static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pangofun_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
AM_RANGE(0x000f0000, 0x000fffff) AM_ROM AM_REGION("bios", 0 )
AM_RANGE(0x00100000, 0x00ffffff) AM_NOP
@ -124,6 +124,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( pcat_io, AS_IO, 32, pangofun_state )
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8("rtc", mc146818_device, read, write, 0xffffffff)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
ADDRESS_MAP_END
#define AT_KEYB_HELPER(bit, text, key1) \
@ -245,7 +248,6 @@ ROM_END
DRIVER_INIT_MEMBER(pangofun_state,pangofun)
{
pc_vga_init(machine(), read8_delegate(FUNC(pangofun_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
GAME( 1995, pangofun, 0, pangofun, pangofun, pangofun_state, pangofun, ROT0, "InfoCube", "Pango Fun (Italy)", GAME_NOT_WORKING|GAME_NO_SOUND )

View File

@ -53,7 +53,7 @@ public:
/* TODO: understand the proper ROM loading.*/
static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_dyn_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
AM_RANGE(0x000c8000, 0x000cffff) AM_RAM
// AM_RANGE(0x000d0000, 0x000d7fff) AM_RAM AM_REGION("disk_bios", 0)
@ -69,6 +69,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( pcat_io, AS_IO, 32, pcat_dyn_state )
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8("rtc", mc146818_device, read, write, 0xffffffff)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
ADDRESS_MAP_END
#define AT_KEYB_HELPER(bit, text, key1) \
@ -198,7 +201,6 @@ ROM_END
DRIVER_INIT_MEMBER(pcat_dyn_state,pcat_dyn)
{
pc_vga_init(machine(), read8_delegate(FUNC(pcat_dyn_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
GAME( 1995, toursol, 0, pcat_dyn, pcat_dyn, pcat_dyn_state, pcat_dyn, ROT0, "Dynamo", "Tournament Solitaire (V1.06, 08/03/95)", GAME_NOT_WORKING|GAME_NO_SOUND )

View File

@ -183,7 +183,7 @@ WRITE8_MEMBER(pcat_nit_state::pcat_nit_rombank_w)
static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_nit_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) AM_WRITENOP
AM_RANGE(0x000d0000, 0x000d3fff) AM_RAM AM_REGION("disk_bios", 0)
AM_RANGE(0x000d7000, 0x000d7003) AM_WRITE8(pcat_nit_rombank_w, 0xff)
@ -211,6 +211,9 @@ static ADDRESS_MAP_START( pcat_nit_io, AS_IO, 32, pcat_nit_state )
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0278, 0x027f) AM_READ8(pcat_nit_io_r, 0xffffffff) AM_WRITENOP
AM_RANGE(0x0280, 0x0283) AM_READNOP
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f8, 0x03ff) AM_DEVREADWRITE8("ns16450_0", ns16450_device, ins8250_r, ins8250_w, 0xffffffff)
ADDRESS_MAP_END
@ -428,7 +431,6 @@ DRIVER_INIT_MEMBER(pcat_nit_state,pcat_nit)
machine().device<nvram_device>("nvram")->set_base(m_banked_nvram, 0x2000);
pc_vga_init(machine(), read8_delegate(FUNC(pcat_nit_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
GAME( 1993, bonanza, 0, pcat_nit, pcat_nit, pcat_nit_state, pcat_nit, ROT0, "New Image Technologies", "Bonanza (Revision 3)", GAME_NOT_WORKING|GAME_NO_SOUND )

View File

@ -240,7 +240,7 @@ static const struct pit8253_config at_pit8254_config =
static ADDRESS_MAP_START( photoply_map, AS_PROGRAM, 32, photoply_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM // VGA RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff) // VGA RAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0) //???
AM_RANGE(0x000c8000, 0x000cffff) AM_RAM AM_REGION("video_bios", 0)
AM_RANGE(0x000d0000, 0x000dffff) AM_RAM AM_REGION("ex_bios", 0)
@ -262,7 +262,10 @@ static ADDRESS_MAP_START( photoply_io, AS_IO, 32, photoply_state )
AM_RANGE(0x00e8, 0x00eb) AM_NOP
AM_RANGE(0x0278, 0x027f) AM_RAM //parallel port 2
AM_RANGE(0x0378, 0x037f) AM_RAM //parallel port
AM_RANGE(0x03bc, 0x03bf) AM_RAM //parallel port 3
//AM_RANGE(0x03bc, 0x03bf) AM_RAM //parallel port 3
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
// AM_RANGE(0x03f4, 0x03f7) AM_READ_LEGACY(kludge_r) // fdc
ADDRESS_MAP_END
@ -379,7 +382,6 @@ ROM_END
DRIVER_INIT_MEMBER(photoply_state,photoply)
{
pc_vga_init(machine(), read8_delegate(FUNC(photoply_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
GAME( 199?, photoply, 0, photoply, photoply, photoply_state, photoply, ROT0, "Funworld", "Photo Play 2000 (v2.01)", GAME_NOT_WORKING|GAME_NO_SOUND )

View File

@ -312,8 +312,10 @@ static ADDRESS_MAP_START( pntnpuzl_map, AS_PROGRAM, 16, pntnpuzl_state )
AM_RANGE(0x28001a, 0x28001b) AM_WRITENOP
/* standard VGA */
AM_RANGE(0x3a0000, 0x3bffff) AM_RAM // RAM
// AM_RANGE(0x3c0000, 0x3c0fff) AM_RAM // regs
AM_RANGE(0x3a0000, 0x3bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffff)
AM_RANGE(0x3c03b0, 0x3c03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffff)
AM_RANGE(0x3c03c0, 0x3c03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffff)
AM_RANGE(0x3c03d0, 0x3c03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffff)
AM_RANGE(0x400000, 0x407fff) AM_RAM
ADDRESS_MAP_END
@ -386,7 +388,6 @@ DRIVER_INIT_MEMBER(pntnpuzl_state,pip)
// rom[0x2696/2] = 0x4e71;
// rom[0x26a0/2] = 0x4e71;
pc_vga_init(machine(), read8_delegate(FUNC(pntnpuzl_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0x3a0000, machine().device("maincpu")->memory().space(AS_PROGRAM), 0x3c0000);
}

View File

@ -518,7 +518,7 @@ static I8237_INTERFACE( dma8237_2_config )
static ADDRESS_MAP_START( queen_map, AS_PROGRAM, 32, queen_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c3fff) AM_ROMBANK("video_bank1") AM_WRITE(isa_ram1_w)
AM_RANGE(0x000c4000, 0x000c7fff) AM_ROMBANK("video_bank2") AM_WRITE(isa_ram2_w)
AM_RANGE(0x000e0000, 0x000e3fff) AM_ROMBANK("bios_ext1") AM_WRITE(bios_ext1_ram_w)
@ -542,6 +542,9 @@ static ADDRESS_MAP_START( queen_io, AS_IO, 32, queen_state )
AM_RANGE(0x00e8, 0x00ef) AM_NOP
AM_RANGE(0x01f0, 0x01f7) AM_READWRITE(ide_r, ide_w)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f0, 0x03f7) AM_READWRITE(fdc_r, fdc_w)
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
@ -656,7 +659,6 @@ void queen_state::machine_start()
kbdc8042_init(machine(), &at8042);
pc_vga_init(machine(), read8_delegate(FUNC(queen_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
void queen_state::machine_reset()

View File

@ -397,7 +397,7 @@ static I8237_INTERFACE( dma8237_2_config )
static ADDRESS_MAP_START(savquest_map, AS_PROGRAM, 32, savquest_state)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
AM_RANGE(0x000e0000, 0x000fffff) AM_ROMBANK("bank1")
AM_RANGE(0x000e0000, 0x000fffff) AM_WRITE(bios_ram_w)
@ -418,6 +418,9 @@ static ADDRESS_MAP_START(savquest_io, AS_IO, 32, savquest_state)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
AM_RANGE(0x01f0, 0x01f7) AM_READWRITE(ide_r, ide_w)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f0, 0x03f7) AM_READWRITE(fdc_r, fdc_w)
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
@ -530,7 +533,6 @@ void savquest_state::machine_start()
kbdc8042_init(machine(), &at8042);
pc_vga_init(machine(), read8_delegate(FUNC(savquest_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
void savquest_state::machine_reset()

View File

@ -93,6 +93,7 @@ public:
static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, su2000_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("mem_bank")
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM
AM_RANGE(0x000f0000, 0x000fffff) AM_ROM
AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0x0f0000)
@ -100,6 +101,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( pcat_io, AS_IO, 32, su2000_state )
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
ADDRESS_MAP_END
@ -288,7 +292,6 @@ void su2000_state::machine_start()
kbdc8042_init(machine(), &at8042);
pc_vga_init(machine(), read8_delegate(FUNC(su2000_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
void su2000_state::machine_reset()

View File

@ -456,7 +456,11 @@ static I8237_INTERFACE( dma8237_2_config )
static ADDRESS_MAP_START( taitowlf_map, AS_PROGRAM, 32, taitowlf_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
#if ENABLE_VGA
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
#else
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
#endif
#if ENABLE_VGA
AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
#else
@ -483,6 +487,11 @@ static ADDRESS_MAP_START(taitowlf_io, AS_IO, 32, taitowlf_state )
AM_RANGE(0x0300, 0x03af) AM_NOP
AM_RANGE(0x03b0, 0x03df) AM_NOP
AM_RANGE(0x0278, 0x027b) AM_WRITE(pnp_config_w)
#if ENABLE_VGA
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
#endif
AM_RANGE(0x03f0, 0x03ff) AM_READWRITE(fdc_r, fdc_w)
AM_RANGE(0x0a78, 0x0a7b) AM_WRITE(pnp_data_w)
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
@ -711,7 +720,6 @@ DRIVER_INIT_MEMBER(taitowlf_state,taitowlf)
kbdc8042_init(machine(), &at8042);
#if ENABLE_VGA
pc_vga_init(machine(), read8_delegate(FUNC(taitowlf_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
#endif
}

View File

@ -396,7 +396,7 @@ WRITE32_MEMBER(voyager_state::bios_ram_w)
static ADDRESS_MAP_START( voyager_map, AS_PROGRAM, 32, voyager_state )
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM // VGA VRAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(trident_mem_r, trident_mem_w, 0xffffffff) // VGA VRAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
AM_RANGE(0x000c8000, 0x000cffff) AM_NOP
//AM_RANGE(0x000d0000, 0x000d0003) AM_RAM // XYLINX - Sincronus serial communication
@ -446,6 +446,9 @@ static ADDRESS_MAP_START( voyager_io, AS_IO, 32, voyager_state )
AM_RANGE(0x02f8, 0x02ff) AM_NOP //To debug
AM_RANGE(0x0320, 0x038f) AM_NOP //To debug
AM_RANGE(0x03a0, 0x03a7) AM_NOP //To debug
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(trident_03c0_r, trident_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(trident_03d0_r, trident_03d0_w, 0xffffffff)
AM_RANGE(0x03e0, 0x03ef) AM_NOP //To debug
AM_RANGE(0x0378, 0x037f) AM_NOP //To debug
// AM_RANGE(0x0300, 0x03af) AM_NOP
@ -802,7 +805,6 @@ DRIVER_INIT_MEMBER(voyager_state,voyager)
m_bios_ram = auto_alloc_array(machine(), UINT32, 0x20000/4);
pc_vga_init(machine(), read8_delegate(FUNC(voyager_state::vga_setting),this));
pc_svga_trident_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
init_pc_common(machine(), PCCOMMON_KEYBOARD_AT, voyager_set_keyb_int);
intel82439tx_init(machine());

View File

@ -526,7 +526,7 @@ static I8237_INTERFACE( dma8237_2_config )
static ADDRESS_MAP_START(xtom3d_map, AS_PROGRAM, 32, xtom3d_state)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c3fff) AM_ROMBANK("video_bank1") AM_WRITE(isa_ram1_w)
AM_RANGE(0x000c4000, 0x000c7fff) AM_ROMBANK("video_bank2") AM_WRITE(isa_ram2_w)
AM_RANGE(0x000e0000, 0x000e3fff) AM_ROMBANK("bios_ext1") AM_WRITE(bios_ext1_ram_w)
@ -550,6 +550,9 @@ static ADDRESS_MAP_START(xtom3d_io, AS_IO, 32, xtom3d_state)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
AM_RANGE(0x01f0, 0x01f7) AM_READWRITE(ide_r, ide_w)
AM_RANGE(0x03b0, 0x03bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x03d0, 0x03df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x03f0, 0x03f7) AM_READWRITE(fdc_r, fdc_w)
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
@ -665,7 +668,6 @@ void xtom3d_state::machine_start()
kbdc8042_init(machine(), &at8042);
pc_vga_init(machine(), read8_delegate(FUNC(xtom3d_state::vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
void xtom3d_state::machine_reset()

View File

@ -59,6 +59,9 @@ static ADDRESS_MAP_START( bebox_mem, AS_PROGRAM, 64, bebox_state )
AM_RANGE(0x800002F8, 0x800002FF) AM_DEVREADWRITE8( "ns16550_1", ns16550_device, ins8250_r, ins8250_w, U64(0xffffffffffffffff) )
AM_RANGE(0x80000380, 0x80000387) AM_DEVREADWRITE8( "ns16550_2", ns16550_device, ins8250_r, ins8250_w, U64(0xffffffffffffffff) )
AM_RANGE(0x80000388, 0x8000038F) AM_DEVREADWRITE8( "ns16550_3", ns16550_device, ins8250_r, ins8250_w, U64(0xffffffffffffffff) )
AM_RANGE(0x800003b0, 0x800003bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, U64(0xffffffffffffffff))
AM_RANGE(0x800003c0, 0x800003cf) AM_READWRITE8_LEGACY(cirrus_03c0_r, cirrus_03c0_w, U64(0xffffffffffffffff))
AM_RANGE(0x800003d0, 0x800003df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, U64(0xffffffffffffffff))
AM_RANGE(0x800003F0, 0x800003F7) AM_READWRITE_LEGACY(bebox_800003F0_r, bebox_800003F0_w )
AM_RANGE(0x800003F8, 0x800003FF) AM_DEVREADWRITE8( "ns16550_0",ns16550_device, ins8250_r, ins8250_w, U64(0xffffffffffffffff) )
AM_RANGE(0x80000480, 0x8000048F) AM_READWRITE8_LEGACY(bebox_80000480_r, bebox_80000480_w, U64(0xffffffffffffffff) )
@ -66,7 +69,8 @@ static ADDRESS_MAP_START( bebox_mem, AS_PROGRAM, 64, bebox_state )
//AM_RANGE(0x800042E8, 0x800042EF) AM_DEVWRITE8_LEGACY("cirrus", cirrus_42E8_w, U64(0xffffffffffffffff) )
AM_RANGE(0xBFFFFFF0, 0xBFFFFFFF) AM_READ_LEGACY(bebox_interrupt_ack_r )
AM_RANGE(0xC00A0000, 0XC00BFFFF) AM_READWRITE8_LEGACY(vga_mem_r, vga_mem_w, U64(0xffffffffffffffff) )
AM_RANGE(0xC1000000, 0XC11FFFFF) AM_READWRITE8_LEGACY(vga_mem_linear_r, vga_mem_linear_w, U64(0xffffffffffffffff) )
AM_RANGE(0xFFF00000, 0xFFF03FFF) AM_ROMBANK("bank2")
AM_RANGE(0xFFF04000, 0xFFFFFFFF) AM_READWRITE8_LEGACY(bebox_flash_r, bebox_flash_w, U64(0xffffffffffffffff) )
ADDRESS_MAP_END

View File

@ -35,7 +35,11 @@ static ADDRESS_MAP_START(indiana_mem, AS_PROGRAM, 32, indiana_state)
AM_RANGE(0x00500000, 0x005fffff) AM_MIRROR(0x7f800000) AM_RAM // 16 bit PC MEM
AM_RANGE(0x00600000, 0x006fffff) AM_MIRROR(0x7f800000) AM_RAM // 8 bit PC IO
AM_RANGE(0x00700000, 0x007fffff) AM_MIRROR(0x7f800000) AM_RAM // 8 bit PC MEM
AM_RANGE(0x80000000, 0x803fffff) AM_MIRROR(0x7fc00000) AM_RAM // 4 MB RAM
AM_RANGE(0x7f6003b0, 0x7f6003bf) AM_READWRITE8_LEGACY(vga_port_03b0_r, vga_port_03b0_w, 0xffffffff)
AM_RANGE(0x7f6003c0, 0x7f6003cf) AM_READWRITE8_LEGACY(vga_port_03c0_r, vga_port_03c0_w, 0xffffffff)
AM_RANGE(0x7f6003d0, 0x7f6003df) AM_READWRITE8_LEGACY(vga_port_03d0_r, vga_port_03d0_w, 0xffffffff)
AM_RANGE(0x7f7a0000, 0x7f7bffff) AM_READWRITE8_LEGACY(vga_mem_r,vga_mem_w, 0xffffffff)
AM_RANGE(0x80000000, 0x803fffff) AM_MIRROR(0x7fc00000) AM_RAM // 4 MB RAM
ADDRESS_MAP_END
@ -85,7 +89,6 @@ READ8_MEMBER(indiana_state::indiana_vga_setting)
DRIVER_INIT_MEMBER(indiana_state,indiana)
{
pc_vga_init(machine(), read8_delegate(FUNC(indiana_state::indiana_vga_setting),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0x7f7a0000, machine().device("maincpu")->memory().space(AS_PROGRAM), 0x7f600000);
}
/* ROM definition */

View File

@ -59,7 +59,6 @@ public:
DECLARE_WRITE8_MEMBER(pc_dma_write_byte);
DECLARE_WRITE8_MEMBER(pc_nmi_enable_w);
DECLARE_READ8_MEMBER(pcjr_nmi_enable_r);
DECLARE_READ8_MEMBER(input_port_0_r);
DECLARE_READ8_MEMBER(pc_rtc_r);
DECLARE_WRITE8_MEMBER(pc_rtc_w);
DECLARE_WRITE8_MEMBER(pc_EXP_w);
@ -79,7 +78,6 @@ public:
DECLARE_DRIVER_INIT(pcmda);
DECLARE_DRIVER_INIT(pc1512);
DECLARE_DRIVER_INIT(pc1640);
DECLARE_DRIVER_INIT(pc_vga);
DECLARE_MACHINE_START(pc);
DECLARE_MACHINE_RESET(pc);
DECLARE_MACHINE_RESET(tandy1000rl);

View File

@ -617,22 +617,53 @@ void bebox_ide_interrupt(device_t *device, int state)
* Video card (Cirrus Logic CL-GD5430)
*
*************************************/
/*
static READ64_HANDLER( bebox_video_r )
{
const UINT64 *mem = (const UINT64 *) pc_vga_memory();
return BIG_ENDIANIZE_INT64(mem[offset]);
UINT64 result = 0;
mem_mask = FLIPENDIAN_INT64(mem_mask);
if (ACCESSING_BITS_0_7)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 0, mem_mask >> 0) << 0;
if (ACCESSING_BITS_8_15)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 1, mem_mask >> 8) << 8;
if (ACCESSING_BITS_16_23)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 2, mem_mask >> 16) << 16;
if (ACCESSING_BITS_24_31)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 3, mem_mask >> 24) << 24;
if (ACCESSING_BITS_32_39)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 4, mem_mask >> 32) << 32;
if (ACCESSING_BITS_40_47)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 5, mem_mask >> 40) << 40;
if (ACCESSING_BITS_48_55)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 6, mem_mask >> 48) << 48;
if (ACCESSING_BITS_56_63)
result |= (UINT64)vga_mem_linear_r(space, offset * 8 + 7, mem_mask >> 56) << 56;
return FLIPENDIAN_INT64(result);
}
static WRITE64_HANDLER( bebox_video_w )
{
UINT64 *mem = (UINT64 *) pc_vga_memory();
data = BIG_ENDIANIZE_INT64(data);
mem_mask = BIG_ENDIANIZE_INT64(mem_mask);
COMBINE_DATA(&mem[offset]);
data = FLIPENDIAN_INT64(data);
mem_mask = FLIPENDIAN_INT64(mem_mask);
if (ACCESSING_BITS_0_7)
vga_mem_linear_w(space, offset * 8 + 0, data >> 0 , mem_mask >> 0);
if (ACCESSING_BITS_8_15)
vga_mem_linear_w(space, offset * 8 + 1, data >> 8 , mem_mask >> 8);
if (ACCESSING_BITS_16_23)
vga_mem_linear_w(space, offset * 8 + 2, data >> 16, mem_mask >> 16);
if (ACCESSING_BITS_24_31)
vga_mem_linear_w(space, offset * 8 + 3, data >> 24, mem_mask >> 24);
if (ACCESSING_BITS_32_39)
vga_mem_linear_w(space, offset * 8 + 4, data >> 32, mem_mask >> 32);
if (ACCESSING_BITS_40_47)
vga_mem_linear_w(space, offset * 8 + 5, data >> 40, mem_mask >> 40);
if (ACCESSING_BITS_48_55)
vga_mem_linear_w(space, offset * 8 + 6, data >> 48, mem_mask >> 48);
if (ACCESSING_BITS_56_63)
vga_mem_linear_w(space, offset * 8 + 7, data >> 56, mem_mask >> 56);
}
*/
/*************************************
*
* 8237 DMA
@ -1060,8 +1091,6 @@ DRIVER_INIT_MEMBER(bebox_state,bebox)
{
address_space &space_0 = machine().device("ppc1")->memory().space(AS_PROGRAM);
address_space &space_1 = machine().device("ppc2")->memory().space(AS_PROGRAM);
offs_t vram_begin;
offs_t vram_end;
/* set up boot and flash ROM */
membank("bank2")->set_base(machine().root_device().memregion("user2")->base());
@ -1073,12 +1102,6 @@ DRIVER_INIT_MEMBER(bebox_state,bebox)
kbdc8042_init(machine(), &bebox_8042_interface);
/* install VGA memory */
vram_begin = 0xC1000000;
vram_end = vram_begin + pc_vga_memory_size() - 1;
space_0.install_legacy_readwrite_handler(vram_begin, vram_end, FUNC(bebox_video_r), FUNC(bebox_video_w));
space_1.install_legacy_readwrite_handler(vram_begin, vram_end, FUNC(bebox_video_r), FUNC(bebox_video_w));
/* The following is a verrrry ugly hack put in to support NetBSD for
* NetBSD. When NetBSD/bebox it does most of its work on CPU #0 and then
* lets CPU #1 go. However, it seems that CPU #1 jumps into never-never

View File

@ -1406,8 +1406,6 @@ DRIVER_INIT_MEMBER(pc_state,mc1502)
mess_init_pc_common(machine(), 0, NULL, pc_set_irq_line);
}
READ8_MEMBER(pc_state::input_port_0_r ) { return machine().root_device().ioport("IN0")->read(); }
DRIVER_INIT_MEMBER(pc_state,pc1640)
{
address_space &io_space = machine().firstcpu->space( AS_IO );
@ -1418,14 +1416,6 @@ DRIVER_INIT_MEMBER(pc_state,pc1640)
mess_init_pc_common(machine(), PCCOMMON_KEYBOARD_PC, pc_set_keyb_int, pc_set_irq_line);
}
DRIVER_INIT_MEMBER(pc_state,pc_vga)
{
mess_init_pc_common(machine(), PCCOMMON_KEYBOARD_PC, pc_set_keyb_int, pc_set_irq_line);
pc_vga_init(machine(), read8_delegate(FUNC(pc_state::input_port_0_r),this));
pc_vga_io_init(machine(), machine().device("maincpu")->memory().space(AS_PROGRAM), 0xa0000, machine().device("maincpu")->memory().space(AS_IO), 0x0000);
}
static IRQ_CALLBACK(pc_irq_callback)
{
pc_state *st = device->machine().driver_data<pc_state>();

View File

@ -94,7 +94,6 @@ cirrus_device::cirrus_device(const machine_config &mconfig, const char *tag, dev
void cirrus_device::device_start()
{
pc_vga_cirrus_init(machine(), read8_delegate());
pc_svga_cirrus_io_init(machine(), machine().device("ppc1")->memory().space(AS_PROGRAM), 0xC00A0000, machine().device("ppc1")->memory().space(AS_PROGRAM), 0x80000000);
}
//-------------------------------------------------