mirror of
https://github.com/holub/mame
synced 2025-04-20 15:32:45 +03:00
Cleanups and version bump.
This commit is contained in:
parent
4900606a62
commit
7a14f21c15
@ -54,7 +54,7 @@ attoseconds_t attotime_to_attoseconds(attotime _time)
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
attotime_to_ticks - convert an attotime to
|
||||
attotime_to_ticks - convert an attotime to
|
||||
clock ticks at the given frequency
|
||||
-------------------------------------------------*/
|
||||
|
||||
@ -66,7 +66,7 @@ INT64 attotime_to_ticks(attotime _time, INT32 frequency)
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
ticks_to_attotime - convert clock ticks at
|
||||
ticks_to_attotime - convert clock ticks at
|
||||
the given frequency to an attotime
|
||||
-------------------------------------------------*/
|
||||
|
||||
|
@ -146,13 +146,13 @@ offs_t dsp56k_dasm(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opr
|
||||
sprintf(buffer, "Parallel x memory data write and register data move unimplemented.");
|
||||
size = 1;
|
||||
}
|
||||
|
||||
|
||||
/* Tcc is a unique critter */
|
||||
if (BITS(op,0xfc00) == 0x4)
|
||||
{
|
||||
size = assemble_TCC_opcode(buffer, op, op2, pc);
|
||||
}
|
||||
|
||||
|
||||
/* Operations that do not allow a parallel move */
|
||||
if (BITS(op,0xff00) == 0x14)
|
||||
{
|
||||
@ -174,7 +174,7 @@ offs_t dsp56k_dasm(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opr
|
||||
{
|
||||
size = assemble_misc_opcode(buffer, op, op2, pc);
|
||||
}
|
||||
|
||||
|
||||
if (BITS(op,0xf000) == 0x0)
|
||||
{
|
||||
size = assemble_unique_opcode(buffer, op, op2, pc);
|
||||
@ -200,19 +200,19 @@ static unsigned assemble_x_memory_data_move_ALU_opcode(char* buffer, const UINT1
|
||||
char arg_str[128] = "";
|
||||
char opcode_str[128] = "";
|
||||
char parallel_move_str[128] = "";
|
||||
|
||||
|
||||
/* Init */
|
||||
sprintf(buffer, " ");
|
||||
|
||||
/* First, decode the Data ALU opcode */
|
||||
decode_data_ALU_opcode(BITS(op,0x00ff), opcode_str, arg_str);
|
||||
|
||||
|
||||
/* Next, decode the X Memory Data Move */
|
||||
decode_x_memory_data_move(BITS(op,0xff00), parallel_move_str);
|
||||
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s %s", opcode_str, arg_str, parallel_move_str);
|
||||
|
||||
|
||||
return opSize;
|
||||
}
|
||||
|
||||
@ -221,22 +221,22 @@ static unsigned assemble_dual_x_memory_data_read_ALU_opcode(char* buffer, const
|
||||
{
|
||||
/* All operations are of length 1 */
|
||||
unsigned opSize = 1;
|
||||
|
||||
|
||||
/* Recovered strings */
|
||||
char arg_str[128] = "";
|
||||
char opcode_str[128] = "";
|
||||
char parallel_move_str[128] = "";
|
||||
char parallel_move_str2[128] = "";
|
||||
|
||||
|
||||
/* Init */
|
||||
sprintf(buffer, " ");
|
||||
|
||||
/* First, decode the Data ALU opcode */
|
||||
decode_data_ALU_opcode_dual_move(BITS(op,0x00ff), opcode_str, arg_str);
|
||||
|
||||
|
||||
/* Next, decode the Dual X Memory Data Read */
|
||||
decode_dual_x_memory_data_read(op, parallel_move_str, parallel_move_str2);
|
||||
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s %s %s", opcode_str, arg_str, parallel_move_str, parallel_move_str2);
|
||||
|
||||
@ -247,17 +247,17 @@ static unsigned assemble_TCC_opcode(char* buffer, const UINT16 op, const UINT16
|
||||
{
|
||||
/* TCC is of length 1 */
|
||||
unsigned opSize = 1;
|
||||
|
||||
|
||||
/* Recovered strings */
|
||||
char arg_str[128] = "";
|
||||
char opcode_str[128] = "";
|
||||
|
||||
|
||||
/* Init */
|
||||
sprintf(buffer, " ");
|
||||
|
||||
/* Simply decode the opcode and its arguments */
|
||||
opSize = decode_TCC_opcode(op, opcode_str, arg_str);
|
||||
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s", opcode_str, arg_str);
|
||||
|
||||
@ -268,17 +268,17 @@ static unsigned assemble_bitfield_opcode(char* buffer, const UINT16 op, const UI
|
||||
{
|
||||
/* All bitfield ops are length 2 */
|
||||
unsigned opSize = 2;
|
||||
|
||||
|
||||
/* Recovered strings */
|
||||
char arg_str[128] = "";
|
||||
char opcode_str[128] = "";
|
||||
|
||||
|
||||
/* Init */
|
||||
sprintf(buffer, " ");
|
||||
|
||||
/* Simply decode the opcode and its arguments */
|
||||
opSize = decode_bitfield_opcode(op, op2, opcode_str, arg_str);
|
||||
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s", opcode_str, arg_str);
|
||||
|
||||
@ -302,7 +302,7 @@ static unsigned assemble_no_parallel_move_opcode(char* buffer, const UINT16 op,
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s", opcode_str, arg_str);
|
||||
|
||||
|
||||
return opSize;
|
||||
}
|
||||
|
||||
@ -344,7 +344,7 @@ static unsigned assemble_movec_opcodes(char* buffer, const UINT16 op, const UINT
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s", opcode_str, arg_str);
|
||||
|
||||
|
||||
return opSize;
|
||||
}
|
||||
|
||||
@ -365,7 +365,7 @@ static unsigned assemble_misc_opcode(char* buffer, const UINT16 op, const UINT16
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s", opcode_str, arg_str);
|
||||
|
||||
|
||||
return opSize;
|
||||
}
|
||||
|
||||
@ -387,7 +387,7 @@ static unsigned assemble_unique_opcode(char* buffer, const UINT16 op, const UINT
|
||||
|
||||
/* Finally, assemble the full opcode */
|
||||
sprintf(buffer, "%s %s", opcode_str, arg_str);
|
||||
|
||||
|
||||
return opSize;
|
||||
}
|
||||
|
||||
@ -519,7 +519,7 @@ static void decode_data_ALU_opcode(const UINT16 op_byte, char* opcode_str, char*
|
||||
{
|
||||
/* SUBL - 1mRR HHHW 0100 F001 */
|
||||
sprintf(opcode_str, "subl");
|
||||
|
||||
|
||||
/* Only one option for the F table */
|
||||
if (!BITS(op_byte,0x08))
|
||||
sprintf(arg_str, "B,A");
|
||||
@ -652,7 +652,7 @@ static void decode_data_ALU_opcode(const UINT16 op_byte, char* opcode_str, char*
|
||||
sprintf(opcode_str, "mpyr");
|
||||
sprintf(arg_str, "(%s)%s,%s,%s", SIGN, S2, S1, D);
|
||||
break;
|
||||
|
||||
|
||||
/* MAC - 1mRR HHHH 1k10 FQQQ */
|
||||
case 0x2:
|
||||
sprintf(opcode_str, "mac");
|
||||
@ -660,7 +660,7 @@ static void decode_data_ALU_opcode(const UINT16 op_byte, char* opcode_str, char*
|
||||
break;
|
||||
|
||||
/* MACR - 1mRR HHHH 1k11 FQQQ */
|
||||
case 0x3:
|
||||
case 0x3:
|
||||
sprintf(opcode_str, "macr");
|
||||
/* TODO: It's a little odd that macr is S1,S2 while everyone else is S2,S1. Check! */
|
||||
sprintf(arg_str, "(%s)%s,%s,%s", SIGN, S1, S2, D);
|
||||
@ -734,7 +734,7 @@ static unsigned decode_TCC_opcode(const UINT16 op, char* opcode_str, char* arg_s
|
||||
char M[32];
|
||||
char D[32];
|
||||
char S[32];
|
||||
|
||||
|
||||
decode_cccc_table(BITS(op,0x03c0), M);
|
||||
sprintf(opcode_str, "t.%s", M);
|
||||
|
||||
@ -743,12 +743,12 @@ static unsigned decode_TCC_opcode(const UINT16 op, char* opcode_str, char* arg_s
|
||||
sprintf(arg_str, "%s,%s R0,R%d", S, D, Rnum);
|
||||
|
||||
/* TODO: Investigate
|
||||
if (S1[0] == D[0] && D[0] == 'A')
|
||||
sprintf(buffer, "t.%s %s,%s", M, S1, D);
|
||||
else
|
||||
sprintf(buffer, "t.%s %s,%s R0,R%d", M, S1, D, Rnum);
|
||||
*/
|
||||
|
||||
if (S1[0] == D[0] && D[0] == 'A')
|
||||
sprintf(buffer, "t.%s %s,%s", M, S1, D);
|
||||
else
|
||||
sprintf(buffer, "t.%s %s,%s R0,R%d", M, S1, D, Rnum);
|
||||
*/
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -803,13 +803,13 @@ static unsigned decode_bitfield_opcode(const UINT16 op, const UINT16 op2, char*
|
||||
static unsigned decode_no_parallel_move_opcode(const UINT16 op, const UINT16 op2, const UINT16 pc, char* opcode_str, char* arg_str)
|
||||
{
|
||||
unsigned retSize = 1;
|
||||
|
||||
|
||||
int Rnum = -1;
|
||||
char A[32];
|
||||
char D[32];
|
||||
char S1[32];
|
||||
char S2[32];
|
||||
|
||||
|
||||
switch(BITS(op,0x0074))
|
||||
{
|
||||
case 0x0:
|
||||
@ -1005,7 +1005,7 @@ static unsigned decode_immediate_opcode(const UINT16 op, const UINT16 pc, char*
|
||||
sprintf(arg_str, "%s", args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return retSize;
|
||||
}
|
||||
|
||||
@ -1017,7 +1017,7 @@ static unsigned decode_movec_opcodes(const UINT16 op, const UINT16 op2, const UI
|
||||
char ea[32];
|
||||
char args[64];
|
||||
int Rnum = -1;
|
||||
|
||||
|
||||
if (BITS(op,0x0010) == 0x0)
|
||||
{
|
||||
/* MOVE(C) - 0011 1WDD DDD0 MMRR */
|
||||
@ -1076,7 +1076,7 @@ static unsigned decode_movec_opcodes(const UINT16 op, const UINT16 op2, const UI
|
||||
static unsigned decode_misc_opcode(const UINT16 op, const UINT16 pc, char* opcode_str, char* arg_str)
|
||||
{
|
||||
unsigned retSize = 1;
|
||||
|
||||
|
||||
char M[32];
|
||||
char S1[32];
|
||||
char SD[32];
|
||||
@ -1085,7 +1085,7 @@ static unsigned decode_misc_opcode(const UINT16 op, const UINT16 pc, char* opcod
|
||||
char args[64];
|
||||
int Rnum = -1;
|
||||
int relativeInt = 666;
|
||||
|
||||
|
||||
switch(BITS(op,0x0c00))
|
||||
{
|
||||
/* MOVE(I) - 0010 00DD BBBB BBBB */
|
||||
@ -1122,7 +1122,7 @@ static unsigned decode_misc_opcode(const UINT16 op, const UINT16 pc, char* opcod
|
||||
sprintf(arg_str, "%04x (%d)", (int)pc + relativeInt, relativeInt);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
return retSize;
|
||||
}
|
||||
|
||||
@ -1221,7 +1221,7 @@ static unsigned decode_unique_opcode(const UINT16 op, const UINT16 op2, const UI
|
||||
{
|
||||
int Rnum = -1;
|
||||
char M[32] = "";
|
||||
|
||||
|
||||
switch(BITS(op,0x00e0))
|
||||
{
|
||||
case 0x2:
|
||||
@ -1330,7 +1330,7 @@ static unsigned decode_unique_opcode(const UINT16 op, const UINT16 op2, const UI
|
||||
else if (BITS(op,0x00f0) == 0x5)
|
||||
{
|
||||
char M[32] = "";
|
||||
|
||||
|
||||
/* REP.cc - 0000 0001 0101 cccc */
|
||||
decode_cccc_table(BITS(op,0x000f), M);
|
||||
sprintf(opcode_str, "rep.%s", M);
|
||||
@ -1353,7 +1353,7 @@ static unsigned decode_unique_opcode(const UINT16 op, const UINT16 op2, const UI
|
||||
else if (BITS(op,0x0e00) == 0x1)
|
||||
{
|
||||
sprintf(opcode_str, "move(m)");
|
||||
|
||||
|
||||
if (BITS(op,0x0020) == 0x0)
|
||||
{
|
||||
/* MOVE(M) - 0000 001W RR0M MHHH */
|
||||
@ -2166,7 +2166,7 @@ static INT8 get_6_bit_relative_value(UINT16 bits)
|
||||
UINT16 fullAddy = bits;
|
||||
if (fullAddy & 0x0020)
|
||||
fullAddy |= 0xffc0;
|
||||
|
||||
|
||||
return (INT8)fullAddy;
|
||||
}
|
||||
|
||||
|
@ -157,7 +157,7 @@ static void mb86233_reset(void)
|
||||
|
||||
#define ZERO_FLAG (1 << 0)
|
||||
#define SIGN_FLAG (1 << 1)
|
||||
#define EXTERNAL_FLAG (1 << 2) //This seems to be a flag coming from some external circuit¿?
|
||||
#define EXTERNAL_FLAG (1 << 2) //This seems to be a flag coming from some external circuit??
|
||||
|
||||
static void FLAGSF( float v )
|
||||
{
|
||||
|
@ -585,7 +585,7 @@ void debug_cpu_instruction_hook(running_machine *machine, offs_t curpc)
|
||||
if (global.execution_state == EXECUTION_STATE_STOPPED)
|
||||
{
|
||||
int firststop = TRUE;
|
||||
|
||||
|
||||
/* reset any transient state */
|
||||
reset_transient_flags(machine);
|
||||
|
||||
|
@ -53,7 +53,7 @@ struct _riot6532_state
|
||||
int index;
|
||||
|
||||
riot6532_port port[2];
|
||||
|
||||
|
||||
UINT8 irqstate;
|
||||
UINT8 irqenable;
|
||||
|
||||
@ -144,11 +144,11 @@ INLINE UINT8 get_timer(riot6532_state *riot)
|
||||
/* if idle, return 0 */
|
||||
if (riot->timerstate == TIMER_IDLE)
|
||||
return 0;
|
||||
|
||||
|
||||
/* if counting, return the number of ticks remaining */
|
||||
else if (riot->timerstate == TIMER_COUNTING)
|
||||
return attotime_to_ticks(timer_timeleft(riot->timer), riot->clock) >> riot->timershift;
|
||||
|
||||
|
||||
/* if finishing, return the number of ticks without the shift */
|
||||
else
|
||||
return attotime_to_ticks(timer_timeleft(riot->timer), riot->clock);
|
||||
@ -177,12 +177,12 @@ static TIMER_CALLBACK( timer_end_callback )
|
||||
{
|
||||
riot->timerstate = TIMER_FINISHING;
|
||||
timer_adjust_oneshot(riot->timer, ticks_to_attotime(256, riot->clock), 0);
|
||||
|
||||
|
||||
/* signal timer IRQ as well */
|
||||
riot->irqstate |= TIMER_FLAG;
|
||||
update_irqstate(device);
|
||||
}
|
||||
|
||||
|
||||
/* if we finished finishing, switch to the idle state */
|
||||
else if (riot->timerstate == TIMER_FINISHING)
|
||||
{
|
||||
@ -211,27 +211,27 @@ WRITE8_DEVICE_HANDLER( riot6532_w )
|
||||
static const UINT8 timershift[4] = { 0, 3, 6, 10 };
|
||||
attotime curtime = timer_get_time();
|
||||
INT64 target;
|
||||
|
||||
|
||||
/* A0-A1 contain the timer divisor */
|
||||
riot->timershift = timershift[offset & 3];
|
||||
|
||||
|
||||
/* A3 contains the timer IRQ enable */
|
||||
if (offset & 8)
|
||||
riot->irqenable |= TIMER_FLAG;
|
||||
else
|
||||
riot->irqenable &= ~TIMER_FLAG;
|
||||
|
||||
|
||||
/* writes here clear the timer flag */
|
||||
if (riot->timerstate != TIMER_FINISHING || get_timer(riot) != 0xff)
|
||||
riot->irqstate &= ~TIMER_FLAG;
|
||||
update_irqstate(device);
|
||||
|
||||
|
||||
/* update the timer */
|
||||
riot->timerstate = TIMER_COUNTING;
|
||||
target = attotime_to_ticks(curtime, riot->clock) + 1 + (data << riot->timershift);
|
||||
timer_adjust_oneshot(riot->timer, attotime_sub(ticks_to_attotime(target, riot->clock), curtime), 0);
|
||||
}
|
||||
|
||||
|
||||
/* if A4 == 0 and A2 == 1, we are writing to the edge detect control */
|
||||
else if ((offset & 0x14) == 0x04)
|
||||
{
|
||||
@ -240,21 +240,21 @@ WRITE8_DEVICE_HANDLER( riot6532_w )
|
||||
riot->irqenable |= PA7_FLAG;
|
||||
else
|
||||
riot->irqenable &= ~PA7_FLAG;
|
||||
|
||||
|
||||
/* A0 specifies the edge detect direction: 0=negative, 1=positive */
|
||||
riot->pa7dir = (offset & 1) << 7;
|
||||
}
|
||||
|
||||
|
||||
/* if A4 == anything and A2 == 0, we are writing to the I/O section */
|
||||
else
|
||||
{
|
||||
/* A1 selects the port */
|
||||
riot6532_port *port = &riot->port[(offset >> 1) & 1];
|
||||
|
||||
|
||||
/* if A0 == 1, we are writing to the port's DDR */
|
||||
if (offset & 1)
|
||||
port->ddr = data;
|
||||
|
||||
|
||||
/* if A0 == 0, we are writing to the port's output */
|
||||
else
|
||||
{
|
||||
@ -265,7 +265,7 @@ WRITE8_DEVICE_HANDLER( riot6532_w )
|
||||
else
|
||||
logerror("6532RIOT chip %s: Port %c is being written to but has no handler. PC: %08X - %02X\n", device->tag, 'A' + (offset & 1), safe_activecpu_get_pc(), data);
|
||||
}
|
||||
|
||||
|
||||
/* writes to port A need to update the PA7 state */
|
||||
if (port == &riot->port[0])
|
||||
update_pa7_state(device);
|
||||
@ -281,7 +281,7 @@ READ8_DEVICE_HANDLER( riot6532_r )
|
||||
{
|
||||
riot6532_state *riot = get_safe_token(device);
|
||||
UINT8 val = 0;
|
||||
|
||||
|
||||
/* if A2 == 1 and A0 == 1, we are reading interrupt flags */
|
||||
if ((offset & 0x05) == 0x05)
|
||||
{
|
||||
@ -291,7 +291,7 @@ READ8_DEVICE_HANDLER( riot6532_r )
|
||||
riot->irqstate &= ~PA7_FLAG;
|
||||
update_irqstate(device);
|
||||
}
|
||||
|
||||
|
||||
/* if A2 == 1 and A0 == 0, we are reading the timer */
|
||||
else if ((offset & 0x05) == 0x04)
|
||||
{
|
||||
@ -302,23 +302,23 @@ READ8_DEVICE_HANDLER( riot6532_r )
|
||||
riot->irqenable |= TIMER_FLAG;
|
||||
else
|
||||
riot->irqenable &= ~TIMER_FLAG;
|
||||
|
||||
|
||||
/* implicitly clears the timer flag */
|
||||
if (riot->timerstate != TIMER_FINISHING || val != 0xff)
|
||||
riot->irqstate &= ~TIMER_FLAG;
|
||||
update_irqstate(device);
|
||||
}
|
||||
|
||||
|
||||
/* if A2 == 0 and A0 == anything, we are reading from ports */
|
||||
else
|
||||
{
|
||||
/* A1 selects the port */
|
||||
riot6532_port *port = &riot->port[(offset >> 1) & 1];
|
||||
|
||||
|
||||
/* if A0 == 1, we are reading the port's DDR */
|
||||
if (offset & 1)
|
||||
val = port->ddr;
|
||||
|
||||
|
||||
/* if A0 == 0, we are reading the port as an input */
|
||||
else
|
||||
{
|
||||
@ -439,7 +439,7 @@ static DEVICE_START( riot6532 )
|
||||
riot->intf = device->static_config;
|
||||
riot->index = device_list_index(device->machine->config->devicelist, RIOT6532, device->tag);
|
||||
riot->clock = config->clock;
|
||||
|
||||
|
||||
/* configure the ports */
|
||||
riot->port[0].in_func = riot->intf->in_a_func;
|
||||
riot->port[0].out_func = riot->intf->out_a_func;
|
||||
@ -461,7 +461,7 @@ static DEVICE_START( riot6532 )
|
||||
|
||||
state_save_register_item(unique_tag, 0, riot->irqstate);
|
||||
state_save_register_item(unique_tag, 0, riot->irqenable);
|
||||
|
||||
|
||||
state_save_register_item(unique_tag, 0, riot->pa7dir);
|
||||
state_save_register_item(unique_tag, 0, riot->pa7prev);
|
||||
|
||||
@ -479,7 +479,7 @@ static DEVICE_RESET( riot6532 )
|
||||
riot->port[0].ddr = 0;
|
||||
riot->port[1].out = 0;
|
||||
riot->port[1].ddr = 0;
|
||||
|
||||
|
||||
/* reset IRQ states */
|
||||
riot->irqenable = 0;
|
||||
riot->irqstate = 0;
|
||||
|
@ -115,7 +115,7 @@ static int dma8257_do_operation(running_machine *machine, dma8257_t *dma8257, in
|
||||
data = 0;
|
||||
logerror("8257: No channel read function for channel %d defined.\n",channel);
|
||||
}
|
||||
|
||||
|
||||
if (dma8257->intf->memory_write!=NULL) {
|
||||
dma8257->intf->memory_write(machine, dma8257->address[channel], data);
|
||||
} else {
|
||||
@ -172,7 +172,7 @@ static TIMER_CALLBACK( dma8257_timerproc )
|
||||
{
|
||||
dma8257->drq &= ~(0x01 << channel);
|
||||
dma8257_update_status(machine, dma8257);
|
||||
if (!(DMA_MODE_AUTOLOAD(dma8257->mode) && channel==2)) {
|
||||
if (!(DMA_MODE_AUTOLOAD(dma8257->mode) && channel==2)) {
|
||||
if (DMA_MODE_TCSTOP(dma8257->mode)) {
|
||||
dma8257->mode &= ~(0x01 << channel);
|
||||
}
|
||||
|
@ -165,7 +165,7 @@ static INPUT_PORTS_START( 88games )
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
// PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
// PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
/* Fake button to press buttons 1 and 3 impossibly fast. Handle via cheat?_r */
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Run Like Hell (Cheat)") PORT_PLAYER(1)
|
||||
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW3:1")
|
||||
|
@ -471,7 +471,7 @@ static MACHINE_DRIVER_START( alg_r1 )
|
||||
MDRV_MACHINE_START(alg)
|
||||
MDRV_MACHINE_RESET(alg)
|
||||
MDRV_NVRAM_HANDLER(generic_0fill)
|
||||
|
||||
|
||||
MDRV_LASERDISC_ADD("laserdisc", SONY_LDP1450, 0, "laserdisc")
|
||||
|
||||
/* video hardware */
|
||||
|
@ -1140,7 +1140,7 @@ static INPUT_PORTS_START( timesold )
|
||||
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x18, DEF_STR( Normal ) )
|
||||
// PORT_DIPSETTING( 0x08, DEF_STR( Normal ) )
|
||||
// PORT_DIPSETTING( 0x08, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) /* "Difficult" */
|
||||
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Language ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( English ) )
|
||||
|
@ -430,7 +430,7 @@ static INPUT_PORTS_START( argus )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
// PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
// PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
|
@ -704,8 +704,8 @@ static INPUT_PORTS_START( tetrsark )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // or up? it rotates the piece.
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
|
||||
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) // WTF? it does't work
|
||||
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) // WTF? it does't work
|
||||
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) // WTF? it does't work
|
||||
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) // WTF? it does't work
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
|
||||
INPUT_PORTS_END
|
||||
|
@ -283,7 +283,7 @@ INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( atarifb4 )
|
||||
PORT_INCLUDE( atarifb )
|
||||
|
||||
|
||||
PORT_MODIFY("IN0")
|
||||
PORT_BIT ( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
||||
|
@ -56,7 +56,7 @@ I/O C ;AY-3-8910 Data Read Reg.
|
||||
|
||||
DIP locations verified for:
|
||||
- bagman (manual)
|
||||
- squaitsa (manual)
|
||||
- squaitsa (manual)
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -726,8 +726,8 @@ static INPUT_PORTS_START( frenzy )
|
||||
|
||||
PORT_START_TAG("F2")
|
||||
/* Bit 0 does some more hardware tests. According to the manual, both bit 0 & 1 must be:
|
||||
- ON for Signature Analysis (S.A.)
|
||||
- OFF for game operation */
|
||||
- ON for Signature Analysis (S.A.)
|
||||
- OFF for game operation */
|
||||
PORT_BIT( 0x03, IP_ACTIVE_HIGH, IPT_UNUSED ) // F2:1,2
|
||||
PORT_DIPNAME( 0x04, 0x00, "Input Test Mode" ) PORT_CODE(KEYCODE_F2) PORT_TOGGLE PORT_DIPLOCATION("F2:3")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
|
@ -6,8 +6,8 @@
|
||||
|
||||
Emulation by Bryan McPhail, mish@tendril.co.uk and T.Nogi
|
||||
|
||||
2008-07
|
||||
Dip Locations added based on crazykong BogeyManor.txt
|
||||
2008-07
|
||||
Dip Locations added based on crazykong BogeyManor.txt
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -73,8 +73,8 @@
|
||||
It fades in to blue, then fades out to nothing again after a few seconds (Guru).
|
||||
(Potentially related to note above about bit 3 in priority word)
|
||||
|
||||
2008-07
|
||||
Dip Locations added according to the manual of the JPN version
|
||||
2008-07
|
||||
Dip Locations added according to the manual of the JPN version
|
||||
*/
|
||||
|
||||
#include "driver.h"
|
||||
|
@ -7,7 +7,7 @@ Similar to S.P.Y.
|
||||
driver by Nicola Salmoria
|
||||
|
||||
2008-07
|
||||
Dip locations and factory settings verified with US manual.
|
||||
Dip locations and factory settings verified with US manual.
|
||||
To be verified for Main Stadium
|
||||
|
||||
***************************************************************************/
|
||||
|
@ -13,13 +13,13 @@
|
||||
****************************************************************************
|
||||
|
||||
Note: The original hardware uses the Player 1 and Player 2 Start buttons
|
||||
as the Jump/Shoot buttons.
|
||||
|
||||
as the Jump/Shoot buttons.
|
||||
|
||||
If you have any questions about how this driver works, don't hesitate to
|
||||
ask. - Mike Balfour (mab22@po.cwru.edu)
|
||||
|
||||
2008-07
|
||||
Dip locations verified with manual
|
||||
|
||||
2008-07
|
||||
Dip locations verified with manual
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -145,8 +145,8 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0xd603, 0xd603) AM_READ_PORT("IN0") /* player inputs */
|
||||
AM_RANGE(0xd608, 0xd608) AM_READ_PORT("WHEEL")
|
||||
AM_RANGE(0xd609, 0xd609) AM_READ_PORT("IN1") /* coin + accelerator */
|
||||
// AM_RANGE(0xd60a, 0xd60a) // other inputs, not used?
|
||||
// AM_RANGE(0xd60b, 0xd60b) // other inputs, not used?
|
||||
// AM_RANGE(0xd60a, 0xd60a) // other inputs, not used?
|
||||
// AM_RANGE(0xd60b, 0xd60b) // other inputs, not used?
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
@ -157,18 +157,18 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x9000, 0x9fff) AM_WRITE(buggychl_sprite_lookup_w)
|
||||
AM_RANGE(0xa000, 0xbfff) AM_WRITE(buggychl_chargen_w) AM_BASE(&buggychl_character_ram)
|
||||
AM_RANGE(0xc800, 0xcfff) AM_WRITE(SMH_RAM) AM_BASE(&videoram) AM_SIZE(&videoram_size)
|
||||
// AM_RANGE(0xd000, 0xd000) // horizon
|
||||
// AM_RANGE(0xd000, 0xd000) // horizon
|
||||
AM_RANGE(0xd100, 0xd100) AM_WRITE(buggychl_ctrl_w)
|
||||
AM_RANGE(0xd200, 0xd200) AM_WRITE(bankswitch_w)
|
||||
AM_RANGE(0xd300, 0xd300) AM_WRITE(watchdog_reset_w)
|
||||
// AM_RANGE(0xd301, 0xd301)
|
||||
// AM_RANGE(0xd302, 0xd302) // reset mcu
|
||||
// AM_RANGE(0xd301, 0xd301)
|
||||
// AM_RANGE(0xd302, 0xd302) // reset mcu
|
||||
AM_RANGE(0xd303, 0xd303) AM_WRITE(buggychl_sprite_lookup_bank_w)
|
||||
// AM_RANGE(0xd304, 0xd307) // sccon 1-4
|
||||
// AM_RANGE(0xd304, 0xd307) // sccon 1-4
|
||||
AM_RANGE(0xd400, 0xd400) AM_WRITE(buggychl_mcu_w)
|
||||
AM_RANGE(0xd500, 0xd57f) AM_WRITE(SMH_RAM) AM_BASE(&spriteram) AM_SIZE(&spriteram_size)
|
||||
AM_RANGE(0xd610, 0xd610) AM_WRITE(sound_command_w)
|
||||
// AM_RANGE(0xd613, 0xd613) // reset sound cpu & sound chips
|
||||
// AM_RANGE(0xd613, 0xd613) // reset sound cpu & sound chips
|
||||
AM_RANGE(0xd618, 0xd618) AM_WRITE(SMH_NOP) /* accelerator clear */
|
||||
AM_RANGE(0xd700, 0xd7ff) AM_WRITE(paletteram_xxxxRRRRGGGGBBBB_be_w) AM_BASE(&paletteram)
|
||||
AM_RANGE(0xd840, 0xd85f) AM_WRITE(SMH_RAM) AM_BASE(&buggychl_scrollv)
|
||||
@ -181,7 +181,7 @@ static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_READ(SMH_ROM)
|
||||
AM_RANGE(0x4000, 0x47ff) AM_READ(SMH_RAM)
|
||||
AM_RANGE(0x5000, 0x5000) AM_READ(soundlatch_r)
|
||||
// AM_RANGE(0x5001, 0x5001) AM_READ(SMH_RAM) /* is command pending? */
|
||||
// AM_RANGE(0x5001, 0x5001) AM_READ(SMH_RAM) /* is command pending? */
|
||||
AM_RANGE(0xe000, 0xefff) AM_READ(SMH_ROM) /* space for diagnostics ROM */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -195,7 +195,7 @@ static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x4810, 0x481d) AM_WRITE(MSM5232_0_w)
|
||||
AM_RANGE(0x4820, 0x4820) AM_WRITE(SMH_RAM) /* VOL/BAL for the 7630 on the MSM5232 output */
|
||||
AM_RANGE(0x4830, 0x4830) AM_WRITE(SMH_RAM) /* TRBL/BASS for the 7630 on the MSM5232 output */
|
||||
// AM_RANGE(0x5000, 0x5000) AM_WRITE(SMH_RAM) /* to main cpu */
|
||||
// AM_RANGE(0x5000, 0x5000) AM_WRITE(SMH_RAM) /* to main cpu */
|
||||
AM_RANGE(0x5001, 0x5001) AM_WRITE(nmi_enable_w)
|
||||
AM_RANGE(0x5002, 0x5002) AM_WRITE(nmi_disable_w)
|
||||
AM_RANGE(0x5003, 0x5003) AM_WRITE(sound_enable_w)
|
||||
|
@ -211,8 +211,8 @@
|
||||
|
||||
**In operator Information Display, this option displays same as no bonus.
|
||||
|
||||
2008-07
|
||||
Dip locations added from the notes above
|
||||
2008-07
|
||||
Dip locations added from the notes above
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -191,12 +191,12 @@
|
||||
Left and Center same, right different denomination | On |Off | | |
|
||||
Right and Center same, left differnnt denomination |Off | On | | |
|
||||
All different denominations |Off |Off | | |
|
||||
---------------------
|
||||
---------------------
|
||||
|
||||
|
||||
2008-07
|
||||
Dip locations added from the notes above (factory settings for bzone
|
||||
from the manual).
|
||||
2008-07
|
||||
Dip locations added from the notes above (factory settings for bzone
|
||||
from the manual).
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -29,10 +29,10 @@
|
||||
|
||||
If you have any questions about how this driver works, don't hesitate to
|
||||
ask. - Mike Balfour (mab22@po.cwru.edu)
|
||||
|
||||
|
||||
2008-07
|
||||
Dip locations verified with manual.
|
||||
|
||||
|
||||
2008-07
|
||||
Dip locations verified with manual.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -862,12 +862,12 @@ static CUSTOM_INPUT( korokoro_hopper_r )
|
||||
|
||||
static ADDRESS_MAP_START( korokoro_readmem, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x07ffff) AM_READ( SMH_ROM ) // ROM
|
||||
// AM_RANGE(0x100000, 0x107fff) AM_READ( SMH_RAM ) // Layer 0
|
||||
// AM_RANGE(0x140000, 0x140005) AM_READ( SMH_RAM ) // Layer 0 Control
|
||||
// AM_RANGE(0x180000, 0x187fff) AM_READ( SMH_RAM ) // Sprites
|
||||
// AM_RANGE(0x100000, 0x107fff) AM_READ( SMH_RAM ) // Layer 0
|
||||
// AM_RANGE(0x140000, 0x140005) AM_READ( SMH_RAM ) // Layer 0 Control
|
||||
// AM_RANGE(0x180000, 0x187fff) AM_READ( SMH_RAM ) // Sprites
|
||||
AM_RANGE(0x1c0000, 0x1c0007) AM_READ( cave_irq_cause_r ) // IRQ Cause
|
||||
// AM_RANGE(0x200000, 0x207fff) AM_READ( SMH_RAM ) // Palette
|
||||
// AM_RANGE(0x240000, 0x240003) AM_READ( cave_sound_r ) // YMZ280
|
||||
// AM_RANGE(0x200000, 0x207fff) AM_READ( SMH_RAM ) // Palette
|
||||
// AM_RANGE(0x240000, 0x240003) AM_READ( cave_sound_r ) // YMZ280
|
||||
AM_RANGE(0x280000, 0x280001) AM_READ_PORT("IN0") // Inputs + ???
|
||||
AM_RANGE(0x280002, 0x280003) AM_READ_PORT("IN1") // Inputs + EEPROM
|
||||
AM_RANGE(0x300000, 0x30ffff) AM_READ( SMH_RAM ) // RAM
|
||||
|
@ -189,7 +189,7 @@ TODO:
|
||||
----
|
||||
|
||||
2008-07
|
||||
Dip location verified from manual for: cclimber, guzzler, swimmer
|
||||
Dip location verified from manual for: cclimber, guzzler, swimmer
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -296,7 +296,7 @@ static ADDRESS_MAP_START( cannonb_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x6000, 0x6bff) AM_RAM
|
||||
AM_RANGE(0x8000, 0x83ff) AM_RAM
|
||||
AM_RANGE(0x8800, 0x88ff) AM_READWRITE(SMH_NOP, SMH_RAM) AM_BASE(&cclimber_bigsprite_videoram) /* must not return what's written (game will reset after coin insert if it returns 0xff)*/
|
||||
// AM_RANGE(0x8900, 0x8bff) AM_WRITE(SMH_RAM) /* not used, but initialized */
|
||||
// AM_RANGE(0x8900, 0x8bff) AM_WRITE(SMH_RAM) /* not used, but initialized */
|
||||
AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM AM_BASE(&cclimber_videoram)
|
||||
/* 9800-9bff and 9c00-9fff share the same RAM, interleaved */
|
||||
/* (9800-981f for scroll, 9c20-9c3f for color RAM, and so on) */
|
||||
@ -350,9 +350,9 @@ static ADDRESS_MAP_START( yamato_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x9c00, 0x9fff) AM_RAM_WRITE(cclimber_colorram_w) AM_BASE(&cclimber_colorram)
|
||||
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("P1") AM_WRITE(interrupt_enable_w)
|
||||
AM_RANGE(0xa001, 0xa002) AM_WRITE(SMH_RAM) AM_BASE(&cclimber_flip_screen)
|
||||
AM_RANGE(0xa800, 0xa800) AM_READ_PORT("P2")
|
||||
AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW")
|
||||
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("COIN")
|
||||
AM_RANGE(0xa800, 0xa800) AM_READ_PORT("P2")
|
||||
AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW")
|
||||
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("COIN")
|
||||
AM_RANGE(0xba00, 0xba00) AM_READ_PORT("START") /* maybe a mirror of b800 */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -373,7 +373,7 @@ static ADDRESS_MAP_START( toprollr_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0xa005, 0xa006) AM_WRITE(toprollr_rombank_w)
|
||||
AM_RANGE(0xa800, 0xa800) AM_READ_PORT("P2") AM_WRITE(cclimber_sample_rate_w)
|
||||
AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW") AM_WRITE(cclimber_sample_volume_w)
|
||||
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("SYSTEM")
|
||||
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("SYSTEM")
|
||||
AM_RANGE(0xc000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -300,14 +300,14 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 32 )
|
||||
AM_RANGE(0x0200000, 0x020000f) AM_READ(SMH_NOP) AM_MIRROR(0xff000000)/* IRQ control? */
|
||||
AM_RANGE(0x0200070, 0x0200073) AM_READ(decomlc_vbl_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0200074, 0x0200077) AM_READ(mlc_scanline_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0200078, 0x020007f) AM_READ(test2_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0200078, 0x020007f) AM_READ(test2_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0200080, 0x02000ff) AM_READ(SMH_RAM) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0204000, 0x0206fff) AM_READ(mlc_spriteram_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0200080, 0x02000ff) AM_READ(SMH_RAM) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0280000, 0x029ffff) AM_READ(mlc_vram_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0300000, 0x0307fff) AM_READ(SMH_RAM) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0400000, 0x0400003) AM_READ(avengrs_control_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0440000, 0x044001f) AM_READ(test3_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0440000, 0x044001f) AM_READ(test3_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x0600004, 0x0600007) AM_READ(avengrs_sound_r) AM_MIRROR(0xff000000)
|
||||
AM_RANGE(0x070f000, 0x070ffff) AM_READ(stadhr96_prot_146_r) AM_MIRROR(0xff000000)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -287,7 +287,7 @@ static MACHINE_DRIVER_START( esh )
|
||||
MDRV_CPU_VBLANK_INT("main", vblank_callback_esh)
|
||||
|
||||
MDRV_NVRAM_HANDLER(generic_0fill)
|
||||
|
||||
|
||||
MDRV_MACHINE_START(esh)
|
||||
|
||||
MDRV_LASERDISC_ADD("laserdisc", PIONEER_LDV1000, 0, "laserdisc")
|
||||
|
@ -230,7 +230,7 @@ static MACHINE_DRIVER_START( flower )
|
||||
/* basic machine hardware */
|
||||
MDRV_CPU_ADD("main", Z80,8000000)
|
||||
MDRV_CPU_PROGRAM_MAP(flower_cpu1_2,0)
|
||||
// MDRV_CPU_VBLANK_INT_HACK(flower_cpu0_interrupt,10)
|
||||
// MDRV_CPU_VBLANK_INT_HACK(flower_cpu0_interrupt,10)
|
||||
MDRV_CPU_VBLANK_INT("main", flower_cpu0_interrupt) //nmis stuff up the writes to shared ram
|
||||
|
||||
MDRV_CPU_ADD("sub", Z80,8000000)
|
||||
|
@ -202,7 +202,7 @@ static const riot6532_interface r6532_interface =
|
||||
static MACHINE_START( gameplan )
|
||||
{
|
||||
gameplan_state *state = machine->driver_data;
|
||||
|
||||
|
||||
state->riot = device_list_find_by_tag(machine->config->devicelist, RIOT6532, "riot");
|
||||
|
||||
via_config(1, &via_1_interface);
|
||||
|
@ -14,23 +14,23 @@
|
||||
|
||||
****************************************************************************
|
||||
|
||||
Thanks to Frans van Egmond for locating and dumping Tylz
|
||||
Thanks to Frans van Egmond for locating and dumping Tylz
|
||||
|
||||
Notes:
|
||||
Notes:
|
||||
|
||||
There was a bug in the hardware of the GG1 and GG2 boards, which is not
|
||||
emulated. The bug seems to have disappeared with the later revision of
|
||||
the board, e.g the board used by 3Stooges and Mach3 don't seem to have
|
||||
it). The bug was affecting the first character column (on horizontal
|
||||
games): screen memory could be used, but whatever was stored in this
|
||||
column, always the same character was displayed.
|
||||
There was a bug in the hardware of the GG1 and GG2 boards, which is not
|
||||
emulated. The bug seems to have disappeared with the later revision of
|
||||
the board, e.g the board used by 3Stooges and Mach3 don't seem to have
|
||||
it). The bug was affecting the first character column (on horizontal
|
||||
games): screen memory could be used, but whatever was stored in this
|
||||
column, always the same character was displayed.
|
||||
|
||||
This led to two consequences:
|
||||
- the image on the monitor had to be stretched so that the column was
|
||||
not visible
|
||||
- game designers were not using the first column. In fact, when the
|
||||
first column was ejected from the screen, the last one was usually
|
||||
out too, so it wasn't used either...
|
||||
This led to two consequences:
|
||||
- the image on the monitor had to be stretched so that the column was
|
||||
not visible
|
||||
- game designers were not using the first column. In fact, when the
|
||||
first column was ejected from the screen, the last one was usually
|
||||
out too, so it wasn't used either...
|
||||
|
||||
****************************************************************************
|
||||
|
||||
@ -217,12 +217,12 @@ static MACHINE_RESET( gottlieb )
|
||||
* Input ports
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
static CUSTOM_INPUT( analog_delta_r )
|
||||
{
|
||||
const char *string = param;
|
||||
int which = string[0] - '0';
|
||||
|
||||
|
||||
return input_port_read(field->port->machine, &string[1]) - track[which];
|
||||
}
|
||||
|
||||
@ -302,7 +302,7 @@ static READ8_HANDLER( gottlieb_laserdisc_status_r )
|
||||
return ((tmp / 10) << 4) | (tmp % 10);
|
||||
|
||||
case 2:
|
||||
if (lasermpx == 1)
|
||||
if (lasermpx == 1)
|
||||
{
|
||||
/* bits 0-2 frame number MSN */
|
||||
/* bit 3 audio buffer ready */
|
||||
@ -316,7 +316,7 @@ static READ8_HANDLER( gottlieb_laserdisc_status_r )
|
||||
{ /* read audio buffer */
|
||||
if (skipfirstbyte) audioptr++;
|
||||
skipfirstbyte = 0;
|
||||
if (audiobuffer_region)
|
||||
if (audiobuffer_region)
|
||||
{
|
||||
logerror("audio bufread: %02x\n",audiobuffer_region[audioptr]);
|
||||
return audiobuffer_region[audioptr++];
|
||||
@ -455,7 +455,7 @@ static ADDRESS_MAP_START( reactor_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x2000, 0x20ff) AM_MIRROR(0x0f00) AM_WRITEONLY AM_BASE(&spriteram) /* FRSEL */
|
||||
AM_RANGE(0x3000, 0x33ff) AM_MIRROR(0x0c00) AM_RAM_WRITE(gottlieb_videoram_w) AM_BASE(&videoram) /* BRSEL */
|
||||
AM_RANGE(0x4000, 0x4fff) AM_RAM_WRITE(gottlieb_charram_w) AM_BASE(&gottlieb_charram) /* BOJRSEL1 */
|
||||
/* AM_RANGE(0x5000, 0x5fff) AM_WRITE() */ /* BOJRSEL2 */
|
||||
/* AM_RANGE(0x5000, 0x5fff) AM_WRITE() */ /* BOJRSEL2 */
|
||||
AM_RANGE(0x6000, 0x601f) AM_MIRROR(0x0fe0) AM_WRITE(gottlieb_paletteram_w) AM_BASE(&paletteram) /* COLSEL */
|
||||
AM_RANGE(0x7000, 0x7000) AM_MIRROR(0x0ff8) AM_WRITE(watchdog_reset_w)
|
||||
AM_RANGE(0x7001, 0x7001) AM_MIRROR(0x0ff8) AM_WRITE(gottlieb_analog_reset_w) /* A1J2 interface */
|
||||
@ -483,7 +483,7 @@ static ADDRESS_MAP_START( gottlieb_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x5801, 0x5801) AM_MIRROR(0x07f8) AM_WRITE(gottlieb_analog_reset_w) /* A1J2 interface */
|
||||
AM_RANGE(0x5802, 0x5802) AM_MIRROR(0x07f8) AM_WRITE(gottlieb_sh_w) /* OP20-27 */
|
||||
AM_RANGE(0x5803, 0x5803) AM_MIRROR(0x07f8) AM_WRITE(gottlieb_video_outputs_w) /* OP30-37 */
|
||||
/* AM_RANGE(0x5804, 0x5804) AM_MIRROR(0x07f8) AM_WRITE()*/ /* OP40-47 */
|
||||
/* AM_RANGE(0x5804, 0x5804) AM_MIRROR(0x07f8) AM_WRITE()*/ /* OP40-47 */
|
||||
AM_RANGE(0x5800, 0x5800) AM_MIRROR(0x07f8) AM_READ_PORT("DSW")
|
||||
AM_RANGE(0x5801, 0x5801) AM_MIRROR(0x07f8) AM_READ_PORT("IN1") /* IP10-17 */
|
||||
AM_RANGE(0x5802, 0x5802) AM_MIRROR(0x07f8) AM_READ_PORT("IN2") /* trackball H */
|
||||
@ -587,7 +587,7 @@ static INPUT_PORTS_START( reactor )
|
||||
PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_COIN1 )
|
||||
PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 )
|
||||
PORT_BIT ( 0xc0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -648,7 +648,7 @@ static INPUT_PORTS_START( mplanets )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -725,7 +725,7 @@ static INPUT_PORTS_START( tylz )
|
||||
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -792,7 +792,7 @@ static INPUT_PORTS_START( qbert )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -863,7 +863,7 @@ static INPUT_PORTS_START( qbertqub )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -927,7 +927,7 @@ static INPUT_PORTS_START( krull )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_RIGHT ) PORT_8WAY
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -1177,7 +1177,7 @@ PORT_DIPSETTING( 0xc2, DEF_STR( Free_Play ) ) */
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("Bunt") PORT_PLAYER(1)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -1295,7 +1295,7 @@ static INPUT_PORTS_START( insector )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -1414,7 +1414,7 @@ static INPUT_PORTS_START( wizwarz )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 )
|
||||
|
||||
|
||||
PORT_START_TAG("TRACKY")
|
||||
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(15) PORT_KEYDELTA(15) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X)
|
||||
INPUT_PORTS_END
|
||||
@ -1467,7 +1467,7 @@ static INPUT_PORTS_START( argusg )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -1538,7 +1538,7 @@ static INPUT_PORTS_START( kngtmare )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 )
|
||||
|
||||
|
||||
PORT_START_TAG("SB1")
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SB1:7" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SB1:6" )
|
||||
@ -1743,7 +1743,7 @@ MACHINE_DRIVER_END
|
||||
|
||||
static MACHINE_DRIVER_START( gottlieb_soundrev1 )
|
||||
MDRV_SOUND_START( gottlieb1 )
|
||||
|
||||
|
||||
MDRV_RIOT6532_ADD("riot", SOUND1_CLOCK/4, gottlieb_riot6532_intf)
|
||||
|
||||
/* audio CPU */
|
||||
@ -1766,7 +1766,7 @@ static MACHINE_DRIVER_START( gottlieb_soundrev2 )
|
||||
|
||||
/* sound hardware */
|
||||
MDRV_SOUND_START( gottlieb2 )
|
||||
|
||||
|
||||
MDRV_SOUND_ADD("dac1", DAC, 0)
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
|
@ -342,7 +342,7 @@ static MACHINE_DRIVER_START( istellar )
|
||||
MDRV_CPU_ADD("sub", Z80, GUESSED_CLOCK)
|
||||
MDRV_CPU_PROGRAM_MAP(z80_2_mem,0)
|
||||
MDRV_CPU_IO_MAP(z80_2_io,0)
|
||||
|
||||
|
||||
MDRV_MACHINE_START(istellar)
|
||||
|
||||
MDRV_LASERDISC_ADD("laserdisc", PIONEER_LDV1000, 0, "laserdisc")
|
||||
|
@ -35,7 +35,7 @@
|
||||
|
||||
For Super Offroad, press the blue nitro button (3P button 1) and then
|
||||
press the service switch (F2).
|
||||
|
||||
|
||||
For Pigout, press 1P start and then press the service switch (F2).
|
||||
|
||||
***************************************************************************/
|
||||
@ -259,8 +259,8 @@ static INPUT_PORTS_START( alleymas ) /* complete, verified from code */
|
||||
|
||||
PORT_START_TAG("IN2") /* 0xD0 */
|
||||
PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* redundant inputs */
|
||||
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* redundant inputs */
|
||||
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* redundant inputs */
|
||||
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* redundant inputs */
|
||||
|
||||
PORT_START_TAG("IN3") /* 0xD1 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_EEPROM_DATA )
|
||||
|
@ -503,7 +503,7 @@ static WRITE32_HANDLER( io20_w )
|
||||
static READ32_HANDLER( parallel_port_r )
|
||||
{
|
||||
UINT32 r = 0;
|
||||
// static const char *portnames[] = { "IN0", "IN1", "IN2", "IN3", "IN4", "IN5", "IN6", "IN7", "IN8" }; // but parallel_pointer takes values 0 -> 23
|
||||
// static const char *portnames[] = { "IN0", "IN1", "IN2", "IN3", "IN4", "IN5", "IN6", "IN7", "IN8" }; // but parallel_pointer takes values 0 -> 23
|
||||
|
||||
if (ACCESSING_BITS_8_15)
|
||||
{
|
||||
|
@ -193,7 +193,7 @@ static UINT32 copro_fifoout_pop(void)
|
||||
|
||||
copro_fifoout_num--;
|
||||
|
||||
// logerror("COPRO FIFOOUT POP %08X, %f, %d\n", r, *(float*)&r,copro_fifoout_num);
|
||||
// logerror("COPRO FIFOOUT POP %08X, %f, %d\n", r, *(float*)&r,copro_fifoout_num);
|
||||
|
||||
// set SHARC flag 1: 0 if space available, 1 if FIFO full
|
||||
if (dsp_type == DSP_TYPE_SHARC)
|
||||
@ -224,7 +224,7 @@ static void copro_fifoout_push(UINT32 data)
|
||||
return;
|
||||
}
|
||||
|
||||
// logerror("COPRO FIFOOUT PUSH %08X, %f, %d\n", data, *(float*)&data,copro_fifoout_num);
|
||||
// logerror("COPRO FIFOOUT PUSH %08X, %f, %d\n", data, *(float*)&data,copro_fifoout_num);
|
||||
|
||||
copro_fifoout_data[copro_fifoout_wpos++] = data;
|
||||
if (copro_fifoout_wpos == COPRO_FIFOOUT_SIZE)
|
||||
@ -862,7 +862,7 @@ static READ32_HANDLER(hotd_unk_r)
|
||||
|
||||
/*static READ32_HANDLER(sonic_unk_r)
|
||||
{
|
||||
return 0x001a0000;
|
||||
return 0x001a0000;
|
||||
}
|
||||
*/
|
||||
static READ32_HANDLER(daytona_unk_r)
|
||||
|
@ -4865,7 +4865,7 @@ static INPUT_PORTS_START( ridgera )
|
||||
INPUT_PORTS_END /* Ridge Racer */
|
||||
|
||||
static INPUT_PORTS_START( raveracw )
|
||||
PORT_START_TAG("DSW0")
|
||||
PORT_START_TAG("DSW0")
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1 (test mode)" )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
@ -1174,7 +1174,7 @@ static DRIVER_INIT(thrilld)
|
||||
{
|
||||
int i;
|
||||
UINT16 checksum;
|
||||
|
||||
|
||||
backup_ram = auto_malloc(0x2000);
|
||||
memset(backup_ram, 0, 0x2000);
|
||||
|
||||
|
@ -876,7 +876,7 @@ static INPUT_PORTS_START( btlkroad )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_VBLANK ) // vblank ACTIVE_HIGH fixes slowdowns, but is it right?
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_VBLANK ) // vblank ACTIVE_HIGH fixes slowdowns, but is it right?
|
||||
|
||||
// This DSW is used for debugging the game
|
||||
PORT_DIPNAME( 0x0100, 0x0100, "Unknown 3-0" ) // tested!
|
||||
|
@ -385,7 +385,7 @@ static MACHINE_DRIVER_START( starwars )
|
||||
|
||||
MDRV_MACHINE_RESET(starwars)
|
||||
MDRV_NVRAM_HANDLER(generic_0fill)
|
||||
|
||||
|
||||
MDRV_RIOT6532_ADD("riot", MASTER_CLOCK / 8, starwars_riot6532_intf)
|
||||
|
||||
/* video hardware */
|
||||
|
@ -344,7 +344,7 @@ static MACHINE_DRIVER_START( superdq )
|
||||
MDRV_CPU_PROGRAM_MAP(superdq_map,0)
|
||||
MDRV_CPU_IO_MAP(superdq_io,0)
|
||||
MDRV_CPU_VBLANK_INT("main", superdq_vblank)
|
||||
|
||||
|
||||
MDRV_MACHINE_START(superdq)
|
||||
MDRV_MACHINE_RESET(superdq)
|
||||
|
||||
|
@ -191,7 +191,7 @@ static MACHINE_DRIVER_START( tourtabl )
|
||||
MDRV_CPU_PROGRAM_MAP(main_map,0)
|
||||
|
||||
MDRV_MACHINE_START(tourtabl)
|
||||
|
||||
|
||||
MDRV_RIOT6532_ADD("riot1", MASTER_CLOCK / 3, r6532_interface_0)
|
||||
MDRV_RIOT6532_ADD("riot2", MASTER_CLOCK / 3, r6532_interface_1)
|
||||
|
||||
|
@ -148,7 +148,7 @@ static READ8_HANDLER( vendetta_eeprom_r )
|
||||
|
||||
res = eeprom_read_bit();
|
||||
|
||||
res |= 0x02; //konami_eeprom_ack() << 5; /* add the ack */
|
||||
res |= 0x02; //konami_eeprom_ack() << 5; /* add the ack */
|
||||
|
||||
res |= input_port_read(machine, "EEPROM") & 0x0c; /* test switch */
|
||||
|
||||
|
@ -413,7 +413,7 @@ static INPUT_PORTS_START( vsnes_zapper )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) /* sprite hit */
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON1 ) /* gun trigger */
|
||||
|
||||
|
||||
PORT_START_TAG("IN1") /* IN1 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
@ -423,7 +423,7 @@ static INPUT_PORTS_START( vsnes_zapper )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
|
||||
PORT_START_TAG("COINS") /* IN2 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
@ -552,7 +552,7 @@ static INPUT_PORTS_START( golf4s )
|
||||
|
||||
PORT_MODIFY("IN0")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START3 ) /* START on a nes */
|
||||
|
||||
|
||||
PORT_MODIFY("IN1")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START4 ) /* START on a nes */
|
||||
INPUT_PORTS_END
|
||||
@ -1418,7 +1418,7 @@ static INPUT_PORTS_START( vsskykid )
|
||||
|
||||
PORT_MODIFY("IN0")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START2 ) /* START on a nes */
|
||||
|
||||
|
||||
PORT_MODIFY("IN1")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* SELECT on a nes */
|
||||
|
||||
@ -1608,7 +1608,7 @@ INPUT_PORTS_END
|
||||
static INPUT_PORTS_START( starlstr )
|
||||
PORT_INCLUDE( vsnes_dual )
|
||||
|
||||
PORT_START_TAG("DSW0")
|
||||
PORT_START_TAG("DSW0")
|
||||
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
|
||||
PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
|
||||
|
@ -139,7 +139,7 @@ static INPUT_PORTS_START( xybots )
|
||||
PORT_BIT( 0xf000, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_INCLUDE( atarijsa_i ) /* audio port */
|
||||
/* Xybots uses a swapped version */
|
||||
/* Xybots uses a swapped version */
|
||||
PORT_MODIFY("JSAI")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN2 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN1 )
|
||||
|
@ -97,7 +97,7 @@ INPUT_PORTS_END
|
||||
/* Almost identical, no number of bases selection */
|
||||
static INPUT_PORTS_START( sinvader )
|
||||
PORT_INCLUDE( tinvader )
|
||||
|
||||
|
||||
PORT_MODIFY("1E80")
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
|
@ -56,7 +56,7 @@ WRITE8_HANDLER( gottlieb_paletteram_w )
|
||||
int r, g, b, val;
|
||||
|
||||
paletteram[offset] = data;
|
||||
|
||||
|
||||
val = paletteram[offset | 1];
|
||||
r = combine_4_weights(weights, (val >> 0) & 1, (val >> 1) & 1, (val >> 2) & 1, (val >> 3) & 1);
|
||||
|
||||
@ -136,7 +136,7 @@ static TILE_GET_INFO( get_bg_tile_info )
|
||||
VIDEO_START( gottlieb )
|
||||
{
|
||||
static const int resistances[4] = { 2000, 1000, 470, 240 };
|
||||
|
||||
|
||||
/* compute palette information */
|
||||
/* note that there really are pullup/pulldown resistors, but this situation is complicated */
|
||||
/* by the use of transistors, so we ignore that and just use the realtive resistor weights */
|
||||
|
@ -344,7 +344,7 @@ int debugwin_seq_pressed(void)
|
||||
{
|
||||
int vkey = wininput_vkey_for_mame_code(code);
|
||||
int pressed = (vkey != 0 && (GetAsyncKeyState(vkey) & 0x8000) != 0);
|
||||
|
||||
|
||||
// if this is the first in the sequence, result is set equal
|
||||
if (first)
|
||||
result = pressed ^ invert;
|
||||
|
@ -709,7 +709,7 @@ int wininput_vkey_for_mame_code(input_code code)
|
||||
{
|
||||
input_item_id id = INPUT_CODE_ITEMID(code);
|
||||
int tablenum;
|
||||
|
||||
|
||||
// scan the table for a match
|
||||
for (tablenum = 0; tablenum < ARRAY_LENGTH(win_key_trans_table); tablenum++)
|
||||
if (win_key_trans_table[tablenum][MAME_KEY] == id)
|
||||
|
@ -9,4 +9,4 @@
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
const char build_version[] = "0.126u1 ("__DATE__")";
|
||||
const char build_version[] = "0.126u2 ("__DATE__")";
|
||||
|
Loading…
Reference in New Issue
Block a user