mirror of
https://github.com/holub/mame
synced 2025-06-01 02:21:48 +03:00
Cleanups and version bump.
This commit is contained in:
parent
c80c4730c4
commit
673ca66750
@ -38,18 +38,18 @@
|
||||
Add more TODOs. Fixed some unsaved savestate related stuff.
|
||||
|
||||
TODO: * Implement a function for setting stereo regs for the game gear.
|
||||
Requires making the core support both mono and stereo, and have
|
||||
a select register which determines which channels go where.
|
||||
* Implement the TMS9919 and SN94624, which are earlier versions,
|
||||
possibly lacking the /8 clock divider, of the SN76489, and hence
|
||||
would have a max clock of 500Khz and 4 clocks per sample, as
|
||||
opposed to max of 4Mhz and 32 clocks per sample on the SN76489A
|
||||
* Implement the T6W28; has registers in a weird order, needs writes
|
||||
to be 'sanitized' first. Also is stereo, similar to game gear.
|
||||
* Implement the NCR 7496; Is probably 100% compatible with SN76496,
|
||||
but the whitenoise taps could be different. Needs someone with a
|
||||
Tandy 1200 or whatever it was which uses this to run some tests.
|
||||
* Factor out common code so that the SAA1099 can share some code.
|
||||
Requires making the core support both mono and stereo, and have
|
||||
a select register which determines which channels go where.
|
||||
* Implement the TMS9919 and SN94624, which are earlier versions,
|
||||
possibly lacking the /8 clock divider, of the SN76489, and hence
|
||||
would have a max clock of 500Khz and 4 clocks per sample, as
|
||||
opposed to max of 4Mhz and 32 clocks per sample on the SN76489A
|
||||
* Implement the T6W28; has registers in a weird order, needs writes
|
||||
to be 'sanitized' first. Also is stereo, similar to game gear.
|
||||
* Implement the NCR 7496; Is probably 100% compatible with SN76496,
|
||||
but the whitenoise taps could be different. Needs someone with a
|
||||
Tandy 1200 or whatever it was which uses this to run some tests.
|
||||
* Factor out common code so that the SAA1099 can share some code.
|
||||
***************************************************************************/
|
||||
|
||||
#include "sndintrf.h"
|
||||
@ -179,15 +179,15 @@ static STREAM_UPDATE( SN76496Update )
|
||||
|
||||
|
||||
/* If the volume is 0, increase the counter; this is more or less
|
||||
a speedup hack for when silence is to be output */
|
||||
a speedup hack for when silence is to be output */
|
||||
for (i = 0;i < 4;i++)
|
||||
{
|
||||
if (R->Volume[i] == 0)
|
||||
{
|
||||
/* note that I do count += samples, NOT count = samples + 1.
|
||||
You might think it's the same since the volume is 0, but doing
|
||||
the latter could cause interferencies when the program is
|
||||
rapidly modulating the volume. */
|
||||
You might think it's the same since the volume is 0, but doing
|
||||
the latter could cause interferencies when the program is
|
||||
rapidly modulating the volume. */
|
||||
if (R->Count[i] <= samples*STEP) R->Count[i] += samples*STEP;
|
||||
}
|
||||
}
|
||||
@ -210,13 +210,13 @@ static STREAM_UPDATE( SN76496Update )
|
||||
if (R->Output[i]) vol[i] += R->Count[i];
|
||||
R->Count[i] -= STEP;
|
||||
/* Period[i] is the half period of the square wave. Here, in each
|
||||
loop I add Period[i] twice, so that at the end of the loop the
|
||||
square wave is in the same status (0 or 1) it was at the start.
|
||||
vol[i] is also incremented by Period[i], since the wave has been 1
|
||||
exactly half of the time, regardless of the initial position.
|
||||
If we exit the loop in the middle, Output[i] has to be inverted
|
||||
and vol[i] incremented only if the exit status of the square
|
||||
wave is 1. */
|
||||
loop I add Period[i] twice, so that at the end of the loop the
|
||||
square wave is in the same status (0 or 1) it was at the start.
|
||||
vol[i] is also incremented by Period[i], since the wave has been 1
|
||||
exactly half of the time, regardless of the initial position.
|
||||
If we exit the loop in the middle, Output[i] has to be inverted
|
||||
and vol[i] incremented only if the exit status of the square
|
||||
wave is 1. */
|
||||
while (R->Count[i] <= 0)
|
||||
{
|
||||
R->Count[i] += R->Period[i];
|
||||
|
@ -636,8 +636,8 @@ static ADDRESS_MAP_START( guwange_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0xd00010, 0xd00011) AM_READ_PORT("IN0") // Inputs
|
||||
AM_RANGE(0xd00010, 0xd00011) AM_WRITE(cave_eeprom_lsb_w) // EEPROM
|
||||
AM_RANGE(0xd00012, 0xd00013) AM_READ_PORT("IN1") // Inputs + EEPROM
|
||||
// AM_RANGE(0xd00012, 0xd00013) AM_WRITE(SMH_NOP) // ?
|
||||
// AM_RANGE(0xd00014, 0xd00015) AM_WRITE(SMH_NOP) // ? $800068 in dfeveron ? probably Watchdog
|
||||
// AM_RANGE(0xd00012, 0xd00013) AM_WRITE(SMH_NOP) // ?
|
||||
// AM_RANGE(0xd00014, 0xd00015) AM_WRITE(SMH_NOP) // ? $800068 in dfeveron ? probably Watchdog
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -653,7 +653,7 @@ static ADDRESS_MAP_START( hotdogst_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
/**/AM_RANGE(0x900000, 0x907fff) AM_RAM_WRITE(cave_vram_1_w) AM_BASE(&cave_vram_1) // Layer 1
|
||||
/**/AM_RANGE(0x980000, 0x987fff) AM_RAM_WRITE(cave_vram_2_w) AM_BASE(&cave_vram_2) // Layer 2
|
||||
AM_RANGE(0xa80000, 0xa80007) AM_READ(cave_irq_cause_r) // IRQ Cause
|
||||
// AM_RANGE(0xa8006e, 0xa8006f) AM_READ(soundlatch_ack_r) // From Sound CPU
|
||||
// AM_RANGE(0xa8006e, 0xa8006f) AM_READ(soundlatch_ack_r) // From Sound CPU
|
||||
AM_RANGE(0xa8006e, 0xa8006f) AM_WRITE(sound_cmd_w) // To Sound CPU
|
||||
AM_RANGE(0xa80000, 0xa8007f) AM_WRITE(SMH_RAM) AM_BASE(&cave_videoregs) // Video Regs
|
||||
/**/AM_RANGE(0xb00000, 0xb00005) AM_RAM AM_BASE(&cave_vctrl_0) // Layer 0 Control
|
||||
@ -737,17 +737,17 @@ static CUSTOM_INPUT( korokoro_hopper_r )
|
||||
|
||||
static ADDRESS_MAP_START( korokoro_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
|
||||
// AM_RANGE(0x100000, 0x107fff) AM_READ(SMH_RAM) // Layer 0
|
||||
// AM_RANGE(0x100000, 0x107fff) AM_READ(SMH_RAM) // Layer 0
|
||||
AM_RANGE(0x100000, 0x107fff) AM_WRITE(cave_vram_0_w) AM_BASE(&cave_vram_0) // Layer 0
|
||||
// AM_RANGE(0x140000, 0x140005) AM_READ(SMH_RAM) // Layer 0 Control
|
||||
// AM_RANGE(0x140000, 0x140005) AM_READ(SMH_RAM) // Layer 0 Control
|
||||
AM_RANGE(0x140000, 0x140005) AM_WRITE(SMH_RAM) AM_BASE(&cave_vctrl_0) // Layer 0 Control
|
||||
// AM_RANGE(0x180000, 0x187fff) AM_READ(SMH_RAM) // Sprites
|
||||
// AM_RANGE(0x180000, 0x187fff) AM_READ(SMH_RAM) // Sprites
|
||||
AM_RANGE(0x180000, 0x187fff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram16) AM_SIZE(&spriteram_size) // Sprites
|
||||
AM_RANGE(0x1c0000, 0x1c0007) AM_READ(cave_irq_cause_r) // IRQ Cause
|
||||
AM_RANGE(0x1c0000, 0x1c007f) AM_WRITE(SMH_RAM) AM_BASE(&cave_videoregs) // Video Regs
|
||||
// AM_RANGE(0x200000, 0x207fff) AM_READ(SMH_RAM) // Palette
|
||||
// AM_RANGE(0x200000, 0x207fff) AM_READ(SMH_RAM) // Palette
|
||||
AM_RANGE(0x200000, 0x207fff) AM_WRITE(SMH_RAM) AM_BASE(&paletteram16) AM_SIZE(&cave_paletteram_size) // Palette
|
||||
// AM_RANGE(0x240000, 0x240003) AM_DEVREAD8( "ymz", ymz280b_r, 0x00ff) // YMZ280
|
||||
// AM_RANGE(0x240000, 0x240003) AM_DEVREAD8( "ymz", ymz280b_r, 0x00ff) // YMZ280
|
||||
AM_RANGE(0x240000, 0x240003) AM_DEVWRITE8( "ymz", ymz280b_w, 0x00ff) // YMZ280
|
||||
AM_RANGE(0x280000, 0x280001) AM_READ_PORT("IN0") // Inputs + ???
|
||||
AM_RANGE(0x280002, 0x280003) AM_READ_PORT("IN1") // Inputs + EEPROM
|
||||
@ -1102,7 +1102,7 @@ static ADDRESS_MAP_START( pwrinst2_sound_portmap, ADDRESS_SPACE_IO, 8 )
|
||||
AM_RANGE(0x10, 0x17) AM_WRITE(NMK112_okibank_w) // Samples bank
|
||||
AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ym", ym2203_r, ym2203_w) //
|
||||
AM_RANGE(0x50, 0x50) AM_WRITE(soundlatch_ack_w) // To Main CPU
|
||||
// AM_RANGE(0x51, 0x51) AM_WRITE(SMH_NOP) // ?? volume
|
||||
// AM_RANGE(0x51, 0x51) AM_WRITE(SMH_NOP) // ?? volume
|
||||
AM_RANGE(0x80, 0x80) AM_WRITE(pwrinst2_rombank_w) // ROM bank
|
||||
AM_RANGE(0x60, 0x60) AM_READ(soundlatch_hi_r) // From Main CPU
|
||||
AM_RANGE(0x70, 0x70) AM_READ(soundlatch_lo_r) //
|
||||
|
@ -1582,7 +1582,7 @@ static ADDRESS_MAP_START( quiz365_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
|
||||
AM_RANGE(0x200c02, 0x200c03) AM_READ(quiz365_protection_r) // Protection
|
||||
AM_RANGE(0x200e0a, 0x200e0d) AM_WRITE(quiz365_protection_w) // Protection
|
||||
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ?
|
||||
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ?
|
||||
|
||||
AM_RANGE(0x300200, 0x300201) AM_WRITE(ddenlovr_select2_16_w)
|
||||
AM_RANGE(0x300202, 0x300203) AM_WRITE(quiz365_coincounter_w) // Coin Counters + more stuff written on startup
|
||||
@ -1642,7 +1642,7 @@ static ADDRESS_MAP_START( ddenlvrj_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
|
||||
|
||||
AM_RANGE(0x200000, 0x2003ff) AM_WRITE(ddenlovr_palette_w) // Palette
|
||||
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ? B0 on startup, then 00
|
||||
// AM_RANGE(0x201000, 0x2017ff) AM_WRITE(SMH_RAM) // ? B0 on startup, then 00
|
||||
|
||||
AM_RANGE(0x300040, 0x300047) AM_WRITE(ddenlovr16_palette_base_w)
|
||||
AM_RANGE(0x300048, 0x30004f) AM_WRITE(ddenlovr16_palette_mask_w)
|
||||
@ -1701,7 +1701,7 @@ static ADDRESS_MAP_START( ddenlvrk_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x200000, 0x200001) AM_READWRITE(ddenlvrk_protection2_r, ddenlvrk_protection2_w) AM_BASE(&ddenlvrk_protection2)
|
||||
|
||||
AM_RANGE(0xd00000, 0xd003ff) AM_WRITE(ddenlovr_palette_w) // Palette
|
||||
// AM_RANGE(0xd01000, 0xd017ff) SMH_RAM) // ? B0 on startup, then 00
|
||||
// AM_RANGE(0xd01000, 0xd017ff) SMH_RAM) // ? B0 on startup, then 00
|
||||
|
||||
AM_RANGE(0xe00040, 0xe00047) AM_WRITE(ddenlovr16_palette_base_w)
|
||||
AM_RANGE(0xe00048, 0xe0004f) AM_WRITE(ddenlovr16_palette_mask_w)
|
||||
@ -1739,7 +1739,7 @@ static ADDRESS_MAP_START( ddenlovr_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x300000, 0x300001) AM_DEVWRITE("oki", ddenlovr_oki_bank_w)
|
||||
|
||||
AM_RANGE(0xd00000, 0xd003ff) AM_WRITE(ddenlovr_palette_w) // Palette
|
||||
// AM_RANGE(0xd01000, 0xd017ff) SMH_RAM) // ? B0 on startup, then 00
|
||||
// AM_RANGE(0xd01000, 0xd017ff) SMH_RAM) // ? B0 on startup, then 00
|
||||
|
||||
AM_RANGE(0xe00040, 0xe00047) AM_WRITE(ddenlovr16_palette_base_w)
|
||||
AM_RANGE(0xe00048, 0xe0004f) AM_WRITE(ddenlovr16_palette_mask_w)
|
||||
@ -3141,7 +3141,7 @@ static ADDRESS_MAP_START( akamaru_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x624680, 0x624681) AM_READ(akamaru_protection1_r)
|
||||
|
||||
AM_RANGE(0xd00000, 0xd003ff) AM_WRITE(ddenlovr_palette_w) // Palette
|
||||
// AM_RANGE(0xd01000, 0xd017ff) AM_WRITE(SMH_RAM) // 0
|
||||
// AM_RANGE(0xd01000, 0xd017ff) AM_WRITE(SMH_RAM) // 0
|
||||
|
||||
AM_RANGE(0xe00040, 0xe00047) AM_WRITE(ddenlovr16_palette_base_w)
|
||||
AM_RANGE(0xe00048, 0xe0004f) AM_WRITE(ddenlovr16_palette_mask_w)
|
||||
|
@ -121,7 +121,7 @@ static ADDRESS_MAP_START( flkatck_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
|
||||
AM_RANGE(0x9000, 0x9000) AM_READWRITE(multiply_r, multiply_w) /* ??? */
|
||||
// AM_RANGE(0x9001, 0x9001) AM_RAM /* ??? */
|
||||
// AM_RANGE(0x9001, 0x9001) AM_RAM /* ??? */
|
||||
AM_RANGE(0x9004, 0x9004) AM_READNOP /* ??? */
|
||||
AM_RANGE(0x9006, 0x9006) AM_WRITENOP /* ??? */
|
||||
AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) /* soundlatch_r */
|
||||
|
@ -984,7 +984,7 @@ ROM_START( gigas ) /* From an actual Sega board 834-6167 with mc-8123: 317-5002
|
||||
|
||||
ROM_REGION( 0x0600, "proms", 0 ) /* not dumped yet; assumed to be the same */
|
||||
/* fill in which locations for each prom when redumping; the chips have
|
||||
* no labels, but are clearly located at 3a 3b 3c 3d 4a and 4d */
|
||||
* no labels, but are clearly located at 3a 3b 3c 3d 4a and 4d */
|
||||
ROM_LOAD( "1.pr", 0x0000, 0x0100, CRC(a784e71f) SHA1(1741ce98d719bad6cc5ea42337ef897f2435bbab) )
|
||||
ROM_LOAD( "6.pr", 0x0100, 0x0100, CRC(376df30c) SHA1(cc95920cd1c133da1becc7d92f4b187b56a90ec7) )
|
||||
ROM_LOAD( "5.pr", 0x0200, 0x0100, CRC(4edff5bd) SHA1(305efc7ad7f86635489a655e214e216ac02b904d) )
|
||||
|
@ -281,8 +281,8 @@ static ADDRESS_MAP_START( fuuki32_map, ADDRESS_SPACE_PROGRAM, 32 )
|
||||
/**/AM_RANGE(0x8e0000, 0x8e0003) AM_RAM AM_BASE(&fuuki32_priority) // Controls layer order
|
||||
|
||||
AM_RANGE(0x903fe0, 0x903fff) AM_READWRITE(snd_020_r, snd_020_w) // Shared with Z80
|
||||
// AM_RANGE(0x903fe0, 0x903fe3) AM_READ(fuuki32_sound_command_r) // Shared with Z80
|
||||
// AM_RANGE(0x903fe4, 0x903fff) AM_READ(SMH_RAM) // ??
|
||||
// AM_RANGE(0x903fe0, 0x903fe3) AM_READ(fuuki32_sound_command_r) // Shared with Z80
|
||||
// AM_RANGE(0x903fe4, 0x903fff) AM_READ(SMH_RAM) // ??
|
||||
|
||||
AM_RANGE(0xa00000, 0xa00003) AM_WRITE(SMH_RAM) AM_BASE(&fuuki32_tilebank)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -144,7 +144,7 @@ static ADDRESS_MAP_START( bigkarnk_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_w) AM_BASE(&gaelco_videoram) /* Video RAM */
|
||||
AM_RANGE(0x102000, 0x103fff) AM_RAM /* Screen RAM */
|
||||
AM_RANGE(0x108000, 0x108007) AM_WRITEONLY AM_BASE(&gaelco_vregs) /* Video Registers */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16) /* Palette */
|
||||
AM_RANGE(0x440000, 0x440fff) AM_RAM AM_BASE(&gaelco_spriteram) /* Sprite RAM */
|
||||
AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW1")
|
||||
@ -160,7 +160,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( bigkarnk_snd_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM /* RAM */
|
||||
AM_RANGE(0x0800, 0x0801) AM_DEVREADWRITE("oki", okim6295_r, okim6295_w) /* OKI6295 */
|
||||
// AM_RANGE(0x0900, 0x0900) AM_WRITENOP /* enable sound output? */
|
||||
// AM_RANGE(0x0900, 0x0900) AM_WRITENOP /* enable sound output? */
|
||||
AM_RANGE(0x0a00, 0x0a01) AM_DEVREADWRITE("ym", ym3812_r, ym3812_w) /* YM3812 */
|
||||
AM_RANGE(0x0b00, 0x0b00) AM_READ(soundlatch_r) /* Sound latch */
|
||||
AM_RANGE(0x0c00, 0xffff) AM_ROM /* ROM */
|
||||
@ -291,7 +291,7 @@ static ADDRESS_MAP_START( maniacsq_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_w) AM_BASE(&gaelco_videoram) /* Video RAM */
|
||||
AM_RANGE(0x102000, 0x103fff) AM_RAM /* Screen RAM */
|
||||
AM_RANGE(0x108000, 0x108007) AM_WRITE(SMH_RAM) AM_BASE(&gaelco_vregs) /* Video Registers */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16) /* Palette */
|
||||
AM_RANGE(0x440000, 0x440fff) AM_RAM AM_BASE(&gaelco_spriteram) /* Sprite RAM */
|
||||
AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW2")
|
||||
@ -572,7 +572,7 @@ static ADDRESS_MAP_START( squash_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_encrypted_w) AM_BASE(&gaelco_videoram) /* Video RAM */
|
||||
AM_RANGE(0x102000, 0x103fff) AM_RAM_WRITE(gaelco_encrypted_w) AM_BASE(&gaelco_screen) /* Screen RAM */
|
||||
AM_RANGE(0x108000, 0x108007) AM_WRITE(SMH_RAM) AM_BASE(&gaelco_vregs) /* Video Registers */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16) /* Palette */
|
||||
AM_RANGE(0x440000, 0x440fff) AM_RAM AM_BASE(&gaelco_spriteram) /* Sprite RAM */
|
||||
AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW2")
|
||||
@ -727,7 +727,7 @@ static ADDRESS_MAP_START( thoop_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(thoop_vram_encrypted_w) AM_BASE(&gaelco_videoram) /* Video RAM */
|
||||
AM_RANGE(0x102000, 0x103fff) AM_RAM_WRITE(thoop_encrypted_w) AM_BASE(&gaelco_screen) /* Screen RAM */
|
||||
AM_RANGE(0x108000, 0x108007) AM_WRITE(SMH_RAM) AM_BASE(&gaelco_vregs) /* Video Registers */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
// AM_RANGE(0x10800c, 0x10800d) AM_WRITE(watchdog_reset_w) /* INT 6 ACK/Watchdog timer */
|
||||
AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16) /* Palette */
|
||||
AM_RANGE(0x440000, 0x440fff) AM_RAM AM_BASE(&gaelco_spriteram) /* Sprite RAM */
|
||||
AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW2")
|
||||
|
@ -241,7 +241,7 @@ static WRITE8_HANDLER( galpani2_mcu_nmi1_w ) //driven by CPU1's int5 ISR
|
||||
//Triggered from 'maincpu' (0000741E),from here on...driven by int5, even if there's no command
|
||||
static UINT16 old_mcu_nmi1 = 0;
|
||||
if ( (data & 1) && !(old_mcu_nmi1 & 1) ) galpani2_mcu_nmi1(space->machine);
|
||||
//if ( (data & 0x10) && !(old_mcu_nmi1 & 0x10) ) galpani2_mcu_nmi1(space->machine);
|
||||
//if ( (data & 0x10) && !(old_mcu_nmi1 & 0x10) ) galpani2_mcu_nmi1(space->machine);
|
||||
//alternate line, same function?
|
||||
old_mcu_nmi1 = data;
|
||||
}
|
||||
@ -368,7 +368,7 @@ static ADDRESS_MAP_START( galpani2_mem2, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x680000, 0x680001) AM_WRITENOP // ? 0 at startup only
|
||||
AM_RANGE(0x6c0000, 0x6c0001) AM_WRITENOP // ? 0 at startup only
|
||||
AM_RANGE(0x700000, 0x700001) AM_WRITENOP // Watchdog
|
||||
// AM_RANGE(0x740000, 0x740001) AM_WRITENOP // ? Reset mcu
|
||||
// AM_RANGE(0x740000, 0x740001) AM_WRITENOP // ? Reset mcu
|
||||
AM_RANGE(0x780000, 0x780001) AM_WRITE8(galpani2_mcu_nmi2_w, 0x00ff) // ? 0 -> 1 -> 0 (lev 5)
|
||||
AM_RANGE(0x7c0000, 0x7c0001) AM_WRITE(SMH_RAM) AM_BASE(&galpani2_rombank ) // Rom Bank
|
||||
AM_RANGE(0x800000, 0xffffff) AM_READ(galpani2_bankedrom_r ) // Banked ROM
|
||||
|
@ -328,7 +328,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(gaplus_videoram_r, gaplus_videoram_w) /* tilemap RAM (shared with CPU #1) */
|
||||
AM_RANGE(0x0800, 0x1fff) AM_READWRITE(gaplus_spriteram_r, gaplus_spriteram_w) /* shared RAM with CPU #1 */
|
||||
// AM_RANGE(0x500f, 0x500f) AM_WRITENOP /* ??? written 256 times on startup */
|
||||
// AM_RANGE(0x500f, 0x500f) AM_WRITENOP /* ??? written 256 times on startup */
|
||||
AM_RANGE(0x6000, 0x6fff) AM_WRITE(gaplus_irq_2_ctrl_w) /* IRQ 2 control */
|
||||
AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */
|
||||
ADDRESS_MAP_END
|
||||
|
@ -191,8 +191,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static WRITE8_HANDLER( ncb3_port81_w )
|
||||
{
|
||||
// if (data!=0x00)
|
||||
// popmessage("ncb3_port81_w %02x\n",data);
|
||||
// if (data!=0x00)
|
||||
// popmessage("ncb3_port81_w %02x\n",data);
|
||||
}
|
||||
|
||||
// where is colour bank for 'all blue' in attract?
|
||||
|
@ -629,7 +629,7 @@ static READ32_HANDLER( hng64_sysregs_r )
|
||||
mame_get_base_datetime(space->machine, &systime);
|
||||
|
||||
//if(((offset*4) & 0xff00) == 0x2100)
|
||||
// printf("HNG64 port read (PC=%08x) 0x%08x\n", cpu_get_pc(space->cpu),offset*4);
|
||||
// printf("HNG64 port read (PC=%08x) 0x%08x\n", cpu_get_pc(space->cpu),offset*4);
|
||||
|
||||
switch(offset*4)
|
||||
{
|
||||
|
@ -711,7 +711,7 @@ RAMs
|
||||
|
||||
PLDs
|
||||
2x ispLSI10032E-70LJ
|
||||
Note 1x 28x2 edge connector
|
||||
Note 1x 28x2 edge connector
|
||||
1x 14 legs connector
|
||||
1x RS232 connector
|
||||
1x trimmer (volume)
|
||||
|
@ -12,11 +12,11 @@ TODO:
|
||||
==============================================================================================
|
||||
x (Mystery Rom)
|
||||
(c)1978-1981? Irem?
|
||||
PCB No. :M14S-2
|
||||
:M14L-2
|
||||
CPU :NEC D8085AC
|
||||
Sound :?
|
||||
OSC :6MHz x2
|
||||
PCB No. :M14S-2
|
||||
:M14L-2
|
||||
CPU :NEC D8085AC
|
||||
Sound :?
|
||||
OSC :6MHz x2
|
||||
|
||||
mgpb1.bin
|
||||
mgpa2.bin
|
||||
@ -258,9 +258,9 @@ static MACHINE_DRIVER_START( m14 )
|
||||
MDRV_VIDEO_UPDATE(m14)
|
||||
|
||||
/* sound hardware */
|
||||
// MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||
// MDRV_SOUND_ADD("ay", AY8910, 8000000/4 /* guess */)
|
||||
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
// MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||
// MDRV_SOUND_ADD("ay", AY8910, 8000000/4 /* guess */)
|
||||
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_DRIVER_END
|
||||
|
||||
/***************************************************************************
|
||||
|
@ -127,8 +127,8 @@ static ADDRESS_MAP_START( metlclsh_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0xe301, 0xe301) AM_WRITE(metlclsh_flipscreen_w) // 0/1
|
||||
AM_RANGE(0xe401, 0xe401) AM_WRITE(metlclsh_rambank_w)
|
||||
AM_RANGE(0xe402, 0xe403) AM_WRITEONLY AM_BASE(&metlclsh_scrollx)
|
||||
// AM_RANGE(0xe404, 0xe404) AM_WRITENOP // ? 0
|
||||
// AM_RANGE(0xe410, 0xe410) AM_WRITENOP // ? 0 on startup only
|
||||
// AM_RANGE(0xe404, 0xe404) AM_WRITENOP // ? 0
|
||||
// AM_RANGE(0xe410, 0xe410) AM_WRITENOP // ? 0 on startup only
|
||||
AM_RANGE(0xe417, 0xe417) AM_WRITE(metlclsh_ack_nmi2) // nmi ack
|
||||
AM_RANGE(0xfff0, 0xffff) AM_ROM // Reset/IRQ vectors
|
||||
ADDRESS_MAP_END
|
||||
|
@ -1138,7 +1138,7 @@ static ADDRESS_MAP_START( kokushi_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x878840, 0x87884d) AM_WRITE(metro_blitter_w) AM_BASE(&metro_blitter_regs) // Tiles Blitter
|
||||
AM_RANGE(0x878860, 0x87886b) AM_WRITE(metro_window_w) AM_BASE(&metro_window) // Tilemap Window
|
||||
AM_RANGE(0x878870, 0x87887b) AM_WRITEONLY AM_BASE(&metro_scroll) // Scroll Regs - WRONG
|
||||
// AM_RANGE(0x878880, 0x878881) AM_WRITENOP // ? increasing
|
||||
// AM_RANGE(0x878880, 0x878881) AM_WRITENOP // ? increasing
|
||||
AM_RANGE(0x878890, 0x878891) AM_WRITENOP // ? increasing
|
||||
AM_RANGE(0x8788a2, 0x8788a3) AM_READWRITE(metro_irq_cause_r,metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
|
||||
AM_RANGE(0x8788a4, 0x8788a5) AM_WRITEONLY AM_BASE(&metro_irq_enable) // IRQ Enable
|
||||
@ -1444,7 +1444,7 @@ static ADDRESS_MAP_START( dokyusei_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x478810, 0x47881f) AM_WRITEONLY AM_BASE(&metro_irq_levels) // IRQ Levels
|
||||
AM_RANGE(0x478820, 0x47882f) AM_WRITEONLY AM_BASE(&metro_irq_vectors) // IRQ Vectors
|
||||
AM_RANGE(0x478830, 0x478831) AM_WRITEONLY AM_BASE(&metro_irq_enable) // IRQ Enable
|
||||
// AM_RANGE(0x478832, 0x478833) AM_READ(metro_irq_cause_r) // IRQ Cause
|
||||
// AM_RANGE(0x478832, 0x478833) AM_READ(metro_irq_cause_r) // IRQ Cause
|
||||
AM_RANGE(0x478832, 0x478833) AM_WRITE(metro_irq_cause_w) // IRQ Acknowledge
|
||||
AM_RANGE(0x478836, 0x478837) AM_WRITENOP // ? watchdog ?
|
||||
AM_RANGE(0x478840, 0x47884d) AM_WRITE(metro_blitter_w) AM_BASE(&metro_blitter_regs) // Tiles Blitter
|
||||
@ -1683,7 +1683,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( blzntrnd_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM
|
||||
// AM_RANGE(0x300000, 0x300001) AM_READNOP // Sound
|
||||
// AM_RANGE(0x300000, 0x300001) AM_READNOP // Sound
|
||||
AM_RANGE(0x200000, 0x21ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE(&metro_vram_0) // Layer 0
|
||||
AM_RANGE(0x220000, 0x23ffff) AM_RAM_WRITE(metro_vram_1_w) AM_BASE(&metro_vram_1) // Layer 1
|
||||
AM_RANGE(0x240000, 0x25ffff) AM_RAM_WRITE(metro_vram_2_w) AM_BASE(&metro_vram_2) // Layer 2
|
||||
|
@ -226,7 +226,7 @@ static ADDRESS_MAP_START( msisaac_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0xf082, 0xf082) AM_READ_PORT("DSW3")
|
||||
AM_RANGE(0xf083, 0xf083) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0xf084, 0xf084) AM_READ_PORT("IN1")
|
||||
// AM_RANGE(0xf086, 0xf086) AM_READ_PORT("IN2")
|
||||
// AM_RANGE(0xf086, 0xf086) AM_READ_PORT("IN2")
|
||||
|
||||
AM_RANGE(0xf100, 0xf17f) AM_RAM AM_BASE(&spriteram) //sprites
|
||||
AM_RANGE(0xf400, 0xf7ff) AM_RAM_WRITE(msisaac_fg_videoram_w) AM_BASE(&videoram)
|
||||
|
@ -1984,7 +1984,7 @@ EXP: F355 CHALLENGE EXPORT
|
||||
ROM_START( f355 )
|
||||
ROM_REGION( 0x200000, "maincpu", 0)
|
||||
F355_BIOS
|
||||
// NAOMI_BIOS
|
||||
// NAOMI_BIOS
|
||||
|
||||
ROM_REGION( 0xb000000, "user1", ROMREGION_ERASEFF)
|
||||
ROM_LOAD("epr-21902.ic22",0x0000000, 0x0400000, CRC(04e8acec) SHA1(82e20f99876b13b77c0393ef545316f9eeb2c29c) )
|
||||
|
@ -641,7 +641,7 @@ static ADDRESS_MAP_START( taiwanmb_io_map, ADDRESS_SPACE_IO, 8 )
|
||||
AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r)
|
||||
AM_RANGE(0x81, 0x81) AM_DEVREAD("fm", ay8910_r)
|
||||
AM_RANGE(0x82, 0x83) AM_DEVWRITE("fm", ay8910_data_address_w)
|
||||
AM_RANGE(0x90, 0x90) AM_READ(nb1413m3_inputport0_r) //AM_WRITENOP // ?
|
||||
AM_RANGE(0x90, 0x90) AM_READ(nb1413m3_inputport0_r) //AM_WRITENOP // ?
|
||||
AM_RANGE(0xa0, 0xa0) AM_READWRITE(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
|
||||
AM_RANGE(0xb0, 0xb0) AM_READWRITE(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
|
||||
// AM_RANGE(0xc0, 0xc0) AM_WRITENOP // ?
|
||||
|
@ -361,7 +361,7 @@ static MACHINE_DRIVER_START( olibochu )
|
||||
MDRV_CPU_PROGRAM_MAP(olibochu_sound_map,0)
|
||||
MDRV_CPU_PERIODIC_INT(irq0_line_hold,60) //???
|
||||
|
||||
// MDRV_QUANTUM_PERFECT_CPU("maincpu")
|
||||
// MDRV_QUANTUM_PERFECT_CPU("maincpu")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_ADD("screen", RASTER)
|
||||
|
@ -151,7 +151,7 @@ static ADDRESS_MAP_START( pandoras_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x1a02, 0x1a02) AM_READ_PORT("P2")
|
||||
AM_RANGE(0x1a03, 0x1a03) AM_READ_PORT("DSW3")
|
||||
AM_RANGE(0x1c00, 0x1c00) AM_READ_PORT("DSW2")
|
||||
// AM_RANGE(0x1e00, 0x1e00) AM_READNOP /* ??? seems to be important */
|
||||
// AM_RANGE(0x1e00, 0x1e00) AM_READNOP /* ??? seems to be important */
|
||||
AM_RANGE(0x8000, 0x8000) AM_WRITE(watchdog_reset_w) /* watchdog reset */
|
||||
AM_RANGE(0xa000, 0xa000) AM_WRITE(pandoras_cpua_irqtrigger_w) /* cause FIRQ on CPU A */
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(4) /* Shared RAM with the CPU A */
|
||||
|
@ -350,9 +350,9 @@ static ADDRESS_MAP_START( psikyo_map, ADDRESS_SPACE_PROGRAM, 32 )
|
||||
AM_RANGE(0x800000, 0x801fff) AM_RAM_WRITE(psikyo_vram_0_w) AM_BASE(&psikyo_vram_0) // Layer 0
|
||||
AM_RANGE(0x802000, 0x803fff) AM_RAM_WRITE(psikyo_vram_1_w) AM_BASE(&psikyo_vram_1) // Layer 1
|
||||
AM_RANGE(0x804000, 0x807fff) AM_RAM AM_BASE(&psikyo_vregs) // RAM + Vregs
|
||||
// AM_RANGE(0xc00000, 0xc0000b) AM_READ(psikyo_input_r) // Depends on board, see DRIVER_INIT
|
||||
// AM_RANGE(0xc00004, 0xc0000b) AM_WRITE(s1945_mcu_w) // MCU on sh404, see DRIVER_INIT
|
||||
// AM_RANGE(0xc00010, 0xc00013) AM_WRITE(psikyo_soundlatch_w) // Depends on board, see DRIVER_INIT
|
||||
// AM_RANGE(0xc00000, 0xc0000b) AM_READ(psikyo_input_r) // Depends on board, see DRIVER_INIT
|
||||
// AM_RANGE(0xc00004, 0xc0000b) AM_WRITE(s1945_mcu_w) // MCU on sh404, see DRIVER_INIT
|
||||
// AM_RANGE(0xc00010, 0xc00013) AM_WRITE(psikyo_soundlatch_w) // Depends on board, see DRIVER_INIT
|
||||
AM_RANGE(0xfe0000, 0xffffff) AM_RAM // RAM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -146,11 +146,11 @@ static ADDRESS_MAP_START( puckpkmn_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
|
||||
/* Unknown reads/writes: */
|
||||
AM_RANGE(0xa00000, 0xa00551) AM_WRITENOP /* ? */
|
||||
// AM_RANGE(0xa10000, 0xa10001) AM_READNOP /* ? once */
|
||||
// AM_RANGE(0xa10000, 0xa10001) AM_READNOP /* ? once */
|
||||
AM_RANGE(0xa10002, 0xa10005) AM_NOP /* ? alternative way of reading inputs ? */
|
||||
AM_RANGE(0xa11100, 0xa11101) AM_NOP /* ? */
|
||||
// AM_RANGE(0xa10008, 0xa1000d) AM_WRITENOP /* ? once */
|
||||
// AM_RANGE(0xa14000, 0xa14003) AM_WRITENOP /* ? once */
|
||||
// AM_RANGE(0xa10008, 0xa1000d) AM_WRITENOP /* ? once */
|
||||
// AM_RANGE(0xa14000, 0xa14003) AM_WRITENOP /* ? once */
|
||||
AM_RANGE(0xa11200, 0xa11201) AM_WRITENOP /* ? */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -210,7 +210,7 @@ static ADDRESS_MAP_START( rungun_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x2fffff) AM_ROM // main program + data
|
||||
AM_RANGE(0x300000, 0x3007ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16)
|
||||
AM_RANGE(0x380000, 0x39ffff) AM_RAM // work RAM
|
||||
AM_RANGE(0x400000, 0x43ffff) AM_READNOP // AM_READ( K053936_0_rom_r ) // '936 ROM readback window
|
||||
AM_RANGE(0x400000, 0x43ffff) AM_READNOP // AM_READ( K053936_0_rom_r ) // '936 ROM readback window
|
||||
AM_RANGE(0x480000, 0x48001f) AM_READWRITE(rng_sysregs_r,rng_sysregs_w) AM_BASE(&rng_sysreg)
|
||||
AM_RANGE(0x4c0000, 0x4c001f) AM_READ(K053252_word_r) // CCU (for scanline and vblank polling)
|
||||
AM_RANGE(0x540000, 0x540001) AM_WRITE(sound_irq_w)
|
||||
|
@ -328,7 +328,7 @@ static ADDRESS_MAP_START( systeme_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK(1) /* Banked ROM */
|
||||
|
||||
// AM_RANGE(0x0000 , 0xbfff) AM_ROM
|
||||
// AM_RANGE(0xc000 , 0xdfff) AM_RAM AM_MIRROR(0x2000)
|
||||
// AM_RANGE(0xc000 , 0xdfff) AM_RAM AM_MIRROR(0x2000)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sms_io_map, ADDRESS_SPACE_IO, 8 )
|
||||
|
@ -2665,8 +2665,8 @@ static READ8_HANDLER( ff_r ) {return 0xff;}
|
||||
static ADDRESS_MAP_START( tndrcade_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM
|
||||
AM_RANGE(0x0800, 0x0800) AM_READ(ff_r) // ? (bits 0/1/2/3: 1 -> do test 0-ff/100-1e0/5001-57ff/banked rom)
|
||||
// AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) //
|
||||
// AM_RANGE(0x0801, 0x0801) AM_READ(soundlatch2_r) //
|
||||
// AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) //
|
||||
// AM_RANGE(0x0801, 0x0801) AM_READ(soundlatch2_r) //
|
||||
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("P1") // P1
|
||||
AM_RANGE(0x1000, 0x1000) AM_WRITE(sub_bankswitch_lockout_w) // ROM Bank + Coin Lockout
|
||||
AM_RANGE(0x1001, 0x1001) AM_READ_PORT("P2") // P2
|
||||
@ -2776,7 +2776,7 @@ static ADDRESS_MAP_START( metafox_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("COINS") // Coins
|
||||
AM_RANGE(0x1000, 0x1000) AM_WRITE(sub_bankswitch_lockout_w) // ROM Bank + Coin Lockout
|
||||
AM_RANGE(0x1002, 0x1002) AM_READ_PORT("P1") // P1
|
||||
// AM_RANGE(0x1004, 0x1004) AM_READNOP // ?
|
||||
// AM_RANGE(0x1004, 0x1004) AM_READNOP // ?
|
||||
AM_RANGE(0x1006, 0x1006) AM_READ_PORT("P2") // P2
|
||||
AM_RANGE(0x5000, 0x57ff) AM_RAM AM_BASE(&sharedram) // Shared RAM
|
||||
AM_RANGE(0x7000, 0x7fff) AM_ROM // ROM
|
||||
|
@ -806,7 +806,7 @@ static ADDRESS_MAP_START( penbros_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x600004, 0x600005) AM_READ_PORT("SYSTEM") // Coins
|
||||
AM_RANGE(0x600004, 0x600005) AM_WRITE(pzlbowl_coin_counter_w) // Coins Counter
|
||||
AM_RANGE(0x600006, 0x600007) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x700000, 0x700001) AM_READ(pzlbowl_protection_r) // Protection
|
||||
// AM_RANGE(0x700000, 0x700001) AM_READ(pzlbowl_protection_r) // Protection
|
||||
AM_RANGE(0xb00000, 0xb3ffff) AM_RAM AM_BASE(&spriteram16) AM_SIZE(&spriteram_size) // Sprites
|
||||
AM_RANGE(0xb40000, 0xb4ffff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE(&paletteram16) // Palette
|
||||
AM_RANGE(0xa00000, 0xa03fff) AM_DEVREADWRITE("x1", seta_sound_word_r,seta_sound_word_w) // Sound
|
||||
|
@ -139,7 +139,7 @@ static ADDRESS_MAP_START( sidepckt_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x3003, 0x3003) AM_READ_PORT("DSW2")
|
||||
AM_RANGE(0x3004, 0x3004) AM_WRITE(sound_cpu_command_w)
|
||||
AM_RANGE(0x300c, 0x300c) AM_READNOP AM_WRITE(sidepckt_flipscreen_w)
|
||||
// AM_RANGE(0x3014, 0x3014) //i8751 read
|
||||
// AM_RANGE(0x3014, 0x3014) //i8751 read
|
||||
// AM_RANGE(0x3018, 0x3018) //i8751 write
|
||||
AM_RANGE(0x4000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
@ -235,7 +235,7 @@ static MACHINE_RESET( skimaxx )
|
||||
static MACHINE_DRIVER_START( skimaxx )
|
||||
MDRV_CPU_ADD("maincpu", M68020, XTAL_40MHz) // TODO: Should be a 68030!
|
||||
MDRV_CPU_PROGRAM_MAP(68030_1_map, 0)
|
||||
// MDRV_CPU_VBLANK_INT("screen", irq3_line_hold)
|
||||
// MDRV_CPU_VBLANK_INT("screen", irq3_line_hold)
|
||||
|
||||
MDRV_CPU_ADD("subcpu", M68020, XTAL_40MHz)
|
||||
MDRV_CPU_PROGRAM_MAP(68030_2_map, 0) // TODO: Should be a 68030!
|
||||
|
@ -58,7 +58,7 @@ static ADDRESS_MAP_START( skyfox_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0xe002, 0xe002) AM_READ_PORT("DSW1") //
|
||||
AM_RANGE(0xe008, 0xe00f) AM_WRITE(skyfox_vregs_w) // Video Regs
|
||||
AM_RANGE(0xf001, 0xf001) AM_READ_PORT("DSW2") //
|
||||
// AM_RANGE(0xff00, 0xff07) AM_READ(skyfox_vregs_r) // fake to read the vregs
|
||||
// AM_RANGE(0xff00, 0xff07) AM_READ(skyfox_vregs_r) // fake to read the vregs
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -79,9 +79,9 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( skyfox_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM // RAM
|
||||
// AM_RANGE(0x9000, 0x9001) AM_WRITENOP // ??
|
||||
// AM_RANGE(0x9000, 0x9001) AM_WRITENOP // ??
|
||||
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ym1", ym2203_r,ym2203_w) // YM2203 #1
|
||||
// AM_RANGE(0xb000, 0xb001) AM_WRITENOP // ??
|
||||
// AM_RANGE(0xb000, 0xb001) AM_WRITENOP // ??
|
||||
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ym2", ym2203_r,ym2203_w) // YM2203 #2
|
||||
AM_RANGE(0xb000, 0xb000) AM_READ(soundlatch_r) // From Main CPU
|
||||
ADDRESS_MAP_END
|
||||
|
@ -136,7 +136,7 @@ static void splash_msm5205_int(const device_config *device)
|
||||
static ADDRESS_MAP_START( splash_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x0000, 0xd7ff) AM_ROM /* ROM */
|
||||
AM_RANGE(0xd800, 0xd800) AM_WRITE(splash_adpcm_data_w) /* ADPCM data for the MSM5205 chip */
|
||||
// AM_RANGE(0xe000, 0xe000) AM_WRITENOP /* ??? */
|
||||
// AM_RANGE(0xe000, 0xe000) AM_WRITENOP /* ??? */
|
||||
AM_RANGE(0xe800, 0xe800) AM_READ(soundlatch_r) /* Sound latch */
|
||||
AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ym", ym3812_r,ym3812_w) /* YM3812 */
|
||||
AM_RANGE(0xf800, 0xffff) AM_RAM /* RAM */
|
||||
@ -191,7 +191,7 @@ static ADDRESS_MAP_START( funystrp_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x000000, 0x01ffff) AM_ROM /* ROM */
|
||||
AM_RANGE(0x100000, 0x100fff) AM_RAM /* protection? RAM */
|
||||
AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_BASE(&splash_pixelram) /* Pixel Layer */
|
||||
// AM_RANGE(0x84000e, 0x84000f) AM_WRITE(splash_sh_irqtrigger_w) /* Sound command */
|
||||
// AM_RANGE(0x84000e, 0x84000f) AM_WRITE(splash_sh_irqtrigger_w) /* Sound command */
|
||||
AM_RANGE(0x84000a, 0x84003b) AM_WRITE(splash_coin_w) /* Coin Counters + Coin Lockout */
|
||||
AM_RANGE(0x840000, 0x840001) AM_READ_PORT("DSW1")
|
||||
AM_RANGE(0x840002, 0x840003) AM_READ_PORT("DSW2")
|
||||
|
@ -438,11 +438,11 @@ static READ16_HANDLER( fake_r ) { return ssv_scroll[offset]; }
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_READWRITE(SMH_NOP, ssv_lockout_w) /* Lockout */ \
|
||||
AM_RANGE(0x210010, 0x210011) AM_WRITENOP \
|
||||
AM_RANGE(0x230000, 0x230071) AM_WRITE(SMH_RAM) AM_BASE(&ssv_irq_vectors) /* IRQ Vec */ \
|
||||
AM_RANGE(0x240000, 0x240071) AM_WRITE(ssv_irq_ack_w ) /* IRQ Ack */ \
|
||||
AM_RANGE(0x260000, 0x260001) AM_WRITE(ssv_irq_enable_w) /* IRQ En */ \
|
||||
AM_RANGE(0x240000, 0x240071) AM_WRITE(ssv_irq_ack_w ) /* IRQ Ack */ \
|
||||
AM_RANGE(0x260000, 0x260001) AM_WRITE(ssv_irq_enable_w) /* IRQ En */ \
|
||||
AM_RANGE(0x300000, 0x30007f) AM_DEVREADWRITE8("ensoniq", es5506_r, es5506_w, 0x00ff) /* Sound */ \
|
||||
AM_RANGE(0x482000, 0x482fff) AM_RAM_WRITE(dsp_w) AM_BASE(&dsp_ram) \
|
||||
AM_RANGE(_ROM, 0xffffff) AM_ROMBANK(1) /* ROM */ \
|
||||
AM_RANGE(_ROM, 0xffffff) AM_ROMBANK(1) /* ROM */ \
|
||||
//AM_RANGE(0x990000, 0x99007f) AM_READ(fake_r)
|
||||
|
||||
|
||||
@ -458,7 +458,7 @@ static READ16_HANDLER( drifto94_rand_r )
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( drifto94_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
AM_RANGE(0x400000, 0x47ffff) AM_WRITE(SMH_RAM) // ?
|
||||
AM_RANGE(0x480000, 0x480001) AM_NOP // ?
|
||||
AM_RANGE(0x483000, 0x485fff) AM_WRITE(SMH_NOP) // ?
|
||||
@ -635,9 +635,9 @@ static READ16_HANDLER( hypreact_input_r )
|
||||
|
||||
static ADDRESS_MAP_START( hypreact_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 5 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 5 at the start
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Inverted lockout lines
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READ(SMH_NOP) // ? read at the start, value not used
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READ(SMH_NOP) // ? read at the start, value not used
|
||||
AM_RANGE(0xc00000, 0xc00001) AM_READ(hypreact_input_r) // Inputs
|
||||
AM_RANGE(0xc00006, 0xc00007) AM_RAM AM_BASE(&ssv_input_sel) //
|
||||
AM_RANGE(0xc00008, 0xc00009) AM_NOP //
|
||||
@ -651,9 +651,9 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( hypreac2_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 5 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 5 at the start
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Inverted lockout lines
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READ(SMH_NOP) // ? read at the start, value not used
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READ(SMH_NOP) // ? read at the start, value not used
|
||||
AM_RANGE(0x500000, 0x500001) AM_READ(hypreact_input_r) // Inputs
|
||||
AM_RANGE(0x500002, 0x500003) AM_READ(hypreact_input_r) // (again?)
|
||||
AM_RANGE(0x520000, 0x520001) AM_WRITE(SMH_RAM) AM_BASE(&ssv_input_sel) // Inputs
|
||||
@ -670,7 +670,7 @@ static READ16_HANDLER( srmp4_input_r );
|
||||
|
||||
static ADDRESS_MAP_START( janjans1_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_WRITE(SMH_NOP) // koikois2 but not janjans1
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
AM_RANGE(0x210006, 0x210007) AM_READ(SMH_NOP)
|
||||
AM_RANGE(0x800000, 0x800001) AM_WRITE(SMH_RAM) AM_BASE(&ssv_input_sel) // Inputs
|
||||
AM_RANGE(0x800002, 0x800003) AM_READ(srmp4_input_r) // Inputs
|
||||
@ -683,7 +683,7 @@ ADDRESS_MAP_END
|
||||
***************************************************************************/
|
||||
|
||||
static ADDRESS_MAP_START( keithlcy_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
AM_RANGE(0x210010, 0x210011) AM_WRITE(SMH_NOP) //
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_READ(SMH_NOP) //
|
||||
AM_RANGE(0x400000, 0x47ffff) AM_WRITE(SMH_RAM) // ?
|
||||
@ -697,9 +697,9 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( meosism_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r ) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 5 at the start
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READ(SMH_NOP) // ? read once, value not used
|
||||
// AM_RANGE(0x500004, 0x500005) AM_WRITE(SMH_NOP) // ? 0,58,18
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 5 at the start
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READ(SMH_NOP) // ? read once, value not used
|
||||
// AM_RANGE(0x500004, 0x500005) AM_WRITE(SMH_NOP) // ? 0,58,18
|
||||
AM_RANGE(0x580000, 0x58ffff) AM_RAM AM_BASE(&ssv_nvram) AM_SIZE(&ssv_nvram_size) // NVRAM
|
||||
SSV_MAP( 0xf00000 )
|
||||
ADDRESS_MAP_END
|
||||
@ -722,9 +722,9 @@ static WRITE16_HANDLER( ssv_mainram_w )
|
||||
|
||||
static ADDRESS_MAP_START( mslider_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x010000, 0x01ffff) AM_READWRITE(ssv_mainram_r, ssv_mainram_w) // RAM Mirror
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
AM_RANGE(0x400000, 0x47ffff) AM_WRITE(SMH_RAM) // ?
|
||||
// AM_RANGE(0x500000, 0x500001) AM_WRITE(SMH_NOP) // ? ff at the start
|
||||
// AM_RANGE(0x500000, 0x500001) AM_WRITE(SMH_NOP) // ? ff at the start
|
||||
SSV_MAP( 0xf00000 )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -735,7 +735,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( ryorioh_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_WRITE(watchdog_reset16_w) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
SSV_MAP( 0xc00000 )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -757,7 +757,7 @@ static READ16_HANDLER( srmp4_input_r )
|
||||
|
||||
static ADDRESS_MAP_START( srmp4_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1,5 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1,5 at the start
|
||||
AM_RANGE(0xc0000a, 0xc0000b) AM_READ(srmp4_input_r) // Inputs
|
||||
AM_RANGE(0xc0000e, 0xc0000f) AM_WRITE(SMH_RAM) AM_BASE(&ssv_input_sel) // Inputs
|
||||
AM_RANGE(0xc00010, 0xc00011) AM_WRITE(SMH_NOP) //
|
||||
@ -805,7 +805,7 @@ static READ16_HANDLER( srmp7_input_r )
|
||||
static ADDRESS_MAP_START( srmp7_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x010000, 0x050faf) AM_RAM // More RAM
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 0,4 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 0,4 at the start
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Coin Counters / Lockouts
|
||||
AM_RANGE(0x300076, 0x300077) AM_READ(srmp7_irqv_r) // Sound
|
||||
// 0x540000, 0x540003, related to lev 5 irq?
|
||||
@ -822,9 +822,9 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( survarts_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 0,4 at the start
|
||||
// AM_RANGE(0x290000, 0x290001) AM_READ(SMH_NOP) // ?
|
||||
// AM_RANGE(0x2a0000, 0x2a0001) AM_READ(SMH_NOP) // ?
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 0,4 at the start
|
||||
// AM_RANGE(0x290000, 0x290001) AM_READ(SMH_NOP) // ?
|
||||
// AM_RANGE(0x2a0000, 0x2a0001) AM_READ(SMH_NOP) // ?
|
||||
|
||||
AM_RANGE(0x400000, 0x43ffff) AM_RAM // dyna
|
||||
|
||||
@ -871,9 +871,9 @@ static WRITE16_HANDLER( sxyreact_motor_w )
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( sxyreact_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
// AM_RANGE(0x020000, 0x03ffff) AM_READWRITE(ssv_mainram_r, ssv_mainram_w) // sxyreac2 reads / writes here, why?
|
||||
// AM_RANGE(0x020000, 0x03ffff) AM_READWRITE(ssv_mainram_r, ssv_mainram_w) // sxyreac2 reads / writes here, why?
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 1 at the start
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Inverted lockout lines
|
||||
AM_RANGE(0x500002, 0x500003) AM_READ(sxyreact_ballswitch_r) // ?
|
||||
AM_RANGE(0x500004, 0x500005) AM_READWRITE(sxyreact_dial_r, sxyreact_motor_w) // Dial Value (serial)
|
||||
@ -905,7 +905,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( ultrax_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x010000, 0x03ffff) AM_RAM // More RAM
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog (also value is cmp.b with memory address 8)
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 2,6 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 2,6 at the start
|
||||
SSV_MAP( 0xe00000 )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -1028,7 +1028,7 @@ static WRITE16_HANDLER( eaglshot_gfxram_w )
|
||||
static ADDRESS_MAP_START( eaglshot_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x180000, 0x1bffff) AM_READWRITE(eaglshot_gfxram_r, eaglshot_gfxram_w)
|
||||
AM_RANGE(0x210000, 0x210001) AM_READ(/*watchdog_reset16_r*/SMH_NOP) // Watchdog
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 0,4 at the start
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITE(SMH_NOP) // ? 0,4 at the start
|
||||
AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Inverted lockout lines
|
||||
AM_RANGE(0x800000, 0x800001) AM_WRITE(eaglshot_gfxrom_w)
|
||||
AM_RANGE(0x900000, 0x900001) AM_WRITE(eaglshot_trackball_w)
|
||||
|
@ -773,14 +773,14 @@ static READ8_HANDLER( mcu_io_r )
|
||||
| +----------- I/O?
|
||||
| | +--------- ROM bank select
|
||||
| | |
|
||||
01 0000 0001 = read/write to Z80 program space
|
||||
51 0101 0001 = read/write to Z80 I/O space
|
||||
01 0000 0001 = read/write to Z80 program space
|
||||
51 0101 0001 = read/write to Z80 I/O space
|
||||
41 0100 0001 = write at initialization time
|
||||
47 0100 0111 = read from ROM 00000-07FFF
|
||||
4F 0100 1111 = read from ROM 10000-1FFFF
|
||||
47 0100 0111 = read from ROM 00000-07FFF
|
||||
4F 0100 1111 = read from ROM 10000-1FFFF
|
||||
5F 0101 1111 = read during ROM checksum
|
||||
19 0001 1001 = reads here before doing shorter loops
|
||||
59 0101 1001 = reads here during checksum, and in infinite loop on checksum error
|
||||
19 0001 1001 = reads here before doing shorter loops
|
||||
59 0101 1001 = reads here during checksum, and in infinite loop on checksum error
|
||||
|
||||
|
||||
When P1 = $01, movx writes to ???, reads from ???
|
||||
|
@ -897,6 +897,7 @@ const game_driver * const drivers[] =
|
||||
DRIVER( motoxgo ) /* (c) 1997 */
|
||||
DRIVER( timecrs2 ) /* (c) 1997 */
|
||||
DRIVER( timcrs2b ) /* (c) 1997 */
|
||||
DRIVER( panicprk ) /* (c) 1998 */
|
||||
DRIVER( 500gp ) /* (c) 1999 */
|
||||
DRIVER( finfurl2 ) /* (c) 1999 */
|
||||
DRIVER( finfrl2j ) /* (c) 1999 */
|
||||
|
@ -420,7 +420,7 @@ static void tex_prepare(texinfo *t)
|
||||
t->palbase = 0;
|
||||
t->vqbase = t->address;
|
||||
|
||||
// fprintf(stderr, "tex %d %d %d %d\n", t->pf, t->mode, pvrta_regs[PAL_RAM_CTRL], t->mipmapped);
|
||||
// fprintf(stderr, "tex %d %d %d %d\n", t->pf, t->mode, pvrta_regs[PAL_RAM_CTRL], t->mipmapped);
|
||||
|
||||
switch(t->pf) {
|
||||
case 0: // 1555
|
||||
@ -522,59 +522,59 @@ static void tex_prepare(texinfo *t)
|
||||
|
||||
// 4BPP palette textures
|
||||
// Texture size _4-bit_ offset value for starting address
|
||||
// 1x1 0x00003
|
||||
// 2x2 0x00004
|
||||
// 4x4 0x00008
|
||||
// 8x8 0x00018
|
||||
// 16x16 0x00058
|
||||
// 32x32 0x00158
|
||||
// 64x64 0x00558
|
||||
// 128x128 0x01558
|
||||
// 256x256 0x05558
|
||||
// 512x512 0x15558
|
||||
// 1024x1024 0x55558
|
||||
// 1x1 0x00003
|
||||
// 2x2 0x00004
|
||||
// 4x4 0x00008
|
||||
// 8x8 0x00018
|
||||
// 16x16 0x00058
|
||||
// 32x32 0x00158
|
||||
// 64x64 0x00558
|
||||
// 128x128 0x01558
|
||||
// 256x256 0x05558
|
||||
// 512x512 0x15558
|
||||
// 1024x1024 0x55558
|
||||
|
||||
// 8BPP palette textures
|
||||
// Texture size Byte offset value for starting address
|
||||
// 1x1 0x00003
|
||||
// 2x2 0x00004
|
||||
// 4x4 0x00008
|
||||
// 8x8 0x00018
|
||||
// 16x16 0x00058
|
||||
// 32x32 0x00158
|
||||
// 64x64 0x00558
|
||||
// 128x128 0x01558
|
||||
// 256x256 0x05558
|
||||
// 512x512 0x15558
|
||||
// 1024x1024 0x55558
|
||||
// 1x1 0x00003
|
||||
// 2x2 0x00004
|
||||
// 4x4 0x00008
|
||||
// 8x8 0x00018
|
||||
// 16x16 0x00058
|
||||
// 32x32 0x00158
|
||||
// 64x64 0x00558
|
||||
// 128x128 0x01558
|
||||
// 256x256 0x05558
|
||||
// 512x512 0x15558
|
||||
// 1024x1024 0x55558
|
||||
|
||||
// Non-palette textures
|
||||
// Texture size Byte offset value for starting address
|
||||
// 1x1 0x00006
|
||||
// 2x2 0x00008
|
||||
// 4x4 0x00010
|
||||
// 8x8 0x00030
|
||||
// 16x16 0x000B0
|
||||
// 32x32 0x002B0
|
||||
// 64x64 0x00AB0
|
||||
// 128x128 0x02AB0
|
||||
// 256x256 0x0AAB0
|
||||
// 512x512 0x2AAB0
|
||||
// 1024x1024 0xAAAB0
|
||||
// 1x1 0x00006
|
||||
// 2x2 0x00008
|
||||
// 4x4 0x00010
|
||||
// 8x8 0x00030
|
||||
// 16x16 0x000B0
|
||||
// 32x32 0x002B0
|
||||
// 64x64 0x00AB0
|
||||
// 128x128 0x02AB0
|
||||
// 256x256 0x0AAB0
|
||||
// 512x512 0x2AAB0
|
||||
// 1024x1024 0xAAAB0
|
||||
|
||||
// VQ textures
|
||||
// Texture size Byte offset value for starting address
|
||||
// 1x1 0x00000
|
||||
// 2x2 0x00001
|
||||
// 4x4 0x00002
|
||||
// 8x8 0x00006
|
||||
// 16x16 0x00016
|
||||
// 32x32 0x00056
|
||||
// 64x64 0x00156
|
||||
// 128x128 0x00556
|
||||
// 256x256 0x01556
|
||||
// 512x512 0x05556
|
||||
// 1024x1024 0x15556
|
||||
// 1x1 0x00000
|
||||
// 2x2 0x00001
|
||||
// 4x4 0x00002
|
||||
// 8x8 0x00006
|
||||
// 16x16 0x00016
|
||||
// 32x32 0x00056
|
||||
// 64x64 0x00156
|
||||
// 128x128 0x00556
|
||||
// 256x256 0x01556
|
||||
// 512x512 0x05556
|
||||
// 1024x1024 0x15556
|
||||
|
||||
static const int mipmap_4_8_offset[8] = { 0x00018, 0x00058, 0x00158, 0x00558, 0x01558, 0x05558, 0x15558, 0x55558 }; // 4bpp (4bit offset) / 8bpp (8bit offset)
|
||||
static const int mipmap_np_offset[8] = { 0x00030, 0x000B0, 0x002B0, 0x00AB0, 0x02AB0, 0x0AAB0, 0x2AAB0, 0xAAAB0 }; // nonpalette textures
|
||||
|
@ -32,12 +32,12 @@ WRITE8_HANDLER( cm_girl_scroll_w )
|
||||
{
|
||||
cm_girl_scroll = data;
|
||||
/*
|
||||
xxxx ---- yscroll
|
||||
---- xxxx xscroll
|
||||
xxxx ---- yscroll
|
||||
---- xxxx xscroll
|
||||
|
||||
this isn't very fine scrolling, but i see no other registers.
|
||||
1000 1000 is the center of the screen.
|
||||
*/
|
||||
this isn't very fine scrolling, but i see no other registers.
|
||||
1000 1000 is the center of the screen.
|
||||
*/
|
||||
}
|
||||
|
||||
WRITE8_HANDLER( cm_outport0_w )
|
||||
|
@ -1072,8 +1072,8 @@ static void hng64_drawtilemap( bitmap_t *bitmap, const rectangle *cliprect, int
|
||||
xscroll = (INT16)(hng64_videoram[(0x40000+(scrollbase<<4))/4]>>16);
|
||||
// ??? = (INT16)(hng64_videoram[(0x40004+(scrollbase<<4))/4]>>16);
|
||||
yscroll = (INT16)(hng64_videoram[(0x40008+(scrollbase<<4))/4]>>16);
|
||||
// xzoom = (INT16)(hng64_videoram[(0x40010+(scrollbase<<4))/4]>>16);
|
||||
// yzoom = (INT16)(hng64_videoram[(0x4000c+(scrollbase<<4))/4]>>16);
|
||||
// xzoom = (INT16)(hng64_videoram[(0x40010+(scrollbase<<4))/4]>>16);
|
||||
// yzoom = (INT16)(hng64_videoram[(0x4000c+(scrollbase<<4))/4]>>16);
|
||||
// ??? = (INT16)(hng64_videoram[(0x40014+(scrollbase<<4))/4]>>16);
|
||||
// ??? = (INT16)(hng64_videoram[(0x40018+(scrollbase<<4))/4]>>16);
|
||||
// ??? = (INT16)(hng64_videoram[(0x4001c+(scrollbase<<4))/4]>>16);
|
||||
@ -1147,23 +1147,23 @@ VIDEO_UPDATE( hng64 )
|
||||
transition_control(bitmap, cliprect) ;
|
||||
|
||||
/*
|
||||
popmessage("%08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x",
|
||||
hng64_videoregs[0x00],
|
||||
hng64_videoregs[0x01],
|
||||
hng64_videoregs[0x02],
|
||||
hng64_videoregs[0x03],
|
||||
hng64_videoregs[0x04],
|
||||
hng64_videoregs[0x05],
|
||||
hng64_videoregs[0x06],
|
||||
hng64_videoregs[0x07],
|
||||
hng64_videoregs[0x08],
|
||||
hng64_videoregs[0x09],
|
||||
hng64_videoregs[0x0a],
|
||||
hng64_videoregs[0x0b],
|
||||
hng64_videoregs[0x0c],
|
||||
hng64_videoregs[0x0d],
|
||||
hng64_videoregs[0x0e]);
|
||||
*/
|
||||
popmessage("%08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x %08x",
|
||||
hng64_videoregs[0x00],
|
||||
hng64_videoregs[0x01],
|
||||
hng64_videoregs[0x02],
|
||||
hng64_videoregs[0x03],
|
||||
hng64_videoregs[0x04],
|
||||
hng64_videoregs[0x05],
|
||||
hng64_videoregs[0x06],
|
||||
hng64_videoregs[0x07],
|
||||
hng64_videoregs[0x08],
|
||||
hng64_videoregs[0x09],
|
||||
hng64_videoregs[0x0a],
|
||||
hng64_videoregs[0x0b],
|
||||
hng64_videoregs[0x0c],
|
||||
hng64_videoregs[0x0d],
|
||||
hng64_videoregs[0x0e]);
|
||||
*/
|
||||
|
||||
// tilemap0 per layer flags
|
||||
// 0840 - startup tests, 8x8x4 layer
|
||||
|
@ -10,4 +10,4 @@
|
||||
***************************************************************************/
|
||||
|
||||
extern const char build_version[];
|
||||
const char build_version[] = "0.131 ("__DATE__")";
|
||||
const char build_version[] = "0.131u1 ("__DATE__")";
|
||||
|
Loading…
Reference in New Issue
Block a user