mirror of
https://github.com/holub/mame
synced 2025-10-04 16:34:53 +03:00
Cleanups for 0.122u5.
This commit is contained in:
parent
8e79f0b4f0
commit
73d0923d7f
@ -231,7 +231,7 @@ struct ext_header
|
||||
char header[7]; // must be "XINP" followed by NULLs
|
||||
char shortname[9]; // game shortname
|
||||
char version[32]; // MAME version string
|
||||
UINT32 starttime; // approximate INP start time
|
||||
UINT32 starttime; // approximate INP start time
|
||||
char dummy[32]; // for possible future expansion
|
||||
};
|
||||
|
||||
@ -1157,7 +1157,7 @@ static void setup_playback(running_machine *machine)
|
||||
const char *filename = options_get_string(mame_options(), OPTION_PLAYBACK);
|
||||
inp_header inpheader;
|
||||
file_error filerr;
|
||||
time_t started_time;
|
||||
time_t started_time;
|
||||
struct ext_header xheader;
|
||||
char check[7];
|
||||
|
||||
@ -1204,8 +1204,8 @@ static void setup_playback(running_machine *machine)
|
||||
|
||||
// output info to console
|
||||
mame_printf_info("Version string: %s\n",xheader.version);
|
||||
started_time = (time_t)xheader.starttime;
|
||||
mame_printf_info("Start time: %s\n", ctime(&started_time));
|
||||
started_time = (time_t)xheader.starttime;
|
||||
mame_printf_info("Start time: %s\n", ctime(&started_time));
|
||||
|
||||
// verify header against current game
|
||||
if (strcmp(machine->gamedrv->name, xheader.shortname) != 0)
|
||||
|
@ -84,7 +84,7 @@
|
||||
#define MR_R65 RES_K(10)
|
||||
|
||||
#define MR_C3 CAP_U(10)
|
||||
#define MR_C4 CAP_U(47)
|
||||
#define MR_C4 CAP_U(47)
|
||||
#define MR_C5 CAP_N(39)
|
||||
#define MR_C6 CAP_N(3.9)
|
||||
#define MR_C14 CAP_U(4.7)
|
||||
@ -167,7 +167,7 @@ static DISCRETE_SOUND_START(mario)
|
||||
DISCRETE_RCFILTER(NODE_21, 1, NODE_20, MR_R7, MR_C4)
|
||||
DISCRETE_74LS624( NODE_22, 1, NODE_21, VSS, MR_C5, DISC_LS624_OUT_ENERGY)
|
||||
DISCRETE_74LS624( NODE_23, 1, NODE_21, VSS, MR_C16, DISC_LS624_OUT_ENERGY)
|
||||
|
||||
|
||||
DISCRETE_LOGIC_XOR(NODE_24, 1, NODE_22, NODE_23)
|
||||
DISCRETE_LOGIC_AND(NODE_25, 1, NODE_24, NODE_20)
|
||||
DISCRETE_MULTIPLY(DS_OUT_SOUND1, 1, NODE_25, TTL_HIGH)
|
||||
@ -200,8 +200,8 @@ static DISCRETE_SOUND_START(mario)
|
||||
/************************************************/
|
||||
|
||||
/* following the resistor DAC are two opamps. The first is a 1:1 amplifier, the second
|
||||
* is a filter circuit. Simulation in LTSPICE shows, that the following is equivalent:
|
||||
*/
|
||||
* is a filter circuit. Simulation in LTSPICE shows, that the following is equivalent:
|
||||
*/
|
||||
|
||||
DISCRETE_MULTIPLY(NODE_170, 1, DS_DAC, TTL_HIGH/256.0)
|
||||
DISCRETE_RCFILTER(DS_OUT_DAC, 1, NODE_170, RES_K(750), CAP_P(200))
|
||||
@ -237,9 +237,9 @@ static SOUND_START( mario )
|
||||
soundlatch3_clear_w(0,0);
|
||||
soundlatch4_clear_w(0,0);
|
||||
/*
|
||||
* The code below will play the correct start up sound
|
||||
* However, it is not backed by hardware at all.
|
||||
*/
|
||||
* The code below will play the correct start up sound
|
||||
* However, it is not backed by hardware at all.
|
||||
*/
|
||||
//soundlatch_w(0,2);
|
||||
}
|
||||
|
||||
@ -281,7 +281,7 @@ static READ8_HANDLER( mario_sh_tune_r )
|
||||
UINT8 *SND = memory_region(REGION_CPU2);
|
||||
UINT16 mask = memory_region_length(REGION_CPU2)-1;
|
||||
UINT8 p2 = I8035_P2_R();
|
||||
|
||||
|
||||
if ((p2 >> 7) & 1)
|
||||
return soundlatch_r(offset);
|
||||
else
|
||||
@ -343,7 +343,7 @@ WRITE8_HANDLER( mario_sh2_w )
|
||||
WRITE8_HANDLER( mario_sh3_w )
|
||||
{
|
||||
mario_state *state = Machine->driver_data;
|
||||
|
||||
|
||||
switch (offset)
|
||||
{
|
||||
case 0: /* death */
|
||||
|
@ -177,15 +177,15 @@ WRITE8_HANDLER( tx1_ay8910_b_w )
|
||||
|
||||
Engine sounds are produced by three of these 4013B chains:
|
||||
|
||||
+------------------
|
||||
| +---------+
|
||||
+------------------
|
||||
| +---------+
|
||||
+-----+ | | +-----+ |
|
||||
+-|D 1 Q|-+ +-|D 2 Q|-|-----
|
||||
| |C /Q|-o----|C /Q|-+
|
||||
| +-----+ | +-----+
|
||||
+---------+
|
||||
+---------+
|
||||
|
||||
+----------+
|
||||
+----------+
|
||||
| +-----+ | +-----+
|
||||
| |C 3 Q|-+ |C 4 Q|-------
|
||||
!&--|D /Q|------|D /Q|-+
|
||||
@ -194,8 +194,8 @@ WRITE8_HANDLER( tx1_ay8910_b_w )
|
||||
|
||||
Common clocks omitted for clarity (all driven from an 8253 output pin).
|
||||
|
||||
Player: ES0, ES1, ES2
|
||||
Opponent 2: ES2
|
||||
Player: ES0, ES1, ES2
|
||||
Opponent 2: ES2
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -618,7 +618,7 @@ static WRITE8_HANDLER( sound_reset_w )
|
||||
if ((data & 1) == sound_reset_state)
|
||||
return;
|
||||
sound_reset_state = data & 1;
|
||||
|
||||
|
||||
/* only track the 0 -> 1 transition */
|
||||
if (sound_reset_state == 0)
|
||||
return;
|
||||
@ -1367,7 +1367,7 @@ static MACHINE_DRIVER_START( atarisy2 )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
|
||||
MDRV_GFXDECODE(atarisy2)
|
||||
MDRV_PALETTE_LENGTH(256)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 416, 0, 384)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -3262,8 +3262,8 @@ static DRIVER_INIT( paperboy )
|
||||
static DRIVER_INIT( 720 )
|
||||
{
|
||||
/* without the default EEPROM, 720 hangs at startup due to communication
|
||||
issues with the sound CPU; temporarily increasing the sound CPU frequency
|
||||
to ~2.2MHz "fixes" the problem */
|
||||
issues with the sound CPU; temporarily increasing the sound CPU frequency
|
||||
to ~2.2MHz "fixes" the problem */
|
||||
static const UINT16 compressed_default_eeprom[] =
|
||||
{
|
||||
0x0000,0x01ff,0x01d0,0x0107,0x0100,0x01d7,0x0300,0x01d7,0x0400,0x01d0,
|
||||
|
@ -449,7 +449,7 @@ static MACHINE_DRIVER_START( darwin )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(brkthru)
|
||||
MDRV_PALETTE_LENGTH(256)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 384, 8, 248, 272, 8, 248)
|
||||
/* frames per second, vblank duration
|
||||
|
@ -371,7 +371,7 @@ static MACHINE_DRIVER_START( ddribble )
|
||||
|
||||
/* sound hardware */
|
||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
|
||||
MDRV_SOUND_ADD(YM2203, XTAL_3_579545MHz) /* verified on pcb */
|
||||
MDRV_SOUND_CONFIG(ym2203_interface)
|
||||
MDRV_SOUND_ROUTE(0, "filter1", 0.25)
|
||||
|
@ -2404,7 +2404,7 @@ static MACHINE_DRIVER_START( csilver )
|
||||
MDRV_SOUND_ROUTE(1, "mono", 0.23)
|
||||
MDRV_SOUND_ROUTE(2, "mono", 0.23)
|
||||
MDRV_SOUND_ROUTE(3, "mono", 0.20)
|
||||
|
||||
|
||||
MDRV_SOUND_ADD(YM3526, XTAL_12MHz/4) /* verified on pcb */
|
||||
MDRV_SOUND_CONFIG(oscar_ym3526_interface)
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
|
||||
|
@ -229,7 +229,7 @@ static MACHINE_DRIVER_START( dietgo )
|
||||
MDRV_SOUND_ADD(YM2151, XTAL_32_22MHz/9) /* verified on pcb */
|
||||
MDRV_SOUND_CONFIG(ym2151_interface)
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
|
||||
|
||||
|
||||
MDRV_SOUND_ADD(OKIM6295, XTAL_32_22MHz/32) /* verified on pcb */
|
||||
MDRV_SOUND_CONFIG(okim6295_interface_region_1_pin7high) /* verified on pcb */
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
|
@ -465,7 +465,7 @@ static MACHINE_DRIVER_START( hyperspt )
|
||||
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
|
||||
|
||||
MDRV_CPU_ADD(Z80,XTAL_14_31818MHz/4) /* verified on pcb */
|
||||
/* audio CPU */
|
||||
/* audio CPU */
|
||||
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
|
||||
|
||||
MDRV_SCREEN_REFRESH_RATE(60)
|
||||
|
@ -1936,7 +1936,7 @@ static MACHINE_DRIVER_START( rtype )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(m72)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2003,7 +2003,7 @@ static MACHINE_DRIVER_START( m72 )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(m72)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2054,7 +2054,7 @@ static MACHINE_DRIVER_START( dkgenm72 )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(m72)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2096,7 +2096,7 @@ static MACHINE_DRIVER_START( xmultipl )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(m72)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2138,7 +2138,7 @@ static MACHINE_DRIVER_START( dbreed )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(rtype2)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2179,7 +2179,7 @@ static MACHINE_DRIVER_START( dbreed72 )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(m72)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2218,7 +2218,7 @@ static MACHINE_DRIVER_START( rtype2 )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(rtype2)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2259,7 +2259,7 @@ static MACHINE_DRIVER_START( majtitle )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(majtitle)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2300,7 +2300,7 @@ static MACHINE_DRIVER_START( hharry )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(rtype2)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2342,7 +2342,7 @@ static MACHINE_DRIVER_START( hharryu )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(rtype2)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2384,7 +2384,7 @@ static MACHINE_DRIVER_START( poundfor )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(rtype2)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
@ -2425,7 +2425,7 @@ static MACHINE_DRIVER_START( kengo )
|
||||
MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
|
||||
MDRV_GFXDECODE(rtype2)
|
||||
MDRV_PALETTE_LENGTH(512)
|
||||
|
||||
|
||||
MDRV_SCREEN_ADD("main", 0)
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
|
||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
|
@ -1,11 +1,11 @@
|
||||
/***************************************************************************
|
||||
|
||||
TODO:
|
||||
- start up sound (Sound #2 should play but does not
|
||||
- start up sound (Sound #2 should play but does not
|
||||
|
||||
Done:
|
||||
- discrete sound
|
||||
- hooked up z80dma
|
||||
- hooked up z80dma
|
||||
- combined memory maps
|
||||
- statics in mario_state struct
|
||||
- fixed save state issues
|
||||
@ -361,7 +361,7 @@ static MACHINE_DRIVER_START( mario_base )
|
||||
MDRV_CPU_PROGRAM_MAP(mario_map, 0)
|
||||
MDRV_CPU_IO_MAP(0,mario_writeport)
|
||||
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
|
||||
|
||||
|
||||
MDRV_MACHINE_START(mario)
|
||||
MDRV_MACHINE_RESET(mario)
|
||||
|
||||
@ -381,7 +381,7 @@ MACHINE_DRIVER_END
|
||||
static MACHINE_DRIVER_START( mario )
|
||||
|
||||
/* basic machine hardware */
|
||||
MDRV_IMPORT_FROM(mario_base )
|
||||
MDRV_IMPORT_FROM(mario_base )
|
||||
|
||||
/* sound hardware */
|
||||
MDRV_IMPORT_FROM(mario_audio)
|
||||
@ -391,13 +391,13 @@ MACHINE_DRIVER_END
|
||||
static MACHINE_DRIVER_START( masao )
|
||||
|
||||
/* basic machine hardware */
|
||||
MDRV_IMPORT_FROM(mario_base )
|
||||
|
||||
MDRV_IMPORT_FROM(mario_base )
|
||||
|
||||
MDRV_CPU_REPLACE("main", Z80, 4000000) /* 4.000 MHz (?) */
|
||||
MDRV_CPU_PROGRAM_MAP(masao_map, 0)
|
||||
MDRV_CPU_IO_MAP(0,mario_writeport)
|
||||
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
|
||||
|
||||
|
||||
/* sound hardware */
|
||||
MDRV_IMPORT_FROM(masao_audio)
|
||||
MACHINE_DRIVER_END
|
||||
|
@ -1,11 +1,11 @@
|
||||
/****************************************************************************
|
||||
|
||||
Paranoia
|
||||
Driver by Mariusz Wojcieszek
|
||||
Paranoia
|
||||
Driver by Mariusz Wojcieszek
|
||||
|
||||
Notes:
|
||||
- jamma interface is not emulated, hence the game is marked as 'not working'
|
||||
- rom mapping, memory maps and clocks for jamma interface cpus are probably not correct
|
||||
Notes:
|
||||
- jamma interface is not emulated, hence the game is marked as 'not working'
|
||||
- rom mapping, memory maps and clocks for jamma interface cpus are probably not correct
|
||||
|
||||
Paranoia by Naxat Soft 1990
|
||||
|
||||
@ -23,7 +23,7 @@ Winbond WF19054
|
||||
|
||||
Sound : Nec D8085AHC + Nec D8155HC
|
||||
|
||||
This board has also :
|
||||
This board has also :
|
||||
|
||||
HuC6260A (Hudson)
|
||||
HuC6270 (Hudson)
|
||||
|
@ -2121,14 +2121,14 @@ static ADDRESS_MAP_START( rdx_v33_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x00434, 0x00435) AM_READ(rdx_v33_unknown_r)
|
||||
AM_RANGE(0x00436, 0x00437) AM_READ(rdx_v33_unknown_r)
|
||||
|
||||
// AM_RANGE(0x00620, 0x00621) AM_WRITE(scroll_w) // scroll1
|
||||
// AM_RANGE(0x00622, 0x00623) AM_WRITE(scroll_w) // scroll1
|
||||
// AM_RANGE(0x00620, 0x00621) AM_WRITE(scroll_w) // scroll1
|
||||
// AM_RANGE(0x00622, 0x00623) AM_WRITE(scroll_w) // scroll1
|
||||
|
||||
// AM_RANGE(0x00624, 0x00625) AM_WRITE(scroll_w) // scroll2
|
||||
// AM_RANGE(0x00626, 0x00627) AM_WRITE(scroll_w) // scroll2
|
||||
// AM_RANGE(0x00624, 0x00625) AM_WRITE(scroll_w) // scroll2
|
||||
// AM_RANGE(0x00626, 0x00627) AM_WRITE(scroll_w) // scroll2
|
||||
|
||||
// AM_RANGE(0x00628, 0x00629) AM_WRITE(scroll_w) // scroll3
|
||||
// AM_RANGE(0x0062a, 0x0062b) AM_WRITE(scroll_w) // scroll3
|
||||
// AM_RANGE(0x00628, 0x00629) AM_WRITE(scroll_w) // scroll3
|
||||
// AM_RANGE(0x0062a, 0x0062b) AM_WRITE(scroll_w) // scroll3
|
||||
|
||||
AM_RANGE(0x006b0, 0x006b1) AM_WRITE(mcu_prog_w)
|
||||
AM_RANGE(0x006b2, 0x006b3) AM_WRITE(mcu_prog_w2)
|
||||
@ -2137,9 +2137,9 @@ static ADDRESS_MAP_START( rdx_v33_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
|
||||
AM_RANGE(0x006bc, 0x006bd) AM_WRITE(mcu_prog_offs_w)
|
||||
|
||||
// AM_RANGE(0x006d8, 0x006d9) AM_WRITE(bbbbll_w) // scroll?
|
||||
// AM_RANGE(0x006d8, 0x006d9) AM_WRITE(bbbbll_w) // scroll?
|
||||
AM_RANGE(0x006dc, 0x006dd) AM_READ(rdx_v33_unknown2_r)
|
||||
// AM_RANGE(0x006de, 0x006df) AM_WRITE(mcu_unkaa_w) // mcu command related?
|
||||
// AM_RANGE(0x006de, 0x006df) AM_WRITE(mcu_unkaa_w) // mcu command related?
|
||||
|
||||
AM_RANGE(0x00700, 0x00701) AM_WRITE(rdx_v33_eeprom_w)
|
||||
|
||||
|
@ -336,9 +336,9 @@ static const gfx_layout sauro_spritelayout =
|
||||
16*16 /* every sprite takes 32 consecutive bytes */
|
||||
};
|
||||
|
||||
const struct sp0256_interface sauro_sp256 =
|
||||
const struct sp0256_interface sauro_sp256 =
|
||||
{
|
||||
lrq_callback,
|
||||
lrq_callback,
|
||||
0,
|
||||
REGION_SOUND1};
|
||||
|
||||
|
@ -1605,10 +1605,10 @@ INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( ad2083 )
|
||||
/* There are no Player 2 controls for this game:
|
||||
* Dipswitch is read upon startup. If Cabinet = Cocktail, a 1 is stored @400F.
|
||||
* 400F in turn is only read just before Player 2 turn. If 400F=1 then flip line
|
||||
* is set. That is all. If there is a dedicated player 2 input,
|
||||
* it must be multiplexed by flip line. */
|
||||
* Dipswitch is read upon startup. If Cabinet = Cocktail, a 1 is stored @400F.
|
||||
* 400F in turn is only read just before Player 2 turn. If 400F=1 then flip line
|
||||
* is set. That is all. If there is a dedicated player 2 input,
|
||||
* it must be multiplexed by flip line. */
|
||||
PORT_START
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
@ -1407,7 +1407,7 @@ DRIVER_INIT(decathlt)
|
||||
|
||||
static READ32_HANDLER( nameclv3_speedup_r )
|
||||
{
|
||||
if (activecpu_get_pc()==0x601eb4e) cpu_spinuntil_time(ATTOTIME_IN_USEC(30));
|
||||
if (activecpu_get_pc()==0x601eb4e) cpu_spinuntil_time(ATTOTIME_IN_USEC(30));
|
||||
return stv_workram_h[0x0452c0/4];
|
||||
}
|
||||
|
||||
|
@ -530,7 +530,7 @@ static INPUT_PORTS_START( cyclwarr )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
|
||||
|
||||
|
||||
PORT_START
|
||||
PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:1")
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
|
@ -3510,7 +3510,7 @@ static MACHINE_DRIVER_START( truxton2 )
|
||||
|
||||
MDRV_SOUND_ADD(YM2151, XTAL_28MHz/8) /* verified on pcb */
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
|
||||
MDRV_SOUND_ADD(OKIM6295, XTAL_16MHz/4) /* verified on pcb */
|
||||
MDRV_SOUND_CONFIG(okim6295_interface_region_1_pin7low) /* verified on pcb */
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
@ -9,8 +9,8 @@
|
||||
* Buggy Boy (1985)
|
||||
* Buggy Boy Junior (1986)
|
||||
|
||||
ROMs wanted:
|
||||
* TX-1 V8 (1984)
|
||||
ROMs wanted:
|
||||
* TX-1 V8 (1984)
|
||||
|
||||
Notes:
|
||||
* 'buggyboy' and 'tx1' are preliminary
|
||||
|
@ -1,8 +1,8 @@
|
||||
/*
|
||||
|
||||
United Amusement PC-Engine based hardware
|
||||
Driver by Mariusz Wojcieszek
|
||||
Thanks for Charles MacDonald for hardware docs
|
||||
United Amusement PC-Engine based hardware
|
||||
Driver by Mariusz Wojcieszek
|
||||
Thanks for Charles MacDonald for hardware docs
|
||||
|
||||
Overview
|
||||
|
||||
@ -40,7 +40,7 @@ static WRITE8_HANDLER( jamma_if_control_latch_w )
|
||||
|
||||
if ( diff & 0x40 )
|
||||
{
|
||||
cpunum_set_input_line(0, INPUT_LINE_RESET, (data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
cpunum_set_input_line(0, INPUT_LINE_RESET, (data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
}
|
||||
|
||||
// bit 3 - enable 752 Hz (D-3) square wave output
|
||||
@ -118,7 +118,7 @@ ADDRESS_MAP_START( z80_map, ADDRESS_SPACE_PROGRAM, 8)
|
||||
AM_RANGE( 0x0800, 0x0FFF) AM_RAM
|
||||
AM_RANGE( 0x1000, 0x17FF) AM_WRITE( jamma_if_control_latch_w )
|
||||
AM_RANGE( 0x1800, 0x1FFF) AM_READ( jamma_if_read_dsw )
|
||||
AM_RANGE( 0x2000, 0x27FF) AM_READ( port_tag_to_handler8( "COIN" ) )
|
||||
AM_RANGE( 0x2000, 0x27FF) AM_READ( port_tag_to_handler8( "COIN" ) )
|
||||
AM_RANGE( 0x2800, 0x2FFF) AM_READ( jamma_if_control_latch_r )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -664,12 +664,12 @@ static MACHINE_DRIVER_START( zaccaria )
|
||||
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
|
||||
|
||||
MDRV_CPU_ADD(M6802,XTAL_3_579545MHz/4) /* verified on pcb */
|
||||
/* audio CPU */
|
||||
/* audio CPU */
|
||||
MDRV_CPU_PROGRAM_MAP(sound_readmem1,sound_writemem1)
|
||||
MDRV_CPU_PERIODIC_INT(zaccaria_cb1_toggle,(double)3580000/4096)
|
||||
|
||||
MDRV_CPU_ADD(M6802,XTAL_3_579545MHz/4) /* verified on pcb */
|
||||
/* audio CPU */
|
||||
/* audio CPU */
|
||||
MDRV_CPU_PROGRAM_MAP(sound_readmem2,sound_writemem2)
|
||||
|
||||
MDRV_SCREEN_REFRESH_RATE(60)
|
||||
@ -707,8 +707,8 @@ static MACHINE_DRIVER_START( zaccaria )
|
||||
MDRV_SOUND_ADD(DAC, 0)
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MDRV_SOUND_ADD(TMS5220, XTAL_640kHz)
|
||||
/* not right, frequency measured is 560khz. There is no resonator, the clock is obtained from discrete components. We wait for schematics */
|
||||
MDRV_SOUND_ADD(TMS5220, XTAL_640kHz)
|
||||
/* not right, frequency measured is 560khz. There is no resonator, the clock is obtained from discrete components. We wait for schematics */
|
||||
MDRV_SOUND_CONFIG(tms5220_interface)
|
||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_DRIVER_END
|
||||
|
@ -40,7 +40,7 @@ struct _mario_state
|
||||
|
||||
/* sound state */
|
||||
UINT8 last;
|
||||
UINT8 portT;
|
||||
UINT8 portT;
|
||||
|
||||
/* video state */
|
||||
UINT8 gfx_bank;
|
||||
|
@ -405,26 +405,26 @@ static UINT16 *umk3_palette;
|
||||
static WRITE16_HANDLER( umk3_palette_hack_w )
|
||||
{
|
||||
/*
|
||||
UMK3 uses a circular buffer to hold pending palette changes; the buffer holds 17 entries
|
||||
total, and the buffer is processed/cleared during the video interrupt. Most of the time,
|
||||
17 entries is enough. However, when characters are unlocked, or a number of characters are
|
||||
being displayed, the circular buffer sometimes wraps, losing the first 17 palette changes.
|
||||
|
||||
This bug manifests itself on a real PCB, but only rarely; whereas in MAME, it manifests
|
||||
itself very frequently. This is due to the fact that the instruction timing for the TMS34010
|
||||
is optimistic and assumes that the instruction cache is always fully populated. Without
|
||||
full cache level emulation of the chip, there is no hope of fixing this issue without a
|
||||
hack.
|
||||
|
||||
Thus, the hack. To slow down the CPU when it is adding palette entries to the list, we
|
||||
install this write handler on the memory locations where the start/end circular buffer
|
||||
pointers live. Each time they are written to, we penalize the main CPU a number of cycles.
|
||||
Although not realistic, this is sufficient to reduce the frequency of incorrect colors
|
||||
without significantly impacting the rest of the system.
|
||||
*/
|
||||
UMK3 uses a circular buffer to hold pending palette changes; the buffer holds 17 entries
|
||||
total, and the buffer is processed/cleared during the video interrupt. Most of the time,
|
||||
17 entries is enough. However, when characters are unlocked, or a number of characters are
|
||||
being displayed, the circular buffer sometimes wraps, losing the first 17 palette changes.
|
||||
|
||||
This bug manifests itself on a real PCB, but only rarely; whereas in MAME, it manifests
|
||||
itself very frequently. This is due to the fact that the instruction timing for the TMS34010
|
||||
is optimistic and assumes that the instruction cache is always fully populated. Without
|
||||
full cache level emulation of the chip, there is no hope of fixing this issue without a
|
||||
hack.
|
||||
|
||||
Thus, the hack. To slow down the CPU when it is adding palette entries to the list, we
|
||||
install this write handler on the memory locations where the start/end circular buffer
|
||||
pointers live. Each time they are written to, we penalize the main CPU a number of cycles.
|
||||
Although not realistic, this is sufficient to reduce the frequency of incorrect colors
|
||||
without significantly impacting the rest of the system.
|
||||
*/
|
||||
COMBINE_DATA(&umk3_palette[offset]);
|
||||
activecpu_adjust_icount(-100);
|
||||
/* printf("in=%04X%04X out=%04X%04X\n", umk3_palette[3], umk3_palette[2], umk3_palette[1], umk3_palette[0]); */
|
||||
/* printf("in=%04X%04X out=%04X%04X\n", umk3_palette[3], umk3_palette[2], umk3_palette[1], umk3_palette[0]); */
|
||||
}
|
||||
|
||||
static void init_mk3_common(void)
|
||||
|
@ -50,7 +50,7 @@ READ8_HANDLER ( pce_joystick_r )
|
||||
{
|
||||
UINT8 ret;
|
||||
int data;
|
||||
|
||||
|
||||
if ( pce_joystick_readinputport_callback != NULL )
|
||||
{
|
||||
data = pce_joystick_readinputport_callback();
|
||||
|
@ -517,14 +517,14 @@ static void tx1_update_state(void)
|
||||
TX1_SET_INS0_BIT;
|
||||
|
||||
if ( math.mux == TX1_SEL_DSELOE )
|
||||
{
|
||||
{
|
||||
int dsel = (math.inslatch >> 8) & TX1_DSEL;
|
||||
int tfad = (math.inslatch & 0x1c00) << 1;
|
||||
int sd = math.ppshift;
|
||||
int o4;
|
||||
UINT16 data;
|
||||
|
||||
o4 =
|
||||
|
||||
o4 =
|
||||
(!BIT(sd, 9) && !BIT(sd,10)) ||
|
||||
( BIT(sd, 7) && BIT(sd,10)) ||
|
||||
(!BIT(sd, 8) && BIT(sd, 9)) ||
|
||||
@ -551,13 +551,13 @@ static void tx1_update_state(void)
|
||||
/*
|
||||
TODO: Changed ppshift to muxlatch for TX-1
|
||||
|
||||
/TMPLD1: /LHIEN
|
||||
/TMPLD2: /LLOEN.!O4 + (/LHIEN.O4)
|
||||
/TMPLD3: /LLOEN
|
||||
O4: !SD9.!SD10./LMSEL + SD7.SD10./LMSEL +
|
||||
!SD8.SD9./LMSEL + !SD7.SD8./LMSEL +
|
||||
/LMSEL./DSEL1 + /LMSEL.TFAD13 + /LMSEL.TFAD12 + /LMSEL.TFAD11
|
||||
*/
|
||||
/TMPLD1: /LHIEN
|
||||
/TMPLD2: /LLOEN.!O4 + (/LHIEN.O4)
|
||||
/TMPLD3: /LLOEN
|
||||
O4: !SD9.!SD10./LMSEL + SD7.SD10./LMSEL +
|
||||
!SD8.SD9./LMSEL + !SD7.SD8./LMSEL +
|
||||
/LMSEL./DSEL1 + /LMSEL.TFAD13 + /LMSEL.TFAD12 + /LMSEL.TFAD11
|
||||
*/
|
||||
else if ( LHIEN(math.inslatch) || LLOEN(math.inslatch) )
|
||||
{
|
||||
UINT16 data;
|
||||
@ -587,19 +587,19 @@ static void tx1_update_state(void)
|
||||
else
|
||||
{
|
||||
/*
|
||||
/TMPLD1: /LHIEN
|
||||
/TMPLD2: /LLOEN.!O4 + /LHIEN.O4
|
||||
/TMPLD3: /LLOEN
|
||||
O4: !SD9.!SD10./LMSEL + SD7.SD10./LMSEL +
|
||||
!SD8.SD9./LMSEL + !SD7.SD8./LMSEL +
|
||||
/LMSEL./DSEL1 + /LMSEL.TFAD13 + /LMSEL.TFAD12 + /LMSEL.TFAD11
|
||||
*/
|
||||
/TMPLD1: /LHIEN
|
||||
/TMPLD2: /LLOEN.!O4 + /LHIEN.O4
|
||||
/TMPLD3: /LLOEN
|
||||
O4: !SD9.!SD10./LMSEL + SD7.SD10./LMSEL +
|
||||
!SD8.SD9./LMSEL + !SD7.SD8./LMSEL +
|
||||
/LMSEL./DSEL1 + /LMSEL.TFAD13 + /LMSEL.TFAD12 + /LMSEL.TFAD11
|
||||
*/
|
||||
int dsel = (math.inslatch >> 8) & TX1_DSEL;
|
||||
int tfad = (math.inslatch & 0x1c00) << 1;
|
||||
int sd = math.ppshift;
|
||||
int o4;
|
||||
|
||||
o4 =
|
||||
|
||||
o4 =
|
||||
(!BIT(sd, 9) && !BIT(sd,10)) ||
|
||||
( BIT(sd, 7) && BIT(sd,10)) ||
|
||||
(!BIT(sd, 8) && BIT(sd, 9)) ||
|
||||
@ -615,7 +615,7 @@ static void tx1_update_state(void)
|
||||
{
|
||||
// TMPLD11-5
|
||||
math.muxlatch &= 0xf01f;
|
||||
math.muxlatch |= data & 0x0fe0;
|
||||
math.muxlatch |= data & 0x0fe0;
|
||||
}
|
||||
}
|
||||
else if ( LHIEN(math.inslatch) )
|
||||
@ -627,7 +627,7 @@ static void tx1_update_state(void)
|
||||
{
|
||||
// TMPLD11-5
|
||||
math.muxlatch &= 0xf01f;
|
||||
math.muxlatch |= data & 0x0fe0;
|
||||
math.muxlatch |= data & 0x0fe0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -690,12 +690,12 @@ READ16_HANDLER( tx1_math_r )
|
||||
int tfad = (math.inslatch & 0x1c00) << 1;
|
||||
int sd = math.ppshift;
|
||||
int o4;
|
||||
|
||||
|
||||
if ( math.mux == TX1_SEL_LMSEL )
|
||||
o4 = 0;
|
||||
else
|
||||
{
|
||||
o4 =
|
||||
o4 =
|
||||
(!BIT(sd, 9) && !BIT(sd,10)) ||
|
||||
( BIT(sd, 7) && BIT(sd,10)) ||
|
||||
(!BIT(sd, 8) && BIT(sd, 9)) ||
|
||||
@ -838,10 +838,10 @@ WRITE16_HANDLER( tx1_math_w )
|
||||
{
|
||||
|
||||
/*
|
||||
/TMPLD1: 0
|
||||
/TMPLD2: 0
|
||||
/TMPLD3: 0
|
||||
*/
|
||||
/TMPLD1: 0
|
||||
/TMPLD2: 0
|
||||
/TMPLD3: 0
|
||||
*/
|
||||
math.muxlatch = math.cpulatch;
|
||||
}
|
||||
|
||||
@ -938,7 +938,7 @@ READ16_HANDLER( tx1_spcs_ram_r )
|
||||
}
|
||||
else if ( math.mux == TX1_SEL_PPSEN )
|
||||
{
|
||||
// math.ppshift = math.retval & 0x3fff;
|
||||
// math.ppshift = math.retval & 0x3fff;
|
||||
math.ppshift = math.cpulatch;
|
||||
}
|
||||
else if ( math.mux == TX1_SEL_PSSEN )
|
||||
|
@ -135,7 +135,7 @@ VIDEO_START( atarisy2 )
|
||||
/* reset the statics */
|
||||
yscroll_reset_timer = timer_alloc(reset_yscroll_callback, NULL);
|
||||
videobank = 0;
|
||||
|
||||
|
||||
/* save states */
|
||||
state_save_register_global_array(playfield_tile_bank);
|
||||
state_save_register_global(videobank);
|
||||
|
@ -636,9 +636,9 @@ VIDEO_START( scramble )
|
||||
{
|
||||
video_start_galaxian_plain(machine);
|
||||
|
||||
/* FIXME: This most probably needs to be adjusted
|
||||
* again when RAW video params are added to scramble
|
||||
*/
|
||||
/* FIXME: This most probably needs to be adjusted
|
||||
* again when RAW video params are added to scramble
|
||||
*/
|
||||
tilemap_set_scrolldx(bg_tilemap, 0, 0);
|
||||
|
||||
draw_stars = scramble_draw_stars;
|
||||
|
@ -201,7 +201,7 @@ VIDEO_UPDATE( mario )
|
||||
{
|
||||
mario_state *state = machine->driver_data;
|
||||
int t;
|
||||
|
||||
|
||||
t = readinputportbytag("MONITOR");
|
||||
if (t != state->monitor)
|
||||
{
|
||||
|
@ -287,7 +287,7 @@ static void dma_draw(UINT16 command)
|
||||
UINT16 pal = dma_state.palette;
|
||||
UINT16 color = pal | dma_state.color;
|
||||
int x, y;
|
||||
|
||||
|
||||
/* we only need the low 4 bits of the command */
|
||||
command &= 0x0f;
|
||||
|
||||
@ -309,13 +309,13 @@ static void dma_draw(UINT16 command)
|
||||
/* check for overruns if they are relevant */
|
||||
if (o >= 0x06000000 && command < 0x0c)
|
||||
continue;
|
||||
|
||||
|
||||
/* switch off the zero/non-zero options */
|
||||
switch (command)
|
||||
{
|
||||
case 0x00: /* draw nothing */
|
||||
break;
|
||||
|
||||
|
||||
case 0x01: /* draw only 0 pixels */
|
||||
for (x = 0; x < width; x++, tx += dx)
|
||||
if (base[o++] == 0)
|
||||
@ -330,19 +330,19 @@ static void dma_draw(UINT16 command)
|
||||
dest[tx] = pal | pixel;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 0x03: /* draw all pixels */
|
||||
for (x = 0; x < width; x++, tx += dx)
|
||||
dest[tx] = pal | base[o++];
|
||||
break;
|
||||
|
||||
|
||||
case 0x04: /* color only 0 pixels */
|
||||
case 0x05: /* color only 0 pixels */
|
||||
for (x = 0; x < width; x++, tx += dx)
|
||||
if (base[o++] == 0)
|
||||
dest[tx] = color;
|
||||
break;
|
||||
|
||||
|
||||
case 0x06: /* color only 0 pixels, copy the rest */
|
||||
case 0x07: /* color only 0 pixels, copy the rest */
|
||||
for (x = 0; x < width; x++, tx += dx)
|
||||
@ -351,14 +351,14 @@ static void dma_draw(UINT16 command)
|
||||
dest[tx] = (pixel == 0) ? color : (pal | pixel);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 0x08: /* color only non-0 pixels */
|
||||
case 0x0a: /* color only non-0 pixels */
|
||||
for (x = 0; x < width; x++, tx += dx)
|
||||
if (base[o++] != 0)
|
||||
dest[tx] = color;
|
||||
break;
|
||||
|
||||
|
||||
case 0x09: /* color only non-0 pixels, copy the rest */
|
||||
case 0x0b: /* color only non-0 pixels, copy the rest */
|
||||
for (x = 0; x < width; x++, tx += dx)
|
||||
@ -367,7 +367,7 @@ static void dma_draw(UINT16 command)
|
||||
dest[tx] = (pixel != 0) ? color : (pal | pixel);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 0x0c: /* color all pixels */
|
||||
case 0x0d: /* color all pixels */
|
||||
case 0x0e: /* color all pixels */
|
||||
|
@ -273,7 +273,7 @@ static void tx1_draw_objects(mame_bitmap *bitmap, const rectangle *cliprect)
|
||||
/* TODO: Confirm against hardware? */
|
||||
if ( x_scale == 0 )
|
||||
continue;
|
||||
|
||||
|
||||
/* 16-bit y-scale accumulator */
|
||||
y_scale = tx1_objram[offs + 1];
|
||||
y_step = tx1_objram[offs + 3];
|
||||
|
@ -90,8 +90,8 @@ INTERRUPT_GEN( pce_interrupt )
|
||||
/* Check if we need to draw more just the overscan color */
|
||||
if ( vdc[0].current_segment == STATE_VDW ) {
|
||||
/* 0 - no sprite and background pixels drawn
|
||||
1 - background pixel drawn
|
||||
otherwise is 2 + sprite# */
|
||||
1 - background pixel drawn
|
||||
otherwise is 2 + sprite# */
|
||||
UINT8 drawn[VDC_WPF];
|
||||
/* our line buffer */
|
||||
UINT16 *line_buffer = BITMAP_ADDR16( vce.bmp, vce.current_bitmap_line, 86 );
|
||||
@ -130,8 +130,8 @@ INTERRUPT_GEN( sgx_interrupt )
|
||||
/* Check if we need to draw more just the overscan color */
|
||||
if ( vdc[0].current_segment == STATE_VDW ) {
|
||||
/* 0 - no sprite and background pixels drawn
|
||||
1 - background pixel drawn
|
||||
otherwise is 2 + sprite# */
|
||||
1 - background pixel drawn
|
||||
otherwise is 2 + sprite# */
|
||||
UINT8 drawn[2][512];
|
||||
UINT16 *line_buffer;
|
||||
UINT16 temp_buffer[2][512];
|
||||
@ -190,11 +190,11 @@ INTERRUPT_GEN( sgx_interrupt )
|
||||
}
|
||||
break;
|
||||
case 2: /* BG1 + SP1 => SP1
|
||||
BG0 + SP1 => BG0
|
||||
BG0 + BG1 => BG0
|
||||
BG0 + SP0 => SP0
|
||||
BG1 + SP0 => BG1
|
||||
SP0 + SP1 => SP0 */
|
||||
BG0 + SP1 => BG0
|
||||
BG0 + BG1 => BG0
|
||||
BG0 + SP0 => SP0
|
||||
BG1 + SP0 => BG1
|
||||
SP0 + SP1 => SP0 */
|
||||
if ( drawn[0][i] ) {
|
||||
if ( drawn[0][i] > 1 ) {
|
||||
if ( drawn[1][i] == 1 ) {
|
||||
@ -380,9 +380,9 @@ static void draw_black_line(int line)
|
||||
{
|
||||
int i;
|
||||
|
||||
/* our line buffer */
|
||||
/* our line buffer */
|
||||
UINT16 *line_buffer = BITMAP_ADDR16( vce.bmp, line, 0 );
|
||||
|
||||
|
||||
for( i=0; i< VDC_WPF; i++ )
|
||||
line_buffer[i] = get_black_pen( Machine );
|
||||
}
|
||||
@ -394,9 +394,9 @@ static void draw_overscan_line(int line)
|
||||
/* Are we in greyscale mode or in color mode? */
|
||||
int color_base = vce.vce_control & 0x80 ? 512 : 0;
|
||||
|
||||
/* our line buffer */
|
||||
/* our line buffer */
|
||||
UINT16 *line_buffer = BITMAP_ADDR16( vce.bmp, line, 0 );
|
||||
|
||||
|
||||
for ( i = 0; i < VDC_WPF; i++ )
|
||||
line_buffer[i] = Machine->pens[color_base + vce.vce_data[0x100].w];
|
||||
}
|
||||
@ -409,7 +409,7 @@ static void draw_sgx_overscan_line(int line) {
|
||||
|
||||
/* our line buffer */
|
||||
UINT16 *line_buffer = BITMAP_ADDR16( vce.bmp, line, 0 );
|
||||
|
||||
|
||||
for ( i = 0; i < VDC_WPF; i++ )
|
||||
line_buffer[i] = Machine->pens[color_base + vce.vce_data[0].w];
|
||||
}
|
||||
@ -475,13 +475,13 @@ static void vdc_w( int which, offs_t offset, UINT8 data )
|
||||
break;
|
||||
|
||||
case LENR:
|
||||
// logerror("LENR LSB = %02X\n", data);
|
||||
// logerror("LENR LSB = %02X\n", data);
|
||||
break;
|
||||
case SOUR:
|
||||
// logerror("SOUR LSB = %02X\n", data);
|
||||
// logerror("SOUR LSB = %02X\n", data);
|
||||
break;
|
||||
case DESR:
|
||||
// logerror("DESR LSB = %02X\n", data);
|
||||
// logerror("DESR LSB = %02X\n", data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@ -522,10 +522,10 @@ static void vdc_w( int which, offs_t offset, UINT8 data )
|
||||
vdc_do_dma( which );
|
||||
break;
|
||||
case SOUR:
|
||||
// logerror("SOUR MSB = %02X\n", data);
|
||||
// logerror("SOUR MSB = %02X\n", data);
|
||||
break;
|
||||
case DESR:
|
||||
// logerror("DESR MSB = %02X\n", data);
|
||||
// logerror("DESR MSB = %02X\n", data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@ -762,7 +762,7 @@ static void pce_refresh_sprites(int which, int line, UINT8 *drawn, UINT16 *line_
|
||||
/* Are we in greyscale mode or in color mode? */
|
||||
int color_base = vce.vce_control & 0x80 ? 512 : 0;
|
||||
|
||||
/* count up: Highest priority is Sprite 0 */
|
||||
/* count up: Highest priority is Sprite 0 */
|
||||
for(i=0; i<64; i++)
|
||||
{
|
||||
static const int cgy_table[] = {16, 32, 64, 64};
|
||||
@ -807,7 +807,7 @@ static void pce_refresh_sprites(int which, int line, UINT8 *drawn, UINT16 *line_
|
||||
vdc[which].status |= VDC_OR;
|
||||
if(vdc[which].vdc_data[CR].w&CR_OV)
|
||||
cpunum_set_input_line(0, 0, ASSERT_LINE);
|
||||
continue; /* Should cause an interrupt */
|
||||
continue; /* Should cause an interrupt */
|
||||
}
|
||||
|
||||
cgypos = (obj_l >> 4);
|
||||
@ -828,9 +828,9 @@ static void pce_refresh_sprites(int which, int line, UINT8 *drawn, UINT16 *line_
|
||||
if( drawn[pixel_x] < 2 ) {
|
||||
if( priority || drawn[pixel_x] == 0 ) {
|
||||
line_buffer[pixel_x] = Machine->pens[color_base + vce.vce_data[0x100 + (palette << 4) + buf[x]].w];
|
||||
if ( vdc[which].physical_width != 512 ) {
|
||||
if ( vdc[which].physical_width != 512 ) {
|
||||
int dp = 1;
|
||||
while ( pixel_x + dp < ( ( ( obj_x + x + 1 ) * 512 ) / vdc[which].physical_width ) ) {
|
||||
while ( pixel_x + dp < ( ( ( obj_x + x + 1 ) * 512 ) / vdc[which].physical_width ) ) {
|
||||
drawn[pixel_x + dp] = i + 2;
|
||||
line_buffer[pixel_x + dp] = Machine->pens[color_base + vce.vce_data[0x100 + (palette << 4) + buf[x]].w];
|
||||
dp++;
|
||||
@ -897,8 +897,8 @@ static void pce_refresh_sprites(int which, int line, UINT8 *drawn, UINT16 *line_
|
||||
}
|
||||
|
||||
/* 32 pixel wide sprites are counted as 2 sprites and the right half
|
||||
is only drawn if there are 2 open slots.
|
||||
*/
|
||||
is only drawn if there are 2 open slots.
|
||||
*/
|
||||
sprites_drawn++;
|
||||
if( sprites_drawn > 16 ) {
|
||||
vdc[which].status |= VDC_OR;
|
||||
@ -921,7 +921,7 @@ static void pce_refresh_sprites(int which, int line, UINT8 *drawn, UINT16 *line_
|
||||
line_buffer[pixel_x + dp] = Machine->pens[color_base + vce.vce_data[0x100 + (palette << 4) + buf[x]].w];
|
||||
dp++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
drawn[pixel_x] = i + 2;
|
||||
}
|
||||
@ -950,11 +950,11 @@ static void vdc_do_dma(int which)
|
||||
int src = vdc[which].vdc_data[SOUR].w;
|
||||
int dst = vdc[which].vdc_data[DESR].w;
|
||||
int len = vdc[which].vdc_data[LENR].w;
|
||||
|
||||
|
||||
int did = (vdc[which].vdc_data[DCR].w >> 3) & 1;
|
||||
int sid = (vdc[which].vdc_data[DCR].w >> 2) & 1;
|
||||
int dvc = (vdc[which].vdc_data[DCR].w >> 1) & 1;
|
||||
|
||||
|
||||
do {
|
||||
UINT8 l, h;
|
||||
|
||||
@ -966,14 +966,14 @@ static void vdc_do_dma(int which)
|
||||
|
||||
if(sid) src = (src - 1) & 0xFFFF;
|
||||
else src = (src + 1) & 0xFFFF;
|
||||
|
||||
|
||||
if(did) dst = (dst - 1) & 0xFFFF;
|
||||
else dst = (dst + 1) & 0xFFFF;
|
||||
|
||||
|
||||
len = (len - 1) & 0xFFFF;
|
||||
|
||||
|
||||
} while (len != 0xFFFF);
|
||||
|
||||
|
||||
vdc[which].status |= VDC_DV;
|
||||
vdc[which].vdc_data[SOUR].w = src;
|
||||
vdc[which].vdc_data[DESR].w = dst;
|
||||
@ -982,7 +982,7 @@ static void vdc_do_dma(int which)
|
||||
{
|
||||
cpunum_set_input_line(0, 0, ASSERT_LINE);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
static void vpc_update_prio_map( void ) {
|
||||
|
@ -127,14 +127,14 @@ INLINE void memory_lock_release(void)
|
||||
|
||||
//============================================================
|
||||
// malloc_file_line - debugging version of malloc which
|
||||
// accepts filename and line number
|
||||
// accepts filename and line number
|
||||
//============================================================
|
||||
|
||||
void *malloc_file_line(size_t size, const char *file, int line)
|
||||
{
|
||||
UINT8 *block_base;
|
||||
int id = current_id++;
|
||||
|
||||
|
||||
// perform global intialization if not already done
|
||||
global_init_if_not_done();
|
||||
|
||||
@ -201,7 +201,7 @@ void *CLIB_DECL malloc(size_t size)
|
||||
|
||||
//============================================================
|
||||
// calloc_file_line - debugging version of calloc which
|
||||
// accepts filename and line number
|
||||
// accepts filename and line number
|
||||
//============================================================
|
||||
|
||||
void *calloc_file_line(size_t size, size_t count, const char *file, int line)
|
||||
@ -229,7 +229,7 @@ void *CLIB_DECL calloc(size_t size, size_t count)
|
||||
|
||||
//============================================================
|
||||
// _calloc_crt - override for the _calloc_crt() function,
|
||||
// which is called by beginthreadex
|
||||
// which is called by beginthreadex
|
||||
//============================================================
|
||||
|
||||
void *CLIB_DECL _calloc_crt(size_t size, size_t count)
|
||||
@ -240,7 +240,7 @@ void *CLIB_DECL _calloc_crt(size_t size, size_t count)
|
||||
|
||||
//============================================================
|
||||
// realloc_file_line - debugging version of realloc which
|
||||
// accepts filename and line number
|
||||
// accepts filename and line number
|
||||
//============================================================
|
||||
|
||||
void *realloc_file_line(void *memory, size_t size, const char *file, int line)
|
||||
@ -348,7 +348,7 @@ void CLIB_DECL free(void *memory)
|
||||
|
||||
//============================================================
|
||||
// _msize - internal MSVC routine that returns the size of
|
||||
// a memory block
|
||||
// a memory block
|
||||
//============================================================
|
||||
|
||||
size_t CLIB_DECL _msize(void *memory)
|
||||
@ -380,7 +380,7 @@ size_t CLIB_DECL _msize(void *memory)
|
||||
|
||||
//============================================================
|
||||
// check_unfreed_mem - called from the exit path of any
|
||||
// code that wants to check for unfreed memory
|
||||
// code that wants to check for unfreed memory
|
||||
//============================================================
|
||||
|
||||
void check_unfreed_mem(void)
|
||||
@ -413,7 +413,7 @@ void check_unfreed_mem(void)
|
||||
|
||||
//============================================================
|
||||
// allocate_entry - allocate a new entry and link it into
|
||||
// the list of allocated memory
|
||||
// the list of allocated memory
|
||||
//============================================================
|
||||
|
||||
static memory_entry *allocate_entry(void)
|
||||
@ -466,7 +466,7 @@ static memory_entry *allocate_entry(void)
|
||||
|
||||
//============================================================
|
||||
// find_entry - find a memory_object entry in the list that
|
||||
// contains the given pointer
|
||||
// contains the given pointer
|
||||
//============================================================
|
||||
|
||||
static memory_entry *find_entry(void *pointer)
|
||||
@ -545,14 +545,14 @@ static void global_init(void)
|
||||
if (envstring == NULL || _ttoi(envstring) != 0)
|
||||
{
|
||||
INT8 allocshift;
|
||||
|
||||
|
||||
// loop from 256MB down to 4k (page size)
|
||||
for (allocshift = 8 + 20; allocshift >= 12; allocshift--)
|
||||
{
|
||||
// keep allocating address space at that size until we get something >4gb
|
||||
while ((UINT64)VirtualAlloc(NULL, (UINT64)1 << allocshift, MEM_RESERVE, PAGE_NOACCESS) < ((UINT64)1 << 32)) ;
|
||||
}
|
||||
|
||||
|
||||
// loop from 64k down
|
||||
for (allocshift = 6 + 10; allocshift >= 1; allocshift--)
|
||||
{
|
||||
|
@ -524,7 +524,7 @@ static int output_file(file_type type, int srcrootlen, int dstrootlen, const ast
|
||||
int quotes_are_linked = FALSE;
|
||||
char in_quotes = 0;
|
||||
int curcol = 0;
|
||||
|
||||
|
||||
/* start with the line number */
|
||||
dstptr += sprintf(dstptr, "<span style=\"" LINENUM_STYLE "\">%5d</span> ", linenum++);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user