mirror of
https://github.com/holub/mame
synced 2025-06-02 10:59:52 +03:00
Clean-ups and version bump
This commit is contained in:
parent
99a4952017
commit
e6b9af5ec6
@ -299,7 +299,7 @@ READ32_HANDLER( sh3_internal_r )
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCSMR2 - Serial Mode Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
return sh4->m_sh3internal_lower[offset];
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ff00)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCBRR2 - Bit Rate Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
@ -315,7 +315,7 @@ READ32_HANDLER( sh3_internal_r )
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCSCR2 - Serial Control Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
return sh4->m_sh3internal_lower[offset];
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ff00)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCFTDR2 - Transmit FIFO Data Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
@ -331,7 +331,7 @@ READ32_HANDLER( sh3_internal_r )
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCSSR2 - Serial Status Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
return sh4->m_sh3internal_lower[offset];
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ff00)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCFRDR2 - Receive FIFO Data Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
@ -347,7 +347,7 @@ READ32_HANDLER( sh3_internal_r )
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCFCR2 - Fifo Control Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
return sh4->m_sh3internal_lower[offset];
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ffff)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal read from %08x mask %08x (SCFDR2 - Fifo Data Count Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,mem_mask);
|
||||
@ -622,7 +622,7 @@ WRITE32_HANDLER( sh3_internal_w )
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCSMR2 - Serial Mode Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ff00)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCBRR2 - Bit Rate Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
@ -636,7 +636,7 @@ WRITE32_HANDLER( sh3_internal_w )
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCSCR2 - Serial Control Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ff00)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCFTDR2 - Transmit FIFO Data Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
@ -650,7 +650,7 @@ WRITE32_HANDLER( sh3_internal_w )
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCSSR2 - Serial Status Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ff00)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCFRDR2 - Receive FIFO Data Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
@ -664,7 +664,7 @@ WRITE32_HANDLER( sh3_internal_w )
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCFCR2 - Fifo Control Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
}
|
||||
|
||||
|
||||
if (mem_mask & 0x0000ffff)
|
||||
{
|
||||
logerror("'%s' (%08x): SCIF internal write to %08x = %08x & %08x (SCFDR2 - Fifo Data Count Register 2)\n",sh4->device->tag(), sh4->pc & AM,(offset *4)+0x4000000,data,mem_mask);
|
||||
|
File diff suppressed because it is too large
Load Diff
206
src/emu/ioport.c
206
src/emu/ioport.c
@ -637,129 +637,129 @@ static const struct
|
||||
{ INPUT_STRING_Coinage, "Coinage" },
|
||||
{ INPUT_STRING_Coin_A, "Coin A" },
|
||||
{ INPUT_STRING_Coin_B, "Coin B" },
|
||||
// { INPUT_STRING_20C_1C, "20 Coins/1 Credit" },
|
||||
// { INPUT_STRING_15C_1C, "15 Coins/1 Credit" },
|
||||
// { INPUT_STRING_10C_1C, "10 Coins/1 Credit" },
|
||||
// __input_string_coinage_start
|
||||
// { INPUT_STRING_20C_1C, "20 Coins/1 Credit" },
|
||||
// { INPUT_STRING_15C_1C, "15 Coins/1 Credit" },
|
||||
// { INPUT_STRING_10C_1C, "10 Coins/1 Credit" },
|
||||
// __input_string_coinage_start
|
||||
{ INPUT_STRING_9C_1C, "9 Coins/1 Credit" },
|
||||
{ INPUT_STRING_8C_1C, "8 Coins/1 Credit" },
|
||||
{ INPUT_STRING_7C_1C, "7 Coins/1 Credit" },
|
||||
{ INPUT_STRING_6C_1C, "6 Coins/1 Credit" },
|
||||
// { INPUT_STRING_10C_2C, "10 Coins/2 Credits" },
|
||||
// { INPUT_STRING_10C_2C, "10 Coins/2 Credits" },
|
||||
{ INPUT_STRING_5C_1C, "5 Coins/1 Credit" },
|
||||
// { INPUT_STRING_9C_2C, "9 Coins/2 Credits" },
|
||||
// { INPUT_STRING_8C_2C, "8 Coins/2 Credits" },
|
||||
// { INPUT_STRING_9C_2C, "9 Coins/2 Credits" },
|
||||
// { INPUT_STRING_8C_2C, "8 Coins/2 Credits" },
|
||||
{ INPUT_STRING_4C_1C, "4 Coins/1 Credit" },
|
||||
// { INPUT_STRING_7C_2C, "7 Coins/2 Credits" },
|
||||
// { INPUT_STRING_10C_3C, "10 Coins/3 Credits" },
|
||||
// { INPUT_STRING_9C_3C, "9 Coins/3 Credits" },
|
||||
// { INPUT_STRING_6C_2C, "6 Coins/2 Credits" },
|
||||
// { INPUT_STRING_7C_2C, "7 Coins/2 Credits" },
|
||||
// { INPUT_STRING_10C_3C, "10 Coins/3 Credits" },
|
||||
// { INPUT_STRING_9C_3C, "9 Coins/3 Credits" },
|
||||
// { INPUT_STRING_6C_2C, "6 Coins/2 Credits" },
|
||||
{ INPUT_STRING_3C_1C, "3 Coins/1 Credit" },
|
||||
{ INPUT_STRING_8C_3C, "8 Coins/3 Credits" },
|
||||
// { INPUT_STRING_10C_4C, "10 Coins/4 Credits" },
|
||||
// { INPUT_STRING_5C_2C, "5 Coins/2 Credits" },
|
||||
// { INPUT_STRING_7C_3C, "7 Coins/3 Credits" },
|
||||
// { INPUT_STRING_9C_4C, "9 Coins/4 Credits" },
|
||||
// { INPUT_STRING_10C_5C, "10 Coins/5 Credits" },
|
||||
// { INPUT_STRING_8C_4C, "8 Coins/4 Credits" },
|
||||
// { INPUT_STRING_6C_3C, "6 Coins/3 Credits" },
|
||||
// { INPUT_STRING_10C_4C, "10 Coins/4 Credits" },
|
||||
// { INPUT_STRING_5C_2C, "5 Coins/2 Credits" },
|
||||
// { INPUT_STRING_7C_3C, "7 Coins/3 Credits" },
|
||||
// { INPUT_STRING_9C_4C, "9 Coins/4 Credits" },
|
||||
// { INPUT_STRING_10C_5C, "10 Coins/5 Credits" },
|
||||
// { INPUT_STRING_8C_4C, "8 Coins/4 Credits" },
|
||||
// { INPUT_STRING_6C_3C, "6 Coins/3 Credits" },
|
||||
{ INPUT_STRING_4C_2C, "4 Coins/2 Credits" },
|
||||
{ INPUT_STRING_2C_1C, "2 Coins/1 Credit" },
|
||||
// { INPUT_STRING_9C_5C, "9 Coins/5 Credits" },
|
||||
// { INPUT_STRING_7C_4C, "7 Coins/4 Credits" },
|
||||
// { INPUT_STRING_10C_6C, "10 Coins/6 Credits" },
|
||||
// { INPUT_STRING_9C_5C, "9 Coins/5 Credits" },
|
||||
// { INPUT_STRING_7C_4C, "7 Coins/4 Credits" },
|
||||
// { INPUT_STRING_10C_6C, "10 Coins/6 Credits" },
|
||||
{ INPUT_STRING_5C_3C, "5 Coins/3 Credits" },
|
||||
// { INPUT_STRING_8C_5C, "8 Coins/5 Credits" },
|
||||
// { INPUT_STRING_9C_6C, "9 Coins/6 Credits" },
|
||||
// { INPUT_STRING_6C_4C, "6 Coins/4 Credits" },
|
||||
// { INPUT_STRING_8C_5C, "8 Coins/5 Credits" },
|
||||
// { INPUT_STRING_9C_6C, "9 Coins/6 Credits" },
|
||||
// { INPUT_STRING_6C_4C, "6 Coins/4 Credits" },
|
||||
{ INPUT_STRING_3C_2C, "3 Coins/2 Credits" },
|
||||
// { INPUT_STRING_10C_7C, "10 Coins/7 Credits" },
|
||||
// { INPUT_STRING_7C_5C, "7 Coins/5 Credits" },
|
||||
// { INPUT_STRING_8C_6C, "8 Coins/6 Credits" },
|
||||
// { INPUT_STRING_10C_7C, "10 Coins/7 Credits" },
|
||||
// { INPUT_STRING_7C_5C, "7 Coins/5 Credits" },
|
||||
// { INPUT_STRING_8C_6C, "8 Coins/6 Credits" },
|
||||
{ INPUT_STRING_4C_3C, "4 Coins/3 Credits" },
|
||||
// { INPUT_STRING_9C_7C, "9 Coins/7 Credits" },
|
||||
// { INPUT_STRING_10C_8C, "10 Coins/8 Credits" },
|
||||
// { INPUT_STRING_5C_4C, "5 Coins/4 Credits" },
|
||||
// { INPUT_STRING_6C_5C, "6 Coins/5 Credits" },
|
||||
// { INPUT_STRING_7C_6C, "7 Coins/6 Credits" },
|
||||
// { INPUT_STRING_8C_7C, "8 Coins/7 Credits" },
|
||||
// { INPUT_STRING_9C_8C, "9 Coins/8 Credits" },
|
||||
// { INPUT_STRING_10C_9C, "10 Coins/9 Credits" },
|
||||
// { INPUT_STRING_10C_10C, "10 Coins/10 Credits" },
|
||||
// { INPUT_STRING_9C_9C, "9 Coins/9 Credits" },
|
||||
// { INPUT_STRING_8C_8C, "8 Coins/8 Credits" },
|
||||
// { INPUT_STRING_7C_7C, "7 Coins/7 Credits" },
|
||||
// { INPUT_STRING_6C_6C, "6 Coins/6 Credits" },
|
||||
// { INPUT_STRING_5C_5C, "5 Coins/5 Credits" },
|
||||
// { INPUT_STRING_9C_7C, "9 Coins/7 Credits" },
|
||||
// { INPUT_STRING_10C_8C, "10 Coins/8 Credits" },
|
||||
// { INPUT_STRING_5C_4C, "5 Coins/4 Credits" },
|
||||
// { INPUT_STRING_6C_5C, "6 Coins/5 Credits" },
|
||||
// { INPUT_STRING_7C_6C, "7 Coins/6 Credits" },
|
||||
// { INPUT_STRING_8C_7C, "8 Coins/7 Credits" },
|
||||
// { INPUT_STRING_9C_8C, "9 Coins/8 Credits" },
|
||||
// { INPUT_STRING_10C_9C, "10 Coins/9 Credits" },
|
||||
// { INPUT_STRING_10C_10C, "10 Coins/10 Credits" },
|
||||
// { INPUT_STRING_9C_9C, "9 Coins/9 Credits" },
|
||||
// { INPUT_STRING_8C_8C, "8 Coins/8 Credits" },
|
||||
// { INPUT_STRING_7C_7C, "7 Coins/7 Credits" },
|
||||
// { INPUT_STRING_6C_6C, "6 Coins/6 Credits" },
|
||||
// { INPUT_STRING_5C_5C, "5 Coins/5 Credits" },
|
||||
{ INPUT_STRING_4C_4C, "4 Coins/4 Credits" },
|
||||
{ INPUT_STRING_3C_3C, "3 Coins/3 Credits" },
|
||||
{ INPUT_STRING_2C_2C, "2 Coins/2 Credits" },
|
||||
{ INPUT_STRING_1C_1C, "1 Coin/1 Credit" },
|
||||
// { INPUT_STRING_9C_10C, "9 Coins/10 Credits" },
|
||||
// { INPUT_STRING_8C_9C, "8 Coins/9 Credits" },
|
||||
// { INPUT_STRING_7C_8C, "7 Coins/8 Credits" },
|
||||
// { INPUT_STRING_6C_7C, "6 Coins/7 Credits" },
|
||||
// { INPUT_STRING_5C_6C, "5 Coins/6 Credits" },
|
||||
// { INPUT_STRING_8C_10C, "8 Coins/10 Credits" },
|
||||
// { INPUT_STRING_9C_10C, "9 Coins/10 Credits" },
|
||||
// { INPUT_STRING_8C_9C, "8 Coins/9 Credits" },
|
||||
// { INPUT_STRING_7C_8C, "7 Coins/8 Credits" },
|
||||
// { INPUT_STRING_6C_7C, "6 Coins/7 Credits" },
|
||||
// { INPUT_STRING_5C_6C, "5 Coins/6 Credits" },
|
||||
// { INPUT_STRING_8C_10C, "8 Coins/10 Credits" },
|
||||
{ INPUT_STRING_4C_5C, "4 Coins/5 Credits" },
|
||||
// { INPUT_STRING_7C_9C, "7 Coins/9 Credits" },
|
||||
// { INPUT_STRING_6C_8C, "6 Coins/8 Credits" },
|
||||
// { INPUT_STRING_7C_9C, "7 Coins/9 Credits" },
|
||||
// { INPUT_STRING_6C_8C, "6 Coins/8 Credits" },
|
||||
{ INPUT_STRING_3C_4C, "3 Coins/4 Credits" },
|
||||
// { INPUT_STRING_5C_7C, "5 Coins/7 Credits" },
|
||||
// { INPUT_STRING_7C_10C, "7 Coins/10 Credits" },
|
||||
// { INPUT_STRING_6C_9C, "6 Coins/9 Credits" },
|
||||
// { INPUT_STRING_4C_6C, "4 Coins/6 Credits" },
|
||||
// { INPUT_STRING_5C_7C, "5 Coins/7 Credits" },
|
||||
// { INPUT_STRING_7C_10C, "7 Coins/10 Credits" },
|
||||
// { INPUT_STRING_6C_9C, "6 Coins/9 Credits" },
|
||||
// { INPUT_STRING_4C_6C, "4 Coins/6 Credits" },
|
||||
{ INPUT_STRING_2C_3C, "2 Coins/3 Credits" },
|
||||
// { INPUT_STRING_5C_8C, "5 Coins/8 Credits" },
|
||||
// { INPUT_STRING_6C_10C, "6 Coins/10 Credits" },
|
||||
// { INPUT_STRING_3C_5C, "3 Coins/5 Credits" },
|
||||
// { INPUT_STRING_5C_8C, "5 Coins/8 Credits" },
|
||||
// { INPUT_STRING_6C_10C, "6 Coins/10 Credits" },
|
||||
// { INPUT_STRING_3C_5C, "3 Coins/5 Credits" },
|
||||
{ INPUT_STRING_4C_7C, "4 Coins/7 Credits" },
|
||||
// { INPUT_STRING_5C_9C, "5 Coins/9 Credits" },
|
||||
// { INPUT_STRING_5C_10C, "5 Coins/10 Credits" },
|
||||
// { INPUT_STRING_4C_8C, "4 Coins/8 Credits" },
|
||||
// { INPUT_STRING_3C_6C, "3 Coins/6 Credits" },
|
||||
// { INPUT_STRING_5C_9C, "5 Coins/9 Credits" },
|
||||
// { INPUT_STRING_5C_10C, "5 Coins/10 Credits" },
|
||||
// { INPUT_STRING_4C_8C, "4 Coins/8 Credits" },
|
||||
// { INPUT_STRING_3C_6C, "3 Coins/6 Credits" },
|
||||
{ INPUT_STRING_2C_4C, "2 Coins/4 Credits" },
|
||||
{ INPUT_STRING_1C_2C, "1 Coin/2 Credits" },
|
||||
// { INPUT_STRING_4C_9C, "4 Coins/9 Credits" },
|
||||
// { INPUT_STRING_3C_7C, "3 Coins/7 Credits" },
|
||||
// { INPUT_STRING_4C_10C, "4 Coins/10 Credits" },
|
||||
// { INPUT_STRING_4C_9C, "4 Coins/9 Credits" },
|
||||
// { INPUT_STRING_3C_7C, "3 Coins/7 Credits" },
|
||||
// { INPUT_STRING_4C_10C, "4 Coins/10 Credits" },
|
||||
{ INPUT_STRING_2C_5C, "2 Coins/5 Credits" },
|
||||
// { INPUT_STRING_3C_8C, "3 Coins/8 Credits" },
|
||||
// { INPUT_STRING_3C_9C, "3 Coins/9 Credits" },
|
||||
// { INPUT_STRING_3C_8C, "3 Coins/8 Credits" },
|
||||
// { INPUT_STRING_3C_9C, "3 Coins/9 Credits" },
|
||||
{ INPUT_STRING_2C_6C, "2 Coins/6 Credits" },
|
||||
{ INPUT_STRING_1C_3C, "1 Coin/3 Credits" },
|
||||
// { INPUT_STRING_3C_10C, "3 Coins/10 Credits" },
|
||||
// { INPUT_STRING_3C_10C, "3 Coins/10 Credits" },
|
||||
{ INPUT_STRING_2C_7C, "2 Coins/7 Credits" },
|
||||
{ INPUT_STRING_2C_8C, "2 Coins/8 Credits" },
|
||||
{ INPUT_STRING_1C_4C, "1 Coin/4 Credits" },
|
||||
// { INPUT_STRING_2C_9C, "2 Coins/9 Credits" },
|
||||
// { INPUT_STRING_2C_10C, "2 Coins/10 Credits" },
|
||||
// { INPUT_STRING_2C_9C, "2 Coins/9 Credits" },
|
||||
// { INPUT_STRING_2C_10C, "2 Coins/10 Credits" },
|
||||
{ INPUT_STRING_1C_5C, "1 Coin/5 Credits" },
|
||||
{ INPUT_STRING_1C_6C, "1 Coin/6 Credits" },
|
||||
{ INPUT_STRING_1C_7C, "1 Coin/7 Credits" },
|
||||
{ INPUT_STRING_1C_8C, "1 Coin/8 Credits" },
|
||||
{ INPUT_STRING_1C_9C, "1 Coin/9 Credits" },
|
||||
// __input_string_coinage_end
|
||||
// { INPUT_STRING_1C_10C, "1 Coin/10 Credits" },
|
||||
// { INPUT_STRING_1C_11C, "1 Coin/11 Credits" },
|
||||
// { INPUT_STRING_1C_12C, "1 Coin/12 Credits" },
|
||||
// { INPUT_STRING_1C_13C, "1 Coin/13 Credits" },
|
||||
// { INPUT_STRING_1C_14C, "1 Coin/14 Credits" },
|
||||
// { INPUT_STRING_1C_15C, "1 Coin/15 Credits" },
|
||||
// { INPUT_STRING_1C_20C, "1 Coin/20 Credits" },
|
||||
// { INPUT_STRING_1C_25C, "1 Coin/25 Credits" },
|
||||
// { INPUT_STRING_1C_30C, "1 Coin/30 Credits" },
|
||||
// { INPUT_STRING_1C_40C, "1 Coin/40 Credits" },
|
||||
// { INPUT_STRING_1C_50C, "1 Coin/50 Credits" },
|
||||
// { INPUT_STRING_1C_99C, "1 Coin/99 Credits" },
|
||||
// { INPUT_STRING_1C_100C, "1 Coin/100 Credits" },
|
||||
// { INPUT_STRING_1C_120C, "1 Coin/120 Credits" },
|
||||
// { INPUT_STRING_1C_125C, "1 Coin/125 Credits" },
|
||||
// { INPUT_STRING_1C_150C, "1 Coin/150 Credits" },
|
||||
// { INPUT_STRING_1C_200C, "1 Coin/200 Credits" },
|
||||
// { INPUT_STRING_1C_250C, "1 Coin/250 Credits" },
|
||||
// { INPUT_STRING_1C_500C, "1 Coin/500 Credits" },
|
||||
// { INPUT_STRING_1C_1000C, "1 Coin/1000 Credits" },
|
||||
// __input_string_coinage_end
|
||||
// { INPUT_STRING_1C_10C, "1 Coin/10 Credits" },
|
||||
// { INPUT_STRING_1C_11C, "1 Coin/11 Credits" },
|
||||
// { INPUT_STRING_1C_12C, "1 Coin/12 Credits" },
|
||||
// { INPUT_STRING_1C_13C, "1 Coin/13 Credits" },
|
||||
// { INPUT_STRING_1C_14C, "1 Coin/14 Credits" },
|
||||
// { INPUT_STRING_1C_15C, "1 Coin/15 Credits" },
|
||||
// { INPUT_STRING_1C_20C, "1 Coin/20 Credits" },
|
||||
// { INPUT_STRING_1C_25C, "1 Coin/25 Credits" },
|
||||
// { INPUT_STRING_1C_30C, "1 Coin/30 Credits" },
|
||||
// { INPUT_STRING_1C_40C, "1 Coin/40 Credits" },
|
||||
// { INPUT_STRING_1C_50C, "1 Coin/50 Credits" },
|
||||
// { INPUT_STRING_1C_99C, "1 Coin/99 Credits" },
|
||||
// { INPUT_STRING_1C_100C, "1 Coin/100 Credits" },
|
||||
// { INPUT_STRING_1C_120C, "1 Coin/120 Credits" },
|
||||
// { INPUT_STRING_1C_125C, "1 Coin/125 Credits" },
|
||||
// { INPUT_STRING_1C_150C, "1 Coin/150 Credits" },
|
||||
// { INPUT_STRING_1C_200C, "1 Coin/200 Credits" },
|
||||
// { INPUT_STRING_1C_250C, "1 Coin/250 Credits" },
|
||||
// { INPUT_STRING_1C_500C, "1 Coin/500 Credits" },
|
||||
// { INPUT_STRING_1C_1000C, "1 Coin/1000 Credits" },
|
||||
{ INPUT_STRING_Free_Play, "Free Play" },
|
||||
{ INPUT_STRING_Cabinet, "Cabinet" },
|
||||
{ INPUT_STRING_Upright, "Upright" },
|
||||
@ -821,24 +821,24 @@ static const struct
|
||||
{ INPUT_STRING_Continues, "Continues" },
|
||||
{ INPUT_STRING_Allow_Continue, "Allow Continue" },
|
||||
{ INPUT_STRING_Level_Select, "Level Select" },
|
||||
// { INPUT_STRING_Allow, "Allow" },
|
||||
// { INPUT_STRING_Forbid, "Forbid" },
|
||||
// { INPUT_STRING_Enable, "Enable" },
|
||||
// { INPUT_STRING_Disable, "Disable" },
|
||||
// { INPUT_STRING_Allow, "Allow" },
|
||||
// { INPUT_STRING_Forbid, "Forbid" },
|
||||
// { INPUT_STRING_Enable, "Enable" },
|
||||
// { INPUT_STRING_Disable, "Disable" },
|
||||
{ INPUT_STRING_Infinite, "Infinite" },
|
||||
// { INPUT_STRING_Invincibility, "Invincibility" },
|
||||
// { INPUT_STRING_Invulnerability, "Invulnerability" },
|
||||
// { INPUT_STRING_Invincibility, "Invincibility" },
|
||||
// { INPUT_STRING_Invulnerability, "Invulnerability" },
|
||||
{ INPUT_STRING_Stereo, "Stereo" },
|
||||
{ INPUT_STRING_Mono, "Mono" },
|
||||
{ INPUT_STRING_Unused, "Unused" },
|
||||
{ INPUT_STRING_Unknown, "Unknown" },
|
||||
// { INPUT_STRING_Undefined, "Undefined" },
|
||||
// { INPUT_STRING_Undefined, "Undefined" },
|
||||
{ INPUT_STRING_Standard, "Standard" },
|
||||
{ INPUT_STRING_Reverse, "Reverse" },
|
||||
{ INPUT_STRING_Alternate, "Alternate" },
|
||||
// { INPUT_STRING_Reserve, "Reserve" },
|
||||
// { INPUT_STRING_Spare, "Spare" },
|
||||
// { INPUT_STRING_Invalid, "Invalid" },
|
||||
// { INPUT_STRING_Reserve, "Reserve" },
|
||||
// { INPUT_STRING_Spare, "Spare" },
|
||||
// { INPUT_STRING_Invalid, "Invalid" },
|
||||
{ INPUT_STRING_None, "None" },
|
||||
};
|
||||
|
||||
@ -1731,7 +1731,7 @@ static INT32 apply_analog_settings(INT32 value, analog_field_state *analog)
|
||||
{
|
||||
value = analog->reverse_val - value;
|
||||
if (analog->wraps)
|
||||
value--;
|
||||
value--;
|
||||
}
|
||||
else if (analog->single_scale)
|
||||
/* it's a pedal or the default value is equal to min/max */
|
||||
@ -2407,9 +2407,9 @@ static analog_field_state *init_field_analog_state(const input_field_config *fie
|
||||
/* positional controls reverse from their max range */
|
||||
state->reverse_val = state->maximum + state->minimum;
|
||||
|
||||
// /* relative controls reverse from 1 past their max range */
|
||||
// if (state->positionalscale == 0)
|
||||
// state->reverse_val += INPUT_RELATIVE_PER_PIXEL;
|
||||
// /* relative controls reverse from 1 past their max range */
|
||||
// if (state->positionalscale == 0)
|
||||
// state->reverse_val += INPUT_RELATIVE_PER_PIXEL;
|
||||
}
|
||||
}
|
||||
|
||||
|
308
src/emu/ioport.h
308
src/emu/ioport.h
@ -220,7 +220,7 @@ enum
|
||||
IPT_MAHJONG_KAN,
|
||||
IPT_MAHJONG_PON,
|
||||
IPT_MAHJONG_CHI,
|
||||
IPT_MAHJONG_REACH, //IPT_MAHJONG_RIICHI, // REACH is Japanglish
|
||||
IPT_MAHJONG_REACH, //IPT_MAHJONG_RIICHI, // REACH is Japanglish
|
||||
IPT_MAHJONG_RON,
|
||||
IPT_MAHJONG_BET,
|
||||
IPT_MAHJONG_LAST_CHANCE,
|
||||
@ -253,10 +253,10 @@ enum
|
||||
IPT_GAMBLE_SERVICE, // attendant
|
||||
IPT_GAMBLE_BOOK, // attendant
|
||||
IPT_GAMBLE_DOOR, // attendant
|
||||
// IPT_GAMBLE_DOOR2, // many gambling games have several doors.
|
||||
// IPT_GAMBLE_DOOR3,
|
||||
// IPT_GAMBLE_DOOR4,
|
||||
// IPT_GAMBLE_DOOR5,
|
||||
// IPT_GAMBLE_DOOR2, // many gambling games have several doors.
|
||||
// IPT_GAMBLE_DOOR3,
|
||||
// IPT_GAMBLE_DOOR4,
|
||||
// IPT_GAMBLE_DOOR5,
|
||||
|
||||
IPT_GAMBLE_HIGH, // player
|
||||
IPT_GAMBLE_LOW, // player
|
||||
@ -267,22 +267,22 @@ enum
|
||||
IPT_GAMBLE_STAND, // player
|
||||
IPT_GAMBLE_BET, // player
|
||||
IPT_GAMBLE_PAYOUT, // player
|
||||
// IPT_GAMBLE_BUTTON1, // player
|
||||
// IPT_GAMBLE_BUTTON2, // many many gambling games have multi-games and/or multi-function-buttons
|
||||
// IPT_GAMBLE_BUTTON3, // I suggest to eliminate specific names
|
||||
// IPT_GAMBLE_BUTTON4,
|
||||
// IPT_GAMBLE_BUTTON5,
|
||||
// IPT_GAMBLE_BUTTON6,
|
||||
// IPT_GAMBLE_BUTTON7,
|
||||
// IPT_GAMBLE_BUTTON8,
|
||||
// IPT_GAMBLE_BUTTON9,
|
||||
// IPT_GAMBLE_BUTTON10,
|
||||
// IPT_GAMBLE_BUTTON11,
|
||||
// IPT_GAMBLE_BUTTON12,
|
||||
// IPT_GAMBLE_BUTTON13,
|
||||
// IPT_GAMBLE_BUTTON14,
|
||||
// IPT_GAMBLE_BUTTON15,
|
||||
// IPT_GAMBLE_BUTTON16,
|
||||
// IPT_GAMBLE_BUTTON1, // player
|
||||
// IPT_GAMBLE_BUTTON2, // many many gambling games have multi-games and/or multi-function-buttons
|
||||
// IPT_GAMBLE_BUTTON3, // I suggest to eliminate specific names
|
||||
// IPT_GAMBLE_BUTTON4,
|
||||
// IPT_GAMBLE_BUTTON5,
|
||||
// IPT_GAMBLE_BUTTON6,
|
||||
// IPT_GAMBLE_BUTTON7,
|
||||
// IPT_GAMBLE_BUTTON8,
|
||||
// IPT_GAMBLE_BUTTON9,
|
||||
// IPT_GAMBLE_BUTTON10,
|
||||
// IPT_GAMBLE_BUTTON11,
|
||||
// IPT_GAMBLE_BUTTON12,
|
||||
// IPT_GAMBLE_BUTTON13,
|
||||
// IPT_GAMBLE_BUTTON14,
|
||||
// IPT_GAMBLE_BUTTON15,
|
||||
// IPT_GAMBLE_BUTTON16,
|
||||
|
||||
/* poker-specific inputs */
|
||||
IPT_POKER_HOLD1,
|
||||
@ -313,8 +313,8 @@ enum
|
||||
IPT_PEDAL, // absolute // autocenter
|
||||
IPT_PEDAL2, // absolute // autocenter
|
||||
IPT_PEDAL3, // absolute // autocenter
|
||||
IPT_LIGHTGUN_X, // absolute
|
||||
IPT_LIGHTGUN_Y, // absolute
|
||||
IPT_LIGHTGUN_X, // absolute
|
||||
IPT_LIGHTGUN_Y, // absolute
|
||||
IPT_POSITIONAL, // absolute // autocenter if not wraps
|
||||
IPT_POSITIONAL_V, // absolute // autocenter if not wraps
|
||||
#define __ipt_analog_absolute_end IPT_POSITIONAL_V
|
||||
@ -415,129 +415,129 @@ enum
|
||||
INPUT_STRING_Coinage,
|
||||
INPUT_STRING_Coin_A,
|
||||
INPUT_STRING_Coin_B,
|
||||
// INPUT_STRING_20C_1C, // 0.050000
|
||||
// INPUT_STRING_15C_1C, // 0.066667
|
||||
// INPUT_STRING_10C_1C, // 0.100000
|
||||
// INPUT_STRING_20C_1C, // 0.050000
|
||||
// INPUT_STRING_15C_1C, // 0.066667
|
||||
// INPUT_STRING_10C_1C, // 0.100000
|
||||
#define __input_string_coinage_start INPUT_STRING_9C_1C
|
||||
INPUT_STRING_9C_1C, // 0.111111
|
||||
INPUT_STRING_8C_1C, // 0.125000
|
||||
INPUT_STRING_7C_1C, // 0.142857
|
||||
INPUT_STRING_6C_1C, // 0.166667
|
||||
// INPUT_STRING_10C_2C, // 0.200000
|
||||
INPUT_STRING_5C_1C, // 0.200000
|
||||
// INPUT_STRING_9C_2C, // 0.222222
|
||||
// INPUT_STRING_8C_2C, // 0.250000
|
||||
INPUT_STRING_4C_1C, // 0.250000
|
||||
// INPUT_STRING_7C_2C, // 0.285714
|
||||
// INPUT_STRING_10C_3C, // 0.300000
|
||||
// INPUT_STRING_9C_3C, // 0.333333
|
||||
// INPUT_STRING_6C_2C, // 0.333333
|
||||
INPUT_STRING_3C_1C, // 0.333333
|
||||
INPUT_STRING_8C_3C, // 0.375000
|
||||
// INPUT_STRING_10C_4C, // 0.400000
|
||||
// INPUT_STRING_5C_2C, // 0.400000
|
||||
// INPUT_STRING_7C_3C, // 0.428571
|
||||
// INPUT_STRING_9C_4C, // 0.444444
|
||||
// INPUT_STRING_10C_5C, // 0.500000
|
||||
// INPUT_STRING_8C_4C, // 0.500000
|
||||
// INPUT_STRING_6C_3C, // 0.500000
|
||||
INPUT_STRING_4C_2C, // 0.500000
|
||||
INPUT_STRING_2C_1C, // 0.500000
|
||||
// INPUT_STRING_9C_5C, // 0.555556
|
||||
// INPUT_STRING_7C_4C, // 0.571429
|
||||
// INPUT_STRING_10C_6C, // 0.600000
|
||||
INPUT_STRING_5C_3C, // 0.600000
|
||||
// INPUT_STRING_8C_5C, // 0.625000
|
||||
// INPUT_STRING_9C_6C, // 0.666667
|
||||
// INPUT_STRING_6C_4C, // 0.666667
|
||||
INPUT_STRING_3C_2C, // 0.666667
|
||||
// INPUT_STRING_10C_7C, // 0.700000
|
||||
// INPUT_STRING_7C_5C, // 0.714286
|
||||
// INPUT_STRING_8C_6C, // 0.750000
|
||||
INPUT_STRING_4C_3C, // 0.750000
|
||||
// INPUT_STRING_9C_7C, // 0.777778
|
||||
// INPUT_STRING_10C_8C, // 0.800000
|
||||
// INPUT_STRING_5C_4C, // 0.800000
|
||||
// INPUT_STRING_6C_5C, // 0.833333
|
||||
// INPUT_STRING_7C_6C, // 0.857143
|
||||
// INPUT_STRING_8C_7C, // 0.875000
|
||||
// INPUT_STRING_9C_8C, // 0.888889
|
||||
// INPUT_STRING_10C_9C, // 0.900000
|
||||
// INPUT_STRING_10C_10C, // 1.000000
|
||||
// INPUT_STRING_9C_9C, // 1.000000
|
||||
// INPUT_STRING_8C_8C, // 1.000000
|
||||
// INPUT_STRING_7C_7C, // 1.000000
|
||||
// INPUT_STRING_6C_6C, // 1.000000
|
||||
// INPUT_STRING_5C_5C, // 1.000000
|
||||
INPUT_STRING_4C_4C, // 1.000000
|
||||
INPUT_STRING_3C_3C, // 1.000000
|
||||
INPUT_STRING_2C_2C, // 1.000000
|
||||
INPUT_STRING_1C_1C, // 1.000000
|
||||
// INPUT_STRING_9C_10C, // 1.111111
|
||||
// INPUT_STRING_8C_9C, // 1.125000
|
||||
// INPUT_STRING_7C_8C, // 1.142857
|
||||
// INPUT_STRING_6C_7C, // 1.166667
|
||||
// INPUT_STRING_5C_6C, // 1.200000
|
||||
// INPUT_STRING_8C_10C, // 1.250000
|
||||
INPUT_STRING_4C_5C, // 1.250000
|
||||
// INPUT_STRING_7C_9C, // 1.285714
|
||||
// INPUT_STRING_6C_8C, // 1.333333
|
||||
INPUT_STRING_3C_4C, // 1.333333
|
||||
// INPUT_STRING_5C_7C, // 1.400000
|
||||
// INPUT_STRING_7C_10C, // 1.428571
|
||||
// INPUT_STRING_6C_9C, // 1.500000
|
||||
// INPUT_STRING_4C_6C, // 1.500000
|
||||
INPUT_STRING_2C_3C, // 1.500000
|
||||
// INPUT_STRING_5C_8C, // 1.600000
|
||||
// INPUT_STRING_6C_10C, // 1.666667
|
||||
// INPUT_STRING_3C_5C, // 1.666667
|
||||
INPUT_STRING_4C_7C, // 1.750000
|
||||
// INPUT_STRING_5C_9C, // 1.800000
|
||||
// INPUT_STRING_5C_10C, // 2.000000
|
||||
// INPUT_STRING_4C_8C, // 2.000000
|
||||
// INPUT_STRING_3C_6C, // 2.000000
|
||||
INPUT_STRING_2C_4C, // 2.000000
|
||||
INPUT_STRING_1C_2C, // 2.000000
|
||||
// INPUT_STRING_4C_9C, // 2.250000
|
||||
// INPUT_STRING_3C_7C, // 2.333333
|
||||
// INPUT_STRING_4C_10C, // 2.500000
|
||||
INPUT_STRING_2C_5C, // 2.500000
|
||||
// INPUT_STRING_3C_8C, // 2.666667
|
||||
// INPUT_STRING_3C_9C, // 3.000000
|
||||
INPUT_STRING_2C_6C, // 3.000000
|
||||
INPUT_STRING_1C_3C, // 3.000000
|
||||
// INPUT_STRING_3C_10C, // 3.333333
|
||||
INPUT_STRING_2C_7C, // 3.500000
|
||||
INPUT_STRING_2C_8C, // 4.000000
|
||||
INPUT_STRING_1C_4C, // 4.000000
|
||||
// INPUT_STRING_2C_9C, // 4.500000
|
||||
// INPUT_STRING_2C_10C, // 5.000000
|
||||
INPUT_STRING_1C_5C, // 5.000000
|
||||
INPUT_STRING_1C_6C, // 6.000000
|
||||
INPUT_STRING_1C_7C, // 7.000000
|
||||
INPUT_STRING_1C_8C, // 8.000000
|
||||
INPUT_STRING_1C_9C, // 9.000000
|
||||
INPUT_STRING_9C_1C, // 0.111111
|
||||
INPUT_STRING_8C_1C, // 0.125000
|
||||
INPUT_STRING_7C_1C, // 0.142857
|
||||
INPUT_STRING_6C_1C, // 0.166667
|
||||
// INPUT_STRING_10C_2C, // 0.200000
|
||||
INPUT_STRING_5C_1C, // 0.200000
|
||||
// INPUT_STRING_9C_2C, // 0.222222
|
||||
// INPUT_STRING_8C_2C, // 0.250000
|
||||
INPUT_STRING_4C_1C, // 0.250000
|
||||
// INPUT_STRING_7C_2C, // 0.285714
|
||||
// INPUT_STRING_10C_3C, // 0.300000
|
||||
// INPUT_STRING_9C_3C, // 0.333333
|
||||
// INPUT_STRING_6C_2C, // 0.333333
|
||||
INPUT_STRING_3C_1C, // 0.333333
|
||||
INPUT_STRING_8C_3C, // 0.375000
|
||||
// INPUT_STRING_10C_4C, // 0.400000
|
||||
// INPUT_STRING_5C_2C, // 0.400000
|
||||
// INPUT_STRING_7C_3C, // 0.428571
|
||||
// INPUT_STRING_9C_4C, // 0.444444
|
||||
// INPUT_STRING_10C_5C, // 0.500000
|
||||
// INPUT_STRING_8C_4C, // 0.500000
|
||||
// INPUT_STRING_6C_3C, // 0.500000
|
||||
INPUT_STRING_4C_2C, // 0.500000
|
||||
INPUT_STRING_2C_1C, // 0.500000
|
||||
// INPUT_STRING_9C_5C, // 0.555556
|
||||
// INPUT_STRING_7C_4C, // 0.571429
|
||||
// INPUT_STRING_10C_6C, // 0.600000
|
||||
INPUT_STRING_5C_3C, // 0.600000
|
||||
// INPUT_STRING_8C_5C, // 0.625000
|
||||
// INPUT_STRING_9C_6C, // 0.666667
|
||||
// INPUT_STRING_6C_4C, // 0.666667
|
||||
INPUT_STRING_3C_2C, // 0.666667
|
||||
// INPUT_STRING_10C_7C, // 0.700000
|
||||
// INPUT_STRING_7C_5C, // 0.714286
|
||||
// INPUT_STRING_8C_6C, // 0.750000
|
||||
INPUT_STRING_4C_3C, // 0.750000
|
||||
// INPUT_STRING_9C_7C, // 0.777778
|
||||
// INPUT_STRING_10C_8C, // 0.800000
|
||||
// INPUT_STRING_5C_4C, // 0.800000
|
||||
// INPUT_STRING_6C_5C, // 0.833333
|
||||
// INPUT_STRING_7C_6C, // 0.857143
|
||||
// INPUT_STRING_8C_7C, // 0.875000
|
||||
// INPUT_STRING_9C_8C, // 0.888889
|
||||
// INPUT_STRING_10C_9C, // 0.900000
|
||||
// INPUT_STRING_10C_10C, // 1.000000
|
||||
// INPUT_STRING_9C_9C, // 1.000000
|
||||
// INPUT_STRING_8C_8C, // 1.000000
|
||||
// INPUT_STRING_7C_7C, // 1.000000
|
||||
// INPUT_STRING_6C_6C, // 1.000000
|
||||
// INPUT_STRING_5C_5C, // 1.000000
|
||||
INPUT_STRING_4C_4C, // 1.000000
|
||||
INPUT_STRING_3C_3C, // 1.000000
|
||||
INPUT_STRING_2C_2C, // 1.000000
|
||||
INPUT_STRING_1C_1C, // 1.000000
|
||||
// INPUT_STRING_9C_10C, // 1.111111
|
||||
// INPUT_STRING_8C_9C, // 1.125000
|
||||
// INPUT_STRING_7C_8C, // 1.142857
|
||||
// INPUT_STRING_6C_7C, // 1.166667
|
||||
// INPUT_STRING_5C_6C, // 1.200000
|
||||
// INPUT_STRING_8C_10C, // 1.250000
|
||||
INPUT_STRING_4C_5C, // 1.250000
|
||||
// INPUT_STRING_7C_9C, // 1.285714
|
||||
// INPUT_STRING_6C_8C, // 1.333333
|
||||
INPUT_STRING_3C_4C, // 1.333333
|
||||
// INPUT_STRING_5C_7C, // 1.400000
|
||||
// INPUT_STRING_7C_10C, // 1.428571
|
||||
// INPUT_STRING_6C_9C, // 1.500000
|
||||
// INPUT_STRING_4C_6C, // 1.500000
|
||||
INPUT_STRING_2C_3C, // 1.500000
|
||||
// INPUT_STRING_5C_8C, // 1.600000
|
||||
// INPUT_STRING_6C_10C, // 1.666667
|
||||
// INPUT_STRING_3C_5C, // 1.666667
|
||||
INPUT_STRING_4C_7C, // 1.750000
|
||||
// INPUT_STRING_5C_9C, // 1.800000
|
||||
// INPUT_STRING_5C_10C, // 2.000000
|
||||
// INPUT_STRING_4C_8C, // 2.000000
|
||||
// INPUT_STRING_3C_6C, // 2.000000
|
||||
INPUT_STRING_2C_4C, // 2.000000
|
||||
INPUT_STRING_1C_2C, // 2.000000
|
||||
// INPUT_STRING_4C_9C, // 2.250000
|
||||
// INPUT_STRING_3C_7C, // 2.333333
|
||||
// INPUT_STRING_4C_10C, // 2.500000
|
||||
INPUT_STRING_2C_5C, // 2.500000
|
||||
// INPUT_STRING_3C_8C, // 2.666667
|
||||
// INPUT_STRING_3C_9C, // 3.000000
|
||||
INPUT_STRING_2C_6C, // 3.000000
|
||||
INPUT_STRING_1C_3C, // 3.000000
|
||||
// INPUT_STRING_3C_10C, // 3.333333
|
||||
INPUT_STRING_2C_7C, // 3.500000
|
||||
INPUT_STRING_2C_8C, // 4.000000
|
||||
INPUT_STRING_1C_4C, // 4.000000
|
||||
// INPUT_STRING_2C_9C, // 4.500000
|
||||
// INPUT_STRING_2C_10C, // 5.000000
|
||||
INPUT_STRING_1C_5C, // 5.000000
|
||||
INPUT_STRING_1C_6C, // 6.000000
|
||||
INPUT_STRING_1C_7C, // 7.000000
|
||||
INPUT_STRING_1C_8C, // 8.000000
|
||||
INPUT_STRING_1C_9C, // 9.000000
|
||||
#define __input_string_coinage_end INPUT_STRING_1C_9C
|
||||
// INPUT_STRING_1C_10C, // 10.000000
|
||||
// INPUT_STRING_1C_11C, // 11.000000
|
||||
// INPUT_STRING_1C_12C, // 12.000000
|
||||
// INPUT_STRING_1C_13C, // 13.000000
|
||||
// INPUT_STRING_1C_14C, // 14.000000
|
||||
// INPUT_STRING_1C_15C, // 15.000000
|
||||
// INPUT_STRING_1C_20C, // 20.000000
|
||||
// INPUT_STRING_1C_25C, // 25.000000
|
||||
// INPUT_STRING_1C_30C, // 30.000000
|
||||
// INPUT_STRING_1C_40C, // 40.000000
|
||||
// INPUT_STRING_1C_50C, // 50.000000
|
||||
// INPUT_STRING_1C_99C, // 99.000000
|
||||
// INPUT_STRING_1C_100C, // 100.000000
|
||||
// INPUT_STRING_1C_120C, // 120.000000
|
||||
// INPUT_STRING_1C_125C, // 125.000000
|
||||
// INPUT_STRING_1C_150C, // 150.000000
|
||||
// INPUT_STRING_1C_200C, // 200.000000
|
||||
// INPUT_STRING_1C_250C, // 250.000000
|
||||
// INPUT_STRING_1C_500C, // 500.000000
|
||||
// INPUT_STRING_1C_1000C, // 1000.000000
|
||||
// INPUT_STRING_1C_10C, // 10.000000
|
||||
// INPUT_STRING_1C_11C, // 11.000000
|
||||
// INPUT_STRING_1C_12C, // 12.000000
|
||||
// INPUT_STRING_1C_13C, // 13.000000
|
||||
// INPUT_STRING_1C_14C, // 14.000000
|
||||
// INPUT_STRING_1C_15C, // 15.000000
|
||||
// INPUT_STRING_1C_20C, // 20.000000
|
||||
// INPUT_STRING_1C_25C, // 25.000000
|
||||
// INPUT_STRING_1C_30C, // 30.000000
|
||||
// INPUT_STRING_1C_40C, // 40.000000
|
||||
// INPUT_STRING_1C_50C, // 50.000000
|
||||
// INPUT_STRING_1C_99C, // 99.000000
|
||||
// INPUT_STRING_1C_100C, // 100.000000
|
||||
// INPUT_STRING_1C_120C, // 120.000000
|
||||
// INPUT_STRING_1C_125C, // 125.000000
|
||||
// INPUT_STRING_1C_150C, // 150.000000
|
||||
// INPUT_STRING_1C_200C, // 200.000000
|
||||
// INPUT_STRING_1C_250C, // 250.000000
|
||||
// INPUT_STRING_1C_500C, // 500.000000
|
||||
// INPUT_STRING_1C_1000C, // 1000.000000
|
||||
INPUT_STRING_Free_Play,
|
||||
INPUT_STRING_Cabinet,
|
||||
INPUT_STRING_Upright,
|
||||
@ -599,24 +599,24 @@ enum
|
||||
INPUT_STRING_Continues,
|
||||
INPUT_STRING_Allow_Continue,
|
||||
INPUT_STRING_Level_Select,
|
||||
// INPUT_STRING_Allow,
|
||||
// INPUT_STRING_Forbid,
|
||||
// INPUT_STRING_Enable,
|
||||
// INPUT_STRING_Disable,
|
||||
// INPUT_STRING_Allow,
|
||||
// INPUT_STRING_Forbid,
|
||||
// INPUT_STRING_Enable,
|
||||
// INPUT_STRING_Disable,
|
||||
INPUT_STRING_Infinite,
|
||||
// INPUT_STRING_Invincibility,
|
||||
// INPUT_STRING_Invulnerability,
|
||||
// INPUT_STRING_Invincibility,
|
||||
// INPUT_STRING_Invulnerability,
|
||||
INPUT_STRING_Stereo,
|
||||
INPUT_STRING_Mono,
|
||||
INPUT_STRING_Unused,
|
||||
INPUT_STRING_Unknown,
|
||||
// INPUT_STRING_Undefined,
|
||||
// INPUT_STRING_Undefined,
|
||||
INPUT_STRING_Standard,
|
||||
INPUT_STRING_Reverse,
|
||||
INPUT_STRING_Alternate,
|
||||
// INPUT_STRING_Reserve,
|
||||
// INPUT_STRING_Spare,
|
||||
// INPUT_STRING_Invalid,
|
||||
// INPUT_STRING_Reserve,
|
||||
// INPUT_STRING_Spare,
|
||||
// INPUT_STRING_Invalid,
|
||||
INPUT_STRING_None,
|
||||
|
||||
INPUT_STRING_COUNT
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
Epson RTC-9701-JE
|
||||
|
||||
Serial Real Time Clock + EEPROM
|
||||
Serial Real Time Clock + EEPROM
|
||||
|
||||
|
||||
***************************************************************************/
|
||||
@ -399,8 +399,8 @@ WRITE_LINE_MEMBER( rtc9701_device::set_clock_line )
|
||||
if (cmd_stream_pos==28)
|
||||
{
|
||||
cmd_stream_pos = 0;
|
||||
// //logerror("accesed 28 bits, going back to WAIT mode\n");
|
||||
// rtc_state = RTC9701_CMD_WAIT;
|
||||
// //logerror("accesed 28 bits, going back to WAIT mode\n");
|
||||
// rtc_state = RTC9701_CMD_WAIT;
|
||||
}
|
||||
break;
|
||||
|
||||
@ -457,8 +457,8 @@ WRITE_LINE_MEMBER( rtc9701_device::set_clock_line )
|
||||
if (cmd_stream_pos==12)
|
||||
{
|
||||
cmd_stream_pos = 0;
|
||||
// //logerror("accessed 12 bits, going back to WAIT mode\n");
|
||||
// rtc_state = RTC9701_CMD_WAIT;
|
||||
// //logerror("accessed 12 bits, going back to WAIT mode\n");
|
||||
// rtc_state = RTC9701_CMD_WAIT;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -569,8 +569,8 @@ static const struct tms5100_coeffs vlm5030_coeff =
|
||||
73, 77, 85, 93, 101, 109, 117, 125 },
|
||||
{
|
||||
/* K1 */
|
||||
/* (NOTE: the order of each table is correct, despite that the index MSb
|
||||
looks backwards) */
|
||||
/* (NOTE: the order of each table is correct, despite that the index MSb
|
||||
looks backwards) */
|
||||
{ 390, 403, 414, 425, 434, 443, 450, 457,
|
||||
463, 469, 474, 478, 482, 485, 488, 491,
|
||||
494, 496, 498, 499, 501, 502, 503, 504,
|
||||
@ -586,12 +586,12 @@ static const struct tms5100_coeffs vlm5030_coeff =
|
||||
-362,-325,-284,-241,-196,-149,-100, -50 },
|
||||
/* K3 */
|
||||
/*{ 0, 100, 196, 284, 362, 426, 473, 502,
|
||||
-510,-490,-452,-396,-325,-241,-149, -50 },*/
|
||||
-510,-490,-452,-396,-325,-241,-149, -50 },*/
|
||||
{ 0, 64, 128, 192, 256, 320, 384, 448,
|
||||
-512,-448,-384,-320,-256,-192,-128, -64 },
|
||||
/* K4 */
|
||||
/*{ 0, 100, 196, 284, 362, 426, 473, 502,
|
||||
-510,-490,-452,-396,-325,-241,-149, -50 },*/
|
||||
-510,-490,-452,-396,-325,-241,-149, -50 },*/
|
||||
{ 0, 64, 128, 192, 256, 320, 384, 448,
|
||||
-512,-448,-384,-320,-256,-192,-128, -64 },
|
||||
/* K5 */
|
||||
|
@ -425,7 +425,7 @@ int amm::get_band_param(int &pos, int band)
|
||||
void amm::read_band_params(int &pos)
|
||||
{
|
||||
int band = 0;
|
||||
|
||||
|
||||
while(band < init_bands) {
|
||||
for(int chan=0; chan < channel_count; chan++)
|
||||
band_param[chan][band] = get_band_param(pos, band);
|
||||
@ -483,7 +483,7 @@ void amm::read_band_amplitude_params(int &pos)
|
||||
scalefactors[chan][2][band] = val;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
case 3: {
|
||||
scalefactors[chan][0][band] = gb(pos, 6);
|
||||
int val = gb(pos, 6);
|
||||
@ -810,7 +810,7 @@ void ymz770_device::sound_stream_update(sound_stream &stream, stream_sample_t **
|
||||
UINT8 sqn = channels[ch].sequence;
|
||||
UINT32 pptr = rom_base[(4*sqn)+1+0x400]<<16 | rom_base[(4*sqn)+2+0x400]<<8 | rom_base[(4*sqn)+3+0x400];
|
||||
channels[ch].seqdata = &rom_base[pptr];
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
channels[ch].is_seq_playing = false;
|
||||
@ -844,7 +844,7 @@ void ymz770_device::sound_stream_update(sound_stream &stream, stream_sample_t **
|
||||
|
||||
channels[ch].decoder->set_pointers(&rom_base[pptr], (UINT8 *)&channels[ch].output_data[0]);
|
||||
channels[ch].decoder->init();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
channels[ch].is_playing = false;
|
||||
@ -892,7 +892,7 @@ void ymz770_device::internal_reg_write(int offset, UINT8 data)
|
||||
int reg = cur_reg % 4;
|
||||
|
||||
switch (reg)
|
||||
{
|
||||
{
|
||||
case 0:
|
||||
channels[voice].phrase = data;
|
||||
break;
|
||||
|
@ -1008,7 +1008,7 @@ static TIMER_CALLBACK( vblank_off_callback )
|
||||
|
||||
if (v->fbi.vblank_client != NULL)
|
||||
(*v->fbi.vblank_client)(v->device, FALSE);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -4089,7 +4089,7 @@ READ32_DEVICE_HANDLER( banshee_fb_r )
|
||||
|
||||
if (offset < v->fbi.lfb_base)
|
||||
{
|
||||
#if LOG_LFB
|
||||
#if LOG_LFB
|
||||
logerror("%s:banshee_fb_r(%X)\n", device->machine().describe_context(), offset*4);
|
||||
#endif
|
||||
if (offset*4 <= v->fbi.mask)
|
||||
@ -4485,15 +4485,15 @@ static INT32 banshee_2d_w(voodoo_state *v, offs_t offset, UINT32 data)
|
||||
if (offset >= 0x20 && offset < 0x40)
|
||||
{
|
||||
/*
|
||||
logerror(" 2D:launch: %08x -> %08x, %d remaining\n", data, blt_base, blt_count);
|
||||
v->fbi.ram[blt_base+3] = (data >> 24) & 0xff;
|
||||
v->fbi.ram[blt_base+2] = (data >> 16) & 0xff;
|
||||
v->fbi.ram[blt_base+1] = (data >> 8) & 0xff;
|
||||
v->fbi.ram[blt_base+0] = data & 0xff;
|
||||
logerror(" 2D:launch: %08x -> %08x, %d remaining\n", data, blt_base, blt_count);
|
||||
v->fbi.ram[blt_base+3] = (data >> 24) & 0xff;
|
||||
v->fbi.ram[blt_base+2] = (data >> 16) & 0xff;
|
||||
v->fbi.ram[blt_base+1] = (data >> 8) & 0xff;
|
||||
v->fbi.ram[blt_base+0] = data & 0xff;
|
||||
|
||||
blt_count -= 4;
|
||||
blt_base += 4;
|
||||
*/
|
||||
blt_count -= 4;
|
||||
blt_base += 4;
|
||||
*/
|
||||
|
||||
blit_2d(v, data);
|
||||
}
|
||||
@ -4654,7 +4654,7 @@ WRITE32_DEVICE_HANDLER( banshee_fb_w )
|
||||
{
|
||||
if (offset*4 <= v->fbi.mask)
|
||||
COMBINE_DATA(&((UINT32 *)v->fbi.ram)[offset]);
|
||||
#if LOG_LFB
|
||||
#if LOG_LFB
|
||||
logerror("%s:banshee_fb_w(%X) = %08X & %08X\n", device->machine().describe_context(), offset*4, data, mem_mask);
|
||||
#endif
|
||||
}
|
||||
|
@ -138,7 +138,7 @@ static MACHINE_CONFIG_START( aristmk6, aristmk6_state )
|
||||
MCFG_CPU_CONFIG(sh4cpu_config)
|
||||
MCFG_CPU_PROGRAM_MAP(aristmk6_map)
|
||||
MCFG_CPU_IO_MAP(aristmk6_port)
|
||||
// MCFG_DEVICE_DISABLE()
|
||||
// MCFG_DEVICE_DISABLE()
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
|
@ -3409,8 +3409,8 @@ ROM_START( guwange )
|
||||
ROM_RELOAD( 0x1800000, 0x400000 )
|
||||
ROM_LOAD16_BYTE( "u085.bin", 0x1000001, 0x400000, CRC(a7d5659e) SHA1(10abac022ebe106a3ca7186ff18ca2757f903033) )
|
||||
ROM_RELOAD( 0x1800001, 0x400000 )
|
||||
// sprite bug fix?
|
||||
// ROM_FILL( 0x1800000, 0x800000, 0xff )
|
||||
// sprite bug fix?
|
||||
// ROM_FILL( 0x1800000, 0x800000, 0xff )
|
||||
|
||||
ROM_REGION( 0x800000, "layer0", 0 ) /* Layer 0 */
|
||||
ROM_LOAD( "u101.bin", 0x000000, 0x800000, CRC(0369491f) SHA1(ca6b1345506f13a17c9bace01637d1f61a278644) )
|
||||
@ -3446,8 +3446,8 @@ ROM_START( guwanges )
|
||||
ROM_RELOAD( 0x1800000, 0x400000 )
|
||||
ROM_LOAD16_BYTE( "u085.bin", 0x1000001, 0x400000, CRC(a7d5659e) SHA1(10abac022ebe106a3ca7186ff18ca2757f903033) )
|
||||
ROM_RELOAD( 0x1800001, 0x400000 )
|
||||
// sprite bug fix?
|
||||
// ROM_FILL( 0x1800000, 0x800000, 0xff )
|
||||
// sprite bug fix?
|
||||
// ROM_FILL( 0x1800000, 0x800000, 0xff )
|
||||
|
||||
ROM_REGION( 0x800000, "layer0", 0 ) /* Layer 0 */
|
||||
ROM_LOAD( "u101.bin", 0x000000, 0x800000, CRC(0369491f) SHA1(ca6b1345506f13a17c9bace01637d1f61a278644) )
|
||||
|
@ -57,9 +57,9 @@ OSC:
|
||||
X3 16.384MHz (Yamaha YMZ770C-F clock)
|
||||
|
||||
Memory:
|
||||
U6 (SDRAM) MT46V16M16 – 4 MBit x 16 x 4 banks, RAM (256 MBit)
|
||||
U7 (SDRAM) MT46V16M16 – 4 MBit x 16 x 4 banks, RAM (256 MBit)
|
||||
U1 (SDRAM) MT48LC2M32 – 512K x 32 x 4 banks, (64 MBit) for CV1000-B
|
||||
U6 (SDRAM) MT46V16M16 ? 4 MBit x 16 x 4 banks, RAM (256 MBit)
|
||||
U7 (SDRAM) MT46V16M16 ? 4 MBit x 16 x 4 banks, RAM (256 MBit)
|
||||
U1 (SDRAM) MT48LC2M32 ? 512K x 32 x 4 banks, (64 MBit) for CV1000-B
|
||||
U1 (SDRAM) IS42S32400 - 1024K x 32 x 4 banks, (128 MBit) for CV1000-D
|
||||
|
||||
Roms:
|
||||
@ -197,9 +197,9 @@ INLINE void pen_to_clr(UINT32 pen, clr_t *clr)
|
||||
clr->b = (pen >> 3);// & 0x1f;
|
||||
|
||||
// --t- ---- ---r rrrr ---g gggg ---b bbbb format
|
||||
// clr->r = (pen >> 16) & 0x1f;
|
||||
// clr->g = (pen >> 8) & 0x1f;
|
||||
// clr->b = (pen >> 0) & 0x1f;
|
||||
// clr->r = (pen >> 16) & 0x1f;
|
||||
// clr->g = (pen >> 8) & 0x1f;
|
||||
// clr->b = (pen >> 0) & 0x1f;
|
||||
|
||||
}
|
||||
|
||||
@ -229,7 +229,7 @@ INLINE UINT32 clr_to_pen(const clr_t *clr)
|
||||
return (clr->r << (16+3)) | (clr->g << (8+3)) | (clr->b << 3);
|
||||
|
||||
// --t- ---- ---r rrrr ---g gggg ---b bbbb format
|
||||
// return (clr->r << (16)) | (clr->g << (8)) | (clr->b);
|
||||
// return (clr->r << (16)) | (clr->g << (8)) | (clr->b);
|
||||
}
|
||||
|
||||
// add clrs
|
||||
@ -281,9 +281,9 @@ INLINE void clr_add_with_clr_mul_rev_square(clr_t *clr, const clr_t *clr0, const
|
||||
INLINE void clr_add(clr_t *clr, const clr_t *clr0, const clr_t *clr1)
|
||||
{
|
||||
/*
|
||||
clr->r = clr0->r + clr1->r;
|
||||
clr->g = clr0->g + clr1->g;
|
||||
clr->b = clr0->b + clr1->b;
|
||||
clr->r = clr0->r + clr1->r;
|
||||
clr->g = clr0->g + clr1->g;
|
||||
clr->b = clr0->b + clr1->b;
|
||||
*/
|
||||
// use pre-clamped lookup table
|
||||
clr->r = cavesh3_colrtable_add[clr0->r][clr1->r];
|
||||
@ -5014,8 +5014,8 @@ INLINE void cavesh_gfx_draw_shadow_copy(address_space &space, offs_t *addr, int
|
||||
COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr); // UINT16 dst_x_start = COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr); // UINT16 dst_y_start = COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr); // UINT16 dst_x_start = COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr); // UINT16 dst_y_start = COPY_NEXT_WORD(space, addr);
|
||||
UINT16 w = COPY_NEXT_WORD(space, addr);
|
||||
UINT16 h = COPY_NEXT_WORD(space, addr);
|
||||
COPY_NEXT_WORD(space, addr);
|
||||
@ -5069,7 +5069,7 @@ INLINE void cavesh_gfx_draw(offs_t *addr)
|
||||
const UINT8 d_alpha = ((alpha & 0x00ff) )>>3;
|
||||
const UINT8 s_alpha = ((alpha & 0xff00) >> 8 )>>3;
|
||||
|
||||
// src_p = 0;
|
||||
// src_p = 0;
|
||||
src_x = src_x & 0x1fff;
|
||||
src_y = src_y & 0x0fff;
|
||||
|
||||
@ -5371,7 +5371,7 @@ static void cavesh_gfx_exec(void)
|
||||
static void *blit_request_callback(void *param, int threadid)
|
||||
{
|
||||
cavesh_gfx_exec();
|
||||
// printf("blah\n");
|
||||
// printf("blah\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -5383,12 +5383,12 @@ static READ32_HANDLER( cavesh_gfx_ready_r )
|
||||
// otherwise the games get stuck in more loops waiting for the blitter and we'd
|
||||
// have to add even more idle skips all over the place ;-)
|
||||
|
||||
// cavesh3_state *state = space->machine().driver_data<cavesh3_state>();
|
||||
// int pc = cpu_get_pc(&space->device());
|
||||
// cavesh3_state *state = space->machine().driver_data<cavesh3_state>();
|
||||
// int pc = cpu_get_pc(&space->device());
|
||||
// if we're waiting for the blitter.. spin otherwise it becomes CPU intensive again
|
||||
/// if ( pc == 0xc0512d0 ) device_spin_until_time(&space->device(), attotime::from_usec(10)); // espgal2
|
||||
// if (state->blitter_busy) return 0x00000000;
|
||||
// else
|
||||
/// if ( pc == 0xc0512d0 ) device_spin_until_time(&space->device(), attotime::from_usec(10)); // espgal2
|
||||
// if (state->blitter_busy) return 0x00000000;
|
||||
// else
|
||||
return 0x00000010;
|
||||
}
|
||||
|
||||
@ -5451,14 +5451,14 @@ static SCREEN_UPDATE( cavesh3 )
|
||||
|
||||
|
||||
int scroll_0_x, scroll_0_y;
|
||||
// int scroll_1_x, scroll_1_y;
|
||||
// int scroll_1_x, scroll_1_y;
|
||||
|
||||
bitmap_fill(bitmap, cliprect, 0);
|
||||
|
||||
scroll_0_x = -cavesh_gfx_scroll_0_x;
|
||||
scroll_0_y = -cavesh_gfx_scroll_0_y;
|
||||
// scroll_1_x = -cavesh_gfx_scroll_1_x;
|
||||
// scroll_1_y = -cavesh_gfx_scroll_1_y;
|
||||
// scroll_1_x = -cavesh_gfx_scroll_1_x;
|
||||
// scroll_1_y = -cavesh_gfx_scroll_1_y;
|
||||
|
||||
//printf("SCREEN UPDATE\n %d %d %d %d\n", scroll_0_x, scroll_0_y, scroll_1_x, scroll_1_y);
|
||||
|
||||
@ -5727,7 +5727,7 @@ static WRITE8_HANDLER( flash_addr_w )
|
||||
static READ8_HANDLER( flash_io_r )
|
||||
{
|
||||
UINT8 data = 0x00;
|
||||
// UINT32 old;
|
||||
// UINT32 old;
|
||||
|
||||
if (!flash_enab)
|
||||
return 0xff;
|
||||
@ -5855,7 +5855,7 @@ static READ8_HANDLER( serial_rtc_eeprom_r )
|
||||
case 1:
|
||||
|
||||
|
||||
// return 0xfe | (input_port_read(space->machine(), "EEPROMIN") & 0x1);
|
||||
// return 0xfe | (input_port_read(space->machine(), "EEPROMIN") & 0x1);
|
||||
return 0xfe | dev->read_bit();
|
||||
|
||||
|
||||
@ -5874,7 +5874,7 @@ static WRITE8_HANDLER( serial_rtc_eeprom_w )
|
||||
switch (offset)
|
||||
{
|
||||
case 0x01:
|
||||
// logerror("serial_rtc_eeprom_w access offset %02x data %02x\n",offset, data);
|
||||
// logerror("serial_rtc_eeprom_w access offset %02x data %02x\n",offset, data);
|
||||
|
||||
input_port_write(space->machine(), "EEPROMOUT", data, 0xff);
|
||||
|
||||
@ -5910,7 +5910,7 @@ static ADDRESS_MAP_START( cavesh3_map, AS_PROGRAM, 64 )
|
||||
/* 0x04000000, 0x07ffffff SH3 Internal Regs (including ports) */
|
||||
|
||||
AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM AM_BASE(&cavesh3_ram)// AM_SHARE("mainram")// work RAM
|
||||
// AM_RANGE(0x0c800000, 0x0cffffff) AM_RAM// AM_SHARE("mainram") // mirror of above on type B boards, extra ram on type D
|
||||
// AM_RANGE(0x0c800000, 0x0cffffff) AM_RAM// AM_SHARE("mainram") // mirror of above on type B boards, extra ram on type D
|
||||
|
||||
AM_RANGE(0x10000000, 0x10000007) AM_READWRITE8(ibara_flash_io_r, ibara_flash_io_w, U64(0xffffffffffffffff))
|
||||
AM_RANGE(0x10400000, 0x10400007) AM_DEVREADWRITE8_MODERN("ymz770", ymz770_device, read, write, U64(0xffffffffffffffff))
|
||||
@ -5995,7 +5995,7 @@ static INPUT_PORTS_START( cavesh3 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", rtc9701_device, set_cs_line)
|
||||
|
||||
PORT_START( "EEPROMIN" )
|
||||
// PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("eeprom", rtc9701_device, read_bit)
|
||||
// PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("eeprom", rtc9701_device, read_bit)
|
||||
|
||||
INPUT_PORTS_END
|
||||
|
||||
@ -6050,7 +6050,7 @@ static MACHINE_START( cavesh3 )
|
||||
|
||||
state->cavesh3_blitter_delay_timer = machine.scheduler().timer_alloc(FUNC(cavesh3_blitter_delay_callback));
|
||||
state->cavesh3_blitter_delay_timer->adjust(attotime::never);
|
||||
|
||||
|
||||
|
||||
state->queue = osd_work_queue_alloc(WORK_QUEUE_FLAG_HIGH_FREQ);
|
||||
}
|
||||
@ -6097,7 +6097,7 @@ static MACHINE_RESET( cavesh3 )
|
||||
static NVRAM_HANDLER( cavesh3 )
|
||||
{
|
||||
/* Yes we have to crawl through the entire ~128MB flash because some games
|
||||
(eg. Deathsmiles) save data there on top of to the actual EEPROM */
|
||||
(eg. Deathsmiles) save data there on top of to the actual EEPROM */
|
||||
UINT8 *region = machine.region( "game" )->base();
|
||||
size_t size = machine.region( "game" )->bytes();
|
||||
cavesh3_state *state = machine.driver_data<cavesh3_state>();
|
||||
@ -6434,7 +6434,7 @@ static READ64_HANDLER( espgal2_speedup_r )
|
||||
if ( pc == 0xc05177a ) device_spin_until_time(&space->device(), attotime::from_usec(10)); // espgal2
|
||||
if ( pc == 0xc05176a ) device_spin_until_time(&space->device(), attotime::from_usec(10)); // futari15 / futari15a / futari10 / futariblk / ibarablk / ibarablka / mmpork / mmmbanc
|
||||
if ( pc == 0xc0519a2 ) device_spin_until_time(&space->device(), attotime::from_usec(10)); // deathsml
|
||||
// else printf("read %08x\n", cpu_get_pc(&space->device()));
|
||||
// else printf("read %08x\n", cpu_get_pc(&space->device()));
|
||||
return cavesh3_ram[0x002310/8];
|
||||
}
|
||||
|
||||
|
@ -2149,13 +2149,13 @@ ROM_END
|
||||
|
||||
ROM_START(racjamdx)
|
||||
ROM_REGION64_BE(0x80000, "user1", 0) /* Main CPU program (PPC603) */
|
||||
ROM_LOAD( "676a01.33d", 0x000000, 0x080000, CRC(1e6238f1) SHA1(d55949d98e9e290ceb8c018ed60ca090ec16c9dd) )
|
||||
ROM_LOAD( "676a01.33d", 0x000000, 0x080000, CRC(1e6238f1) SHA1(d55949d98e9e290ceb8c018ed60ca090ec16c9dd) )
|
||||
|
||||
ROM_REGION32_BE(0x80000, "user2", 0) /* Sub CPU program (PPC403) */
|
||||
ROM_LOAD( "676a02.24r", 0x000000, 0x080000, CRC(371978ed) SHA1(c83f0cf04204212db00588df91b32122f37900f8) )
|
||||
|
||||
ROM_LOAD( "676a02.24r", 0x000000, 0x080000, CRC(371978ed) SHA1(c83f0cf04204212db00588df91b32122f37900f8) )
|
||||
|
||||
ROM_REGION64_BE(0x80000, "user3", 0) /* Gfx CPU program (PPC604) */
|
||||
ROM_LOAD( "676a03.u17", 0x000000, 0x080000, CRC(66f77cbd) SHA1(f1c7e50dbbfcc27ac011cbbb8ad2fd376c2e9056) )
|
||||
ROM_LOAD( "676a03.u17", 0x000000, 0x080000, CRC(66f77cbd) SHA1(f1c7e50dbbfcc27ac011cbbb8ad2fd376c2e9056) )
|
||||
|
||||
DISK_REGION( "ide" )
|
||||
DISK_IMAGE_READONLY( "676a04", 0, SHA1(8e89d3e5099e871b99fccba13adaa3cf8a6b71f0) )
|
||||
|
@ -5,13 +5,13 @@
|
||||
bmp++; \
|
||||
gfx2--; \
|
||||
|
||||
#else
|
||||
#else
|
||||
|
||||
#define LOOP_INCREMENTS \
|
||||
bmp++; \
|
||||
gfx2++; \
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
const void FUNCNAME(bitmap_t *bitmap,
|
||||
const rectangle *clip,
|
||||
@ -37,7 +37,7 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
colour_t s_clr;
|
||||
#endif
|
||||
|
||||
#ifdef BLENDED
|
||||
#ifdef BLENDED
|
||||
colour_t d_clr;
|
||||
|
||||
#if _SMODE == 2
|
||||
@ -83,7 +83,7 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
|
||||
if (dst_y_end > clip->max_y)
|
||||
dimy -= (dst_y_end-1) - clip->max_y;
|
||||
|
||||
|
||||
// check things are safe to draw (note, if the source would wrap round an edge of the 0x2000*0x1000 vram we don't draw.. not sure what the hw does anyway)
|
||||
#ifdef FLIPX
|
||||
if ((src_x &0x1fff) < ((src_x-(dimx-1))&0x1fff))
|
||||
@ -107,9 +107,9 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
|
||||
if (dst_x_end > clip->max_x)
|
||||
dimx -= (dst_x_end-1) - clip->max_x;
|
||||
|
||||
|
||||
#ifdef BLENDED
|
||||
|
||||
#ifdef BLENDED
|
||||
#if _SMODE == 0
|
||||
#if _DMODE == 0
|
||||
UINT8* salpha_table = cavesh3_colrtable[s_alpha];
|
||||
@ -127,7 +127,7 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
|
||||
#if _SMODE == 2
|
||||
#if _DMODE == 0
|
||||
|
||||
|
||||
UINT8* dalpha_table = cavesh3_colrtable[d_alpha];
|
||||
#endif
|
||||
#endif
|
||||
@ -153,7 +153,7 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
while (bmp<end)
|
||||
{
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*************** REALLY SIMPLE INNER LOOP, NON-BLENDED, NON-TINTED, SIMPLEST CASE ****************/
|
||||
@ -168,7 +168,7 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
*bmp = *gfx2;
|
||||
#endif
|
||||
|
||||
/*************** REGULAR INNER LOOPS ****************/
|
||||
/*************** REGULAR INNER LOOPS ****************/
|
||||
#else // NOT REALLY_SIMPLE
|
||||
|
||||
pen = *gfx2;
|
||||
@ -194,12 +194,12 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
//d_clr.u32 = *bmp >> 3; // using the union is actually significantly slower than our pen_to_clr to function!
|
||||
#if _SMODE == 0
|
||||
//g_profiler.start(PROFILER_USER7);
|
||||
|
||||
|
||||
|
||||
#if _DMODE == 0
|
||||
//g_profiler.start(PROFILER_USER1);
|
||||
//g_profiler.start(PROFILER_USER1);
|
||||
// this is used extensively in the games (ingame, futari title screens etc.)
|
||||
|
||||
|
||||
s_clr.trgb.r = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.r)]][dalpha_table[(d_clr.trgb.r)]];
|
||||
s_clr.trgb.g = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.g)]][dalpha_table[(d_clr.trgb.g)]];
|
||||
s_clr.trgb.b = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.b)]][dalpha_table[(d_clr.trgb.b)]];
|
||||
@ -210,17 +210,17 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
s_clr.trgb.g = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.g)]][cavesh3_colrtable[(s_clr.trgb.g)][(d_clr.trgb.g)]];
|
||||
s_clr.trgb.b = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.b)]][cavesh3_colrtable[(s_clr.trgb.b)][(d_clr.trgb.b)]];
|
||||
#elif _DMODE == 2
|
||||
//g_profiler.start(PROFILER_USER3);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_add_with_clr_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
//g_profiler.start(PROFILER_USER3);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_add_with_clr_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
#elif _DMODE == 3
|
||||
//g_profiler.start(PROFILER_USER4);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_add(&s_clr.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
|
||||
|
||||
#elif _DMODE == 4
|
||||
//g_profiler.start(PROFILER_USER5);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
//g_profiler.start(PROFILER_USER5);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_add_with_clr_mul_fixed_rev(&s_clr.trgb, &clr0.trgb, d_alpha, &d_clr.trgb);
|
||||
#elif _DMODE == 5
|
||||
// futari black character select ~13%
|
||||
@ -228,50 +228,50 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
s_clr.trgb.r = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.r)]][cavesh3_colrtable_rev[(s_clr.trgb.r)][(d_clr.trgb.r)]];
|
||||
s_clr.trgb.g = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.g)]][cavesh3_colrtable_rev[(s_clr.trgb.g)][(d_clr.trgb.g)]];
|
||||
s_clr.trgb.b = cavesh3_colrtable_add[salpha_table[(s_clr.trgb.b)]][cavesh3_colrtable_rev[(s_clr.trgb.b)][(d_clr.trgb.b)]];
|
||||
|
||||
|
||||
#elif _DMODE == 6
|
||||
//g_profiler.start(PROFILER_USER7);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
//g_profiler.start(PROFILER_USER7);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_add_with_clr_mul_rev_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
#elif _DMODE == 7
|
||||
//g_profiler.start(PROFILER_USER8);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_mul_fixed(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_add(&s_clr.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
#endif
|
||||
|
||||
//g_profiler.stop();
|
||||
#elif _SMODE == 1
|
||||
//g_profiler.start(PROFILER_USER6);
|
||||
clr_square(&clr0.trgb, &s_clr.trgb);
|
||||
|
||||
clr_square(&clr0.trgb, &s_clr.trgb);
|
||||
|
||||
#elif _SMODE == 2
|
||||
// g_profiler.start(PROFILER_USER4);
|
||||
// g_profiler.start(PROFILER_USER4);
|
||||
#if _DMODE == 0
|
||||
// this is used heavily on espgal2 highscore screen (~28%) optimized to avoid use of temp clr0 variable
|
||||
s_clr.trgb.r = cavesh3_colrtable_add[cavesh3_colrtable[(d_clr.trgb.r)][(s_clr.trgb.r)]][dalpha_table[(d_clr.trgb.r)]];
|
||||
s_clr.trgb.g = cavesh3_colrtable_add[cavesh3_colrtable[(d_clr.trgb.g)][(s_clr.trgb.g)]][dalpha_table[(d_clr.trgb.g)]];
|
||||
s_clr.trgb.b = cavesh3_colrtable_add[cavesh3_colrtable[(d_clr.trgb.b)][(s_clr.trgb.b)]][dalpha_table[(d_clr.trgb.b)]];
|
||||
#elif _DMODE == 1
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_mul_3param(&s_clr.trgb, &clr0.trgb, &d_clr.trgb, &s_clr.trgb);
|
||||
#elif _DMODE == 2
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
#elif _DMODE == 3
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add(&s_clr.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
|
||||
|
||||
#elif _DMODE == 4
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_mul_fixed_rev(&s_clr.trgb, &clr0.trgb, d_alpha, &d_clr.trgb);
|
||||
#elif _DMODE == 5
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_mul_rev_3param(&s_clr.trgb, &clr0.trgb, &d_clr.trgb, &s_clr.trgb);
|
||||
#elif _DMODE == 6
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_mul_rev_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
#elif _DMODE == 7
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_add(&s_clr.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
#endif
|
||||
//g_profiler.stop();
|
||||
@ -279,23 +279,23 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
#elif _SMODE == 3
|
||||
//g_profiler.start(PROFILER_USER1);
|
||||
clr_copy(&clr0.trgb, &s_clr.trgb);
|
||||
|
||||
|
||||
#elif _SMODE == 4
|
||||
//g_profiler.start(PROFILER_USER2);
|
||||
clr_mul_fixed_rev(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
clr_mul_fixed_rev(&clr0.trgb, s_alpha, &s_clr.trgb);
|
||||
#elif _SMODE == 5
|
||||
//g_profiler.start(PROFILER_USER3);
|
||||
clr_mul_rev_square(&clr0.trgb, &s_clr.trgb);
|
||||
clr_mul_rev_square(&clr0.trgb, &s_clr.trgb);
|
||||
#elif _SMODE == 6
|
||||
//g_profiler.start(PROFILER_USER4);
|
||||
clr_mul_rev_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
clr_mul_rev_3param(&clr0.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
#elif _SMODE == 7
|
||||
//g_profiler.start(PROFILER_USER5);
|
||||
clr_copy(&clr0.trgb, &s_clr.trgb);
|
||||
#endif
|
||||
|
||||
|
||||
// smode 0/2 cases are already split up and handled above.
|
||||
|
||||
// smode 0/2 cases are already split up and handled above.
|
||||
#if _SMODE != 2
|
||||
#if _SMODE != 0
|
||||
|
||||
@ -304,10 +304,10 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
#elif _DMODE == 1
|
||||
clr_add_with_clr_mul_3param(&s_clr.trgb, &clr0.trgb, &d_clr.trgb, &s_clr.trgb);
|
||||
#elif _DMODE == 2
|
||||
clr_add_with_clr_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
clr_add_with_clr_square(&s_clr.trgb, &clr0.trgb, &d_clr.trgb);
|
||||
#elif _DMODE == 3
|
||||
clr_add(&s_clr.trgb, &s_clr.trgb, &d_clr.trgb);
|
||||
|
||||
|
||||
#elif _DMODE == 4
|
||||
clr_add_with_clr_mul_fixed_rev(&s_clr.trgb, &clr0.trgb, d_alpha, &d_clr.trgb);
|
||||
#elif _DMODE == 5
|
||||
@ -321,7 +321,7 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
//g_profiler.stop();
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@ -333,13 +333,13 @@ const void FUNCNAME(bitmap_t *bitmap,
|
||||
|
||||
#if TRANSPARENT == 1
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
LOOP_INCREMENTS
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
// g_profiler.stop();
|
||||
// g_profiler.stop();
|
||||
}
|
||||
|
||||
#undef LOOP_INCREMENTS
|
||||
|
@ -877,16 +877,16 @@ ROM_END
|
||||
// 1998
|
||||
// 01 : Mahjong Gal-pri - World Gal-con Grandprix : Nichibutsu/Just&Just
|
||||
// 02 : Sengoku Mahjong Kurenai Otome-tai : Nichibutsu/Just&Just
|
||||
/* 03 */ GAME( 1998, junai, 0, csplayh5, csplayh5, junai, ROT0, "Nichibutsu/eic", "Junai - Manatsu no First Kiss (Japan)", GAME_NOT_WORKING )
|
||||
/* 04 */ GAME( 1998, csplayh5, 0, csplayh5, csplayh5, csplayh5, ROT0, "Nichibutsu", "Mahjong Hanafuda Cosplay Tengoku 5 (Japan)", GAME_NOT_WORKING )
|
||||
/* 05 */ GAME( 1998, junai2, 0, csplayh5, csplayh5, junai2, ROT0, "Nichibutsu/eic", "Junai 2 - White Love Story (Japan)", GAME_NOT_WORKING )
|
||||
/* 03 */ GAME( 1998, junai, 0, csplayh5, csplayh5, junai, ROT0, "Nichibutsu/eic", "Junai - Manatsu no First Kiss (Japan)", GAME_NOT_WORKING )
|
||||
/* 04 */ GAME( 1998, csplayh5, 0, csplayh5, csplayh5, csplayh5, ROT0, "Nichibutsu", "Mahjong Hanafuda Cosplay Tengoku 5 (Japan)", GAME_NOT_WORKING )
|
||||
/* 05 */ GAME( 1998, junai2, 0, csplayh5, csplayh5, junai2, ROT0, "Nichibutsu/eic", "Junai 2 - White Love Story (Japan)", GAME_NOT_WORKING )
|
||||
// 06 : Mahjong Mogitate : Nichibutsu/Just&Just/NVS/Astro System/AV Japan
|
||||
|
||||
|
||||
// 1999
|
||||
/* 07 */ GAME( 1999, mjmania, 0, csplayh5, csplayh5, mjmania, ROT0, "Sphinx/Just&Just", "Mahjong Mania - Kairakukan e Youkoso (Japan)", GAME_NOT_WORKING )
|
||||
/* 07 */ GAME( 1999, mjmania, 0, csplayh5, csplayh5, mjmania, ROT0, "Sphinx/Just&Just", "Mahjong Mania - Kairakukan e Youkoso (Japan)", GAME_NOT_WORKING )
|
||||
// 08 : Renai Mahjong Idol Gakuen : Nichibutsu/eic
|
||||
/* 09 */ GAME( 1999, bikiniko, 0, csplayh5, csplayh5, bikiniko, ROT0, "Nichibutsu/eic", "BiKiNikko - Okinawa de Ippai Shichaimashita (Japan)", GAME_NOT_WORKING )
|
||||
/* 09 */ GAME( 1999, bikiniko, 0, csplayh5, csplayh5, bikiniko, ROT0, "Nichibutsu/eic", "BiKiNikko - Okinawa de Ippai Shichaimashita (Japan)", GAME_NOT_WORKING )
|
||||
// 10 : Mahjong Hanafuda Cosplay Tengoku 6 - Junai hen : Nichibutsu/eic
|
||||
/* 11 */ GAME( 1999, thenanpa, 0, csplayh5, csplayh5, thenanpa, ROT0, "Nichibutsu/Love Factory/eic", "The Nanpa (Japan)", GAME_NOT_WORKING )
|
||||
// 12 GAME( 1999, pokoachu, 0, csplayh5, csplayh5, 0, ROT0, "Nichibutsu/eic", "PokoaPoka Onsen de CHU - Bijin 3 Shimai ni Kiotsukete! (Japan)", GAME_NOT_WORKING )
|
||||
@ -894,7 +894,7 @@ ROM_END
|
||||
// 14 : Ai-mode - Pet Shiiku : Nichibutsu/eic
|
||||
|
||||
// 2000
|
||||
/* 15 */ GAME( 2000, fuudol, 0, csplayh5, csplayh5, fuudol, ROT0, "Nichibutsu/eic", "Fuudol (Japan)", GAME_NOT_WORKING )
|
||||
/* 15 */ GAME( 2000, fuudol, 0, csplayh5, csplayh5, fuudol, ROT0, "Nichibutsu/eic", "Fuudol (Japan)", GAME_NOT_WORKING )
|
||||
// 16 : Nurete Mitaino... - Net Idol Hen : Nichibutsu/Love Factory
|
||||
// 17 : Tsuugakuro no Yuuwaku : Nichibutsu/Love Factory/Just&Just
|
||||
// 18 : Torarechattano - AV Kantoku Hen : Nichibutsu/Love Factory/M Friend
|
||||
|
@ -10364,7 +10364,7 @@ ROM_END
|
||||
ROM_START( momotaro )
|
||||
ROM_REGION( 0x90000+16*0x1000, "maincpu", 0 ) /* Z80 Code */
|
||||
ROM_LOAD( "r0272m1.6e", 0x00000, 0x80000, CRC(71c83332) SHA1(c949cb9e23e5cc77dbd64fc28e62a88f1dc811a3) )
|
||||
ROM_RELOAD( 0x10000, 0x80000 )
|
||||
ROM_RELOAD( 0x10000, 0x80000 )
|
||||
|
||||
ROM_REGION( 0x400000, "blitter", 0 ) /* blitter data */
|
||||
ROM_LOAD( "t0273.7b", 0x000000, 0x200000, BAD_DUMP CRC(5ae90ae2) SHA1(975bae930d848987405dc3dd59de138b1f98b358) ) // FIXED BITS (xxxxx1xxxxxxxxx1)
|
||||
|
@ -828,19 +828,19 @@ static INPUT_PORTS_START( birdtry )
|
||||
PORT_DIPSETTING( 0x0000, "Type C - Upright" )
|
||||
|
||||
/* "Difficulty (Extend)"
|
||||
Easy Normal Hard Hardest
|
||||
(Start) (5) (3) (3) (3)
|
||||
Hole in one +5 +5 +2 +1
|
||||
Albatross +3 +3 +1 0
|
||||
Eagle +2 +2 +1 0
|
||||
Birdie +1 +1 +1 0
|
||||
Par 0 0 0 0
|
||||
Bogey -1 -1 -1 -1
|
||||
Double bogey -2 -2 -2 -1
|
||||
Triple bogey -3 -3 -3 -1
|
||||
Quadruple bogey -4 -4 -4 -1
|
||||
Give up -5 -5 -4 -2
|
||||
*/
|
||||
Easy Normal Hard Hardest
|
||||
(Start) (5) (3) (3) (3)
|
||||
Hole in one +5 +5 +2 +1
|
||||
Albatross +3 +3 +1 0
|
||||
Eagle +2 +2 +1 0
|
||||
Birdie +1 +1 +1 0
|
||||
Par 0 0 0 0
|
||||
Bogey -1 -1 -1 -1
|
||||
Double bogey -2 -2 -2 -1
|
||||
Triple bogey -3 -3 -3 -1
|
||||
Quadruple bogey -4 -4 -4 -1
|
||||
Give up -5 -5 -4 -2
|
||||
*/
|
||||
|
||||
PORT_START("AN0") /* player 1 12-way rotary control - converted in controls_r() */
|
||||
PORT_BIT( 0x0f, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(15) PORT_KEYDELTA(1) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_FULL_TURN_COUNT(12)
|
||||
@ -863,9 +863,9 @@ static INPUT_PORTS_START( baddudes )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPUNUSED_DIPLOC( 0x0080, IP_ACTIVE_LOW, "SW1:8" ) // Always OFF
|
||||
/* "SW1:8"
|
||||
English "Bad Dudes" manual says "Dont Change"
|
||||
Japanese "Dragonninja" manual says "Control Panel / Off=Table / On=Upright", but maybe not work
|
||||
*/
|
||||
English "Bad Dudes" manual says "Dont Change"
|
||||
Japanese "Dragonninja" manual says "Control Panel / Off=Table / On=Upright", but maybe not work
|
||||
*/
|
||||
|
||||
PORT_DIPNAME( 0x0300, 0x0300, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2")
|
||||
PORT_DIPSETTING( 0x0100, "1" )
|
||||
@ -939,9 +939,9 @@ static INPUT_PORTS_START( robocop )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x0000, "Less" )
|
||||
/* "SW2:7"
|
||||
English manual says "Always Off"
|
||||
Japanese manual says "Invulnerable Brink Time On Continue / Off=Long / On=Short"
|
||||
*/
|
||||
English manual says "Always Off"
|
||||
Japanese manual says "Invulnerable Brink Time On Continue / Off=Long / On=Short"
|
||||
*/
|
||||
PORT_DIPUNUSED_DIPLOC( 0x8000, IP_ACTIVE_LOW, "SW2:8" ) // Always OFF
|
||||
INPUT_PORTS_END
|
||||
|
||||
@ -1055,9 +1055,9 @@ static INPUT_PORTS_START( midres )
|
||||
PORT_DIPUNUSED_DIPLOC( 0x1000, IP_ACTIVE_LOW, "SW2:5" ) /* manual mentions Extra Lives - Default OFF */
|
||||
PORT_DIPUNUSED_DIPLOC( 0x2000, IP_ACTIVE_LOW, "SW2:6" ) /* manual mentions Extra Lives - Default OFF */
|
||||
/* "SW2:5,6"
|
||||
English manual says "Extra Lives / OFF OFF" ( missing "ON OFF", "OFF ON" and "ON ON" ) , but maybe not work
|
||||
Japanese manual says "Never Touch"
|
||||
*/
|
||||
English manual says "Extra Lives / OFF OFF" ( missing "ON OFF", "OFF ON" and "ON ON" ) , but maybe not work
|
||||
Japanese manual says "Never Touch"
|
||||
*/
|
||||
PORT_DIPNAME( 0x4000, 0x0000, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW2:7")
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( No ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Yes ) )
|
||||
|
@ -3,11 +3,11 @@
|
||||
Atari Flyball Driver
|
||||
|
||||
Etched in copper on top of board:
|
||||
FLYBALL
|
||||
ATARI (c)1976
|
||||
A005629
|
||||
MADE IN USA
|
||||
PAT NO 3793483
|
||||
FLYBALL
|
||||
ATARI (c)1976
|
||||
A005629
|
||||
MADE IN USA
|
||||
PAT NO 3793483
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -817,7 +817,7 @@ static WRITE8_DEVICE_HANDLER(funworld_lamp_a_w)
|
||||
|
||||
output_set_lamp_value(7, 1-((data >> 6) & 1)); /* Hopper Motor (inverted) */
|
||||
|
||||
// popmessage("Lamps A: %02X", (data ^ 0xff));
|
||||
// popmessage("Lamps A: %02X", (data ^ 0xff));
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER(funworld_lamp_b_w)
|
||||
@ -832,7 +832,7 @@ static WRITE8_DEVICE_HANDLER(funworld_lamp_b_w)
|
||||
output_set_lamp_value(4, (data >> 0) & 1); /* Hold5 / Bet */
|
||||
output_set_lamp_value(6, (data >> 1) & 1); /* Start / Deal / Draw */
|
||||
|
||||
// popmessage("Lamps B: %02X", data);
|
||||
// popmessage("Lamps B: %02X", data);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER(pia1_ca2_w)
|
||||
|
@ -1445,57 +1445,57 @@ INPUT_PORTS_END
|
||||
|
||||
/*
|
||||
static INPUT_PORTS_START( digdugja ) // Namco older?
|
||||
PORT_INCLUDE( digdug )
|
||||
PORT_INCLUDE( digdug )
|
||||
|
||||
PORT_MODIFY("DSWB") // same order as SWA
|
||||
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SWB:2,1")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Medium ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x03, DEF_STR( Hardest ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( No ) ) // Namco factory default = "No"
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
|
||||
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:4")
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x10, "Freeze" ) PORT_DIPLOCATION("SWB:5")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x60, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWB:7,6")
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_LOW, "SWB:8" )
|
||||
PORT_MODIFY("DSWB") // same order as SWA
|
||||
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SWB:2,1")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Medium ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x03, DEF_STR( Hardest ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( No ) ) // Namco factory default = "No"
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
|
||||
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:4")
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x10, "Freeze" ) PORT_DIPLOCATION("SWB:5")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x60, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWB:7,6")
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_LOW, "SWB:8" )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( digdugus ) // Atari older?
|
||||
PORT_INCLUDE( digdug )
|
||||
PORT_INCLUDE( digdug )
|
||||
|
||||
PORT_MODIFY("DSWB") // reverse order against SWA
|
||||
PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWB:1,2")
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_3C ) )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, "Freeze" ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:4")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SWB:5")
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( No ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) // Atari factory default = "Yes"
|
||||
PORT_DIPNAME( 0x06, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SWB:6,7")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Medium ) )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x06, DEF_STR( Hardest ) )
|
||||
PORT_DIPNAME( 0x01, 0x01, "Number Of Coin Counter(s)" ) PORT_DIPLOCATION("SWB:8")
|
||||
PORT_DIPSETTING( 0x01, "Two Coin Counters" )
|
||||
PORT_DIPSETTING( 0x00, "One Coin Counter" )
|
||||
PORT_MODIFY("DSWB") // reverse order against SWA
|
||||
PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWB:1,2")
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_3C ) )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, "Freeze" ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:4")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SWB:5")
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( No ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) // Atari factory default = "Yes"
|
||||
PORT_DIPNAME( 0x06, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SWB:6,7")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Medium ) )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x06, DEF_STR( Hardest ) )
|
||||
PORT_DIPNAME( 0x01, 0x01, "Number Of Coin Counter(s)" ) PORT_DIPLOCATION("SWB:8")
|
||||
PORT_DIPSETTING( 0x01, "Two Coin Counters" )
|
||||
PORT_DIPSETTING( 0x00, "One Coin Counter" )
|
||||
INPUT_PORTS_END
|
||||
*/
|
||||
|
||||
|
@ -3525,7 +3525,7 @@ ROM_END
|
||||
|
||||
/* Witch Card (Video Klein)
|
||||
Video Klein original with epoxy block module.
|
||||
Alt set....
|
||||
Alt set....
|
||||
*/
|
||||
ROM_START( witchcde )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
@ -3721,7 +3721,7 @@ ROM_END
|
||||
|
||||
/* Witch Game (Video Klein)
|
||||
Video Klein original with epoxy block module.
|
||||
Alt set....
|
||||
Alt set....
|
||||
*/
|
||||
ROM_START( witchcdk )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
|
@ -751,7 +751,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( reactor )
|
||||
PORT_START("DSW")
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW:!2")
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW:!2")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, "Bounce Chambers Points" ) PORT_DIPLOCATION("DSW:!6")
|
||||
@ -1009,7 +1009,7 @@ static INPUT_PORTS_START( argusg )
|
||||
PORT_START("IN4")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("P1 Start/Button 1")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)PORT_NAME("P2 Start/Button 2")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)PORT_NAME("P2 Start/Button 2")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
@ -1138,7 +1138,7 @@ static INPUT_PORTS_START( kngtmare )
|
||||
PORT_DIPNAME( 0x11, 0x11, DEF_STR( Coinage ) ) PORT_DIPLOCATION("DSW:!1,!5")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x11, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "DSW:!2" )
|
||||
PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "DSW:!3" )
|
||||
@ -1254,7 +1254,7 @@ static INPUT_PORTS_START( curvebal )
|
||||
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW:!4")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20, 0x00, "Coins" ) PORT_DIPLOCATION("DSW:!5")
|
||||
PORT_DIPNAME( 0x20, 0x00, "Coins" ) PORT_DIPLOCATION("DSW:!5")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( French ) )
|
||||
PORT_DIPNAME( 0xc2, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("DSW:!6,!7,!8")
|
||||
@ -1367,7 +1367,7 @@ static INPUT_PORTS_START( mach3 )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
|
||||
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("DSW:!6")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Hard ) )
|
||||
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("DSW:!3")
|
||||
PORT_DIPSETTING( 0x00, "3" )
|
||||
@ -1531,9 +1531,9 @@ static INPUT_PORTS_START( 3stooges )
|
||||
PORT_DIPSETTING ( 0x04, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING ( 0x00, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING ( 0x10, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPSETTING ( 0x14, DEF_STR( Free_Play ) )
|
||||
PORT_DIPSETTING ( 0x14, DEF_STR( Free_Play ) )
|
||||
PORT_DIPUNUSED_DIPLOC( 0x20, 0x00, "DSW:5" )
|
||||
PORT_DIPNAME( 0xc0, 0xc0, "1st Bonus Life at" ) PORT_DIPLOCATION("DSW:!7,!8")
|
||||
PORT_DIPNAME( 0xc0, 0xc0, "1st Bonus Life at" ) PORT_DIPLOCATION("DSW:!7,!8")
|
||||
PORT_DIPSETTING ( 0xc0, "10k 20k and every 10k")
|
||||
PORT_DIPSETTING ( 0x00, "20k 40k and every 20k")
|
||||
PORT_DIPSETTING ( 0x40, "10k 30k and every 20k")
|
||||
@ -1591,7 +1591,7 @@ static INPUT_PORTS_START( vidvince )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
|
||||
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("DSW:!6")
|
||||
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("DSW:!6")
|
||||
PORT_DIPSETTING( 0x00, "3" )
|
||||
PORT_DIPSETTING( 0x02, "5" )
|
||||
PORT_DIPNAME( 0x14, 0x04, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("DSW:!3,!4")
|
||||
|
@ -4,9 +4,9 @@
|
||||
|
||||
4 boards
|
||||
1x NV440 gfx card
|
||||
1x sound card
|
||||
1x CF2IDE card
|
||||
1x proteection card with a IGS027A (ARM7 with internal ROM)
|
||||
1x sound card
|
||||
1x CF2IDE card
|
||||
1x proteection card with a IGS027A (ARM7 with internal ROM)
|
||||
|
||||
The CF dump contains no MBR, it is thought that it is stored in either the main bios
|
||||
or provided by the IGS027A. If you disconnect the protection card the bios will hang
|
||||
|
@ -1249,10 +1249,10 @@ static ADDRESS_MAP_START( awp68k_program_map, AS_PROGRAM, 16 )
|
||||
// AM_RANGE(0x004801de, 0x004801df) AM_READ(unk_r)
|
||||
//AM_RANGE(0x00657602, 0x00bfffff) AM_READ(prot_1_r)
|
||||
// AM_RANGE(0x004801e0, 0x004801ff) AM_READWRITE(duart_2_r, duart_2_w)
|
||||
// AM_RANGE(0x00c00000, 0x00cfffff) AM_ROM
|
||||
// AM_RANGE(0x00d00000, 0x00dfffff) AM_ROM
|
||||
// AM_RANGE(0x00e00000, 0x00efffff) AM_ROM
|
||||
// AM_RANGE(0x00f00000, 0x00ffffff) AM_ROM
|
||||
// AM_RANGE(0x00c00000, 0x00cfffff) AM_ROM
|
||||
// AM_RANGE(0x00d00000, 0x00dfffff) AM_ROM
|
||||
// AM_RANGE(0x00e00000, 0x00efffff) AM_ROM
|
||||
// AM_RANGE(0x00f00000, 0x00ffffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( tbirds )
|
||||
|
@ -59,13 +59,13 @@
|
||||
|
||||
- NMI of main Z80 is connected to a 138Hz. oscillator AND bit6 of port $82.
|
||||
That means NMI should be triggered each 138Hz. *only* if bit6 of port $82
|
||||
remains active.
|
||||
remains active.
|
||||
|
||||
- NMI of second Z80 is connected directly to a 138Hz. oscillator.
|
||||
|
||||
- INT of second Z80 is coming from 2 places:
|
||||
The HOLD/ASSERT (flanco descendente) is done by the main Z80 through IO port &85,
|
||||
and the CLEAR part (flanco ascendente) is autogenerated using the IO port $00.
|
||||
and the CLEAR part (flanco ascendente) is autogenerated using the IO port $00.
|
||||
|
||||
- The AY-8910 is clocked 1789 kHz, and has nothing connected at simple sight.
|
||||
|
||||
@ -74,7 +74,7 @@
|
||||
|
||||
Roulette's LEDs Support.
|
||||
-----------------------
|
||||
|
||||
|
||||
Ports $83/$84 handle the roulette's LEDs in a multiplexed way...
|
||||
Port $84 is the selector, while port $83 carry the LEDs set.
|
||||
|
||||
@ -119,7 +119,7 @@
|
||||
| |-D1--- DOWN Button.
|
||||
| |-D2--- RIGHT Button.
|
||||
| |-D3--- LEFT Button.
|
||||
| |-D4--- UP Button.
|
||||
| |-D4--- UP Button.
|
||||
| |-D5--- OUT Credits.
|
||||
| |-D6--- IN Credits.
|
||||
| |-D7--- Audit/Test.
|
||||
@ -127,7 +127,7 @@
|
||||
|
||||
Whilest in Audit/Test mode, pressing the ADVANCE button, you can enter into
|
||||
screen and inputs test mode.
|
||||
|
||||
|
||||
This ADVANCE button, is routed into a latch with D0, sharing with BET button.
|
||||
|
||||
|
||||
@ -145,42 +145,42 @@
|
||||
Once in game, you need to turn ON the Operator/Habilitation Key to allow credit IN
|
||||
and OUT all 6 players. If the key is OFF, the IN/OUT credit system will not work,
|
||||
getting the game only in attract mode.
|
||||
|
||||
|
||||
|
||||
* Audit/Test Mode
|
||||
|
||||
There are 2 controls inside the cab:
|
||||
1x Audit/Test Switch.
|
||||
1x Avance Pantalla (Advance) button.
|
||||
|
||||
|
||||
In the disclaimer, turn the Audit/Test Switch ON.
|
||||
You can see a screen with all the bookkeepings.
|
||||
|
||||
|
||||
While in Audit mode, you need to press the ADVANCE button to enter the first test.
|
||||
|
||||
|
||||
Black screen. All roulette LEDs ON.
|
||||
|
||||
|
||||
then...
|
||||
|
||||
|
||||
White screen. Test all sequenced LEDs in both ways, when pressing the CREDIT IN/OUT
|
||||
buttons. You need the Habilitation key ON to do this test.
|
||||
|
||||
|
||||
Press ADVANCE again, and you'll see the color palette screen.
|
||||
|
||||
|
||||
Press ADVANCE again, and you'll see the grid pattern screen.
|
||||
|
||||
Press ADVANCE again, and you'll enter the input test mode. All control buttons from
|
||||
each player, including Credits IN/OUT will be shown here.
|
||||
|
||||
each player, including Credits IN/OUT will be shown here.
|
||||
|
||||
Press ADVANCE again, and you'll arrive to the Audit screen again.
|
||||
|
||||
|
||||
To exit the Audit/Test mode, turn OFF the Audit/Test switch. you'll enter the game.
|
||||
|
||||
|
||||
**************************************************************************************
|
||||
|
||||
TODO:
|
||||
|
||||
|
||||
- Check why some sound events are louder than others (volume balance?).
|
||||
- Fix NVRAM.
|
||||
- PCB layout.
|
||||
@ -189,7 +189,7 @@
|
||||
*************************************************************************************/
|
||||
|
||||
|
||||
#define MASTER_CLOCK XTAL_21_4772MHz
|
||||
#define MASTER_CLOCK XTAL_21_4772MHz
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/z80/z80.h"
|
||||
@ -347,7 +347,7 @@ static WRITE8_HANDLER( sound_comm_w )
|
||||
When the attract starts, just before the game title appear, $3f
|
||||
is written to the outport... (maybe to clear the possible sign).
|
||||
|
||||
*/
|
||||
*/
|
||||
kas89_state *state = space->machine().driver_data<kas89_state>();
|
||||
|
||||
if (data & 0x40)
|
||||
@ -499,14 +499,14 @@ static WRITE8_HANDLER( led_mux_select_w )
|
||||
static ADDRESS_MAP_START( kas89_map, AS_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
AM_RANGE(0x0037, 0x0037) AM_WRITENOP /* WTF? */
|
||||
AM_RANGE(0x8000, 0x81ff) AM_RAM /* empty */
|
||||
AM_RANGE(0x8000, 0x81ff) AM_RAM /* empty */
|
||||
AM_RANGE(0x8200, 0x83ff) AM_RAM /* 8200-83ff (PL1) */
|
||||
AM_RANGE(0x8400, 0x85ff) AM_RAM /* 8400-85ff (PL2) */
|
||||
AM_RANGE(0x8400, 0x85ff) AM_RAM /* 8400-85ff (PL2) */
|
||||
AM_RANGE(0x8600, 0x87ff) AM_RAM /* 8600-87ff (PL3) */
|
||||
AM_RANGE(0x8800, 0x89ff) AM_RAM /* 8800-89ff (PL4) */
|
||||
AM_RANGE(0x8800, 0x89ff) AM_RAM /* 8800-89ff (PL4) */
|
||||
AM_RANGE(0x8a00, 0x8bff) AM_RAM /* 8a00-8bff (PL5) */
|
||||
AM_RANGE(0x8c00, 0x8dff) AM_RAM /* 8c00-8dff (PL6) */
|
||||
AM_RANGE(0x8e00, 0x8fff) AM_RAM /* empty */
|
||||
AM_RANGE(0x8c00, 0x8dff) AM_RAM /* 8c00-8dff (PL6) */
|
||||
AM_RANGE(0x8e00, 0x8fff) AM_RAM /* empty */
|
||||
AM_RANGE(0x9000, 0x97ff) AM_RAM
|
||||
AM_RANGE(0x9800, 0x9fff) AM_RAM AM_SHARE("nvram")
|
||||
ADDRESS_MAP_END
|
||||
@ -592,8 +592,8 @@ static INPUT_PORTS_START( kas89 )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_Z) PORT_NAME("Player 1 - Credits OUT")
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_1) PORT_NAME("Player 1 - Credits IN")
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_LALT) PORT_NAME("Player 1 - Unknown")
|
||||
|
||||
PORT_START("PL2")
|
||||
|
||||
PORT_START("PL2")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("Player 2 - Bet")
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("Player 2 - Down")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("Player 2 - Left")
|
||||
@ -650,14 +650,14 @@ static INPUT_PORTS_START( kas89 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Blank the screen. Disclaimer isn't shown.*/
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* Otherwise hang the game when insert credits.*/
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_CODE(KEYCODE_8) PORT_TOGGLE PORT_NAME("Operator/Habilitation Key")
|
||||
// PORT_DIPNAME( 0x20, 0x00, "Habilitation Key")
|
||||
// PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
// PORT_DIPNAME( 0x20, 0x00, "Habilitation Key")
|
||||
// PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_CODE(KEYCODE_9) PORT_TOGGLE PORT_NAME("Audit/Test Mode Switch")
|
||||
// PORT_DIPNAME( 0x80, 0x80, "Audit/Test Mode Switch" ) PORT_DIPLOCATION("SVC:1")
|
||||
// PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
// PORT_DIPNAME( 0x80, 0x80, "Audit/Test Mode Switch" ) PORT_DIPLOCATION("SVC:1")
|
||||
// PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
|
||||
|
||||
PORT_START("DSW")
|
||||
@ -744,7 +744,7 @@ static INPUT_PORTS_START( kas89 )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* Should be active for Audit/Test Mode, also for boot...*/
|
||||
|
||||
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
@ -21,8 +21,8 @@
|
||||
|
||||
Special Thanks to...
|
||||
|
||||
- EMMA Italian Dumping Team for providing the board.
|
||||
- Rob Ragon for the exhaustive hardware testing.
|
||||
- EMMA Italian Dumping Team for providing the board.
|
||||
- Rob Ragon for the exhaustive hardware testing.
|
||||
- Iris Falbala, that kindly offered herself as beta tester,
|
||||
poppin' baloons since she was only 2 years old. :)
|
||||
|
||||
@ -392,9 +392,9 @@
|
||||
|
||||
[2011-10-11]
|
||||
- Confirmed and fixed CPU clock for magicfly and 7mezzo.
|
||||
- Rearranged the graphic ROMs addressing. Splitted both gfx banks.
|
||||
- Rearranged the graphic ROMs addressing. Splitted both gfx banks.
|
||||
- Created and minimized the color palette for both gfx banks.
|
||||
- Fixed colors for magicfly and 7mezzo.
|
||||
- Fixed colors for magicfly and 7mezzo.
|
||||
|
||||
|
||||
TODO:
|
||||
@ -852,7 +852,7 @@ ROM_START( magicfly )
|
||||
ROM_LOAD( "magicfly0.bin", 0x4000, 0x2000, CRC(44e3c9d6) SHA1(677d25360d261bf2400f399b8015eeb529ad405e) )
|
||||
|
||||
ROM_REGION( 0x0800, "gfxbnk0", 0 )
|
||||
// ROM_FILL( 0x0000, 0x1000, 0 ) /* filling the R-G bitplanes */
|
||||
// ROM_FILL( 0x0000, 0x1000, 0 ) /* filling the R-G bitplanes */
|
||||
ROM_COPY( "gfx", 0x1800, 0x0000, 0x0800 ) /* chars */
|
||||
|
||||
ROM_REGION( 0x1800, "gfxbnk1", 0 )
|
||||
@ -875,7 +875,7 @@ ROM_START( 7mezzo )
|
||||
ROM_LOAD( "ns0.bin", 0x4000, 0x2000, CRC(e04fb210) SHA1(81e764e296fe387daf8ca67064d5eba2a4fc3c26) ) /* Renamed as ns0.bin regarding pcb location and content */
|
||||
|
||||
ROM_REGION( 0x0800, "gfxbnk0", 0 )
|
||||
// ROM_FILL( 0x0000, 0x1000, 0 ) /* filling the R-G bitplanes */
|
||||
// ROM_FILL( 0x0000, 0x1000, 0 ) /* filling the R-G bitplanes */
|
||||
ROM_COPY( "gfx", 0x1800, 0x0000, 0x0800 ) /* chars */
|
||||
|
||||
ROM_REGION( 0x1800, "gfxbnk1", 0 )
|
||||
|
@ -138,7 +138,7 @@ public:
|
||||
required_device<cpu_device> m_mips;
|
||||
required_device<adsp2181_device> m_adsp;
|
||||
required_device<pci_bus_device> m_pci;
|
||||
|
||||
|
||||
|
||||
/* ASIC */
|
||||
struct
|
||||
@ -149,7 +149,7 @@ public:
|
||||
UINT32 count;
|
||||
} m_dma_ch[3];
|
||||
|
||||
|
||||
|
||||
/* ADSP-2181 */
|
||||
UINT32* m_adsp_pram;
|
||||
|
||||
@ -164,17 +164,17 @@ public:
|
||||
|
||||
/* 3Dfx Voodoo */
|
||||
device_t* m_voodoo[2];
|
||||
|
||||
|
||||
struct
|
||||
{
|
||||
/* PCI */
|
||||
/* PCI */
|
||||
UINT32 command;
|
||||
UINT32 base_addr;
|
||||
|
||||
UINT32 init_enable;
|
||||
} m_voodoo_pci_regs[2];
|
||||
|
||||
|
||||
|
||||
|
||||
struct
|
||||
{
|
||||
/* PCI */
|
||||
@ -184,33 +184,33 @@ public:
|
||||
/* Memory-mapped */
|
||||
UINT32 as_regs[19];
|
||||
} m_zr36120;
|
||||
|
||||
|
||||
|
||||
DECLARE_READ32_MEMBER( zr36120_r );
|
||||
DECLARE_WRITE32_MEMBER( zr36120_w );
|
||||
|
||||
DECLARE_READ32_MEMBER( f0_r );
|
||||
DECLARE_WRITE32_MEMBER( f0_w );
|
||||
|
||||
|
||||
DECLARE_READ32_MEMBER( unk_r );
|
||||
DECLARE_READ32_MEMBER( rand_r );
|
||||
|
||||
|
||||
DECLARE_READ32_MEMBER( serial_r );
|
||||
DECLARE_WRITE32_MEMBER( serial_w );
|
||||
|
||||
DECLARE_READ32_MEMBER( adsp_idma_data_r );
|
||||
DECLARE_WRITE32_MEMBER( adsp_idma_data_w );
|
||||
DECLARE_WRITE32_MEMBER( adsp_idma_addr_w );
|
||||
|
||||
|
||||
DECLARE_READ32_MEMBER( adsp_status_r );
|
||||
DECLARE_READ16_MEMBER( adsp_control_r );
|
||||
DECLARE_WRITE16_MEMBER( adsp_control_w );
|
||||
|
||||
void zr36120_reset();
|
||||
|
||||
|
||||
void zr36120_reset();
|
||||
|
||||
protected:
|
||||
virtual void machine_start();
|
||||
virtual void machine_reset();
|
||||
virtual void machine_reset();
|
||||
};
|
||||
|
||||
|
||||
@ -232,7 +232,7 @@ void magictg_state::machine_reset()
|
||||
UINT8 *adsp_boot = (UINT8*)machine().region("adsp")->base();
|
||||
|
||||
zr36120_reset();
|
||||
|
||||
|
||||
/* Load 32 program words (96 bytes) via BDMA */
|
||||
for (int i = 0; i < 32; i ++)
|
||||
{
|
||||
@ -243,7 +243,7 @@ void magictg_state::machine_reset()
|
||||
word |= adsp_boot[i*3 + 2];
|
||||
|
||||
m_adsp_pram[i] = word;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -259,9 +259,9 @@ static VIDEO_START( magictg )
|
||||
}
|
||||
|
||||
static SCREEN_UPDATE( magictg )
|
||||
{
|
||||
{
|
||||
magictg_state* state = screen->machine().driver_data<magictg_state>();
|
||||
return voodoo_update(state->m_voodoo[0], bitmap, cliprect) ? 0 : UPDATE_HAS_NOT_CHANGED;
|
||||
return voodoo_update(state->m_voodoo[0], bitmap, cliprect) ? 0 : UPDATE_HAS_NOT_CHANGED;
|
||||
}
|
||||
|
||||
|
||||
@ -270,7 +270,7 @@ static SCREEN_UPDATE( magictg )
|
||||
* 3Dfx Voodoo
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
static UINT32 pci_dev0_r(device_t *busdevice, device_t *device, int function, int reg, UINT32 mem_mask)
|
||||
{
|
||||
mame_printf_debug("PCI[0] READ: %x\n", reg);
|
||||
@ -504,10 +504,10 @@ WRITE32_MEMBER( magictg_state::zr36120_w )
|
||||
UINT32 g_reg = (data >> 16) & 7;
|
||||
|
||||
/* Direction - 0 for read, 1 for write */
|
||||
// zr36120_guest_write(guest, g_data, g_reg);
|
||||
// zr36120_guest_write(guest, g_data, g_reg);
|
||||
// 2 - ZR36050 JPEG decoder
|
||||
// 3 - ZR36016 color-space converter
|
||||
mame_printf_debug("GUEST (%.8x): %d REG: %d DATA: %x\n", data, guest, g_reg, g_data);
|
||||
mame_printf_debug("GUEST (%.8x): %d REG: %d DATA: %x\n", data, guest, g_reg, g_data);
|
||||
}
|
||||
}
|
||||
|
||||
@ -555,21 +555,21 @@ WRITE32_MEMBER( magictg_state::f0_w )
|
||||
case 0x808:
|
||||
case 0x80c:
|
||||
m_dma_ch[ch].count = data;
|
||||
// mame_printf_debug("DMA%d COUNT: %.8x\n", ch, data);
|
||||
// mame_printf_debug("DMA%d COUNT: %.8x\n", ch, data);
|
||||
break;
|
||||
|
||||
case 0x814:
|
||||
case 0x818:
|
||||
case 0x81c:
|
||||
m_dma_ch[ch].src_addr = data;
|
||||
// mame_printf_debug("DMA%d SRC: %.8x\n", ch, data);
|
||||
// mame_printf_debug("DMA%d SRC: %.8x\n", ch, data);
|
||||
break;
|
||||
|
||||
case 0x824:
|
||||
case 0x828:
|
||||
case 0x82c:
|
||||
m_dma_ch[ch].dst_addr = data;
|
||||
// mame_printf_debug("DMA%d DST: %.8x\n", ch, data);
|
||||
// mame_printf_debug("DMA%d DST: %.8x\n", ch, data);
|
||||
break;
|
||||
|
||||
case 0x844:
|
||||
@ -577,7 +577,7 @@ WRITE32_MEMBER( magictg_state::f0_w )
|
||||
case 0x84c:
|
||||
{
|
||||
m_dma_ch[ch].ctrl = data;
|
||||
// mame_printf_debug("DMA%d CTRL: %.8x\n", ch, data);
|
||||
// mame_printf_debug("DMA%d CTRL: %.8x\n", ch, data);
|
||||
|
||||
if (data & 0x1000)
|
||||
{
|
||||
@ -622,8 +622,8 @@ WRITE32_MEMBER( magictg_state::f0_w )
|
||||
pci_32le_w(m_pci, 1, data, mem_mask);
|
||||
break;
|
||||
}
|
||||
// default:
|
||||
// mame_printf_debug("W: %.8x: %.8x\n", 0x0f000000 + offset, data);
|
||||
// default:
|
||||
// mame_printf_debug("W: %.8x: %.8x\n", 0x0f000000 + offset, data);
|
||||
}
|
||||
}
|
||||
|
||||
@ -659,8 +659,8 @@ READ32_MEMBER( magictg_state::f0_r )
|
||||
val = pci_32le_r(m_pci, 1, FLIPENDIAN_INT32(mem_mask));
|
||||
break;
|
||||
}
|
||||
// default:
|
||||
// mame_printf_debug("R: %.8x\n", 0x0f000000 + offset);
|
||||
// default:
|
||||
// mame_printf_debug("R: %.8x\n", 0x0f000000 + offset);
|
||||
}
|
||||
|
||||
return FLIPENDIAN_INT32(val);
|
||||
@ -672,7 +672,7 @@ READ32_MEMBER( magictg_state::f0_r )
|
||||
* ADSP-2181 internals
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
WRITE32_MEMBER( magictg_state::adsp_idma_data_w )
|
||||
{
|
||||
if (ACCESSING_BITS_16_31)
|
||||
@ -710,7 +710,7 @@ WRITE32_MEMBER( magictg_state::adsp_idma_addr_w )
|
||||
|
||||
READ32_MEMBER( magictg_state::adsp_status_r )
|
||||
{
|
||||
// ADSP_IACK = Bit 2
|
||||
// ADSP_IACK = Bit 2
|
||||
return (0 << 2) | (space.machine().rand() & 1);
|
||||
}
|
||||
|
||||
@ -822,7 +822,7 @@ WRITE16_MEMBER( magictg_state::adsp_control_w )
|
||||
* Main CPU
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
static ADDRESS_MAP_START( magictg_map, AS_PROGRAM, 32, magictg_state )
|
||||
AM_RANGE(0x00000000, 0x007fffff) AM_RAM // 8MB RAM
|
||||
AM_RANGE(0x00800000, 0x0081003f) AM_RAM // ?
|
||||
@ -849,7 +849,7 @@ ADDRESS_MAP_END
|
||||
* Mad Cow (IO/sound)
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, magictg_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_BASE(m_adsp_pram)
|
||||
@ -857,7 +857,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, magictg_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
// AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("databank")
|
||||
// AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("databank")
|
||||
AM_RANGE(0x0400, 0x3fdf) AM_RAM
|
||||
AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w)
|
||||
ADDRESS_MAP_END
|
||||
@ -872,7 +872,7 @@ ADDRESS_MAP_END
|
||||
* Input ports
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
static INPUT_PORTS_START( magictg )
|
||||
PORT_START("IPT_TEST")
|
||||
INPUT_PORTS_END
|
||||
@ -894,8 +894,8 @@ static const mips3_config config =
|
||||
static const adsp21xx_config adsp_config =
|
||||
{
|
||||
NULL, /* callback for serial receive */
|
||||
0,//sound_tx_callback, /* callback for serial transmit */
|
||||
0,//timer_enable_callback /* callback for timer fired */
|
||||
0,//sound_tx_callback, /* callback for serial transmit */
|
||||
0,//timer_enable_callback /* callback for timer fired */
|
||||
};
|
||||
|
||||
|
||||
@ -904,7 +904,7 @@ static const adsp21xx_config adsp_config =
|
||||
* Machine driver
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( magictg, magictg_state )
|
||||
MCFG_CPU_ADD("mips", R5000BE, 150000000) /* TODO: CPU type and clock are unknown */
|
||||
MCFG_CPU_CONFIG(config)
|
||||
@ -940,8 +940,8 @@ static MACHINE_CONFIG_START( magictg, magictg_state )
|
||||
MCFG_3DFX_VOODOO_1_ADD("voodoo_1", STD_VOODOO_1_CLOCK, 2, "screen")
|
||||
MCFG_3DFX_VOODOO_CPU("mips")
|
||||
MCFG_3DFX_VOODOO_TMU_MEMORY(0, 4)
|
||||
// MCFG_3DFX_VOODOO_VBLANK(vblank_assert)
|
||||
// MCFG_3DFX_VOODOO_STALL(voodoo_stall)
|
||||
// MCFG_3DFX_VOODOO_VBLANK(vblank_assert)
|
||||
// MCFG_3DFX_VOODOO_STALL(voodoo_stall)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
|
@ -801,7 +801,7 @@ static WRITE8_HANDLER( m1_latch_w )
|
||||
cpu0_nmi(space->machine(),1);
|
||||
cpu0_nmi(space->machine(),0);
|
||||
|
||||
// if ( m1_enable == 0 && ( data & 1 ) && Vmm )
|
||||
// if ( m1_enable == 0 && ( data & 1 ) && Vmm )
|
||||
// {
|
||||
// cpu0_nmi(1)
|
||||
// m1_enable = (data & 1);
|
||||
@ -1673,7 +1673,7 @@ ROM_START( m1cluessp )
|
||||
ROM_LOAD( "sk001028", 0x0000, 0x020000, CRC(ad0ccb34) SHA1(1cfe0cc945ba3fe91645301abca40285984084e3) )//pcf 2.3
|
||||
m1_cluess_sound
|
||||
ROM_END_M1A_MCU
|
||||
|
||||
|
||||
ROM_START( m1cluessa )
|
||||
ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "sk001025", 0x0000, 0x020000, CRC(9b30d25a) SHA1(185c2f56d69dc6635c75c18bc1c4f342d94a3c96) )//ncf 1.2
|
||||
|
@ -4780,11 +4780,11 @@ ROM_START( alibabab )
|
||||
ROM_LOAD( "6f", 0x1000, 0x1000, CRC(3d0e35f3) SHA1(6b9a1fd11db9f521417566ae4c7065151aa272b5) ) // ab2.bin
|
||||
ROM_LOAD( "6h", 0x2000, 0x1000, CRC(823bee89) SHA1(5381a4fcbc9fa97574c6df2978c7500164df75e5) ) // ab3.bin
|
||||
ROM_LOAD( "6k", 0x3000, 0x1000, CRC(474d032f) SHA1(4516a60ec83e3c3388cd56f538f49afc86a50983) ) // ab4.bin
|
||||
ROM_LOAD( "ab5.bin", 0x8000, 0x1000, CRC(ae2f4aac) SHA1(8583514e4a876ecdb1bc2c65f9829f0bebfdee0d) )
|
||||
ROM_LOAD( "ab5.bin", 0x8000, 0x1000, CRC(ae2f4aac) SHA1(8583514e4a876ecdb1bc2c65f9829f0bebfdee0d) )
|
||||
ROM_LOAD( "6m", 0xa000, 0x0800, CRC(438d0357) SHA1(7caaf668906b76d4947e988c444723b33f8e9726) ) // ab6.bin
|
||||
|
||||
ROM_REGION( 0x2000, "gfx1", 0 )
|
||||
ROM_LOAD( "5e", 0x0000, 0x0800, CRC(85bcb8f8) SHA1(986170627953582b1e6fbca59e5c15cf8c4de9c7) ) // ab8.bin
|
||||
ROM_LOAD( "5e", 0x0000, 0x0800, CRC(85bcb8f8) SHA1(986170627953582b1e6fbca59e5c15cf8c4de9c7) ) // ab8.bin
|
||||
ROM_LOAD( "5h", 0x0800, 0x0800, CRC(38e50862) SHA1(094d090bd0563f75d6ff1bfe2302cae941a89504) ) // ab10.bin
|
||||
ROM_LOAD( "5f", 0x1000, 0x0800, CRC(b5715c86) SHA1(ed6aee778295b0182d32846b5e41776b5b15420c) ) // ab9.bin
|
||||
ROM_LOAD( "5k", 0x1800, 0x0800, CRC(713086b3) SHA1(a1609bae637207a82920678f05bcc10a5ff096de) ) // ab11.bin
|
||||
|
@ -707,7 +707,7 @@ static INPUT_PORTS_START( columns )
|
||||
//"SW2:3" unused
|
||||
//"SW2:4" unused
|
||||
/* The first level increase (from 0 to 1) is always after destroying
|
||||
35 jewels. Then, the level gets 1 level more every : */
|
||||
35 jewels. Then, the level gets 1 level more every : */
|
||||
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easiest ) ) // 50 jewels
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) // 40 jewels
|
||||
@ -740,7 +740,7 @@ static INPUT_PORTS_START( columnsu )
|
||||
PORT_DIPSETTING( 0x04, "BGM #1" )
|
||||
PORT_DIPSETTING( 0x00, "BGM #2" )
|
||||
/* The first level increase (from 0 to 1) is always after destroying
|
||||
35 jewels. Then, the level gets 1 level more every : */
|
||||
35 jewels. Then, the level gets 1 level more every : */
|
||||
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Easiest ) ) // 50 jewels
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) // 40 jewels
|
||||
|
@ -516,7 +516,7 @@ static INPUT_PORTS_START( elim2 )
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet )) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Upright )) // This switch is not documented in the manual
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ))
|
||||
//"SW1:7" unused // Unused according to manual
|
||||
//"SW1:7" unused // Unused according to manual
|
||||
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Lives )) PORT_DIPLOCATION("SW1:6,5")
|
||||
PORT_DIPSETTING( 0x04, "3" )
|
||||
PORT_DIPSETTING( 0x08, "4" )
|
||||
@ -579,7 +579,7 @@ static INPUT_PORTS_START( elim4 )
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet )) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Upright )) // This switch is not documented in the manual
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ))
|
||||
//"SW1:7" unused // This switch is not documented in the manual
|
||||
//"SW1:7" unused // This switch is not documented in the manual
|
||||
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Lives )) PORT_DIPLOCATION("SW1:6,5")
|
||||
PORT_DIPSETTING( 0x04, "3" )
|
||||
PORT_DIPSETTING( 0x08, "4" )
|
||||
|
@ -6,13 +6,13 @@ SEGA GOLDEN POKER SERIES "JOKER'S WILD" (REV.B)
|
||||
(c) SEGA
|
||||
|
||||
MAIN CPU : 68000 Z-80
|
||||
CRTC : HITACHI HD63484 (24KHz OUTPUT)
|
||||
CRTC : HITACHI HD63484 (24KHz OUTPUT)
|
||||
SOUND : YM3438
|
||||
|
||||
14584B.EPR ; MAIN BOARD IC20 EPR-14584B (27C1000 MAIN-ODD)
|
||||
14585B.EPR ; MAIN BOARD IC22 EPR-14585B (27C1000 MAIN-EVEN)
|
||||
14586.EPR ; MAIN BOARD IC26 EPR-14586 (27C4096 BG)
|
||||
14587A.EPR ; SOUND BOARD IC51 EPR-14587A (27C1000 SOUND)
|
||||
14584B.EPR ; MAIN BOARD IC20 EPR-14584B (27C1000 MAIN-ODD)
|
||||
14585B.EPR ; MAIN BOARD IC22 EPR-14585B (27C1000 MAIN-EVEN)
|
||||
14586.EPR ; MAIN BOARD IC26 EPR-14586 (27C4096 BG)
|
||||
14587A.EPR ; SOUND BOARD IC51 EPR-14587A (27C1000 SOUND)
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
@ -45,8 +45,8 @@ static SCREEN_UPDATE( segajw )
|
||||
static ADDRESS_MAP_START( segajw_map, AS_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x03ffff) AM_ROM
|
||||
|
||||
// AM_RANGE(0x080000, 0x080001) AM_DEVREADWRITE("hd63484", hd63484_status_r, hd63484_address_w)
|
||||
// AM_RANGE(0x080002, 0x080003) AM_DEVREADWRITE("hd63484", hd63484_data_r, hd63484_data_w)
|
||||
// AM_RANGE(0x080000, 0x080001) AM_DEVREADWRITE("hd63484", hd63484_status_r, hd63484_address_w)
|
||||
// AM_RANGE(0x080002, 0x080003) AM_DEVREADWRITE("hd63484", hd63484_data_r, hd63484_data_w)
|
||||
|
||||
AM_RANGE(0x1a000e, 0x1a000f) AM_NOP
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM
|
||||
@ -97,8 +97,8 @@ static MACHINE_CONFIG_START( segajw, segajw_state )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
// MCFG_SOUND_ADD("aysnd", AY8910, MAIN_CLOCK/4) /* guess */
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
// MCFG_SOUND_ADD("aysnd", AY8910, MAIN_CLOCK/4) /* guess */
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/***************************************************************************
|
||||
|
@ -878,7 +878,7 @@ static INPUT_PORTS_START( aburner )
|
||||
PORT_DIPSETTING( 0x03, "Moving Deluxe" )
|
||||
PORT_DIPSETTING( 0x02, "Moving Standard" )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Upright ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
@ -1143,7 +1143,7 @@ static INPUT_PORTS_START( smgp )
|
||||
PORT_DIPSETTING( 0xc0, "Deluxe" )
|
||||
PORT_DIPSETTING( 0x80, "Cockpit" )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Upright ) )
|
||||
// PORT_DIPSETTING( 0x00, "Deluxe" )
|
||||
// PORT_DIPSETTING( 0x00, "Deluxe" )
|
||||
|
||||
PORT_START("ADC0") /* steering */
|
||||
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x38,0xc8) PORT_SENSITIVITY(100) PORT_KEYDELTA(4)
|
||||
@ -1202,8 +1202,8 @@ static INPUT_PORTS_START( gprider )
|
||||
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SWB:1,2")
|
||||
PORT_DIPSETTING( 0x03, "Ride On" )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Upright ) )
|
||||
// PORT_DIPSETTING( 0x01, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x01, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x08, 0x08, "ID No." ) PORT_DIPLOCATION("SWB:4")
|
||||
PORT_DIPSETTING( 0x08, "Main" ) // Player 1 (Blue)
|
||||
PORT_DIPSETTING( 0x00, "Slave" ) // Player 2 (Red)
|
||||
|
@ -605,7 +605,7 @@ static INPUT_PORTS_START( gloc )
|
||||
PORT_DIPSETTING( 0x18, "Moving" )
|
||||
PORT_DIPSETTING( 0x10, "Cockpit" )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( Upright ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SWB:6")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( No ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Yes ) )
|
||||
@ -639,7 +639,7 @@ static INPUT_PORTS_START( glocr360 )
|
||||
PORT_DIPSETTING( 0x02, "Fighting Only" )
|
||||
PORT_DIPSETTING( 0x03, "Fight/Experience" )
|
||||
PORT_DIPSETTING( 0x01, "Experience Only" )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
@ -656,23 +656,23 @@ static INPUT_PORTS_START( glocr360 )
|
||||
PORT_DIPSETTING( 0x90, "8" )
|
||||
PORT_DIPSETTING( 0x80, "10" )
|
||||
PORT_DIPSETTING( 0x70, "12" )
|
||||
// PORT_DIPSETTING( 0x00, "1" )
|
||||
// PORT_DIPSETTING( 0x10, "1" )
|
||||
// PORT_DIPSETTING( 0x20, "1" )
|
||||
// PORT_DIPSETTING( 0x30, "1" )
|
||||
// PORT_DIPSETTING( 0x40, "1" )
|
||||
// PORT_DIPSETTING( 0x50, "1" )
|
||||
// PORT_DIPSETTING( 0x60, "1" )
|
||||
// PORT_DIPSETTING( 0x00, "1" )
|
||||
// PORT_DIPSETTING( 0x10, "1" )
|
||||
// PORT_DIPSETTING( 0x20, "1" )
|
||||
// PORT_DIPSETTING( 0x30, "1" )
|
||||
// PORT_DIPSETTING( 0x40, "1" )
|
||||
// PORT_DIPSETTING( 0x50, "1" )
|
||||
// PORT_DIPSETTING( 0x60, "1" )
|
||||
|
||||
PORT_MODIFY("COINAGE")
|
||||
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWA:1,2,3,4")
|
||||
// PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x04, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x04, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x0e, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPSETTING( 0x0d, DEF_STR( 1C_3C ) )
|
||||
@ -683,13 +683,13 @@ static INPUT_PORTS_START( glocr360 )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( 1C_8C ) )
|
||||
PORT_DIPSETTING( 0x00, "Free Play (if Coin B too) or 1/1" )
|
||||
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SWA:5,6,7,8")
|
||||
// PORT_DIPSETTING( 0x70, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x50, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x20, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x70, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x50, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x20, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
|
||||
// PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0xe0, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPSETTING( 0xd0, DEF_STR( 1C_3C ) )
|
||||
@ -725,7 +725,7 @@ static INPUT_PORTS_START( pdrift )
|
||||
PORT_DIPSETTING( 0x03, "Moving" )
|
||||
PORT_DIPSETTING( 0x02, "Upright/Sit Down" )
|
||||
PORT_DIPSETTING( 0x01, "Mini Upright" )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
@ -762,7 +762,7 @@ static INPUT_PORTS_START( pdrifte )
|
||||
PORT_DIPSETTING( 0x03, "Moving" )
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Upright ) )
|
||||
PORT_DIPSETTING( 0x01, "Mini Upright" )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
@ -789,7 +789,7 @@ static INPUT_PORTS_START( pdriftj )
|
||||
PORT_DIPSETTING( 0x03, "Moving" )
|
||||
PORT_DIPSETTING( 0x02, "Upright/Sit Down" )
|
||||
PORT_DIPSETTING( 0x01, "Mini Upright" )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
@ -904,7 +904,7 @@ static INPUT_PORTS_START( strkfgtr )
|
||||
PORT_DIPSETTING( 0xc0, "Moving" )
|
||||
PORT_DIPSETTING( 0x80, "Cockpit" )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Upright ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( Unused ) )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
@ -83,7 +83,7 @@ public:
|
||||
|
||||
/* Static Variables */
|
||||
#define MAX_STEPPER 200 // 1.8 Degree Stepper Motor = 200 full-steps per revolution, but 400 when in half-step mode
|
||||
#define STEPPER_DIVISOR 9.09 //18.18 // To allow for 22 stop positions
|
||||
#define STEPPER_DIVISOR 9.09 //18.18 // To allow for 22 stop positions
|
||||
|
||||
static const UINT8 optics[200] = {
|
||||
0x07, 0x07, 0x00, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@ -155,7 +155,7 @@ static WRITE8_HANDLER( splus_io_w )
|
||||
state->m_stepper_pos[x] = MAX_STEPPER - 1;
|
||||
}
|
||||
state->m_stop_pos[x] = (int)(state->m_stepper_pos[x] / STEPPER_DIVISOR);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#if DEBUG_OUTPUT
|
||||
@ -489,7 +489,7 @@ static READ8_HANDLER( splus_serial_r )
|
||||
// Reserved
|
||||
// Reserved
|
||||
// Reserved
|
||||
// Reserved
|
||||
// Reserved
|
||||
break;
|
||||
}
|
||||
return val;
|
||||
@ -608,7 +608,7 @@ static ADDRESS_MAP_START( splus_iomap, AS_IO, 8 )
|
||||
|
||||
// SSxxxx Reel Chip
|
||||
AM_RANGE(0x8000, 0x9fff) AM_READ(splus_m_reel_ram_r) AM_BASE_MEMBER(splus_state, m_reel_ram)
|
||||
|
||||
|
||||
// Ports start here
|
||||
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READ(splus_io_r) AM_WRITE(splus_io_w) AM_BASE_MEMBER(splus_state, m_io_port)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -738,7 +738,7 @@ static ADDRESS_MAP_START( realpunc_map, AS_PROGRAM, 16 )
|
||||
AM_RANGE(0x280000, 0x281fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram)
|
||||
AM_RANGE(0x300000, 0x300001) AM_DEVREADWRITE("hd63484", hd63484_status_r, hd63484_address_w)
|
||||
AM_RANGE(0x300002, 0x300003) AM_DEVREADWRITE("hd63484", hd63484_data_r, hd63484_data_w)
|
||||
// AM_RANGE(0x320000, 0x320001) AM_READ(SMH_NOP) // ?
|
||||
// AM_RANGE(0x320000, 0x320001) AM_READ(SMH_NOP) // ?
|
||||
AM_RANGE(0x320002, 0x320003) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_comm_r, 0xff00)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -81,18 +81,18 @@ static SCREEN_UPDATE( taitopjc )
|
||||
for (t=0; t < 32; t++)
|
||||
{
|
||||
UINT32 tile = jc_tile_ram[((u*16)+(t/2)) ^ 0];
|
||||
|
||||
|
||||
if (t & 1)
|
||||
tile &= 0xffff;
|
||||
else
|
||||
tile >>= 16;
|
||||
|
||||
|
||||
tile &= 0xff;
|
||||
tile -= 0x40;
|
||||
|
||||
|
||||
if (tile < 0) tile = 0;
|
||||
if (tile > 127) tile = 127;
|
||||
|
||||
|
||||
for (y=0; y < 16; y++)
|
||||
{
|
||||
UINT32 *fb = BITMAP_ADDR32(bitmap, y+(u*16), 0);
|
||||
@ -101,7 +101,7 @@ static SCREEN_UPDATE( taitopjc )
|
||||
UINT8 p = s[((tile*256) + ((y*16)+x)) ^3];
|
||||
fb[x+(t*16)] = p ? 0xffffffff : 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -114,13 +114,13 @@ static UINT32 video_address;
|
||||
static UINT32 videochip_r(address_space *space, offs_t address)
|
||||
{
|
||||
UINT32 r = 0;
|
||||
|
||||
|
||||
if (address >= 0x10000000 && address < 0x10010000)
|
||||
{
|
||||
r = jc_screen_ram[address - 0x10000000];
|
||||
r = jc_screen_ram[address - 0x10000000];
|
||||
}
|
||||
|
||||
return r;
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
static void videochip_w(address_space *space, offs_t address, UINT32 data)
|
||||
@ -138,11 +138,11 @@ static void videochip_w(address_space *space, offs_t address, UINT32 data)
|
||||
}
|
||||
else if (address >= 0x1003f000 && address < 0x10040000)
|
||||
{
|
||||
jc_tile_ram[address - 0x1003f000] = data;
|
||||
jc_tile_ram[address - 0x1003f000] = data;
|
||||
}
|
||||
else if (address >= 0x10000000 && address < 0x10010000)
|
||||
{
|
||||
jc_screen_ram[address - 0x10000000] = data;
|
||||
jc_screen_ram[address - 0x10000000] = data;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -153,15 +153,15 @@ static void videochip_w(address_space *space, offs_t address, UINT32 data)
|
||||
static READ64_HANDLER(video_r)
|
||||
{
|
||||
UINT64 r = 0;
|
||||
|
||||
|
||||
if (offset == 0)
|
||||
{
|
||||
if (ACCESSING_BITS_32_63)
|
||||
{
|
||||
r |= (UINT64)(videochip_r(space, video_address)) << 32;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
@ -187,14 +187,14 @@ static WRITE64_HANDLER(video_w)
|
||||
/*
|
||||
static UINT16 com_ram[256] =
|
||||
{
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x434F, 0x4D4E, 0x4F4B, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // COMNOK
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x574F, 0x524B, 0x4F4B, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // WORKOK
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x5355, 0x4E44, 0x4F4B, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // SUNDOK
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x434F, 0x4D4E, 0x4F4B, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // COMNOK
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x574F, 0x524B, 0x4F4B, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // WORKOK
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x5355, 0x4E44, 0x4F4B, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // SUNDOK
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
*/
|
||||
|
||||
@ -202,7 +202,7 @@ static READ64_HANDLER(ppc_common_r)
|
||||
{
|
||||
UINT64 r = 0;
|
||||
UINT32 address;
|
||||
|
||||
|
||||
logerror("com_r: %08X, %08X%08X\n", offset, (UINT32)(mem_mask >> 32), (UINT32)(mem_mask));
|
||||
|
||||
address = offset * 4;
|
||||
@ -219,20 +219,20 @@ static READ64_HANDLER(ppc_common_r)
|
||||
}
|
||||
|
||||
/*
|
||||
if (offset < 0x7f)
|
||||
{
|
||||
int reg = (offset & 0x7f) * 2;
|
||||
|
||||
if (!(mem_mask & U64(0xffff000000000000)))
|
||||
{
|
||||
r |= (UINT64)(com_ram[reg + 0]) << 48;
|
||||
}
|
||||
if (!(mem_mask & U64(0x00000000ffff0000)))
|
||||
{
|
||||
r |= (UINT64)(com_ram[reg + 1]) << 16;
|
||||
}
|
||||
}
|
||||
*/
|
||||
if (offset < 0x7f)
|
||||
{
|
||||
int reg = (offset & 0x7f) * 2;
|
||||
|
||||
if (!(mem_mask & U64(0xffff000000000000)))
|
||||
{
|
||||
r |= (UINT64)(com_ram[reg + 0]) << 48;
|
||||
}
|
||||
if (!(mem_mask & U64(0x00000000ffff0000)))
|
||||
{
|
||||
r |= (UINT64)(com_ram[reg + 1]) << 16;
|
||||
}
|
||||
}
|
||||
*/
|
||||
return r;
|
||||
}
|
||||
|
||||
@ -243,7 +243,7 @@ static UINT16 dsp_ram[0x1000];
|
||||
static READ64_HANDLER(dsp_r)
|
||||
{
|
||||
UINT64 r = 0;
|
||||
|
||||
|
||||
if (offset == 0x7fe)
|
||||
{
|
||||
if (!(mem_mask & U64(0xffffffff00000000)))
|
||||
@ -251,21 +251,21 @@ static READ64_HANDLER(dsp_r)
|
||||
r |= (UINT64)(dsp_value) << 32;
|
||||
}
|
||||
}
|
||||
|
||||
return r;
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
static WRITE64_HANDLER(dsp_w)
|
||||
{
|
||||
logerror("dsp_w: %08X, %08X%08X, %08X%08X\n", offset, (UINT32)(data >> 32), (UINT32)(data), (UINT32)(mem_mask >> 32), (UINT32)(mem_mask));
|
||||
|
||||
|
||||
if (offset == 0x7fe)
|
||||
{
|
||||
if (!(mem_mask & U64(0xffffffff00000000)))
|
||||
{
|
||||
dsp_value = data >> 32;
|
||||
}
|
||||
|
||||
|
||||
#if 0
|
||||
{
|
||||
int i;
|
||||
@ -279,7 +279,7 @@ static WRITE64_HANDLER(dsp_w)
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
if (!(mem_mask & U64(0xffff000000000000)))
|
||||
{
|
||||
int addr = offset * 2;
|
||||
@ -293,14 +293,14 @@ static WRITE64_HANDLER(dsp_w)
|
||||
}
|
||||
|
||||
// BAT Config:
|
||||
// IBAT0 U: 0x40000002 L: 0x40000022 (0x40000000...0x4001ffff)
|
||||
// IBAT1 U: 0x0000007f L: 0x00000002 (0x00000000...0x003fffff)
|
||||
// IBAT2 U: 0xc0000003 L: 0xc0000022 (0xc0000000...0xc001ffff)
|
||||
// IBAT3 U: 0xfe0003ff L: 0xfe000022 (0xfe000000...0xffffffff)
|
||||
// DBAT0 U: 0x40000002 L: 0x40000022 (0x40000000...0x4001ffff)
|
||||
// DBAT1 U: 0x0000007f L: 0x00000002 (0x00000000...0x003fffff)
|
||||
// DBAT2 U: 0xc0000003 L: 0xc0000022 (0xc0000000...0xc001ffff)
|
||||
// DBAT3 U: 0xfe0003ff L: 0xfe000022 (0xfe000000...0xffffffff)
|
||||
// IBAT0 U: 0x40000002 L: 0x40000022 (0x40000000...0x4001ffff)
|
||||
// IBAT1 U: 0x0000007f L: 0x00000002 (0x00000000...0x003fffff)
|
||||
// IBAT2 U: 0xc0000003 L: 0xc0000022 (0xc0000000...0xc001ffff)
|
||||
// IBAT3 U: 0xfe0003ff L: 0xfe000022 (0xfe000000...0xffffffff)
|
||||
// DBAT0 U: 0x40000002 L: 0x40000022 (0x40000000...0x4001ffff)
|
||||
// DBAT1 U: 0x0000007f L: 0x00000002 (0x00000000...0x003fffff)
|
||||
// DBAT2 U: 0xc0000003 L: 0xc0000022 (0xc0000000...0xc001ffff)
|
||||
// DBAT3 U: 0xfe0003ff L: 0xfe000022 (0xfe000000...0xffffffff)
|
||||
|
||||
static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64)
|
||||
AM_RANGE(0x00000000, 0x003fffff) AM_RAM // Work RAM
|
||||
@ -321,7 +321,7 @@ static READ8_HANDLER(tlcs_common_r)
|
||||
|
||||
static WRITE8_HANDLER(tlcs_common_w)
|
||||
{
|
||||
// printf("tlcs_common_w: %08X, %02X\n", offset, data);
|
||||
// printf("tlcs_common_w: %08X, %02X\n", offset, data);
|
||||
|
||||
common_ram[offset] = data;
|
||||
}
|
||||
@ -338,7 +338,7 @@ static READ8_HANDLER(tlcs_sound_r)
|
||||
|
||||
static WRITE8_HANDLER(tlcs_sound_w)
|
||||
{
|
||||
// printf("tlcs_sound_w: %08X, %02X\n", offset, data);
|
||||
// printf("tlcs_sound_w: %08X, %02X\n", offset, data);
|
||||
}
|
||||
|
||||
// TLCS900 interrupt vectors
|
||||
|
@ -75,13 +75,13 @@ IC7 Panasonic MN1020819DA E68-01
|
||||
// Interesting mem areas
|
||||
|
||||
// 0x40080400...0x400807fc: PPC Interrupt handler table for TLCS900 interrupts (called from 0x4002ea80)
|
||||
// 0x40080440 (0x10): 0x4003b274 (0xfc06f7 on TLCS sets 0x1000)
|
||||
// 0x400804c0 (0x30): 0x4003f1e4 (INT1 handler on TLCS sets 0x3010) (comms?)
|
||||
// 0x40080500 (0x40): 0x4002ed94 (debug/trace?)
|
||||
// 0x40080504 (0x41): 0x4002ede4 (debug/trace?)
|
||||
// 0x40080540 (0x50): 0x4003c21c
|
||||
// 0x40080740 (0xd0): 0x4002ecc0 (INT3 handler on TLCS sets 0xd000)
|
||||
// 0x400807c0 (0xf0): 0x4002eae4 (0xfc0a44 on TLCS sets 0xf001)
|
||||
// 0x40080440 (0x10): 0x4003b274 (0xfc06f7 on TLCS sets 0x1000)
|
||||
// 0x400804c0 (0x30): 0x4003f1e4 (INT1 handler on TLCS sets 0x3010) (comms?)
|
||||
// 0x40080500 (0x40): 0x4002ed94 (debug/trace?)
|
||||
// 0x40080504 (0x41): 0x4002ede4 (debug/trace?)
|
||||
// 0x40080540 (0x50): 0x4003c21c
|
||||
// 0x40080740 (0xd0): 0x4002ecc0 (INT3 handler on TLCS sets 0xd000)
|
||||
// 0x400807c0 (0xf0): 0x4002eae4 (0xfc0a44 on TLCS sets 0xf001)
|
||||
|
||||
|
||||
class taitotz_state : public driver_device
|
||||
@ -113,48 +113,48 @@ static VIDEO_START( taitotz )
|
||||
static SCREEN_UPDATE( taitotz )
|
||||
{
|
||||
/*
|
||||
{
|
||||
UINT16 *s = (UINT16*)video_char_ram;
|
||||
int x,y,t,u;
|
||||
for (u=0; u < 16; u++)
|
||||
{
|
||||
for (t=0; t < 16; t++)
|
||||
{
|
||||
UINT32 tile = (u*16)+t;
|
||||
|
||||
tile &= 0xff;
|
||||
|
||||
for (y=0; y < FONT_HEIGHT; y++)
|
||||
{
|
||||
UINT32 *fb = BITMAP_ADDR32(bitmap, y+(u*FONT_WIDTH), 0);
|
||||
for (x=0; x < FONT_WIDTH; x++)
|
||||
{
|
||||
UINT32 p = s[((tile*(FONT_WIDTH*FONT_HEIGHT*2)) + ((y*FONT_WIDTH)+x)) ^ 1];
|
||||
if (p) p = 0xffffffff;
|
||||
fb[x+(t*FONT_HEIGHT)] = p;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
{
|
||||
UINT16 *s = (UINT16*)video_char_ram;
|
||||
int x,y,t,u;
|
||||
for (u=0; u < 16; u++)
|
||||
{
|
||||
for (t=0; t < 16; t++)
|
||||
{
|
||||
UINT32 tile = (u*16)+t;
|
||||
|
||||
tile &= 0xff;
|
||||
|
||||
for (y=0; y < FONT_HEIGHT; y++)
|
||||
{
|
||||
UINT32 *fb = BITMAP_ADDR32(bitmap, y+(u*FONT_WIDTH), 0);
|
||||
for (x=0; x < FONT_WIDTH; x++)
|
||||
{
|
||||
UINT32 p = s[((tile*(FONT_WIDTH*FONT_HEIGHT*2)) + ((y*FONT_WIDTH)+x)) ^ 1];
|
||||
if (p) p = 0xffffffff;
|
||||
fb[x+(t*FONT_HEIGHT)] = p;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
{
|
||||
UINT16 *s = (UINT16*)video_char_ram;
|
||||
int t,u;
|
||||
for (u=0; u < 256; u++)
|
||||
{
|
||||
UINT32 *fb = BITMAP_ADDR32(bitmap, u, 0);
|
||||
for (t=0; t < 512; t++)
|
||||
{
|
||||
UINT32 p = s[((u*512)+t) ^ 1];
|
||||
if (p) p = 0xffffffff;
|
||||
fb[t] = p;
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
{
|
||||
UINT16 *s = (UINT16*)video_char_ram;
|
||||
int t,u;
|
||||
for (u=0; u < 256; u++)
|
||||
{
|
||||
UINT32 *fb = BITMAP_ADDR32(bitmap, u, 0);
|
||||
for (t=0; t < 512; t++)
|
||||
{
|
||||
UINT32 p = s[((u*512)+t) ^ 1];
|
||||
if (p) p = 0xffffffff;
|
||||
fb[t] = p;
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
taitotz_state *state = screen->machine().driver_data<taitotz_state>();
|
||||
|
||||
@ -337,22 +337,22 @@ static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
// TLCS900 interrupt vectors
|
||||
// 0xfc0150: reset
|
||||
// 0xfc0120: SWI1-7, NMI, INTWD, INTT0, INTT2-7, INTTR8-A, INTAD, INTTC0-3
|
||||
// 0xfc0122: INT0
|
||||
// 0xfc0137: INT1
|
||||
// 0xfc013c: INT2
|
||||
// 0xfc0141: INT3
|
||||
// 0xfc0146: INT4
|
||||
// 0xfc0147: INT5
|
||||
// 0xfc0148: INT6
|
||||
// 0xfc0149: INT7
|
||||
// 0xfc014a: INT8
|
||||
// 0xfc0467: INTT1
|
||||
// 0xfc0d1d: INTRX0
|
||||
// 0xfc0ca5: INTTX0
|
||||
// 0xfc0d55: INTRX1
|
||||
// 0xfc0ce1: INTTX1
|
||||
// 0xfc0150: reset
|
||||
// 0xfc0120: SWI1-7, NMI, INTWD, INTT0, INTT2-7, INTTR8-A, INTAD, INTTC0-3
|
||||
// 0xfc0122: INT0
|
||||
// 0xfc0137: INT1
|
||||
// 0xfc013c: INT2
|
||||
// 0xfc0141: INT3
|
||||
// 0xfc0146: INT4
|
||||
// 0xfc0147: INT5
|
||||
// 0xfc0148: INT6
|
||||
// 0xfc0149: INT7
|
||||
// 0xfc014a: INT8
|
||||
// 0xfc0467: INTT1
|
||||
// 0xfc0d1d: INTRX0
|
||||
// 0xfc0ca5: INTTX0
|
||||
// 0xfc0d55: INTRX1
|
||||
// 0xfc0ce1: INTTX1
|
||||
|
||||
static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 8)
|
||||
AM_RANGE(0x010000, 0x02ffff) AM_RAM // Work RAM
|
||||
@ -383,12 +383,12 @@ static MACHINE_RESET( taitotz )
|
||||
static MACHINE_START( taitotz )
|
||||
{
|
||||
/*
|
||||
UINT32 *rom = (UINT32*)machine->region("user1")->base();
|
||||
|
||||
rom[(0x228b0^4)/4] = 0x60000000;
|
||||
rom[(0x22900^4)/4] = 0x60000000;
|
||||
rom[(0x2293c^4)/4] = 0x60000000;
|
||||
*/
|
||||
UINT32 *rom = (UINT32*)machine->region("user1")->base();
|
||||
|
||||
rom[(0x228b0^4)/4] = 0x60000000;
|
||||
rom[(0x22900^4)/4] = 0x60000000;
|
||||
rom[(0x2293c^4)/4] = 0x60000000;
|
||||
*/
|
||||
}
|
||||
|
||||
static INTERRUPT_GEN( taitotz_vbi )
|
||||
|
@ -1573,52 +1573,52 @@ INPUT_PORTS_END
|
||||
|
||||
/*
|
||||
static INPUT_PORTS_START( punkshot2o ) // US 2 Players set1
|
||||
PORT_INCLUDE( punkshtj )
|
||||
PORT_INCLUDE( punksht_us_coinage )
|
||||
PORT_INCLUDE( punkshtj )
|
||||
PORT_INCLUDE( punksht_us_coinage )
|
||||
|
||||
PORT_MODIFY("DSW1/DSW2")
|
||||
PORT_DIPNAME( 0x0300, 0x0300, "Energy" ) PORT_DIPLOCATION("SW2:1,2")
|
||||
PORT_DIPSETTING( 0x0300, "30" ) // US set1 factory default = "30"
|
||||
PORT_DIPSETTING( 0x0200, "40" )
|
||||
PORT_DIPSETTING( 0x0100, "50" )
|
||||
PORT_DIPSETTING( 0x0000, "60" )
|
||||
PORT_DIPNAME( 0x0c00, 0x0800, "Period Length" ) PORT_DIPLOCATION("SW2:3,4")
|
||||
PORT_DIPSETTING( 0x0c00, "2 Minutes" )
|
||||
PORT_DIPSETTING( 0x0800, "3 Minutes" ) // US set1 factory default = "3 Minutes"
|
||||
PORT_DIPSETTING( 0x0400, "4 Minutes" )
|
||||
PORT_DIPSETTING( 0x0000, "5 Minutes" )
|
||||
PORT_DIPNAME( 0x6000, 0x6000, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
|
||||
PORT_DIPSETTING( 0x6000, DEF_STR( Easy ) ) // US set1 factory default = "Easy"
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Difficult ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Very_Difficult ) )
|
||||
PORT_MODIFY("DSW1/DSW2")
|
||||
PORT_DIPNAME( 0x0300, 0x0300, "Energy" ) PORT_DIPLOCATION("SW2:1,2")
|
||||
PORT_DIPSETTING( 0x0300, "30" ) // US set1 factory default = "30"
|
||||
PORT_DIPSETTING( 0x0200, "40" )
|
||||
PORT_DIPSETTING( 0x0100, "50" )
|
||||
PORT_DIPSETTING( 0x0000, "60" )
|
||||
PORT_DIPNAME( 0x0c00, 0x0800, "Period Length" ) PORT_DIPLOCATION("SW2:3,4")
|
||||
PORT_DIPSETTING( 0x0c00, "2 Minutes" )
|
||||
PORT_DIPSETTING( 0x0800, "3 Minutes" ) // US set1 factory default = "3 Minutes"
|
||||
PORT_DIPSETTING( 0x0400, "4 Minutes" )
|
||||
PORT_DIPSETTING( 0x0000, "5 Minutes" )
|
||||
PORT_DIPNAME( 0x6000, 0x6000, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
|
||||
PORT_DIPSETTING( 0x6000, DEF_STR( Easy ) ) // US set1 factory default = "Easy"
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Difficult ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Very_Difficult ) )
|
||||
INPUT_PORTS_END
|
||||
*/
|
||||
|
||||
/*
|
||||
static INPUT_PORTS_START( punksht4n ) // US 4 Players set2
|
||||
PORT_INCLUDE( punkshtj4 )
|
||||
PORT_INCLUDE( punksht_us_coinage )
|
||||
PORT_INCLUDE( punkshtj4 )
|
||||
PORT_INCLUDE( punksht_us_coinage )
|
||||
|
||||
PORT_MODIFY("DSW1/DSW2")
|
||||
PORT_DIPNAME( 0x0300, 0x0300, "Energy" ) PORT_DIPLOCATION("SW2:1,2")
|
||||
PORT_DIPSETTING( 0x0300, "40" )
|
||||
PORT_DIPSETTING( 0x0200, "50" )
|
||||
PORT_DIPSETTING( 0x0100, "60" )
|
||||
PORT_DIPSETTING( 0x0000, "70" )
|
||||
PORT_DIPNAME( 0x0c00, 0x0c00, "Period Length" ) PORT_DIPLOCATION("SW2:3,4")
|
||||
PORT_DIPSETTING( 0x0c00, "3 Minutes" )
|
||||
PORT_DIPSETTING( 0x0800, "4 Minutes" )
|
||||
PORT_DIPSETTING( 0x0400, "5 Minutes" )
|
||||
PORT_DIPSETTING( 0x0000, "6 Minutes" )
|
||||
PORT_DIPNAME( 0x6000, 0x6000, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
|
||||
PORT_DIPSETTING( 0x6000, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Difficult ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Very_Difficult ) )
|
||||
PORT_DIPNAME( 0x8000, 0x0000, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8")
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_MODIFY("DSW1/DSW2")
|
||||
PORT_DIPNAME( 0x0300, 0x0300, "Energy" ) PORT_DIPLOCATION("SW2:1,2")
|
||||
PORT_DIPSETTING( 0x0300, "40" )
|
||||
PORT_DIPSETTING( 0x0200, "50" )
|
||||
PORT_DIPSETTING( 0x0100, "60" )
|
||||
PORT_DIPSETTING( 0x0000, "70" )
|
||||
PORT_DIPNAME( 0x0c00, 0x0c00, "Period Length" ) PORT_DIPLOCATION("SW2:3,4")
|
||||
PORT_DIPSETTING( 0x0c00, "3 Minutes" )
|
||||
PORT_DIPSETTING( 0x0800, "4 Minutes" )
|
||||
PORT_DIPSETTING( 0x0400, "5 Minutes" )
|
||||
PORT_DIPSETTING( 0x0000, "6 Minutes" )
|
||||
PORT_DIPNAME( 0x6000, 0x6000, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
|
||||
PORT_DIPSETTING( 0x6000, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Difficult ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Very_Difficult ) )
|
||||
PORT_DIPNAME( 0x8000, 0x0000, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8")
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
INPUT_PORTS_END
|
||||
*/
|
||||
|
||||
|
@ -99,7 +99,7 @@
|
||||
|
||||
TMS9980A memory map:
|
||||
|
||||
|
||||
|
||||
0000-0003 ---> Reset
|
||||
0004-0007 ---> Level 1
|
||||
0008-000B ---> Level 2
|
||||
@ -164,23 +164,23 @@
|
||||
- Data lines are clearly inverted (Q1-Q8 --> D7-D0).
|
||||
|
||||
- Address lines are scrambled:
|
||||
|
||||
CPU pin device pin 2532
|
||||
------------------------------
|
||||
A13 - (02)SN74LS367(03) - A00 \
|
||||
A12 - (04)SN74LS367(05) - A01 |
|
||||
A11 - (10)SN74LS367(09) - A02 > Passing through buffers.
|
||||
A10 - (12)SN74LS367(11) - A03 |
|
||||
A09 - (14)SN74LS367(13) - A04 /
|
||||
|
||||
CPU pin device pin 2532
|
||||
------------------------------
|
||||
A13 - (02)SN74LS367(03) - A00 \
|
||||
A12 - (04)SN74LS367(05) - A01 |
|
||||
A11 - (10)SN74LS367(09) - A02 > Passing through buffers.
|
||||
A10 - (12)SN74LS367(11) - A03 |
|
||||
A09 - (14)SN74LS367(13) - A04 /
|
||||
A08 --------------------- A05
|
||||
A07 --------------------- A06
|
||||
A06 --------------------- A07
|
||||
A05 --------------------- A08
|
||||
A04 --------------------- A09
|
||||
A03 --------------------- A10
|
||||
A02 - (01)SN74LS138 \
|
||||
A01 - (02)SN74LS138 > 8 demuxed lines...
|
||||
A00 - (03)SN74LS138 /
|
||||
A02 - (01)SN74LS138 \
|
||||
A01 - (02)SN74LS138 > 8 demuxed lines...
|
||||
A00 - (03)SN74LS138 /
|
||||
|
||||
|
||||
*******************************************************************************
|
||||
@ -275,7 +275,7 @@ static PALETTE_INIT( tmspoker )
|
||||
|
||||
//static WRITE8_HANDLER( debug_w )
|
||||
//{
|
||||
// popmessage("written : %02X", data);
|
||||
// popmessage("written : %02X", data);
|
||||
//}
|
||||
|
||||
static INTERRUPT_GEN( tmspoker_interrupt )
|
||||
@ -563,7 +563,7 @@ static MACHINE_CONFIG_START( tmspoker, tmspoker_state )
|
||||
MCFG_CPU_IO_MAP(tmspoker_cru_map)
|
||||
MCFG_CPU_VBLANK_INT("screen", tmspoker_interrupt)
|
||||
|
||||
// MCFG_NVRAM_HANDLER(generic_0fill)
|
||||
// MCFG_NVRAM_HANDLER(generic_0fill)
|
||||
MCFG_MACHINE_START(tmspoker)
|
||||
MCFG_MACHINE_RESET(tmspoker)
|
||||
|
||||
@ -623,20 +623,20 @@ static DRIVER_INIT( bus )
|
||||
|
||||
/* still need to decode the addressing lines */
|
||||
/* text found in the ROM (A at 6, B at 8, etc: consistent with gfx rom byte offsets) suggests
|
||||
that the lower address lines are good already:
|
||||
that the lower address lines are good already:
|
||||
|
||||
ROM offset TEXT
|
||||
-----------------------
|
||||
$0914-$0919 POINTS
|
||||
$091e-$0920 BET
|
||||
$0924-$0927 GAME
|
||||
$092c-$092f OVER
|
||||
$0934-$0938 RESET
|
||||
$093c-$0941 WINNER
|
||||
$0946-$0949 TEST
|
||||
ROM offset TEXT
|
||||
-----------------------
|
||||
$0914-$0919 POINTS
|
||||
$091e-$0920 BET
|
||||
$0924-$0927 GAME
|
||||
$092c-$092f OVER
|
||||
$0934-$0938 RESET
|
||||
$093c-$0941 WINNER
|
||||
$0946-$0949 TEST
|
||||
|
||||
the same 53 bytes blob of data ("POINTS" to "TEST", text control codes included) is also located at offset $190c-$1941
|
||||
*/
|
||||
the same 53 bytes blob of data ("POINTS" to "TEST", text control codes included) is also located at offset $190c-$1941
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Triforce Skeleton
|
||||
-- split from Naomi.c
|
||||
|
||||
|
||||
Triforce uses
|
||||
|
||||
a stock Gamecube motherboard with custom Bios
|
||||
@ -396,11 +396,11 @@ Notes:
|
||||
J8 - 3-pin Fan Connector
|
||||
J9 - 4-pin Namco Audio Connector (unused)
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Note: "Type 3" Triforce uploads GD-ROM firmware to a MIPS processor which is DES encrypted (same as the GD images).
|
||||
The key is 0x00 0x22 0x44 0x66 0x88 0xaa 0xcc 0xee (http://debugmo.de/2010/12/the-last-piece/).
|
||||
|
||||
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
|
@ -208,144 +208,144 @@ An additional control PCB is used for Mocap Golf for the golf club sensor. It co
|
||||
|
||||
IRQs:
|
||||
|
||||
IRQ0: ??? (Task 4)
|
||||
IRQ0: ??? (Task 4)
|
||||
IRQ1: unused
|
||||
IRQ2: ??? Possibly UART? Accesses registers at 0xffe00008...f
|
||||
IRQ3: ??? (Task 5, sound?)
|
||||
IRQ4: Voodoo3 Currently only for User Interrupt Command, maybe a more extensive handler gets installed later?
|
||||
|
||||
I2C: ??? (no task switch) what drives this? network? U13 (ADC838) test fails if I2C doesn't work
|
||||
IRQ2: ??? Possibly UART? Accesses registers at 0xffe00008...f
|
||||
IRQ3: ??? (Task 5, sound?)
|
||||
IRQ4: Voodoo3 Currently only for User Interrupt Command, maybe a more extensive handler gets installed later?
|
||||
|
||||
I2C: ??? (no task switch) what drives this? network? U13 (ADC838) test fails if I2C doesn't work
|
||||
DMA0: unused
|
||||
DMA1: unused
|
||||
IIVPR3: unused
|
||||
|
||||
|
||||
Memory:
|
||||
|
||||
|
||||
0x000001E0: Current task
|
||||
0x000001E1: Current FPU task
|
||||
0x000001E4: Scheduled tasks bitvector (bit 31 = task0, etc.)
|
||||
0x00000A00...BFF: Task structures
|
||||
0x00-03: unknown
|
||||
0x04: unknown
|
||||
0x05: if non-zero, this task uses FPU
|
||||
0x06-07: unknown
|
||||
0x08: unknown mem pointer, task stack pointer?
|
||||
0x0c: pointer to task PC (also top of stack?)
|
||||
|
||||
|
||||
0x00000310: Global timer 0 IRQ handler
|
||||
0x00000320: Global timer 1 IRQ handler
|
||||
0x00000330: Global timer 2 IRQ handler
|
||||
0x00000340: Global timer 3 IRQ handler
|
||||
0x00000350: IRQ0 handler
|
||||
0x00000360: IRQ1 handler
|
||||
0x00000370: IRQ2 handler
|
||||
0x00000380: IRQ3 handler
|
||||
0x00000390: IRQ4 handler
|
||||
0x000003a0: I2C IRQ handler
|
||||
0x000003b0: DMA0 IRQ handler
|
||||
0x000003c0: DMA1 IRQ handler
|
||||
0x000003d0: Message Unit IRQ handler
|
||||
|
||||
0x000004e4: Global timer 0 IRQ handler function ptr
|
||||
0x000004e8: Global timer 1 IRQ handler function ptr
|
||||
0x000004ec: Global timer 2 IRQ handler function ptr
|
||||
0x000004f0: Global timer 3 IRQ handler function ptr
|
||||
0x00-03: unknown
|
||||
0x04: unknown
|
||||
0x05: if non-zero, this task uses FPU
|
||||
0x06-07: unknown
|
||||
0x08: unknown mem pointer, task stack pointer?
|
||||
0x0c: pointer to task PC (also top of stack?)
|
||||
|
||||
|
||||
IRQ0: Vector 0x0004e020 Stack 0x000d4fa4
|
||||
IRQ1: Vector 0x0000a5b8 Stack 0x0001323c (dummy)
|
||||
IRQ2: Vector 0x000229bc Stack 0x000d4fa4
|
||||
IRQ3: Vector 0x006a02f4 Stack 0x006afeb0
|
||||
IRQ4: Vector 0x0068c354 Stack 0x0068cc54
|
||||
I2C: Vector 0x00023138 Stack 0x000d4fa4
|
||||
0x00000310: Global timer 0 IRQ handler
|
||||
0x00000320: Global timer 1 IRQ handler
|
||||
0x00000330: Global timer 2 IRQ handler
|
||||
0x00000340: Global timer 3 IRQ handler
|
||||
0x00000350: IRQ0 handler
|
||||
0x00000360: IRQ1 handler
|
||||
0x00000370: IRQ2 handler
|
||||
0x00000380: IRQ3 handler
|
||||
0x00000390: IRQ4 handler
|
||||
0x000003a0: I2C IRQ handler
|
||||
0x000003b0: DMA0 IRQ handler
|
||||
0x000003c0: DMA1 IRQ handler
|
||||
0x000003d0: Message Unit IRQ handler
|
||||
|
||||
0x000004e4: Global timer 0 IRQ handler function ptr
|
||||
0x000004e8: Global timer 1 IRQ handler function ptr
|
||||
0x000004ec: Global timer 2 IRQ handler function ptr
|
||||
0x000004f0: Global timer 3 IRQ handler function ptr
|
||||
|
||||
|
||||
IRQ0: Vector 0x0004e020 Stack 0x000d4fa4
|
||||
IRQ1: Vector 0x0000a5b8 Stack 0x0001323c (dummy)
|
||||
IRQ2: Vector 0x000229bc Stack 0x000d4fa4
|
||||
IRQ3: Vector 0x006a02f4 Stack 0x006afeb0
|
||||
IRQ4: Vector 0x0068c354 Stack 0x0068cc54
|
||||
I2C: Vector 0x00023138 Stack 0x000d4fa4
|
||||
|
||||
|
||||
|
||||
Functions of interest:
|
||||
|
||||
|
||||
0x0000f7b4: SwitchTask()
|
||||
0x0000c130: ScheduleTask()
|
||||
0x00009d00: LoadProgram(): R3 = ptr to filename
|
||||
0x0000c130: ScheduleTask()
|
||||
0x00009d00: LoadProgram(): R3 = ptr to filename
|
||||
|
||||
|
||||
Inf loop at 0x00071014 -> 0x00093e14 -> 0x00093f6c
|
||||
Inf loop at 0x00071014 -> 0x00093e14 -> 0x00093f6c
|
||||
|
||||
0x24dcc(): (R3=0x21, R4=0xffffff, R5=0xff, R6=0x10, R7=0x10, R8=0xab50c, R9=0xab520)
|
||||
0xab50c = "G*%s BOOT SYSTEM"
|
||||
0xab520 = "A00"
|
||||
0x24dcc(): (R3=0x21, R4=0xffffff, R5=0xff, R6=0x10, R7=0x10, R8=0xab50c, R9=0xab520)
|
||||
0xab50c = "G*%s BOOT SYSTEM"
|
||||
0xab520 = "A00"
|
||||
|
||||
(R3=0x21, R4=0xffffff, R5=0xff, R6=0x10, R7=0x20, R8=0xab524, R9=0x7d0)
|
||||
0xab524 = "(C) %d KONAMI ALL RIGHTS RESERVED."
|
||||
(R3=0x21, R4=0xffffff, R5=0xff, R6=0x10, R7=0x20, R8=0xab524, R9=0x7d0)
|
||||
0xab524 = "(C) %d KONAMI ALL RIGHTS RESERVED."
|
||||
|
||||
(R3=0x30021, R4=0xffffff, R5=0xff, R6=0xc0, R7=0x60, R8=0xab610, R9=0xa8)
|
||||
0xab610 = "DEVICE CHECK"
|
||||
(R3=0x30021, R4=0xffffff, R5=0xff, R6=0xc0, R7=0x60, R8=0xab610, R9=0xa8)
|
||||
0xab610 = "DEVICE CHECK"
|
||||
|
||||
(R3=0x30021, R4=0xffffff, R5=0xff, R6=0xc0, R7=0x100, R8=0xab620, R9=0x10)
|
||||
0xab620 = "U13 ";
|
||||
(R3=0x30021, R4=0xffffff, R5=0xff, R6=0xc0, R7=0x100, R8=0xab620, R9=0x10)
|
||||
0xab620 = "U13 ";
|
||||
|
||||
(R3=0x30021, R4=0xff0000, R5=0xff, R6=0xc0, R7=0x100, R8=0xab628, R9=0xab4dc)
|
||||
0xab628 = " %s";
|
||||
0xab4dc = "BAD";
|
||||
(R3=0x30021, R4=0xff0000, R5=0xff, R6=0xc0, R7=0x100, R8=0xab628, R9=0xab4dc)
|
||||
0xab628 = " %s";
|
||||
0xab4dc = "BAD";
|
||||
|
||||
VOODOO.0.REG:fbzColorPath(3) write = 1C482405
|
||||
RGB = TREX color output
|
||||
Alpha = TREX alpha output
|
||||
VOODOO.0.REG:fbzColorPath(3) write = 1C482405
|
||||
RGB = TREX color output
|
||||
Alpha = TREX alpha output
|
||||
|
||||
VOODOO.0.REG:textureMode(3) write = 102414C0
|
||||
No perspective correction, point-sampling, clamp S/T.
|
||||
Texture format AI44
|
||||
tc_add_local
|
||||
tca_add_alocal
|
||||
|
||||
VOODOO.0.REG:tLOD(3) write = 01B821C6
|
||||
|
||||
VOODOO.0.REG:texBaseAddr(3) write = 00000000
|
||||
VOODOO.0.REG:texBaseAddr_1(3) write = 000C3100
|
||||
VOODOO.0.REG:texBaseAddr_2(3) write = FFFF8000
|
||||
VOODOO.0.REG:texBaseAddr_3_8(3) write = FFFFE000
|
||||
|
||||
VOODOO.0.REG:textureMode(2) write = 000004C0
|
||||
No perspective correction, point-sampling, clamp S/T.
|
||||
Texture format AI44
|
||||
|
||||
VOODOO.0.REG:tLOD(0) write = 01BC21C6
|
||||
|
||||
VOODOO.0.REG:texBaseAddr_3_8(2) write = FFFF7800
|
||||
|
||||
VOODOO.0.REG:fbzMode(3) write = 0002166B
|
||||
VOODOO.0.REG:textureMode(3) write = 102414C0
|
||||
No perspective correction, point-sampling, clamp S/T.
|
||||
Texture format AI44
|
||||
tc_add_local
|
||||
tca_add_alocal
|
||||
|
||||
VOODOO.0.REG:tLOD(3) write = 01B821C6
|
||||
|
||||
VOODOO.0.REG:texBaseAddr(3) write = 00000000
|
||||
VOODOO.0.REG:texBaseAddr_1(3) write = 000C3100
|
||||
VOODOO.0.REG:texBaseAddr_2(3) write = FFFF8000
|
||||
VOODOO.0.REG:texBaseAddr_3_8(3) write = FFFFE000
|
||||
|
||||
VOODOO.0.REG:textureMode(2) write = 000004C0
|
||||
No perspective correction, point-sampling, clamp S/T.
|
||||
Texture format AI44
|
||||
|
||||
VOODOO.0.REG:tLOD(0) write = 01BC21C6
|
||||
|
||||
VOODOO.0.REG:texBaseAddr_3_8(2) write = FFFF7800
|
||||
|
||||
VOODOO.0.REG:fbzMode(3) write = 0002166B
|
||||
|
||||
|
||||
|
||||
PPP2nd requires the following in idectrl.c:
|
||||
//ide->features[51*2+0] = 0;
|
||||
//ide->features[51*2+1] = 2;
|
||||
//ide->features[67*2+0] = 0xf0;
|
||||
//ide->features[67*2+1] = 0x00;
|
||||
PPP2nd requires the following in idectrl.c:
|
||||
//ide->features[51*2+0] = 0;
|
||||
//ide->features[51*2+1] = 2;
|
||||
//ide->features[67*2+0] = 0xf0;
|
||||
//ide->features[67*2+1] = 0x00;
|
||||
|
||||
MPC8240 requires: 603MMU
|
||||
MPC8240 requires: 603MMU
|
||||
|
||||
|
||||
|
||||
Game status:
|
||||
ppp2nd POST: "DIP SWITCH ERROR", "NO SECURITY ERROR"
|
||||
boxingm Goes to attract mode when ran with memory card check. Coins up.
|
||||
code1d,b Inf loop on blue screen (writes to I2C before)
|
||||
gticlub2 Inf loop on blue screen (writes to I2C before)
|
||||
gticlub2ea Doesn't boot: bad CHD?
|
||||
jpark3 POST?: Shows "Now loading..." then black screen (sets global timer 1 on EPIC...)
|
||||
mocapglf Inf loop on blue screen (writes to I2C before)
|
||||
mocapb,j POST: U13 bad
|
||||
p911,e,j,uc,kc POST: U13 bad
|
||||
p9112 POST: U13 bad
|
||||
popn9 Doesn't boot: bad CHD?
|
||||
sscopex/sogeki Inf loop on blue screen
|
||||
thrild2,a Attract mode with partial graphics. Coins up. Hangs in car selection screen.
|
||||
thrild2c Inf loop on blue screen
|
||||
tsurugi Goes to attract mode when ran with memory card check. Coins up.
|
||||
tsurugij No NVRAM
|
||||
wcombat Hangs on blue screen
|
||||
xtrial Attract mode. Hangs.
|
||||
mfightc,c Passes POST. Waits for network connection from main unit? Spams writes to 0xffe08000 (8-bit)
|
||||
Game status:
|
||||
ppp2nd POST: "DIP SWITCH ERROR", "NO SECURITY ERROR"
|
||||
boxingm Goes to attract mode when ran with memory card check. Coins up.
|
||||
code1d,b Inf loop on blue screen (writes to I2C before)
|
||||
gticlub2 Inf loop on blue screen (writes to I2C before)
|
||||
gticlub2ea Doesn't boot: bad CHD?
|
||||
jpark3 POST?: Shows "Now loading..." then black screen (sets global timer 1 on EPIC...)
|
||||
mocapglf Inf loop on blue screen (writes to I2C before)
|
||||
mocapb,j POST: U13 bad
|
||||
p911,e,j,uc,kc POST: U13 bad
|
||||
p9112 POST: U13 bad
|
||||
popn9 Doesn't boot: bad CHD?
|
||||
sscopex/sogeki Inf loop on blue screen
|
||||
thrild2,a Attract mode with partial graphics. Coins up. Hangs in car selection screen.
|
||||
thrild2c Inf loop on blue screen
|
||||
tsurugi Goes to attract mode when ran with memory card check. Coins up.
|
||||
tsurugij No NVRAM
|
||||
wcombat Hangs on blue screen
|
||||
xtrial Attract mode. Hangs.
|
||||
mfightc,c Passes POST. Waits for network connection from main unit? Spams writes to 0xffe08000 (8-bit)
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
@ -496,7 +496,7 @@ typedef struct
|
||||
int enable;
|
||||
emu_timer *timer;
|
||||
} MPC8240_GLOBAL_TIMER;
|
||||
|
||||
|
||||
|
||||
|
||||
typedef struct
|
||||
@ -516,7 +516,7 @@ typedef struct
|
||||
int i2c_state;
|
||||
|
||||
MPC8240_GLOBAL_TIMER global_timer[4];
|
||||
|
||||
|
||||
} MPC8240_EPIC;
|
||||
|
||||
// TODO: move to viper_state
|
||||
@ -619,7 +619,7 @@ static const char* epic_get_register_name(UINT32 reg)
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
// 0x60000 - 0x6FFFF
|
||||
case 0x6:
|
||||
{
|
||||
@ -629,7 +629,7 @@ static const char* epic_get_register_name(UINT32 reg)
|
||||
case 0x00a0: return "IACK";
|
||||
case 0x00b0: return "EOI";
|
||||
}
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -653,7 +653,7 @@ static TIMER_CALLBACK(epic_global_timer_callback)
|
||||
{
|
||||
epic.global_timer[timer_num].timer->reset();
|
||||
}
|
||||
|
||||
|
||||
mpc8240_interrupt(machine, MPC8240_GTIMER0_IRQ + timer_num);
|
||||
}
|
||||
|
||||
@ -712,7 +712,7 @@ static READ32_HANDLER( epic_r )
|
||||
{
|
||||
int reg;
|
||||
reg = offset * 4;
|
||||
|
||||
|
||||
if (reg != 0x600a0) // IACK is spammy
|
||||
{
|
||||
const char *regname = epic_get_register_name(reg);
|
||||
@ -783,13 +783,13 @@ static READ32_HANDLER( epic_r )
|
||||
|
||||
// generate interrupt if interrupt are enabled
|
||||
/*if (epic.i2c_cr & 0x40)
|
||||
{
|
||||
printf("I2C interrupt\n");
|
||||
mpc8240_interrupt(space->machine, MPC8240_I2C_IRQ);
|
||||
{
|
||||
printf("I2C interrupt\n");
|
||||
mpc8240_interrupt(space->machine, MPC8240_I2C_IRQ);
|
||||
|
||||
// set interrupt flag in status register
|
||||
epic.i2c_sr |= 0x2;
|
||||
}*/
|
||||
// set interrupt flag in status register
|
||||
epic.i2c_sr |= 0x2;
|
||||
}*/
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -859,8 +859,8 @@ static READ32_HANDLER( epic_r )
|
||||
value |= epic.irq[MPC8240_I2C_IRQ].priority << 16;
|
||||
value |= epic.irq[MPC8240_I2C_IRQ].vector;
|
||||
value |= epic.irq[MPC8240_I2C_IRQ].active ? 0x40000000 : 0;
|
||||
return value;
|
||||
}
|
||||
return value;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -897,7 +897,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
{
|
||||
int reg;
|
||||
reg = offset * 4;
|
||||
|
||||
|
||||
if (reg != 0x600b0) // interrupt clearing is spammy
|
||||
{
|
||||
const char *regname = epic_get_register_name(reg);
|
||||
@ -975,7 +975,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
{
|
||||
printf("I2C data transfer, data = %02X\n", data);
|
||||
epic.i2c_state = I2C_STATE_ADDRESS_CYCLE;
|
||||
|
||||
|
||||
// set transfer complete in status register
|
||||
epic.i2c_sr |= 0x80;
|
||||
|
||||
@ -1019,7 +1019,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
case 0x11e0: // Offset 0x411E0 - Global timer 3 vector/priority register
|
||||
{
|
||||
int timer_num = ((reg & 0xffff) - 0x1120) >> 6;
|
||||
|
||||
|
||||
epic.irq[MPC8240_GTIMER0_IRQ + timer_num].mask = (data & 0x80000000) ? 1 : 0;
|
||||
epic.irq[MPC8240_GTIMER0_IRQ + timer_num].priority = (data >> 16) & 0xf;
|
||||
epic.irq[MPC8240_GTIMER0_IRQ + timer_num].vector = data & 0xff;
|
||||
@ -1033,7 +1033,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
case 0x11f0: // Offset 0x411F0 - Global timer 3 destination register
|
||||
{
|
||||
int timer_num = ((reg & 0xffff) - 0x1130) >> 6;
|
||||
|
||||
|
||||
epic.irq[MPC8240_GTIMER0_IRQ + timer_num].destination = data & 0x1;
|
||||
|
||||
epic_update_interrupts(space->machine());
|
||||
@ -1043,7 +1043,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
case 0x1150: // Offset 0x41150 - Global timer 1 base count register
|
||||
case 0x1190: // Offset 0x41190 - Global timer 2 base count register
|
||||
case 0x11d0: // Offset 0x411d0 - Global timer 3 base count register
|
||||
{
|
||||
{
|
||||
int timer_num = ((reg & 0xffff) - 0x1110) >> 6;
|
||||
|
||||
epic.global_timer[timer_num].enable = (data & 0x80000000) ? 0 : 1;
|
||||
@ -1053,7 +1053,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
{
|
||||
attotime timer_duration = attotime::from_hz((SDRAM_CLOCK / 8) / epic.global_timer[timer_num].base_count);
|
||||
epic.global_timer[timer_num].timer->adjust(timer_duration, timer_num);
|
||||
|
||||
|
||||
#if VIPER_DEBUG_EPIC_TIMERS
|
||||
printf("EPIC GTIMER%d: next in %s\n", timer_num, attotime_string(timer_duration, 8));
|
||||
#endif
|
||||
@ -1062,7 +1062,7 @@ static WRITE32_HANDLER( epic_w )
|
||||
{
|
||||
epic.global_timer[timer_num].timer->reset();
|
||||
}
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -1106,8 +1106,8 @@ static WRITE32_HANDLER( epic_w )
|
||||
epic.irq[MPC8240_I2C_IRQ].vector = data & 0xff;
|
||||
|
||||
epic_update_interrupts(space->machine());
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 0x0210: // Offset 0x50210 - IRQ0 destination register
|
||||
case 0x0230: // Offset 0x50230 - IRQ1 destination register
|
||||
case 0x0250: // Offset 0x50250 - IRQ2 destination register
|
||||
@ -1136,8 +1136,8 @@ static WRITE32_HANDLER( epic_w )
|
||||
{
|
||||
epic.irq[MPC8240_I2C_IRQ].destination = data & 0x1;
|
||||
epic_update_interrupts(space->machine());
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -1197,7 +1197,7 @@ static void mpc8240_epic_reset(void)
|
||||
}
|
||||
|
||||
epic.active_irq = -1;
|
||||
|
||||
|
||||
// Init I2C
|
||||
epic.i2c_state = I2C_STATE_ADDRESS_CYCLE;
|
||||
}
|
||||
@ -1644,16 +1644,16 @@ static READ64_HANDLER(unk1_r)
|
||||
UINT64 reg = 0;
|
||||
reg |= (unk1_bit << 5);
|
||||
reg |= 0x40; // if this bit is 0, loads a disk copier instead
|
||||
//r |= 0x04; // screen flip
|
||||
//reg |= 0x08; // memory card check (1 = enable)
|
||||
//r |= 0x04; // screen flip
|
||||
//reg |= 0x08; // memory card check (1 = enable)
|
||||
|
||||
r |= reg << 40;
|
||||
|
||||
//r |= (UINT64)(unk1_bit << 5) << 40;
|
||||
//r |= U64(0x0000400000000000);
|
||||
|
||||
//r |= U64(0x0000040000000000); // screen flip
|
||||
//r |= U64(0x0000080000000000); // memory card check (1 = enable)
|
||||
//r |= U64(0x0000040000000000); // screen flip
|
||||
//r |= U64(0x0000080000000000); // memory card check (1 = enable)
|
||||
}
|
||||
if (ACCESSING_BITS_32_39)
|
||||
{
|
||||
@ -1668,9 +1668,9 @@ static READ64_HANDLER(unk1_r)
|
||||
if (ACCESSING_BITS_16_23)
|
||||
{
|
||||
UINT64 reg = 0;
|
||||
//reg |= 0x80; // memory card check for boxingm
|
||||
//reg |= 0x40; // memory card check for tsurugi
|
||||
reg |= 0x3f;
|
||||
//reg |= 0x80; // memory card check for boxingm
|
||||
//reg |= 0x40; // memory card check for tsurugi
|
||||
reg |= 0x3f;
|
||||
|
||||
r |= reg << 16;
|
||||
}
|
||||
@ -1777,7 +1777,7 @@ static void DS2430_w(int bit)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
static READ64_HANDLER(e70000_r)
|
||||
@ -1787,7 +1787,7 @@ static READ64_HANDLER(e70000_r)
|
||||
ds2430_bit_timer->reset();
|
||||
ds2430_bit_timer->start_time();
|
||||
|
||||
// printf("e70000_r: %08X (mask %08X%08X) at %08X\n", offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(space->cpu));
|
||||
// printf("e70000_r: %08X (mask %08X%08X) at %08X\n", offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(space->cpu));
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -1802,7 +1802,7 @@ static WRITE64_HANDLER(e70000_w)
|
||||
ds2430_timer->adjust(attotime::from_usec(40), 1); // presence pulse for 240 microsecs
|
||||
|
||||
unk1_bit = 1;
|
||||
// printf("e70000_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (UINT32)(data >> 32), (UINT32)data, offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(&space->device()));
|
||||
// printf("e70000_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (UINT32)(data >> 32), (UINT32)data, offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(&space->device()));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1817,8 +1817,8 @@ static WRITE64_HANDLER(e70000_w)
|
||||
else
|
||||
DS2430_w(1);
|
||||
|
||||
// const char *dtt = diff_time.as_string(8);
|
||||
// printf(" time %s\n", dtt);
|
||||
// const char *dtt = diff_time.as_string(8);
|
||||
// printf(" time %s\n", dtt);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1827,7 +1827,7 @@ static WRITE64_HANDLER(unk1a_w)
|
||||
{
|
||||
if (ACCESSING_BITS_56_63)
|
||||
{
|
||||
// printf("unk1a_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (UINT32)(data >> 32), (UINT32)data, offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(space->cpu));
|
||||
// printf("unk1a_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (UINT32)(data >> 32), (UINT32)data, offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(space->cpu));
|
||||
}
|
||||
}
|
||||
|
||||
@ -1836,7 +1836,7 @@ static WRITE64_HANDLER(unk1b_w)
|
||||
if (ACCESSING_BITS_56_63)
|
||||
{
|
||||
unk1_bit = 0;
|
||||
// printf("unk1b_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (UINT32)(data >> 32), (UINT32)data, offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(space->cpu));
|
||||
// printf("unk1b_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (UINT32)(data >> 32), (UINT32)data, offset, (UINT32)(mem_mask >> 32), (UINT32)mem_mask, cpu_get_pc(space->cpu));
|
||||
}
|
||||
}
|
||||
|
||||
@ -1899,16 +1899,16 @@ ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( viper )
|
||||
PORT_START("IN0")
|
||||
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // Shift down
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_SERVICE_NO_TOGGLE( 0x02, IP_ACTIVE_LOW) /* Test Button */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_7)
|
||||
|
||||
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
@ -348,7 +348,7 @@ void naomi_gdrom_board::find_file(const char *name, const UINT8 *dir_sector, UIN
|
||||
int fnlen = 0;
|
||||
if(!(dir_sector[pos+25] & 2)) {
|
||||
int len = dir_sector[pos+32];
|
||||
// printf("file: [%s]\n", &dir_sector[pos+33+fnlen]);
|
||||
// printf("file: [%s]\n", &dir_sector[pos+33+fnlen]);
|
||||
for(fnlen=0; fnlen < FILENAME_LENGTH; fnlen++) {
|
||||
if((dir_sector[pos+33+fnlen] == ';') && (name[fnlen] == 0)) {
|
||||
fnlen = FILENAME_LENGTH+1;
|
||||
@ -408,12 +408,12 @@ void naomi_gdrom_board::device_start()
|
||||
key = 0;
|
||||
for(int i=0;i<7;i++)
|
||||
key |= UINT64(picdata[0x780+i*2]) << (56 - i*8);
|
||||
|
||||
|
||||
key |= picdata[0x7a0];
|
||||
|
||||
} else {
|
||||
// use extracted pic data
|
||||
// printf("This PIC key hasn't been converted to a proper PIC binary yet!\n");
|
||||
// printf("This PIC key hasn't been converted to a proper PIC binary yet!\n");
|
||||
memcpy(name, picdata+33, 7);
|
||||
memcpy(name+7, picdata+25, 7);
|
||||
|
||||
|
@ -6056,7 +6056,8 @@ popn5 // GCA04 (c) 2000
|
||||
popn7 // not sure, doesn't boot yet (c) 2001
|
||||
|
||||
// PowerPC based Konami games
|
||||
bujutsu // G?645 (c)1997
|
||||
bujutsu // G?645 (c)1997
|
||||
racjamdx // G?676 (c)1997
|
||||
fiveside // GX479 (c)1995
|
||||
thunderh // GX680 (c)1996 Euro EAA
|
||||
thunderhu // GX680 (c)1996 USA UAA
|
||||
|
@ -82,7 +82,7 @@ WRITE16_HANDLER( m92_spritecontrol_w )
|
||||
state->m_sprite_buffer_busy = 0;
|
||||
|
||||
/* Pixel clock is 26.6666MHz (some boards 27MHz??), we have 0x800 bytes, or 0x400 words to copy from
|
||||
spriteram to the buffer. It seems safe to assume 1 word can be copied per clock. */
|
||||
spriteram to the buffer. It seems safe to assume 1 word can be copied per clock. */
|
||||
space->machine().scheduler().timer_set(attotime::from_hz(XTAL_26_66666MHz) * 0x400, FUNC(spritebuffer_callback));
|
||||
}
|
||||
// logerror("%04x: m92_spritecontrol_w %08x %08x\n",cpu_get_pc(&space->device()),offset,data);
|
||||
|
@ -585,44 +585,44 @@ static void poly3d_DrawQuad(running_machine &machine, bitmap_t *bitmap, int text
|
||||
|
||||
/* poly fog (not completely accurate yet)
|
||||
|
||||
czram contents, it's basically a big cz compare table
|
||||
czram contents, it's basically a big cz compare table
|
||||
|
||||
testmode:
|
||||
o_16 0 1 2 3 4 5 6 7 < > f8 f9 fa fb fc fd fe ff
|
||||
czram[0] = 1fff 1fdf 1fbf 1f9f 1f7f 1f5f 1f3f 1f1f .... 00ff 00df 00bf 009f 007f 005f 003f 001f
|
||||
czram[1] = 0000 0000 0000 0001 0002 0003 0005 0007 .... 1e45 1e83 1ec2 1f01 1f40 1f7f 1fbf 1fff
|
||||
czram[2] = 003f 007f 00be 00fd 013c 017b 01b9 01f7 .... 1ff9 1ffb 1ffc 1ffd 1ffe 1fff 1fff 1fff
|
||||
czram[3] = 0000 001f 003f 005f 007f 009f 00bf 00df .... 1eff 1f1f 1f3f 1f5f 1f7f 1f9f 1fbf 1fdf
|
||||
testmode:
|
||||
o_16 0 1 2 3 4 5 6 7 < > f8 f9 fa fb fc fd fe ff
|
||||
czram[0] = 1fff 1fdf 1fbf 1f9f 1f7f 1f5f 1f3f 1f1f .... 00ff 00df 00bf 009f 007f 005f 003f 001f
|
||||
czram[1] = 0000 0000 0000 0001 0002 0003 0005 0007 .... 1e45 1e83 1ec2 1f01 1f40 1f7f 1fbf 1fff
|
||||
czram[2] = 003f 007f 00be 00fd 013c 017b 01b9 01f7 .... 1ff9 1ffb 1ffc 1ffd 1ffe 1fff 1fff 1fff
|
||||
czram[3] = 0000 001f 003f 005f 007f 009f 00bf 00df .... 1eff 1f1f 1f3f 1f5f 1f7f 1f9f 1fbf 1fdf
|
||||
|
||||
airco22b demo mode, fog color: 76 9a c3
|
||||
o_16 0 1 2 3 4 5 6 7 < > f8 f9 fa fb fc fd fe ff
|
||||
czram[0] = 0000 00e4 0141 0189 01c6 01fb 022c 0258 .... 13bb 13c4 13cd 13d6 13df 13e7 13f0 13f9
|
||||
airco22b demo mode, fog color: 76 9a c3
|
||||
o_16 0 1 2 3 4 5 6 7 < > f8 f9 fa fb fc fd fe ff
|
||||
czram[0] = 0000 00e4 0141 0189 01c6 01fb 022c 0258 .... 13bb 13c4 13cd 13d6 13df 13e7 13f0 13f9
|
||||
|
||||
alpinerd (1st course), fog color: c8 c8 c8
|
||||
o_16 0 1 2 3 4 5 6 7 < > ec ed ee ef f0 f1 f2 - ff
|
||||
czram[0] = 00c8 00ca 00cc 00ce 00d0 00d2 00d4 00d6 .... 02a0 02a2 02a4 02a6 02a8 1fff 1fff ....
|
||||
alpinerd (1st course), fog color: c8 c8 c8
|
||||
o_16 0 1 2 3 4 5 6 7 < > ec ed ee ef f0 f1 f2 - ff
|
||||
czram[0] = 00c8 00ca 00cc 00ce 00d0 00d2 00d4 00d6 .... 02a0 02a2 02a4 02a6 02a8 1fff 1fff ....
|
||||
|
||||
alpinr2b (1st course), fog color: ff ff ff
|
||||
alpinr2b start of race: - gets gradually filled from left to right, initial contents filled with 1fff? - game should be foggy here
|
||||
o_16 0 1 2 3 4 5 6 7 < > 67 68 69 6a 6b 6c 6d - ff
|
||||
czram[0] = 01cd 01d7 01e1 01eb 01f5 01ff 0209 0213 .... 05d3 05dd 05e7 05f1 05fb 1fff 1fff ....
|
||||
other banks unused, zerofilled
|
||||
alpinr2b mid race: - gets gradually filled from right to left, initial contents above - game should not be foggy here
|
||||
o_16 0 1 2 3 4 5 6 7 < > ec ed ee ef f0 f1 f2 - ff
|
||||
czram[0] = 1ffe 1fff 1fff 1fff 1fff 1fff 1fff 1fff .... 1fff 1fff 1fff 1fff 1fff 1fff 1fff 1fff
|
||||
alpinr2b (1st course), fog color: ff ff ff
|
||||
alpinr2b start of race: - gets gradually filled from left to right, initial contents filled with 1fff? - game should be foggy here
|
||||
o_16 0 1 2 3 4 5 6 7 < > 67 68 69 6a 6b 6c 6d - ff
|
||||
czram[0] = 01cd 01d7 01e1 01eb 01f5 01ff 0209 0213 .... 05d3 05dd 05e7 05f1 05fb 1fff 1fff ....
|
||||
other banks unused, zerofilled
|
||||
alpinr2b mid race: - gets gradually filled from right to left, initial contents above - game should not be foggy here
|
||||
o_16 0 1 2 3 4 5 6 7 < > ec ed ee ef f0 f1 f2 - ff
|
||||
czram[0] = 1ffe 1fff 1fff 1fff 1fff 1fff 1fff 1fff .... 1fff 1fff 1fff 1fff 1fff 1fff 1fff 1fff
|
||||
|
||||
cybrcycc (1st course), fog color: 80 80 c0 - 2nd course has same cz table, but fog color 00 00 00
|
||||
o_16 0 1 2 3 4 5 6 7 < > d4 d5 d6 d7 d8 d9 da - ff
|
||||
czram[0] = 0000 0011 0021 0031 0041 0051 0060 0061 .... 04e0 04e4 04e7 04eb 04ee 1fff 1fff ....
|
||||
cybrcycc (1st course), fog color: 80 80 c0 - 2nd course has same cz table, but fog color 00 00 00
|
||||
o_16 0 1 2 3 4 5 6 7 < > d4 d5 d6 d7 d8 d9 da - ff
|
||||
czram[0] = 0000 0011 0021 0031 0041 0051 0060 0061 .... 04e0 04e4 04e7 04eb 04ee 1fff 1fff ....
|
||||
|
||||
tokyowar, fog color: 80 c0 ff - it uses cztype 1 too by accident? (becomes fogfactor 0)
|
||||
o_16 0 1 2 3 4 5 6 7 < > f8 f9 fa fb fc fd fe ff
|
||||
czram[0] = 0000 01c5 0244 029f 02e7 0325 035b 038b .... 0eaf 0ec7 0ee0 0efc 0f1b 0f3f 0f6a 0faa
|
||||
czram[1] = 0000 0000 0000 0000 0000 0000 0000 0000 .... 0000 0000 0000 0000 0000 0000 0000 0000
|
||||
czram[2] = 0000 0000 0000 0000 0000 0000 0000 0000 .... 0000 0000 0000 0000 0000 0000 0000 0000
|
||||
czram[3] = 0000 00e8 0191 0206 0265 02b7 0301 0345 .... 1c7e 1cbc 1d00 1d4a 1d9c 1dfb 1e70 1f19
|
||||
tokyowar, fog color: 80 c0 ff - it uses cztype 1 too by accident? (becomes fogfactor 0)
|
||||
o_16 0 1 2 3 4 5 6 7 < > f8 f9 fa fb fc fd fe ff
|
||||
czram[0] = 0000 01c5 0244 029f 02e7 0325 035b 038b .... 0eaf 0ec7 0ee0 0efc 0f1b 0f3f 0f6a 0faa
|
||||
czram[1] = 0000 0000 0000 0000 0000 0000 0000 0000 .... 0000 0000 0000 0000 0000 0000 0000 0000
|
||||
czram[2] = 0000 0000 0000 0000 0000 0000 0000 0000 .... 0000 0000 0000 0000 0000 0000 0000 0000
|
||||
czram[3] = 0000 00e8 0191 0206 0265 02b7 0301 0345 .... 1c7e 1cbc 1d00 1d4a 1d9c 1dfb 1e70 1f19
|
||||
|
||||
*/
|
||||
*/
|
||||
|
||||
/* czattr:
|
||||
0 2 4 6 8 a c e
|
||||
@ -645,7 +645,7 @@ static void poly3d_DrawQuad(running_machine &machine, bitmap_t *bitmap, int text
|
||||
0000 0000 0000 0000 4455 0000 000a 0000 // alpinr2b
|
||||
8001 8001 0000 0000 1111 0000 5555 0000 // aquajet (reg 8 is either 1111 or 5555, reg c is usually interlaced)
|
||||
0000 0000 0000 0000 5554 0000 0000 0000 // tokyowar
|
||||
*/
|
||||
*/
|
||||
if (~color & 0x80)
|
||||
{
|
||||
int cztype = flags&3;
|
||||
@ -1500,41 +1500,41 @@ DrawSpritesHelper(
|
||||
for( int i=0; i<num_sprites; i++ )
|
||||
{
|
||||
/*
|
||||
pSource[0]
|
||||
xxxx.xxxx.xxxx.xxxx | ----.----.----.---- x pos
|
||||
----.----.----.---- | xxxx.xxxx.xxxx.xxxx y pos
|
||||
pSource[0]
|
||||
xxxx.xxxx.xxxx.xxxx | ----.----.----.---- x pos
|
||||
----.----.----.---- | xxxx.xxxx.xxxx.xxxx y pos
|
||||
|
||||
pSource[1]
|
||||
xxxx.xxxx.xxxx.xxxx | ----.----.----.---- x size
|
||||
----.----.----.---- | xxxx.xxxx.xxxx.xxxx y size
|
||||
pSource[1]
|
||||
xxxx.xxxx.xxxx.xxxx | ----.----.----.---- x size
|
||||
----.----.----.---- | xxxx.xxxx.xxxx.xxxx y size
|
||||
|
||||
pSource[2]
|
||||
xxxx.x---.----.---- | ----.----.----.---- no function
|
||||
----.-xxx.----.---- | ----.----.----.---- clip target
|
||||
----.----.xxxx.xxxx | ----.----.----.---- linktype
|
||||
----.----.----.---- | xxxx.xx--.----.---- no function(?) - set in airco22b
|
||||
----.----.----.---- | ----.--x-.----.---- right justify
|
||||
----.----.----.---- | ----.---x.----.---- bottom justify
|
||||
----.----.----.---- | ----.----.x---.---- flipx
|
||||
----.----.----.---- | ----.----.-xxx.---- numcols
|
||||
----.----.----.---- | ----.----.----.x--- flipy
|
||||
----.----.----.---- | ----.----.----.-xxx numrows
|
||||
pSource[2]
|
||||
xxxx.x---.----.---- | ----.----.----.---- no function
|
||||
----.-xxx.----.---- | ----.----.----.---- clip target
|
||||
----.----.xxxx.xxxx | ----.----.----.---- linktype
|
||||
----.----.----.---- | xxxx.xx--.----.---- no function(?) - set in airco22b
|
||||
----.----.----.---- | ----.--x-.----.---- right justify
|
||||
----.----.----.---- | ----.---x.----.---- bottom justify
|
||||
----.----.----.---- | ----.----.x---.---- flipx
|
||||
----.----.----.---- | ----.----.-xxx.---- numcols
|
||||
----.----.----.---- | ----.----.----.x--- flipy
|
||||
----.----.----.---- | ----.----.----.-xxx numrows
|
||||
|
||||
pSource[3]
|
||||
xxxx.xxxx.xxxx.xxxx | ----.----.----.---- tile number
|
||||
----.----.----.---- | xxxx.xxxx.----.---- translucency
|
||||
----.----.----.---- | ----.----.xxxx.xxxx no function(?) - set in timecris
|
||||
pSource[3]
|
||||
xxxx.xxxx.xxxx.xxxx | ----.----.----.---- tile number
|
||||
----.----.----.---- | xxxx.xxxx.----.---- translucency
|
||||
----.----.----.---- | ----.----.xxxx.xxxx no function(?) - set in timecris
|
||||
|
||||
pPal[0]
|
||||
xxxx.xxxx.----.---- | ----.----.----.---- no function
|
||||
----.----.xxxx.xxxx | xxxx.xxxx.xxxx.xxxx z pos
|
||||
pPal[0]
|
||||
xxxx.xxxx.----.---- | ----.----.----.---- no function
|
||||
----.----.xxxx.xxxx | xxxx.xxxx.xxxx.xxxx z pos
|
||||
|
||||
pPal[1]
|
||||
xxxx.xxxx.----.---- | ----.----.----.---- no function
|
||||
----.----.x---.---- | ----.----.----.---- cz enable
|
||||
----.----.-xxx.xxxx | ----.----.----.---- color
|
||||
----.----.----.---- | xxxx.xxxx.----.---- no function(?) - set in airco22b, propcycl
|
||||
----.----.----.---- | ----.----.xxxx.xxxx cz factor (fog aka depth cueing)
|
||||
pPal[1]
|
||||
xxxx.xxxx.----.---- | ----.----.----.---- no function
|
||||
----.----.x---.---- | ----.----.----.---- cz enable
|
||||
----.----.-xxx.xxxx | ----.----.----.---- color
|
||||
----.----.----.---- | xxxx.xxxx.----.---- no function(?) - set in airco22b, propcycl
|
||||
----.----.----.---- | ----.----.xxxx.xxxx cz factor (fog aka depth cueing)
|
||||
*/
|
||||
int xpos = (pSource[0]>>16) - deltax;
|
||||
int ypos = (pSource[0]&0xffff) - deltay;
|
||||
@ -2708,7 +2708,7 @@ SCREEN_UPDATE( namcos22s )
|
||||
}
|
||||
#endif
|
||||
|
||||
// popmessage("%08X %08X %08X %08X",state->m_czattr[0],state->m_czattr[1],state->m_czattr[2],state->m_czattr[3]);
|
||||
// popmessage("%08X %08X %08X %08X",state->m_czattr[0],state->m_czattr[1],state->m_czattr[2],state->m_czattr[3]);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -448,8 +448,8 @@ SCREEN_UPDATE( realpunc )
|
||||
int base = (hd63484_regs_r(hd63484, 0xcc/2, 0xffff) << 16) + hd63484_regs_r(hd63484, 0xce/2, 0xffff);
|
||||
int stride = hd63484_regs_r(hd63484, 0xca/2, 0xffff);
|
||||
|
||||
// scrollx = taitob_scroll[0];
|
||||
// scrolly = taitob_scroll[1];
|
||||
// scrollx = taitob_scroll[0];
|
||||
// scrolly = taitob_scroll[1];
|
||||
|
||||
for (y = 0; y <= cliprect->max_y; y++)
|
||||
{
|
||||
|
@ -867,7 +867,7 @@ bitmap_t *windows_osd_interface::font_get_bitmap(osd_font font, unicode_char chn
|
||||
info.bmiHeader.biClrUsed = 0;
|
||||
info.bmiHeader.biClrImportant = 0;
|
||||
RGBQUAD col1 = info.bmiColors[0];
|
||||
RGBQUAD col2 = info.bmiColors[1];
|
||||
RGBQUAD col2 = info.bmiColors[1];
|
||||
col1.rgbBlue = col1.rgbGreen = col1.rgbRed = 0x00;
|
||||
col2.rgbBlue = col2.rgbGreen = col2.rgbRed = 0xff;
|
||||
|
||||
|
@ -38,4 +38,4 @@
|
||||
***************************************************************************/
|
||||
|
||||
extern const char build_version[];
|
||||
const char build_version[] = "0.143u7 ("__DATE__")";
|
||||
const char build_version[] = "0.143u8 ("__DATE__")";
|
||||
|
Loading…
Reference in New Issue
Block a user