Merge remote-tracking branch 'upstream/master' into mui

This commit is contained in:
AJR 2016-04-27 15:42:06 -04:00
commit b3578a6ec8
234 changed files with 7553 additions and 6583 deletions

1008
hash/pce_tourvision.xml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -773,6 +773,3 @@ WRITE8_MEMBER( a2bus_pcxporter_device::nmi_enable_w )
m_nmi_enabled = BIT(data,7);
m_isabus->set_nmi_state(m_nmi_enabled);
}

View File

@ -92,4 +92,3 @@ UINT8 intv_control_port_device::read_ctrl()
SLOT_INTERFACE_START( intv_control_port_devices )
SLOT_INTERFACE("handctrl", INTV_HANDCTRL)
SLOT_INTERFACE_END

View File

@ -445,4 +445,3 @@ void intvecs_synth_device::write_portA(UINT8 data)
{
m_psg_portA = (~data) & 0xff;
}

View File

@ -176,4 +176,3 @@ UINT8 intv_handctrl_device::read_ctrl()
return res;
}

View File

@ -219,4 +219,3 @@ SLOT_INTERFACE_END
SLOT_INTERFACE_START( neogeo_arc_pin15 )
SLOT_INTERFACE("mahjong", NEOGEO_MJCTRL)
SLOT_INTERFACE_END

View File

@ -129,4 +129,3 @@ void neogeo_dial_device::write_ctrlsel(UINT8 data)
{
m_ctrl_sel = data;
}

View File

@ -111,4 +111,3 @@ void neogeo_irrmaze_device::write_ctrlsel(UINT8 data)
{
m_ctrl_sel = data;
}

View File

@ -203,4 +203,3 @@ READ8_MEMBER(neogeo_joy_ac_device::in1_r)
{
return m_joy2->read();
}

View File

@ -171,4 +171,3 @@ UINT8 neogeo_mjctrl_device::read_start_sel()
{
return m_ss->read();
}

View File

@ -120,4 +120,3 @@ UINT8 saturn_analog_device::read_ctrl(UINT8 offset)
}
return res;
}

View File

@ -140,4 +140,3 @@ SLOT_INTERFACE_END
SLOT_INTERFACE_START( saturn_joys )
SLOT_INTERFACE("joypad", SATURN_JOY)
SLOT_INTERFACE_END

View File

@ -108,4 +108,3 @@ UINT16 saturn_joy_device::read_direct()
{
return m_joy->read();
}

View File

@ -119,4 +119,3 @@ UINT8 saturn_joymd6b_device::read_ctrl(UINT8 offset)
}
return res;
}

View File

@ -329,4 +329,3 @@ UINT8 saturn_keybd_device::read_ctrl(UINT8 offset)
}
return res;
}

View File

@ -117,4 +117,3 @@ UINT8 saturn_mouse_device::read_ctrl(UINT8 offset)
}
return res;
}

View File

@ -117,4 +117,3 @@ UINT8 saturn_track_device::read_ctrl(UINT8 offset)
}
return res;
}

View File

@ -106,4 +106,3 @@ UINT8 saturn_wheel_device::read_ctrl(UINT8 offset)
}
return res;
}

View File

@ -6770,7 +6770,6 @@ void drcbe_x64::op_fcopyi(x86code *&dst, const instruction &inst)
// 64-bit form
else if (inst.size() == 8)
{
if (srcp.is_memory())
{
emit_movq_r128_m64(dst, dstreg, MABS(srcp.memory())); // movq dstreg,[srcp]

View File

@ -92,4 +92,3 @@ void sm500_device::op_comcn()
}
// Test instructions

View File

@ -1337,4 +1337,3 @@ void pcxport_dmac_device::end_of_process()
m_state = STATE_SI;
}

View File

@ -171,5 +171,3 @@ void generic_latch_16_device::device_start()
save_item(NAME(m_latched_value));
save_item(NAME(m_latch_read));
}

View File

@ -895,7 +895,6 @@ void info_xml_creator::output_input(const ioport_list &portlist)
bool ctrl_analog = FALSE;
for (ioport_field &field : port.fields())
{
// track the highest player number
if (nplayer < field.player() + 1)
nplayer = field.player() + 1;

View File

@ -423,4 +423,3 @@ bool mame_options::parse_one_ini(emu_options &options, const char *basename, int
return result;
}

View File

@ -179,7 +179,6 @@ void ui_menu_file_manager::handle()
selected_device = (device_image_interface *) event->itemref;
if (selected_device != nullptr)
{
m_curr_selected = TRUE;
floppy_image_device *floppy_device = dynamic_cast<floppy_image_device *>(selected_device);
if (floppy_device != nullptr)

View File

@ -88,4 +88,3 @@ void *pdynlib::getsym_p(const pstring name)
return dlsym(m_lib, name.cstr());
#endif
}

View File

@ -13,9 +13,9 @@
* In this specific implementation, u is a unit vector specifying the row which
* changed. Thus v contains the changed column.
*
* Than z = A¹ u , w = transpose(A¹) v , lambda = v z
* Than z = A^-1 u , w = transpose(A^-1) v , lambda = v z
*
* A¹ <- 1.0 / (1.0 + lambda) * (z x w)
* A^-1 <- 1.0 / (1.0 + lambda) * (z x w)
*
* The approach is iterative and applied for each row changed.
*

View File

@ -23,7 +23,6 @@ NETLIB_NAMESPACE_DEVICES_START()
template <unsigned m_N, unsigned _storage_N>
class matrix_solver_SOR_mat_t: public matrix_solver_direct_t<m_N, _storage_N>
{
friend class matrix_solver_t;
public:

View File

@ -15,7 +15,7 @@
* Whilst the book proposes to invert the matrix R=(I+transpose(V)*Z) we define
*
* w = transpose(V)*y
* a = R¹ * w
* a = R^-1 * w
*
* and consequently
*

View File

@ -516,6 +516,7 @@ igspoker.cpp
ikki.cpp
imolagp.cpp
inder.cpp
instantm.cpp
intrscti.cpp
inufuku.cpp
invqix.cpp

View File

@ -3427,6 +3427,3 @@ Sweet Hearts II
Venetian Nights MK5 version is possibly rare
Wicked Winnings Only seen a Cash Express Hyperlink version so far, not to be confused with the more common 'Wicked Winnings II - Power Pay'
*/

View File

@ -2,7 +2,7 @@
// copyright-holders:Tomasz Slanina
/***************************************************************************
"Attack UFO" © 1980 Ryoto Electric Co.
"Attack UFO" (c) 1980 Ryoto Electric Co.
TODO:
- Verify I/O chip

View File

@ -2402,4 +2402,3 @@ GAME( 1986, shrike, 0, shrike, shrike, balsente_state, shrike, RO
GAME( 1987, rescraida,rescraid, balsente, rescraid, balsente_state, rescraid, ROT0, "Bally Midway", "Rescue Raider (stand-alone)", MACHINE_SUPPORTS_SAVE )
GAME( 198?, grudge, 0, balsente, grudge, balsente_state, grudge, ROT0, "Bally Midway", "Grudge Match (prototype)", MACHINE_SUPPORTS_SAVE )
GAME( 1985, teamht, 0, balsente, teamht, balsente_state, teamht, ROT0, "Bally/Sente", "Team Hat Trick", MACHINE_SUPPORTS_SAVE )

View File

@ -2468,8 +2468,6 @@ ROM_END
DRIVER_INIT_MEMBER(cclimber_state,yamato)
{
save_item(NAME(m_yamato_p0));
save_item(NAME(m_yamato_p1));
}

View File

@ -1134,7 +1134,7 @@ static MACHINE_CONFIG_DERIVED_CLASS(chihiro_base, xbox_base, chihiro_state)
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED(chihirogd, chihiro_base)
MCFG_NAOMI_GDROM_BOARD_ADD("rom_board", "gdrom", "pic", nullptr, NOOP)
MCFG_NAOMI_GDROM_BOARD_ADD("rom_board", ":gdrom", "^pic", nullptr, NOOP)
MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \

View File

@ -12340,4 +12340,3 @@ CONS( 1995, sfach, sfzch, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capc
CONS( 1995, sfzbch, sfzch, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Zero (CPS Changer, Brazil 950727)", MACHINE_SUPPORTS_SAVE )
// Ken Sei Mogura: Street Fighter II - see kenseim.c

View File

@ -267,7 +267,6 @@ WRITE8_MEMBER(cshooter_state::cshooter_txram_w)
void cshooter_state::video_start()
{
// there might actually be 4 banks of 2048 x 16 tilemaps in here as the upper scroll bits are with the rom banking.
m_bg_tilemap = &machine().tilemap().create(m_gfxdecode, tilemap_get_info_delegate(FUNC(cshooter_state::get_bg_tile_info),this),tilemap_mapper_delegate(FUNC(cshooter_state::bg_scan),this),16,16,2048, 64);
@ -304,7 +303,6 @@ void cshooter_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprec
UINT32 cshooter_state::screen_update_airraid(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
UINT16 bgscrolly = DM_GETSCROLL(0x6);
// this is more likely to be 'bank' than scroll, like NMK16
bgscrolly += ((m_hw & 0xc0) >> 6) * 256;

View File

@ -557,7 +557,6 @@ ROM_END
DRIVER_INIT_MEMBER(jongkyo_state,jongkyo)
{
UINT8 *rom = memregion("maincpu")->base();
/* first of all, do a simple bitswap */
@ -595,5 +594,3 @@ DRIVER_INIT_MEMBER(jongkyo_state,jongkyo)
*************************************/
GAME( 1985, jongkyo, 0, jongkyo, jongkyo, jongkyo_state, jongkyo, ROT0, "Kiwako", "Jongkyo", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )

View File

@ -1746,5 +1746,3 @@ GAME( 1987, buraikenb, avengers, avengersb,avengers, lwings_state, avengersb, RO
// cloned lwings hardware
GAME( 1992, fball, 0, fball, fball, driver_device, 0, ROT0, "FM Work", "Fire Ball (FM Work)", MACHINE_SUPPORTS_SAVE )

View File

@ -1199,38 +1199,7 @@ ROMEO - Sammy AX0201A01 'ROMEO' 4111-00000501 0250 K13 custom ASIC (TQ
315-6267 - SEGA 315-6267 custom ASIC (BGAxxx)
TD62064 - Toshiba TD62064 NPN 50V 1.5A Quad Darlington Driver (SOIC16)
SH4 - Hitachi SH-4 HD6417091RA CPU (BGA256)
BIOS.IC23 - Macronix 29L001MC-10 3.3volt FlashROM (SOP44)
This is a little strange, the ROM appears to be a standard SOP44 with reverse pinout but the
address lines are shifted one pin out of position compared to industry-standard pinouts.
The actual part number doesn't exist on the Macronix web site, even though they have datasheets for
everything else! So it's probably a custom design for Sammy and top-secret!
The size is assumed to be 1MBit and is 8-bit (D0-D7 only). The pinout appears to be this.....
+--\/--+
tied to WE of BS62LV1023 VCC | 1 44| VCC - tied to a transistor, probably RESET
NC | 2 43| NC
A9 | 3 42| NC
A10 | 4 41| A8
A11 | 5 40| A7
A12 | 6 39| A6
A13 | 7 38| A5
A14 | 8 37| A4
A15 | 9 36| A3
A16 |10 35| A2
NC |11 34| A1
NC |12 33| CE - tied to 315-6267
GND |13 32| GND
A0 |14 31| OE
D7 |15 30| D0
NC |16 29| NC
D6 |17 28| D1
NC |18 27| NC
D5 |19 26| D2
NC |20 25| NC
D4 |21 24| D3
VCC |22 23| NC
+------+
BIOS.IC23 - Macronix 29L001MC-10 3.3volt (1MBit) FlashROM (SOP44, reverse pinout)
W129AG - IC Works W129AG Programmable Clock Frequency Generator, clock input of 13.5MHz (SOIC16)
SW1 - 2-position Dip Switch
VGA - 15 pin VGA out connector @ 31.5kHz
@ -2719,7 +2688,7 @@ MACHINE_CONFIG_END
*/
static MACHINE_CONFIG_DERIVED( naomigd, naomi_base )
MCFG_NAOMI_GDROM_BOARD_ADD("rom_board", "gdrom", "pic", "naomibd_eeprom", WRITE8(dc_state, g1_irq))
MCFG_NAOMI_GDROM_BOARD_ADD("rom_board", ":gdrom", ":pic", "naomibd_eeprom", WRITE8(dc_state, g1_irq))
MACHINE_CONFIG_END
/*
@ -3088,11 +3057,16 @@ Region byte encoding is as follows:
ROM_LOAD16_WORD_SWAP_BIOS( 8, "epr-23607b.ic27", 0x000000, 0x200000, CRC(f308c5e9) SHA1(5470ab1cee6afecbd8ca8cf40f8fbe4ec2cb1471) ) \
ROM_SYSTEM_BIOS( 9, "bios9", "epr-23607 (USA)" ) \
ROM_LOAD16_WORD_SWAP_BIOS( 9, "epr-23607.ic27", 0x000000, 0x200000, CRC(2b55add2) SHA1(547de5f97d3183c8cd069c4fa3c09f13d8b637d9) )
/* First half is BIOS, second half is game settings and is blanked/reprogrammed by the BIOS as necessary */
/*
First half is BIOS, second half is game settings and is blanked/reprogrammed by the BIOS if game cartridge exchange was detected
area 0x1A000-0x1BFFF is write protected and contain 12 bytes of unit-specific unique information (probably serial number, manufacture date, etc),
2 dumps included for reference
*/
#define AW_BIOS \
ROM_REGION( 0x200000, "awflash", 0) \
ROM_SYSTEM_BIOS( 0, "bios0", "Atomiswave BIOS" ) \
ROM_LOAD16_WORD_SWAP_BIOS( 0, "bios.ic23_l", 0x000000, 0x010000, BAD_DUMP CRC(e5693ce3) SHA1(1bde3ed87af64b0f675ebd47f12a53e1fc5709c1) ) /* Might be bad.. especially. bytes 0x0000, 0x6000, 0x8000 which gave different reads */
ROM_LOAD16_WORD_SWAP_BIOS( 0, "bios0.ic23", 0x000000, 0x020000, CRC(719b2b0b) SHA1(b4c1a26bc8906d5275eb28c701dff2b9365bcdfa) ) \
ROM_LOAD16_WORD_SWAP_BIOS( 0, "bios1.ic23", 0x000000, 0x020000, CRC(d3e80a9f) SHA1(33024f9d51c04884c2b44ce146f340e7a857b959) )
/* default EEPROM values, same works for all games */
#define NAOMI_DEFAULT_EEPROM \
ROM_REGION16_BE( 0x80, "main_eeprom", 0 ) \

View File

@ -1515,8 +1515,6 @@ DRIVER_INIT_MEMBER(segag80r_state,monsterb)
DRIVER_INIT_MEMBER(segag80r_state,monster2)
{
address_space &iospace = m_maincpu->space(AS_IO);
address_space &pgmspace = m_maincpu->space(AS_PROGRAM);
@ -1565,8 +1563,6 @@ DRIVER_INIT_MEMBER(segag80r_state,pignewt)
DRIVER_INIT_MEMBER(segag80r_state,sindbadm)
{
address_space &iospace = m_maincpu->space(AS_IO);
address_space &pgmspace = m_maincpu->space(AS_PROGRAM);

View File

@ -917,16 +917,12 @@ DRIVER_INIT_MEMBER(senjyo_state,starforc)
}
DRIVER_INIT_MEMBER(senjyo_state,starfore)
{
m_is_senjyo = 0;
m_scrollhack = 0;
}
DRIVER_INIT_MEMBER(senjyo_state,starfora)
{
m_is_senjyo = 0;
m_scrollhack = 1;
}

View File

@ -9,7 +9,7 @@
See cat.c for the machine which the swyft later became.
This driver is dedicated in memory of Jef Raskin and Dave Boulton
This driver is dedicated in memory of Jef Raskin, Dave Boulton, and John "Sandy" Bumgarner (1941-2016)
IAI detailed credits:
Scott Kim - responsible for fonts on swyft and cat

View File

@ -253,13 +253,18 @@ I can't tell ATM if units are seconds (even if values in tables seem very relate
#include "cpu/h6280/h6280.h"
#include "sound/c6280.h"
#include "machine/i8155.h"
#include "softlist.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
class tourvision_state : public pce_common_state
{
public:
tourvision_state(const machine_config &mconfig, device_type type, const char *tag)
: pce_common_state(mconfig, type, tag),
m_subcpu(*this, "subcpu") { }
m_subcpu(*this, "subcpu"),
m_cart(*this, "cartslot")
{ }
DECLARE_WRITE8_MEMBER(tourvision_8085_d000_w);
DECLARE_WRITE8_MEMBER(tourvision_i8155_a_w);
@ -268,8 +273,58 @@ public:
DECLARE_WRITE_LINE_MEMBER(tourvision_timer_out);
DECLARE_WRITE_LINE_MEMBER(pce_irq_changed);
required_device<cpu_device> m_subcpu;
required_device<generic_slot_device> m_cart;
UINT32 m_rom_size;
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(tourvision_cart);
};
DEVICE_IMAGE_LOAD_MEMBER( tourvision_state, tourvision_cart )
{
m_rom_size = m_cart->common_get_size("rom");
m_cart->rom_alloc(m_rom_size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), m_rom_size, "rom");
UINT8* rgn = memregion("maincpu")->base();
UINT8* base = m_cart->get_rom_base();
if (m_rom_size == 0x0c0000)
{
memcpy(rgn+0x000000, base+0x000000, 0x0c0000 );
memcpy(rgn+0x0c0000, base+0x080000, 0x040000 );
}
else
if (m_rom_size == 0x060000)
{
memcpy(rgn+0x000000, base+0x000000, 0x040000 );
memcpy(rgn+0x040000, base+0x000000, 0x040000 );
memcpy(rgn+0x080000, base+0x040000, 0x020000 );
memcpy(rgn+0x0a0000, base+0x040000, 0x020000 );
memcpy(rgn+0x0c0000, base+0x040000, 0x020000 );
memcpy(rgn+0x0e0000, base+0x040000, 0x020000 );
}
else
{
for (int i=0;i<0x100000;i+=m_rom_size)
memcpy(rgn+i, base+0x000000, m_rom_size );
}
#if 0
{
FILE *fp;
fp=fopen("tourvision.bin", "w+b");
if (fp)
{
fwrite(rgn, 0x100000, 1, fp);
fclose(fp);
}
}
#endif
return IMAGE_INIT_PASS;
}
static INPUT_PORTS_START( tourvision )
PORT_START( "JOY" )
@ -444,6 +499,14 @@ static MACHINE_CONFIG_START( tourvision, tourvision_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "tourvision_cart")
MCFG_GENERIC_EXTENSIONS("bin")
MCFG_GENERIC_LOAD(tourvision_state, tourvision_cart)
MCFG_GENERIC_MANDATORY
MCFG_SOFTWARE_LIST_ADD("tv_list","pce_tourvision")
MACHINE_CONFIG_END
#define TOURVISION_BIOS \

View File

@ -282,7 +282,7 @@ WRITE8_MEMBER(namcos16_state::irq_disable_w)
WRITE8_MEMBER(namcos16_state::irq_ctrl_w)
{
m_master_irq_enable = (offset & 0x8000) ? false : true;
m_master_irq_enable = (offset & 0x0800) ? false : true;
}
WRITE8_MEMBER(namcos16_state::slave_halt_ctrl_w)

View File

@ -583,7 +583,7 @@ static MACHINE_CONFIG_START( triforce_base, triforce_state )
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( triforcegd, triforce_base )
MCFG_NAOMI_GDROM_BOARD_ADD("rom_board", "gdrom", "pic", nullptr, NOOP)
MCFG_NAOMI_GDROM_BOARD_ADD("rom_board", ":gdrom", ":pic", nullptr, NOOP)
MACHINE_CONFIG_END

View File

@ -218,4 +218,3 @@ public:
DECLARE_READ16_MEMBER(tmss_r);
DECLARE_WRITE16_MEMBER(tmss_swap_w);
};

View File

@ -284,6 +284,7 @@ private:
UINT32 si_pif_addr_rd64b;
UINT32 si_pif_addr_wr64b;
UINT32 si_status;
UINT32 si_dma_dir;
UINT32 cic_status;
int cic_type;

View File

@ -148,5 +148,3 @@ public:
TIMER_CALLBACK_MEMBER(gground_hack_timer_callback);
emu_timer *m_gground_hack_timer;
};

View File

@ -436,4 +436,3 @@ INTERRUPT_GEN_MEMBER(intv_state::intv_interrupt)
m_stic->screenrefresh();
}

View File

@ -212,6 +212,7 @@ void n64_periphs::device_reset()
si_dram_addr = 0;
si_pif_addr = 0;
si_status = 0;
si_dma_dir = 0;
si_dma_timer->adjust(attotime::never);
//memset(m_save_data.eeprom, 0, 2048);
@ -2082,6 +2083,7 @@ TIMER_CALLBACK_MEMBER(n64_periphs::si_dma_callback)
void n64_periphs::si_dma_tick()
{
si_dma_timer->adjust(attotime::never);
pif_dma(si_dma_dir);
si_status = 0;
si_status |= 0x1000;
signal_rcp_interrupt(SI_INTERRUPT);
@ -2089,11 +2091,6 @@ void n64_periphs::si_dma_tick()
void n64_periphs::pif_dma(int direction)
{
if(si_status & 1)
{
si_status |= 8; //DMA Error, overlapping request
return; // SI Busy, ignore request
}
if (!DWORD_ALIGNED(si_dram_addr))
{
fatalerror("pif_dma: si_dram_addr unaligned: %08X\n", si_dram_addr);
@ -2131,8 +2128,6 @@ void n64_periphs::pif_dma(int direction)
*dst++ = d;
}
}
si_status |= 1;
si_dma_timer->adjust(attotime::from_hz(50000));
}
READ32_MEMBER( n64_periphs::si_reg_r )
@ -2160,16 +2155,29 @@ WRITE32_MEMBER( n64_periphs::si_reg_w )
case 0x04/4: // SI_PIF_ADDR_RD64B_REG
// PIF RAM -> RDRAM
if(si_status & 1)
{
si_status |= 8; //DMA Error, overlapping request
return; // SI Busy, ignore request
}
si_pif_addr = data;
si_pif_addr_rd64b = data;
pif_dma(0);
si_dma_dir = 0;
si_status |= 1;
si_dma_timer->adjust(attotime::from_hz(50000));
break;
case 0x10/4: // SI_PIF_ADDR_WR64B_REG
// RDRAM -> PIF RAM
if(si_status & 1)
{
si_status |= 8; //DMA Error, overlapping request
return; // SI Busy, ignore request
}
si_pif_addr = data;
si_pif_addr_wr64b = data;
pif_dma(1);
si_dma_dir = 1;
si_dma_timer->adjust(attotime::from_hz(50000));
break;
case 0x18/4: // SI_STATUS_REG

View File

@ -397,7 +397,8 @@ void naomi_gdrom_board::device_start()
UINT64 key;
UINT8 netpic = 0;
const UINT8 *picdata = memregion(pic_tag)->base();
memory_region *mr = memregion(pic_tag);
const UINT8 *picdata = mr->base();
if(picdata) {
if(memregion(pic_tag)->bytes() >= 0x4000) {

View File

@ -120,4 +120,3 @@ extern const device_type SEGA_317_0007;
#endif /// __SEGACRP2_Z80__

View File

@ -944,7 +944,6 @@ void sega_315_5061_device::decrypt()
sega_315_5018_device::sega_315_5018_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : segacrpt_z80_device(mconfig, tag, owner, clock) {}
void sega_315_5018_device::decrypt()
{
static const UINT8 convtable[32][4] =
{
/* opcode data address */
@ -975,7 +974,6 @@ void sega_315_5018_device::decrypt()
sega_315_5010_device::sega_315_5010_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : segacrpt_z80_device(mconfig, tag, owner, clock) {}
void sega_315_5010_device::decrypt()
{
static const UINT8 convtable[32][4] =
{
/* opcode data address */
@ -1065,7 +1063,6 @@ void sega_315_5028_device::decrypt()
sega_315_5084_device::sega_315_5084_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : segacrpt_z80_device(mconfig, tag, owner, clock) {}
void sega_315_5084_device::decrypt()
{
static const UINT8 convtable[32][4] =
{
/* opcode data address */

View File

@ -293,4 +293,3 @@ extern const device_type SEGA_315_5084;
#endif /// __SEGACRPT_Z80__

View File

@ -35383,72 +35383,6 @@ tourtabl // 030170 1978/03 [6507]
@source:tourvis.cpp
tourvis // (c) ???? Tourvision
tv1943 // (c) 1991 Capcom / Nexat Soft (Tourvision bootleg)
tvablast // (c) 1990 Hudson / Kaneko (Tourvision bootleg)
tvaburn // (c) 1990 Sega / Nec Avenue (Tourvision bootleg)
tvarmedf // (c) 1990 Nichibutsu / Big Don (Tourvision bootleg)
tvbalstx // (c) 1991 Psygnosis / Coconuts Japan (Tourvision bootleg)
tvbeball // (c) 1990 Hudson (Tourvision bootleg)
tvbomber // (c) 1990 Hudson (Tourvision bootleg)
tvbrabho // (c) 1990 Namco / Namcot (Tourvision bootleg)
tvcolumn // (c) 1991 Telenet Japan (Tourvision bootleg)
tvcoryon // (c) 1991 Naxat Soft (Tourvision bootleg)
tvdensho // (c) 1989 Big Club / Wolf Team (Tourvision bootleg)
tvdevilc // (c) 1990 Naxat / Red (Tourvision bootleg)
tvdmoon // (c) 1991 T.S.S. (Tourvision bootleg)
tvdodgeb // (c) 1990 Technos Japan Corp / Naxat Soft (Tourvision bootleg)
tvdormon // (c) 1989 Hudson / Fujiko-Shogakukan-TV Asahi (Tourvision bootleg)
tvdrgnst // (c) 1988 Namcot (Tourvision bootleg)
tvdsenpu // (c) 1990 Toaplan / Nec Avenue (Tourvision bootleg)
tvdunexp // (c) 1989 Hudson / Atlus (Tourvision bootleg)
tveigues // (c) 1990 Victor Musical Industries, Inc. (Tourvision bootleg)
tvfblast // (c) 1990 Namco / Namcot (Tourvision bootleg)
tvflaptw // (c) 1989 Namco (Tourvision bootleg)
tvfsoc90 // (c) 1990 Human (Tourvision bootleg)
tvftenis // (c) 1991 Human (Tourvision bootleg)
tvgomola // (c) 1990 Human (Tourvision bootleg)
tvgunhed // (c) 1989 Hudson / Toho Sunrise (Tourvision bootleg)
tvhtdaka // (c) 1991 Taito(Tourvision bootleg)
tvjchan // (c) 1991 Hudson (Tourvision bootleg)
tvkaikai // (c) 1990 Taito (Tourvision bootleg)
tvlegaxe // (c) 1988 Victor Musical Industries, Inc. (Tourvision bootleg)
tvlqkids // (c) 1992 Taito (Tourvision bootleg)
tvmrheli // (c) 1989 IREM Corp (Tourvision bootleg)
tvninjar // (c) 1992 Tecmo / Hudson Soft (Tourvision bootleg)
tvninjas // (c) 1990 IREM Corp (Tourvision bootleg)
tvopwolf // (c) 1990 Taito / Nec Avenue (Tourvision bootleg)
tvovride // (c) 1990 Sting / Data East Corporation (Tourvision bootleg)
tvpaclnd // (c) 1991 Namco / Namcot (Tourvision bootleg)
tvpcgen2 // (c) 1991 Hudson Soft / Red (Tourvision bootleg)
tvpchasr // (c) 1990 Naxat Soft (Tourvision bootleg)
tvpcybrg // (c) 1992 Hudson Soft / Red (Tourvision bootleg)
tvpdrift // (c) 1991 Sega / Asmik Corporation (Tourvision bootleg)
tvpow11 // (c) 1991 Hudson (Tourvision bootleg)
tvpros91 // (c) 1991 Namco / Namcot (Tourvision bootleg)
tvpwlg4 // (c) 1991 Hudson (Tourvision bootleg)
tvpzlboy // (c) 1991 Atlus / Telenet Japan (Tourvision bootleg)
tvraiden // (c) 1991 Seibu Kaihatsu inc / Hudson Soft (Tourvision bootleg)
tvrs2 // (c) 1990 Taito (Tourvision bootleg)
tvrtype2 // (c) 1991 IREM (Tourvision bootleg)
tvsci // (c) 1991 Taito (Tourvision bootleg)
tvsdarms // (c) 1989 Capcom / Nec Avenue (Tourvision bootleg)
tvshnobi // (c) 1989 Sega / Asmik Corporation (Tourvision bootleg)
tvskweek // (c) 1991 Victor Musical Industries, Inc. (Tourvision bootleg)
tvslmndr // (c) 1991 Konami (Tourvision bootleg)
tvsson2 // (c) 1989 Capcom / Nec Avenue (Tourvision bootleg)
tvsssold // (c) 1990 Hudson / Kaneko (Tourvision bootleg)
tvsvball // (c) 1990 Video System (Tourvision bootleg)
tvtaisen // (c) 1992 Taito (Tourvision bootleg)
tvtcrst2 // (c) 1992 Nichibutsu / Nihon Bussan Co., Ltd (Tourvision bootleg)
tvthbld // (c) 1990 Sega / NEC Avenue (Tourvision bootleg)
tvtonma // (c) 1991 IREM Corp (Tourvision bootleg)
tvtsboys // (c) 1990 Victor Musical Industries, Inc. (Tourvision bootleg)
tvtsujin // (c) 1992 Toaplan Co Ltd / Taito Corporation (Tourvision bootleg)
tvusapb // (c) 1989 Aicom (Tourvision bootleg)
tvvolfd // (c) 1989 Taito (Tourvision bootleg)
tvwnshot // (c) 1989 Data East Corp. (Tourvision bootleg)
tvwring // (c) 1990 Naxat Soft (Tourvision bootleg)
tvxvious // (c) 1990 Namco Ltd. / Namcot (Tourvision bootleg)
@source:toypop.cpp
liblrabl // (c) 1983

View File

@ -53,4 +53,3 @@ spelunkr // (c) 1985 licensed from Broderbund
spelunkrj // (c) 1985 licensed from Broderbund
yanchamr // (c) 1986 (Japan)
youjyudn // (c) 1986 (Japan)

View File

@ -3024,6 +3024,8 @@ int nv2a_renderer::geforce_exec_method(address_space & space, UINT32 chanel, UIN
wait();
}
}
else if (primitive_type == NV2A_BEGIN_END::LINE_LOOP) {
}
else {
machine().logerror("Unsupported primitive %d for method 0x1818\n", int(primitive_type));
countlen = 0;

View File

@ -1083,4 +1083,3 @@ diagnostics_module * diagnostics_module::get_instance()
#endif // WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#endif

View File

@ -276,7 +276,7 @@ private:
//-----------------------------------------------------------------------------
// Enum each PNP device using WMI and check each device ID to see if it contains
// "IG_" (ex. "VID_045E&PID_028E&IG_00"). If it does, then its an XInput device
// "IG_" (ex. "VID_045E&PID_028E&IG_00"). If it does, then it's an XInput device
// Unfortunately this information can not be found by just using DirectInput.
// Checking against a VID/PID of 0x028E/0x045E won't find 3rd party or future
// XInput devices.
@ -376,7 +376,7 @@ private:
hr = pDevices[iDevice]->Get(bstrDeviceID.get(), 0L, &var, nullptr, nullptr);
if (SUCCEEDED(hr) && var.vt == VT_BSTR && var.bstrVal != nullptr)
{
// Check if the device ID contains "IG_". If it does, then its an XInput device
// Check if the device ID contains "IG_". If it does, then it's an XInput device
// Unfortunately this information can not be found by just using DirectInput
if (wcsstr(var.bstrVal, L"IG_"))
{

View File

@ -21,7 +21,6 @@ class output_network_server :
public raw_tcp_server::listener,
public raw_tcp_connection::listener
{
public:
output_network_server(uv_loop_t* loop) { m_tcp_server = new raw_tcp_server(loop, "0.0.0.0", 8000, 256, this, this); }

View File

@ -120,4 +120,3 @@ void texture_manager::remove_provider(std::string name, bool delete_provider)
m_textures[name] = nullptr;
}
}

View File

@ -94,6 +94,9 @@ renderer_bgfx::renderer_bgfx(std::shared_ptr<osd_window> w)
renderer_bgfx::~renderer_bgfx()
{
bgfx::reset(0, 0, BGFX_RESET_NONE);
bgfx::touch(0);
bgfx::frame();
if (m_avi_writer != nullptr && m_avi_writer->recording())
{
m_avi_writer->stop();

View File

@ -194,4 +194,3 @@ void osd_sleep(osd_ticks_t duration)
{
std::this_thread::sleep_for(std::chrono::high_resolution_clock::duration(duration));
}

View File

@ -149,7 +149,6 @@ struct osd_work_queue
, spinloops(0)
#endif
{
}
std::mutex lock; // lock for protecting the queue

View File

@ -31,6 +31,7 @@
#include "emu.h"
#include "emuopts.h"
#include "ui/uimain.h"
#include "ui/menu.h"
// OSD headers
@ -451,6 +452,9 @@ OSDWORK_CALLBACK( sdl_window_info::sdlwindow_toggle_full_screen_wt )
window->m_windowed_dim = window->get_size();
}
// reset UI to main menu
ui_menu::stack_reset(window->machine());
// kill off the drawers
window->renderer_reset();
window->set_platform_window(nullptr);
bool is_osx = false;

View File

@ -23,6 +23,7 @@
// MAME headers
#include "emu.h"
#include "uiinput.h"
#include "ui/menu.h"
// MAMEOS headers
#include "winmain.h"
@ -1979,8 +1980,11 @@ void win_window_info::set_fullscreen(int fullscreen)
return;
m_fullscreen = fullscreen;
// reset UI to main menu
ui_menu::stack_reset(machine());
// kill off the drawers
m_renderer.reset();
renderer_reset();
// hide ourself
ShowWindow(platform_window<HWND>(), SW_HIDE);

View File

@ -25,6 +25,10 @@
#include <ctype.h>
#include <iostream>
#include <cassert>
#include <cstring>
#include <limits>
#include <memory>
#include <new>
#include <unordered_map>
@ -191,19 +195,52 @@ private:
};
// ======================> chd_zero_compressor
class chd_zero_compressor : public chd_file_compressor
{
public:
// construction/destruction
chd_zero_compressor(std::uint64_t offset = 0, std::uint64_t maxoffset = 0)
: m_offset(offset)
, m_maxoffset(maxoffset)
{
}
// read interface
virtual std::uint32_t read_data(void *dest, std::uint64_t offset, std::uint32_t length) override
{
offset += m_offset;
if (offset >= m_maxoffset)
return 0;
if (offset + length > m_maxoffset)
length = m_maxoffset - offset;
std::memset(dest, 0, length);
return length;
}
private:
// internal state
std::uint64_t m_offset;
std::uint64_t m_maxoffset;
};
// ======================> chd_rawfile_compressor
class chd_rawfile_compressor : public chd_file_compressor
{
public:
// construction/destruction
chd_rawfile_compressor(util::core_file &file, UINT64 offset = 0, UINT64 maxoffset = ~0)
: m_file(file),
m_offset(offset),
m_maxoffset((std::min)(maxoffset, file.size())) { }
chd_rawfile_compressor(util::core_file &file, std::uint64_t offset = 0, std::uint64_t maxoffset = std::numeric_limits<std::uint64_t>::max())
: m_file(file)
, m_offset(offset)
, m_maxoffset((std::min)(maxoffset, file.size()))
{
}
// read interface
virtual UINT32 read_data(void *dest, UINT64 offset, UINT32 length)
virtual std::uint32_t read_data(void *dest, std::uint64_t offset, std::uint32_t length) override
{
offset += m_offset;
if (offset >= m_maxoffset)
@ -217,8 +254,8 @@ public:
private:
// internal state
util::core_file & m_file;
UINT64 m_offset;
UINT64 m_maxoffset;
std::uint64_t m_offset;
std::uint64_t m_maxoffset;
};
@ -1626,11 +1663,10 @@ static void do_create_raw(parameters_t &params)
printf("Logical size: %s\n", big_int_string(tempstr, input_end - input_start));
// catch errors so we can close & delete the output file
chd_rawfile_compressor *chd = nullptr;
try
{
// create the new CHD
chd = new chd_rawfile_compressor(*input_file, input_start, input_end);
std::unique_ptr<chd_file_compressor> chd(new chd_rawfile_compressor(*input_file, input_start, input_end));
chd_error err;
if (output_parent.opened())
err = chd->create(output_chd_str->c_str(), input_end - input_start, hunk_size, compression, output_parent);
@ -1645,11 +1681,9 @@ static void do_create_raw(parameters_t &params)
// compress it generically
compress_common(*chd);
delete chd;
}
catch (...)
{
delete chd;
// delete the output file
auto output_chd_str = params.find(OPTION_OUTPUT);
if (output_chd_str != params.end())
@ -1804,11 +1838,12 @@ static void do_create_hd(parameters_t &params)
printf("Logical size: %s\n", big_int_string(tempstr, UINT64(totalsectors) * UINT64(sector_size)));
// catch errors so we can close & delete the output file
chd_rawfile_compressor *chd = nullptr;
try
{
// create the new hard drive
chd = new chd_rawfile_compressor(*input_file, input_start, input_end);
std::unique_ptr<chd_file_compressor> chd;
if (input_file) chd.reset(new chd_rawfile_compressor(*input_file, input_start, input_end));
else chd.reset(new chd_zero_compressor(input_start, input_end));
chd_error err;
if (output_parent.opened())
err = chd->create(output_chd_str->c_str(), UINT64(totalsectors) * UINT64(sector_size), hunk_size, compression, output_parent);
@ -1834,11 +1869,9 @@ static void do_create_hd(parameters_t &params)
// compress it generically
if (input_file)
compress_common(*chd);
delete chd;
}
catch (...)
{
delete chd;
// delete the output file
auto output_chd_str = params.find(OPTION_OUTPUT);
if (output_chd_str != params.end())

View File

@ -8,7 +8,7 @@
***************************************************************************/
#define BARE_BUILD_VERSION "0.172"
#define BARE_BUILD_VERSION "0.173"
extern const char bare_build_version[];
extern const char build_version[];