mirror of
https://github.com/holub/mame
synced 2025-05-22 13:48:55 +03:00
Cleanups and version bump.
This commit is contained in:
parent
cf9d3c888d
commit
3b302a8bae
@ -53,23 +53,23 @@
|
||||
|
||||
**********************************************************************
|
||||
|
||||
Cheats are generally broken down into categories based on
|
||||
which actions are defined and whether or not there is a
|
||||
parameter present:
|
||||
|
||||
---- Actions -----
|
||||
On Off Run Chg Param? Type
|
||||
=== === === === ====== =================================
|
||||
N N N ? None Text-only (displays text in menu)
|
||||
Y N N ? None Oneshot (select to activate)
|
||||
Y Y N ? None On/Off (select to toggle)
|
||||
? ? Y ? None On/Off (select to toggle)
|
||||
Cheats are generally broken down into categories based on
|
||||
which actions are defined and whether or not there is a
|
||||
parameter present:
|
||||
|
||||
? N N Y Any Oneshot parameter (select to alter)
|
||||
? Y ? ? Value Value parameter (off or a live value)
|
||||
? ? Y ? Value Value parameter (off or a live value)
|
||||
? Y ? ? List Item list parameter (off or a live value)
|
||||
? ? Y ? List Item list parameter (off or a live value)
|
||||
---- Actions -----
|
||||
On Off Run Chg Param? Type
|
||||
=== === === === ====== =================================
|
||||
N N N ? None Text-only (displays text in menu)
|
||||
Y N N ? None Oneshot (select to activate)
|
||||
Y Y N ? None On/Off (select to toggle)
|
||||
? ? Y ? None On/Off (select to toggle)
|
||||
|
||||
? N N Y Any Oneshot parameter (select to alter)
|
||||
? Y ? ? Value Value parameter (off or a live value)
|
||||
? ? Y ? Value Value parameter (off or a live value)
|
||||
? Y ? ? List Item list parameter (off or a live value)
|
||||
? ? Y ? List Item list parameter (off or a live value)
|
||||
|
||||
*********************************************************************/
|
||||
|
||||
@ -245,9 +245,9 @@ static UINT64 execute_tobcd(void *globalref, void *ref, UINT32 params, const UIN
|
||||
|
||||
INLINE int is_text_only_cheat(const cheat_entry *cheat)
|
||||
{
|
||||
return (cheat->parameter == NULL &&
|
||||
cheat->script[SCRIPT_STATE_RUN] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_OFF] == NULL &&
|
||||
return (cheat->parameter == NULL &&
|
||||
cheat->script[SCRIPT_STATE_RUN] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_OFF] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_ON] == NULL);
|
||||
}
|
||||
|
||||
@ -260,8 +260,8 @@ INLINE int is_text_only_cheat(const cheat_entry *cheat)
|
||||
|
||||
INLINE int is_oneshot_cheat(const cheat_entry *cheat)
|
||||
{
|
||||
return (cheat->parameter == NULL &&
|
||||
cheat->script[SCRIPT_STATE_RUN] == NULL &&
|
||||
return (cheat->parameter == NULL &&
|
||||
cheat->script[SCRIPT_STATE_RUN] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_OFF] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_ON] != NULL);
|
||||
}
|
||||
@ -275,7 +275,7 @@ INLINE int is_oneshot_cheat(const cheat_entry *cheat)
|
||||
|
||||
INLINE int is_onoff_cheat(const cheat_entry *cheat)
|
||||
{
|
||||
return (cheat->parameter == NULL &&
|
||||
return (cheat->parameter == NULL &&
|
||||
(cheat->script[SCRIPT_STATE_RUN] != NULL ||
|
||||
(cheat->script[SCRIPT_STATE_OFF] != NULL &&
|
||||
cheat->script[SCRIPT_STATE_ON] != NULL)));
|
||||
@ -283,7 +283,7 @@ INLINE int is_onoff_cheat(const cheat_entry *cheat)
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
is_value_parameter_cheat - return TRUE if this
|
||||
is_value_parameter_cheat - return TRUE if this
|
||||
cheat entry has a parameter represented by an
|
||||
integer value
|
||||
-------------------------------------------------*/
|
||||
@ -295,7 +295,7 @@ INLINE int is_value_parameter_cheat(const cheat_entry *cheat)
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
is_itemlist_parameter_cheat - return TRUE if
|
||||
is_itemlist_parameter_cheat - return TRUE if
|
||||
this cheat entry has a parameter represented
|
||||
by an item list
|
||||
-------------------------------------------------*/
|
||||
@ -307,17 +307,17 @@ INLINE int is_itemlist_parameter_cheat(const cheat_entry *cheat)
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
is_oneshot_parameter_cheat - return TRUE if
|
||||
this cheat entry is a one-shot cheat with a
|
||||
parameter (no "run" or "off" actions, but a
|
||||
is_oneshot_parameter_cheat - return TRUE if
|
||||
this cheat entry is a one-shot cheat with a
|
||||
parameter (no "run" or "off" actions, but a
|
||||
valid "change" action)
|
||||
-------------------------------------------------*/
|
||||
|
||||
INLINE int is_oneshot_parameter_cheat(const cheat_entry *cheat)
|
||||
{
|
||||
return (cheat->parameter != NULL &&
|
||||
cheat->script[SCRIPT_STATE_RUN] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_OFF] == NULL &&
|
||||
return (cheat->parameter != NULL &&
|
||||
cheat->script[SCRIPT_STATE_RUN] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_OFF] == NULL &&
|
||||
cheat->script[SCRIPT_STATE_CHANGE] != NULL);
|
||||
}
|
||||
|
||||
@ -652,7 +652,7 @@ int cheat_select_previous_state(running_machine *machine, void *entry)
|
||||
cheat->parameter->value = cheat->parameter->minval;
|
||||
else
|
||||
cheat->parameter->value -= cheat->parameter->stepval;
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_CHANGE);
|
||||
changed = TRUE;
|
||||
}
|
||||
@ -680,7 +680,7 @@ int cheat_select_previous_state(running_machine *machine, void *entry)
|
||||
cheat->state = SCRIPT_STATE_RUN;
|
||||
}
|
||||
cheat->parameter->value = prev->value;
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_CHANGE);
|
||||
changed = TRUE;
|
||||
}
|
||||
@ -729,7 +729,7 @@ int cheat_select_next_state(running_machine *machine, void *entry)
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_ON);
|
||||
cheat->state = SCRIPT_STATE_RUN;
|
||||
cheat->parameter->value = cheat->parameter->minval;
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_CHANGE);
|
||||
changed = TRUE;
|
||||
}
|
||||
@ -739,7 +739,7 @@ int cheat_select_next_state(running_machine *machine, void *entry)
|
||||
cheat->parameter->value = cheat->parameter->maxval;
|
||||
else
|
||||
cheat->parameter->value += cheat->parameter->stepval;
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_CHANGE);
|
||||
changed = TRUE;
|
||||
}
|
||||
@ -755,7 +755,7 @@ int cheat_select_next_state(running_machine *machine, void *entry)
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_ON);
|
||||
cheat->state = SCRIPT_STATE_RUN;
|
||||
cheat->parameter->value = cheat->parameter->itemlist->value;
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_CHANGE);
|
||||
changed = TRUE;
|
||||
}
|
||||
@ -767,7 +767,7 @@ int cheat_select_next_state(running_machine *machine, void *entry)
|
||||
if (item->next != NULL)
|
||||
{
|
||||
cheat->parameter->value = item->next->value;
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
if (!is_oneshot_parameter_cheat(cheat))
|
||||
cheat_execute_script(cheatinfo, cheat, SCRIPT_STATE_CHANGE);
|
||||
changed = TRUE;
|
||||
}
|
||||
|
@ -726,16 +726,16 @@ static UINT32 compute_config_register(const mips3_state *mips)
|
||||
if (mips->flavor == MIPS3_TYPE_VR4300)
|
||||
{
|
||||
/*
|
||||
For VR43xx, Config is as follows:
|
||||
bit 31 = always 0
|
||||
bits 28-30 = EC
|
||||
bits 24-27 = EP
|
||||
bits 16-23 = always b0000010
|
||||
bit 15 = endian indicator as standard MIPS III
|
||||
bits 4-14 = always b11001000110
|
||||
bit 3 = CU
|
||||
bits 0-2 = K0 ("Coherency algorithm of kseg0")
|
||||
*/
|
||||
For VR43xx, Config is as follows:
|
||||
bit 31 = always 0
|
||||
bits 28-30 = EC
|
||||
bits 24-27 = EP
|
||||
bits 16-23 = always b0000010
|
||||
bit 15 = endian indicator as standard MIPS III
|
||||
bits 4-14 = always b11001000110
|
||||
bit 3 = CU
|
||||
bits 0-2 = K0 ("Coherency algorithm of kseg0")
|
||||
*/
|
||||
|
||||
configreg = 0x6460;
|
||||
}
|
||||
@ -750,7 +750,7 @@ static UINT32 compute_config_register(const mips3_state *mips)
|
||||
else if (mips->icache_size <= 0x20000) configreg |= 5 << 6;
|
||||
else if (mips->icache_size <= 0x40000) configreg |= 6 << 6;
|
||||
else configreg |= 7 << 6;
|
||||
|
||||
|
||||
/* set the instruction cache size */
|
||||
if (mips->icache_size <= 0x01000) configreg |= 0 << 9;
|
||||
else if (mips->icache_size <= 0x02000) configreg |= 1 << 9;
|
||||
@ -863,7 +863,7 @@ static void tlb_map_entry(mips3_state *mips, int tlbindex)
|
||||
}
|
||||
else
|
||||
{
|
||||
pfn = (lo >> 6) & 0x00ffffff;
|
||||
pfn = (lo >> 6) & 0x00ffffff;
|
||||
}
|
||||
|
||||
/* valid? */
|
||||
|
@ -82,7 +82,7 @@ void generic_machine_init(running_machine *machine)
|
||||
generic_nvram16 = NULL;
|
||||
generic_nvram32 = NULL;
|
||||
generic_nvram64 = NULL;
|
||||
|
||||
|
||||
/* reset memory card info */
|
||||
memcard_inserted = -1;
|
||||
|
||||
@ -244,7 +244,7 @@ INLINE void *nvram_select(void)
|
||||
if (generic_nvram32)
|
||||
return generic_nvram32;
|
||||
if (generic_nvram64)
|
||||
return generic_nvram64;
|
||||
return generic_nvram64;
|
||||
fatalerror("generic nvram handler called without nvram in the memory map");
|
||||
return 0;
|
||||
}
|
||||
|
@ -1322,7 +1322,7 @@ static void ide_controller_write(const device_config *device, int bank, offs_t o
|
||||
/* logit */
|
||||
if (BANK(bank, offset) != IDE_BANK0_DATA)
|
||||
LOG(("%s:IDE write to %d:%X = %08X, size=%d\n", cpuexec_describe_context(device->machine), bank, offset, data, size));
|
||||
// fprintf(stderr, "ide write %03x %02x size=%d\n", offset, data, size);
|
||||
// fprintf(stderr, "ide write %03x %02x size=%d\n", offset, data, size);
|
||||
switch (BANK(bank, offset))
|
||||
{
|
||||
/* unknown config register */
|
||||
|
@ -288,7 +288,7 @@ static const ay_ym_param ay8910_param =
|
||||
/*
|
||||
* RL = 2000, Based on Matthew Westcott's measurements from Dec 2001.
|
||||
* -------------------------------------------------------------------
|
||||
*
|
||||
*
|
||||
* http://groups.google.com/group/comp.sys.sinclair/browse_thread/thread/fb3091da4c4caf26/d5959a800cda0b5e?lnk=gst&q=Matthew+Westcott#d5959a800cda0b5e
|
||||
* After what Russell mentioned a couple of weeks back about the lack of
|
||||
* publicised measurements of AY chip volumes - I've finally got round to
|
||||
@ -318,7 +318,7 @@ static const ay_ym_param ay8910_param =
|
||||
* 14 2.32
|
||||
* 15 2.58
|
||||
* -------------------------------------------------------------------
|
||||
*
|
||||
*
|
||||
* The ZX spectrum output circuit was modelled in SwitcherCAD and
|
||||
* the resistor values below create the voltage levels above.
|
||||
* RD was measured on a real chip to be 8m Ohm, RU was 0.8m Ohm.
|
||||
@ -876,7 +876,7 @@ int ay8910_read_ym(void *chip)
|
||||
if (r > 15) return 0;
|
||||
|
||||
/* FIXME: calling stream_update here makes gyruss sound awfull.
|
||||
* For the time being, no idea why this is the case */
|
||||
* For the time being, no idea why this is the case */
|
||||
/* update the output buffer before returning the register */
|
||||
/* stream_update(psg->channel); */
|
||||
|
||||
|
@ -527,7 +527,7 @@ static chd_error read_sector_into_cache(cdrom_file *file, UINT32 lbasector, UINT
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
cdrom_parse_metadata - parse metadata into the
|
||||
cdrom_parse_metadata - parse metadata into the
|
||||
TOC structure
|
||||
-------------------------------------------------*/
|
||||
|
||||
@ -628,7 +628,7 @@ chd_error cdrom_write_metadata(chd_file *chd, const cdrom_toc *toc)
|
||||
{
|
||||
chd_error err;
|
||||
int i;
|
||||
|
||||
|
||||
/* write the metadata */
|
||||
for (i = 0; i < toc->numtrks; i++)
|
||||
{
|
||||
|
@ -1305,7 +1305,7 @@ chd_error chd_clone_metadata(chd_file *source, chd_file *dest)
|
||||
err = CHDERR_NONE;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
/* if that fit, just write it back from the temporary buffer */
|
||||
if (metasize <= sizeof(metabuffer))
|
||||
{
|
||||
@ -2513,14 +2513,14 @@ static chd_error metadata_compute_hash(chd_file *chd, const UINT8 *rawsha1, UINT
|
||||
UINT32 hashindex = 0;
|
||||
UINT32 hashalloc = 0;
|
||||
UINT64 offset, next;
|
||||
|
||||
|
||||
/* only works for V4 and above */
|
||||
if (chd->header.version < 4)
|
||||
{
|
||||
memcpy(finalsha1, rawsha1, SHA1_DIGEST_SIZE);
|
||||
return CHDERR_NONE;
|
||||
}
|
||||
|
||||
|
||||
/* loop until we run out of data */
|
||||
for (offset = chd->header.metaoffset; offset != 0; offset = next)
|
||||
{
|
||||
@ -2528,7 +2528,7 @@ static chd_error metadata_compute_hash(chd_file *chd, const UINT8 *rawsha1, UINT
|
||||
UINT32 count, metalength, metatag;
|
||||
UINT8 *tempbuffer;
|
||||
UINT8 metaflags;
|
||||
|
||||
|
||||
/* read the raw header */
|
||||
core_fseek(chd->file, offset, SEEK_SET);
|
||||
count = core_fread(chd->file, raw_meta_header, sizeof(raw_meta_header));
|
||||
@ -2543,11 +2543,11 @@ static chd_error metadata_compute_hash(chd_file *chd, const UINT8 *rawsha1, UINT
|
||||
/* flags are encoded in the high byte of length */
|
||||
metaflags = metalength >> 24;
|
||||
metalength &= 0x00ffffff;
|
||||
|
||||
|
||||
/* if not checksumming, continue */
|
||||
if (!(metaflags & CHD_MDFLAGS_CHECKSUM))
|
||||
continue;
|
||||
|
||||
|
||||
/* allocate memory */
|
||||
tempbuffer = (UINT8 *)malloc(metalength);
|
||||
if (tempbuffer == NULL)
|
||||
@ -2565,13 +2565,13 @@ static chd_error metadata_compute_hash(chd_file *chd, const UINT8 *rawsha1, UINT
|
||||
err = CHDERR_READ_ERROR;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
/* compute this entry's hash */
|
||||
sha1_init(&sha1);
|
||||
sha1_update(&sha1, metalength, tempbuffer);
|
||||
sha1_final(&sha1);
|
||||
free(tempbuffer);
|
||||
|
||||
|
||||
/* expand the hasharray if necessary */
|
||||
if (hashindex >= hashalloc)
|
||||
{
|
||||
@ -2583,16 +2583,16 @@ static chd_error metadata_compute_hash(chd_file *chd, const UINT8 *rawsha1, UINT
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* fill in the entry */
|
||||
put_bigendian_uint32(hasharray[hashindex].tag, metatag);
|
||||
sha1_digest(&sha1, SHA1_DIGEST_SIZE, hasharray[hashindex].sha1);
|
||||
hashindex++;
|
||||
}
|
||||
|
||||
|
||||
/* sort the array */
|
||||
qsort(hasharray, hashindex, sizeof(hasharray[0]), metadata_hash_compare);
|
||||
|
||||
|
||||
/* compute the SHA1 of the raw plus the various metadata */
|
||||
sha1_init(&sha1);
|
||||
sha1_update(&sha1, CHD_SHA1_BYTES, rawsha1);
|
||||
|
@ -688,8 +688,8 @@ const void *core_fbuffer(core_file *file)
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
core_fload - open a file with the specified
|
||||
filename, read it into memory, and return a
|
||||
core_fload - open a file with the specified
|
||||
filename, read it into memory, and return a
|
||||
pointer
|
||||
-------------------------------------------------*/
|
||||
|
||||
@ -698,12 +698,12 @@ file_error core_fload(const char *filename, void **data, UINT32 *length)
|
||||
core_file *file = NULL;
|
||||
file_error err;
|
||||
UINT64 size;
|
||||
|
||||
|
||||
/* attempt to open the file */
|
||||
err = core_fopen(filename, OPEN_FLAG_READ, &file);
|
||||
if (err != FILERR_NONE)
|
||||
return err;
|
||||
|
||||
|
||||
/* get the size */
|
||||
size = core_fsize(file);
|
||||
if ((UINT32)size != size)
|
||||
@ -711,12 +711,12 @@ file_error core_fload(const char *filename, void **data, UINT32 *length)
|
||||
core_fclose(file);
|
||||
return FILERR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
|
||||
/* allocate memory */
|
||||
*data = malloc(size);
|
||||
if (length != NULL)
|
||||
*length = (UINT32)size;
|
||||
|
||||
|
||||
/* read the data */
|
||||
if (core_fread(file, *data, size) != size)
|
||||
{
|
||||
|
@ -1343,8 +1343,8 @@ static const discrete_mixer_desc btime_sound_mixer_desc =
|
||||
|
||||
/* R49 has 4.7k in schematics, but listed as 47k in bill of material
|
||||
* 47k gives proper low pass filtering
|
||||
*
|
||||
* Anoid measured R49 to R52 on a Burger Time pcb. These are
|
||||
*
|
||||
* Anoid measured R49 to R52 on a Burger Time pcb. These are
|
||||
* listed below
|
||||
*/
|
||||
#define BTIME_R49 RES_K(47) /* pcb: 47.4k */
|
||||
|
@ -12,18 +12,18 @@ unneeded for now...)
|
||||
- clean-ups;
|
||||
|
||||
I/O Memo (http://bochs.sourceforge.net/techspec/PORTS.LST):
|
||||
46E8 ---- 8514/A and compatible video cards (e.g. ATI Graphics Ultra)
|
||||
46E8 w ROM page select
|
||||
83C0-83CF ---- Compaq QVision - Line Draw Engine
|
||||
83C4 ---- Compaq Qvision EISA - Virtual Controller Select
|
||||
83C6-83C9 ---- Compaq Qvision EISA - DAC color registers
|
||||
46E8 ---- 8514/A and compatible video cards (e.g. ATI Graphics Ultra)
|
||||
46E8 w ROM page select
|
||||
83C0-83CF ---- Compaq QVision - Line Draw Engine
|
||||
83C4 ---- Compaq Qvision EISA - Virtual Controller Select
|
||||
83C6-83C9 ---- Compaq Qvision EISA - DAC color registers
|
||||
|
||||
43c4 is a 83c4 mirror?
|
||||
|
||||
04D0-04D1 ---- EISA IRQ control
|
||||
00F0-00F5 ---- PCjr Disk Controller
|
||||
00F0-00F5 ---- PCjr Disk Controller
|
||||
(or)
|
||||
00F0-00FF ---- coprocessor (8087..80387)
|
||||
00F0-00FF ---- coprocessor (8087..80387)
|
||||
|
||||
=====================================================================================
|
||||
|
||||
|
@ -98,7 +98,7 @@ static ADDRESS_MAP_START( chsuper_prg_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0xfb000, 0xfbfff) AM_RAM AM_BASE(&generic_nvram) AM_SIZE(&generic_nvram_size)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
// AM_RANGE(0xaff8, 0xaff8) AM_DEVWRITE("oki", okim6295_w)
|
||||
// AM_RANGE(0xaff8, 0xaff8) AM_DEVWRITE("oki", okim6295_w)
|
||||
|
||||
static ADDRESS_MAP_START( chsuper_portmap, ADDRESS_SPACE_IO, 8 )
|
||||
AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs
|
||||
@ -208,7 +208,7 @@ static MACHINE_DRIVER_START( chsuper )
|
||||
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0, 30*8-1)
|
||||
|
||||
MDRV_NVRAM_HANDLER( generic_0fill )
|
||||
|
||||
|
||||
MDRV_GFXDECODE(chsuper)
|
||||
MDRV_PALETTE_LENGTH(0x100)
|
||||
|
||||
|
@ -88,7 +88,7 @@ static VIDEO_START( cntsteer )
|
||||
|
||||
tilemap_set_transparent_pen(fg_tilemap,0);
|
||||
|
||||
// tilemap_set_flip(bg_tilemap, TILEMAP_FLIPX | TILEMAP_FLIPY);
|
||||
// tilemap_set_flip(bg_tilemap, TILEMAP_FLIPX | TILEMAP_FLIPY);
|
||||
}
|
||||
|
||||
static VIDEO_START( zerotrgt )
|
||||
@ -98,7 +98,7 @@ static VIDEO_START( zerotrgt )
|
||||
|
||||
tilemap_set_transparent_pen(fg_tilemap,0);
|
||||
|
||||
// tilemap_set_flip(bg_tilemap, TILEMAP_FLIPX | TILEMAP_FLIPY);
|
||||
// tilemap_set_flip(bg_tilemap, TILEMAP_FLIPX | TILEMAP_FLIPY);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -226,22 +226,22 @@ static VIDEO_UPDATE( zerotrgt )
|
||||
|
||||
rot_val = rotation_sign ? (-rotation_x) : (rotation_x);
|
||||
|
||||
// popmessage("%d %02x %02x",rot_val,rotation_sign,rotation_x);
|
||||
// popmessage("%d %02x %02x",rot_val,rotation_sign,rotation_x);
|
||||
|
||||
if(rot_val > 90) { rot_val = 90; }
|
||||
if(rot_val < -90) { rot_val = -90; }
|
||||
|
||||
/*
|
||||
(u, v) = (a + cx + dy, b - dx + cy) when (x, y)=screen and (u, v) = tilemap
|
||||
*/
|
||||
(u, v) = (a + cx + dy, b - dx + cy) when (x, y)=screen and (u, v) = tilemap
|
||||
*/
|
||||
/*
|
||||
1
|
||||
0----|----0
|
||||
-1
|
||||
0
|
||||
0----|----1
|
||||
0
|
||||
*/
|
||||
1
|
||||
0----|----0
|
||||
-1
|
||||
0
|
||||
0----|----1
|
||||
0
|
||||
*/
|
||||
/*65536*z*cos(a), 65536*z*sin(a), -65536*z*sin(a), 65536*z*cos(a)*/
|
||||
p1 = -65536*1*cos(2*M_PI*(rot_val)/1024);
|
||||
p2 = -65536*1*sin(2*M_PI*(rot_val)/1024);
|
||||
@ -278,19 +278,19 @@ static VIDEO_UPDATE( cntsteer )
|
||||
|
||||
rot_val = (rotation_sign & 4) ? (rotation_x) : (-rotation_x);
|
||||
|
||||
// popmessage("%d %02x %02x",rot_val,rotation_sign,rotation_x);
|
||||
// popmessage("%d %02x %02x",rot_val,rotation_sign,rotation_x);
|
||||
|
||||
/*
|
||||
(u, v) = (a + cx + dy, b - dx + cy) when (x, y)=screen and (u, v) = tilemap
|
||||
*/
|
||||
(u, v) = (a + cx + dy, b - dx + cy) when (x, y)=screen and (u, v) = tilemap
|
||||
*/
|
||||
/*
|
||||
1
|
||||
0----|----0
|
||||
-1
|
||||
0
|
||||
0----|----1
|
||||
0
|
||||
*/
|
||||
1
|
||||
0----|----0
|
||||
-1
|
||||
0
|
||||
0----|----1
|
||||
0
|
||||
*/
|
||||
/*65536*z*cos(a), 65536*z*sin(a), -65536*z*sin(a), 65536*z*cos(a)*/
|
||||
p1 = -65536*1*cos(2*M_PI*(rot_val)/1024);
|
||||
p2 = -65536*1*sin(2*M_PI*(rot_val)/1024);
|
||||
@ -409,14 +409,14 @@ static WRITE8_HANDLER( zerotrgt_ctrl_w )
|
||||
static WRITE8_HANDLER( cntsteer_sub_irq_w )
|
||||
{
|
||||
cpu_set_input_line(space->machine->cpu[1], M6809_IRQ_LINE, ASSERT_LINE);
|
||||
// printf("%02x IRQ\n",data);
|
||||
// printf("%02x IRQ\n",data);
|
||||
}
|
||||
|
||||
static WRITE8_HANDLER( cntsteer_sub_nmi_w )
|
||||
{
|
||||
// if(data)
|
||||
// cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE);
|
||||
// popmessage("%02x",data);
|
||||
// if(data)
|
||||
// cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE);
|
||||
// popmessage("%02x",data);
|
||||
}
|
||||
|
||||
static WRITE8_HANDLER( cntsteer_main_irq_w )
|
||||
|
@ -404,7 +404,7 @@ static NVRAM_HANDLER( mlc )
|
||||
else
|
||||
{
|
||||
UINT8* defaultram = memory_region(machine, "defaults");
|
||||
|
||||
|
||||
if (defaultram)
|
||||
eeprom_set_data(defaultram, memory_region_length(machine, "defaults"));
|
||||
}
|
||||
@ -696,7 +696,7 @@ ROM_START( skullfnj )
|
||||
ROM_REGION( 0x800000, "ymz", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "mch-06.6a", 0x200000, 0x200000, CRC(b2efe4ae) SHA1(5a9dab74c2ba73a65e8f1419b897467804734fa2) )
|
||||
ROM_LOAD( "mch-07.11j", 0x400000, 0x200000, CRC(bc1a50a1) SHA1(3de191fbc92d2ae84e54263f1c70afec6ff7cc3c) )
|
||||
|
||||
|
||||
ROM_REGION( 0x80, "defaults", ROMREGION_ERASE00 )
|
||||
ROM_LOAD_OPTIONAL( "skullfng.eeprom", 0x00, 0x80, CRC(240d882e) SHA1(3c1a15ccac91d95b02a8c54b051aa64ff28ce2ab) )
|
||||
ROM_END
|
||||
|
@ -1211,7 +1211,7 @@ static WRITE16_HANDLER( jpmioawp_w )
|
||||
|
||||
case 0x02:
|
||||
{
|
||||
for (i=0; i<4; i++)
|
||||
for (i=0; i<4; i++)
|
||||
{
|
||||
stepper_update(i, (data >> i)& 0x0F );
|
||||
}
|
||||
@ -1219,7 +1219,7 @@ static WRITE16_HANDLER( jpmioawp_w )
|
||||
}
|
||||
case 0x04:
|
||||
{
|
||||
for (i=0; i<2; i++)
|
||||
for (i=0; i<2; i++)
|
||||
{
|
||||
stepper_update(i, (data >> (i + 4)& 0x0F ));
|
||||
}
|
||||
@ -1300,8 +1300,8 @@ static ADDRESS_MAP_START( awp68k_program_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x00480080, 0x00480081) AM_DEVWRITE("upd", upd7759_w)
|
||||
AM_RANGE(0x00480082, 0x00480083) AM_DEVWRITE("upd",volume_w)
|
||||
AM_RANGE(0x00480084, 0x00480085) AM_DEVREAD("upd", upd7759_r)
|
||||
// AM_RANGE(0x004801e0, 0x004801ff) AM_READWRITE(duart_2_r, duart_2_w)
|
||||
// AM_RANGE(0x00800000, 0x00800007) AM_READWRITE(m68k_tms_r, m68k_tms_w)
|
||||
// AM_RANGE(0x004801e0, 0x004801ff) AM_READWRITE(duart_2_r, duart_2_w)
|
||||
// AM_RANGE(0x00800000, 0x00800007) AM_READWRITE(m68k_tms_r, m68k_tms_w)
|
||||
AM_RANGE(0x00c00000, 0x00cfffff) AM_ROM
|
||||
AM_RANGE(0x00d00000, 0x00dfffff) AM_ROM
|
||||
AM_RANGE(0x00e00000, 0x00efffff) AM_ROM
|
||||
|
@ -1153,7 +1153,7 @@ ROM_START( resdnt_2 ) // 040513
|
||||
ROM_END
|
||||
|
||||
/*********************************************************
|
||||
Roll Fruit
|
||||
Roll Fruit
|
||||
**********************************************************/
|
||||
|
||||
ROM_START( rollfr ) // 030821
|
||||
|
@ -3191,20 +3191,20 @@ ROM_END
|
||||
|
||||
/*
|
||||
|
||||
Title VIRTUA TENNIS 2 (POWER SMASH 2)
|
||||
Media ID D72C
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0015A
|
||||
Version V2.000
|
||||
Release Date 20010827
|
||||
Title VIRTUA TENNIS 2 (POWER SMASH 2)
|
||||
Media ID D72C
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0015A
|
||||
Version V2.000
|
||||
Release Date 20010827
|
||||
Manufacturer ID
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2732 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2732 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
|
||||
PIC
|
||||
@ -3226,19 +3226,19 @@ ROM_START( vtennis2 )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
Title MONKEY_BALL
|
||||
Media ID 43EB
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0008
|
||||
Version V1.008
|
||||
Release Date 20010425
|
||||
Title MONKEY_BALL
|
||||
Media ID 43EB
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0008
|
||||
Version V1.008
|
||||
Release Date 20010425
|
||||
Manufacturer ID
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2732 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2732 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
|
||||
PIC
|
||||
@ -3274,20 +3274,20 @@ ROM_START( luptype )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
Title THE_MAZE_OF_THE_KINGS
|
||||
Media ID E3D0
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0022
|
||||
Version V1.001
|
||||
Release Date 20020306
|
||||
Title THE_MAZE_OF_THE_KINGS
|
||||
Media ID E3D0
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0022
|
||||
Version V1.001
|
||||
Release Date 20020306
|
||||
Manufacturer ID
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2732 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2732 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
|
||||
PIC
|
||||
@ -3320,20 +3320,20 @@ ROM_START( lupinsho )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
Title CONFIDENTIAL MISSION
|
||||
Media ID FFCA
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0001
|
||||
Version V1.050
|
||||
Release Date 20001011
|
||||
Manufacturer ID SEGA ENTERPRISES
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 3788 8558928
|
||||
track02.raw 3939 6071 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
Title CONFIDENTIAL MISSION
|
||||
Media ID FFCA
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0001
|
||||
Version V1.050
|
||||
Release Date 20001011
|
||||
Manufacturer ID SEGA ENTERPRISES
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 3788 8558928
|
||||
track02.raw 3939 6071 5016816
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
|
||||
PIC
|
||||
@ -3372,8 +3372,8 @@ static READ64_HANDLER( naomigd_bios_idle_skip_r )
|
||||
if (cpu_get_pc(space->cpu)==0xc04173c)
|
||||
cpu_spinuntil_time(space->cpu, ATTOTIME_IN_USEC(500));
|
||||
//cpu_spinuntil_int(space->cpu);
|
||||
// else
|
||||
// printf("%08x\n", cpu_get_pc(space->cpu));
|
||||
// else
|
||||
// printf("%08x\n", cpu_get_pc(space->cpu));
|
||||
|
||||
return naomi_ram64[0x2ad238/8];
|
||||
}
|
||||
@ -3416,8 +3416,8 @@ static READ64_HANDLER( naomigd_ggxxrl_idle_skip_r )
|
||||
if (cpu_get_pc(space->cpu)==0xc0b84bc) // or 0xc0bab0c
|
||||
cpu_spinuntil_time(space->cpu, ATTOTIME_IN_USEC(500));
|
||||
|
||||
//printf("%08x\n", cpu_get_pc(space->cpu));
|
||||
|
||||
//printf("%08x\n", cpu_get_pc(space->cpu));
|
||||
|
||||
return naomi_ram64[0x18d6c8/8];
|
||||
}
|
||||
|
||||
@ -3579,20 +3579,20 @@ ROM_END
|
||||
|
||||
/*
|
||||
|
||||
Title BEACH SPIKERS
|
||||
Media ID 0897
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0014
|
||||
Version V1.001
|
||||
Release Date 20010613
|
||||
Title BEACH SPIKERS
|
||||
Media ID 0897
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDS-0014
|
||||
Version V1.001
|
||||
Release Date 20010613
|
||||
Manufacturer ID
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2746 5049744
|
||||
track03.bin 45150 549299 1185760800
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 2746 5049744
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
PIC
|
||||
|
||||
@ -3603,7 +3603,7 @@ PIC
|
||||
|
||||
ROM_START( beachspi )
|
||||
NAOMI2_BIOS
|
||||
// NAOMIGD_BIOS
|
||||
// NAOMIGD_BIOS
|
||||
|
||||
ROM_REGION( 0x10000000, "user1", ROMREGION_ERASE) // allocate max size in init instead?
|
||||
|
||||
@ -3618,7 +3618,7 @@ ROM_END
|
||||
|
||||
ROM_START( initd )
|
||||
NAOMI2_BIOS
|
||||
// NAOMIGD_BIOS
|
||||
// NAOMIGD_BIOS
|
||||
|
||||
ROM_REGION( 0x10000000, "user1", ROMREGION_ERASE) // allocate max size in init instead?
|
||||
|
||||
@ -3633,7 +3633,7 @@ ROM_END
|
||||
|
||||
ROM_START( initdexp )
|
||||
NAOMI2_BIOS
|
||||
// NAOMIGD_BIOS
|
||||
// NAOMIGD_BIOS
|
||||
|
||||
ROM_REGION( 0x10000000, "user1", ROMREGION_ERASE) // allocate max size in init instead?
|
||||
|
||||
@ -3684,20 +3684,20 @@ ROM_END
|
||||
|
||||
/*
|
||||
|
||||
Title VIRTUA STRIKER 4
|
||||
Media ID 93B2
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDT-0015
|
||||
Version V1.001
|
||||
Release Date 20041202
|
||||
Title VIRTUA STRIKER 4
|
||||
Media ID 93B2
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDT-0015
|
||||
Version V1.001
|
||||
Release Date 20041202
|
||||
Manufacturer ID
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 1951 3179904
|
||||
track03.bin 45150 549299 1185760800
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 449 705600
|
||||
track02.raw 600 1951 3179904
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
|
||||
PIC
|
||||
@ -3720,14 +3720,14 @@ ROM_START( vs4 )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
Title VIRTUA_STRIKER_2002
|
||||
Media ID 0DD8
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDT-0002
|
||||
Version V1.005
|
||||
Release Date 20020730
|
||||
Title VIRTUA_STRIKER_2002
|
||||
Media ID 0DD8
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDT-0002
|
||||
Version V1.005
|
||||
Release Date 20020730
|
||||
|
||||
|
||||
PIC
|
||||
@ -3773,14 +3773,14 @@ ROM_END
|
||||
|
||||
/*
|
||||
|
||||
Title GHOST SQUAD
|
||||
Media ID 004F
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDX-0012A
|
||||
Version V2.000
|
||||
Release Date 20041209
|
||||
Title GHOST SQUAD
|
||||
Media ID 004F
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDX-0012A
|
||||
Version V2.000
|
||||
Release Date 20041209
|
||||
Manufacturer ID
|
||||
|
||||
PIC
|
||||
@ -3803,20 +3803,20 @@ ROM_END
|
||||
|
||||
/*
|
||||
|
||||
Title VIRTUA COP 3
|
||||
Media ID C4AD
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDX-0003A
|
||||
Version V2.004
|
||||
Release Date 20030226
|
||||
Title VIRTUA COP 3
|
||||
Media ID C4AD
|
||||
Media Config GD-ROM1/1
|
||||
Regions J
|
||||
Peripheral String 0000000
|
||||
Product Number GDX-0003A
|
||||
Version V2.004
|
||||
Release Date 20030226
|
||||
Manufacturer ID
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 599 1058400
|
||||
track02.raw 750 2101 3179904
|
||||
track03.bin 45150 549299 1185760800
|
||||
TOC DISC
|
||||
Track Start Sector End Sector Track Size
|
||||
track01.bin 150 599 1058400
|
||||
track02.raw 750 2101 3179904
|
||||
track03.bin 45150 549299 1185760800
|
||||
|
||||
|
||||
PIC
|
||||
|
@ -314,9 +314,9 @@ INPUT_PORTS_END
|
||||
-- some may be missing, there have been multiple CRCs reported for the same
|
||||
revision in some cases
|
||||
|
||||
The 'japan-hotel' BIOS is a dump of an MVS which could be found in some japanese
|
||||
hotels. it is a custom MVS mobo which uses MVS carts but it hasn't jamma
|
||||
connector and it's similar to a console with a coin mechanism, so it's a sort
|
||||
The 'japan-hotel' BIOS is a dump of an MVS which could be found in some japanese
|
||||
hotels. it is a custom MVS mobo which uses MVS carts but it hasn't jamma
|
||||
connector and it's similar to a console with a coin mechanism, so it's a sort
|
||||
of little coin op console installed in hotels.
|
||||
|
||||
****/
|
||||
|
@ -21,17 +21,17 @@
|
||||
Zsolt Vasvari
|
||||
|
||||
|
||||
The arcade version of the Neo-Geo system is called Multi Video System (MVS).
|
||||
It is a cartridge based system.
|
||||
MVS hardware was produced in 1 / 2 / 4 and 6 Slot versions.
|
||||
The arcade version of the Neo-Geo system is called Multi Video System (MVS).
|
||||
It is a cartridge based system.
|
||||
MVS hardware was produced in 1 / 2 / 4 and 6 Slot versions.
|
||||
|
||||
Known hardware (incomplete):
|
||||
============================
|
||||
Known hardware (incomplete):
|
||||
============================
|
||||
|
||||
1 Slot: MV1 / MV1A / MV1B (MV1B CHX) / MV1C / MV1F (MV1FT / MV1FS) / MV1FZ
|
||||
2 Slot: MV2F / MV2F-01
|
||||
4 Slot: MV4F / MV4FS
|
||||
6 Slot: MV6F
|
||||
1 Slot: MV1 / MV1A / MV1B (MV1B CHX) / MV1C / MV1F (MV1FT / MV1FS) / MV1FZ
|
||||
2 Slot: MV2F / MV2F-01
|
||||
4 Slot: MV4F / MV4FS
|
||||
6 Slot: MV6F
|
||||
|
||||
|
||||
Neo-Geo Motherboard (info - courtesy of Guru):
|
||||
@ -68,88 +68,88 @@
|
||||
|---------------------------------------------------------------------|
|
||||
|
||||
|
||||
MVS cart pinout
|
||||
===============
|
||||
MVS cart pinout
|
||||
===============
|
||||
|
||||
kindly submitted by Apollo69 (apollo69@columbus.rr.com)
|
||||
=================================================================
|
||||
CTRG1 CTRG2
|
||||
=================================================================
|
||||
GND = 01A | 01B = GND GND = 01A | 01B = GND
|
||||
GND = 02A | 02B = GND GND = 02A | 02B = GND
|
||||
P0 = 03A | 03B = P1 GND = 03A | 03B = GND
|
||||
P2 = 04A | 04B = P3 GND = 04A | 04B = GND
|
||||
P4 = 05A | 05B = P5 D0 = 05A | 05B = A1
|
||||
P6 = 06A | 06B = P7 D1 = 06A | 06B = A2
|
||||
P8 = 07A | 07B = P9 D2 = 07A | 07B = A3
|
||||
P10 = 08A | 08B = P11 D3 = 08A | 08B = A4
|
||||
P12 = 09A | 09B = P13 D4 = 09A | 09B = A5
|
||||
P14 = 10A | 10B = P15 D5 = 10A | 10B = A6
|
||||
P16 = 11A | 11B = P17 D6 = 11A | 11B = A7
|
||||
P18 = 12A | 12B = P19 D7 = 12A | 12B = A8
|
||||
P20 = 13A | 13B = P21 D8 = 13A | 13B = A9
|
||||
P22 = 14A | 14B = P23 D9 = 14A | 14B = A10
|
||||
PCK1B = 15A | 15B = 24M D10 = 15A | 15B = A11
|
||||
PCK2B = 16A | 16B = 12M D11 = 16A | 16B = A12
|
||||
2H1 = 17A | 17B = 8M D12 = 17A | 17B = A13
|
||||
CA4 = 18A | 18B = RESET D13 = 18A | 18B = A14
|
||||
CR0 = 19A | 19B = CR1 D14 = 19A | 19B = A15
|
||||
CR2 = 20A | 20B = CR3 D15 = 20A | 20B = A16
|
||||
CR4 = 21A | 21B = CR5 R/W = 21A | 21B = A17
|
||||
CR6 = 22A | 22B = CR7 AS = 22A | 22B = A18
|
||||
CR8 = 23A | 23B = CR9 ROMOEU = 23A | 23B = A19
|
||||
CR10 = 24A | 24B = CR11 ROMOEL = 24A | 24B = 68KCLKB
|
||||
CR12 = 25A | 25B = CR13 PORTOEU = 25A | 25B = ROMWAIT
|
||||
CR14 = 26A | 26B = CR15 PORTOEL = 26A | 26B = PWAIT0
|
||||
CR16 = 27A | 27B = CR17 PORTWEU = 27A | 27B = PWAIT1
|
||||
CR18 = 28A | 28B = CR19 PORTWEL = 28A | 28B = PDTACT
|
||||
VCC = 29A | 29B = VCC VCC = 29A | 29B = VCC
|
||||
VCC = 30A | 30B = VCC VCC = 30A | 30B = VCC
|
||||
VCC = 31A | 31B = VCC VCC = 31A | 31B = VCC
|
||||
VCC = 32A | 32B = VCC VCC = 32A | 32B = VCC
|
||||
CR20 = 33A | 33B = CR21 PORTADRS = 33A | 33B = 4MB
|
||||
CR22 = 34A | 34B = CR23 NC = 34A | 34B = ROMOE
|
||||
CR24 = 35A | 35B = CR25 NC = 35A | 35B = RESET
|
||||
CR26 = 36A | 36B = CR27 NC = 36A | 36B = NC
|
||||
CR28 = 37A | 37B = CR29 NC = 37A | 37B = NC
|
||||
CR30 = 38A | 38B = CR31 NC = 38A | 38B = NC
|
||||
NC = 39A | 39B = FIX00 NC = 39A | 39B = NC
|
||||
NC = 40A | 40B = FIX01 NC = 40A | 40B = NC
|
||||
NC = 41A | 41B = FIX02 NC = 41A | 41B = SDPAD0
|
||||
SYSTEMB = 42A | 42B = FIX03 SYSTEMB = 42A | 42B = SDPAD1
|
||||
SDA0 = 43A | 43B = FIX04 SDPA8 = 43A | 43B = SDPAD2
|
||||
SDA1 = 44A | 44B = FIX05 SDPA9 = 44A | 44B = SDPAD3
|
||||
SDA2 = 45A | 45B = FIX06 SDPA10 = 45A | 45B = SDPAD4
|
||||
SDA3 = 46A | 46B = FIX07 SDPA11 = 46A | 46B = SDPAD5
|
||||
SDA4 = 47A | 47B = SDRD0 SDPMPX = 47A | 47B = SDPAD6
|
||||
SDA5 = 48A | 48B = SDRD1 SDPOE = 48A | 48B = SDPAD7
|
||||
SDA6 = 49A | 49B = SDROM SDRA8 = 49A | 49B = SDRA00
|
||||
SDA7 = 50A | 50B = SDMRD SDRA9 = 50A | 50B = SDRA01
|
||||
SDA8 = 51A | 51B = SDDO SDRA20 = 51A | 51B = SDRA02
|
||||
SDA9 = 52A | 52B = SDD1 SDRA21 = 52A | 52B = SDRA03
|
||||
SDA10 = 53A | 53B = SDD2 SDRA22 = 53A | 53B = SDRA04
|
||||
SDA11 = 54A | 54B = SDD3 SDRA23 = 54A | 54B = SDRA05
|
||||
SDA12 = 55A | 55B = SDD4 SDRMPX = 55A | 55B = SDRA06
|
||||
SDA13 = 56A | 56B = SDD5 SDROE = 56A | 56B = SDRA07
|
||||
SDA14 = 57A | 57B = SDD6 GND = 57A | 57B = GND
|
||||
SDA15 = 58A | 58B = SDD7 GND = 58A | 58B = GND
|
||||
GND = 59A | 59B = GND GND = 59A | 59B = GND
|
||||
GND = 60A | 60B = GND GND = 60A | 60B = GND
|
||||
kindly submitted by Apollo69 (apollo69@columbus.rr.com)
|
||||
=================================================================
|
||||
CTRG1 CTRG2
|
||||
=================================================================
|
||||
GND = 01A | 01B = GND GND = 01A | 01B = GND
|
||||
GND = 02A | 02B = GND GND = 02A | 02B = GND
|
||||
P0 = 03A | 03B = P1 GND = 03A | 03B = GND
|
||||
P2 = 04A | 04B = P3 GND = 04A | 04B = GND
|
||||
P4 = 05A | 05B = P5 D0 = 05A | 05B = A1
|
||||
P6 = 06A | 06B = P7 D1 = 06A | 06B = A2
|
||||
P8 = 07A | 07B = P9 D2 = 07A | 07B = A3
|
||||
P10 = 08A | 08B = P11 D3 = 08A | 08B = A4
|
||||
P12 = 09A | 09B = P13 D4 = 09A | 09B = A5
|
||||
P14 = 10A | 10B = P15 D5 = 10A | 10B = A6
|
||||
P16 = 11A | 11B = P17 D6 = 11A | 11B = A7
|
||||
P18 = 12A | 12B = P19 D7 = 12A | 12B = A8
|
||||
P20 = 13A | 13B = P21 D8 = 13A | 13B = A9
|
||||
P22 = 14A | 14B = P23 D9 = 14A | 14B = A10
|
||||
PCK1B = 15A | 15B = 24M D10 = 15A | 15B = A11
|
||||
PCK2B = 16A | 16B = 12M D11 = 16A | 16B = A12
|
||||
2H1 = 17A | 17B = 8M D12 = 17A | 17B = A13
|
||||
CA4 = 18A | 18B = RESET D13 = 18A | 18B = A14
|
||||
CR0 = 19A | 19B = CR1 D14 = 19A | 19B = A15
|
||||
CR2 = 20A | 20B = CR3 D15 = 20A | 20B = A16
|
||||
CR4 = 21A | 21B = CR5 R/W = 21A | 21B = A17
|
||||
CR6 = 22A | 22B = CR7 AS = 22A | 22B = A18
|
||||
CR8 = 23A | 23B = CR9 ROMOEU = 23A | 23B = A19
|
||||
CR10 = 24A | 24B = CR11 ROMOEL = 24A | 24B = 68KCLKB
|
||||
CR12 = 25A | 25B = CR13 PORTOEU = 25A | 25B = ROMWAIT
|
||||
CR14 = 26A | 26B = CR15 PORTOEL = 26A | 26B = PWAIT0
|
||||
CR16 = 27A | 27B = CR17 PORTWEU = 27A | 27B = PWAIT1
|
||||
CR18 = 28A | 28B = CR19 PORTWEL = 28A | 28B = PDTACT
|
||||
VCC = 29A | 29B = VCC VCC = 29A | 29B = VCC
|
||||
VCC = 30A | 30B = VCC VCC = 30A | 30B = VCC
|
||||
VCC = 31A | 31B = VCC VCC = 31A | 31B = VCC
|
||||
VCC = 32A | 32B = VCC VCC = 32A | 32B = VCC
|
||||
CR20 = 33A | 33B = CR21 PORTADRS = 33A | 33B = 4MB
|
||||
CR22 = 34A | 34B = CR23 NC = 34A | 34B = ROMOE
|
||||
CR24 = 35A | 35B = CR25 NC = 35A | 35B = RESET
|
||||
CR26 = 36A | 36B = CR27 NC = 36A | 36B = NC
|
||||
CR28 = 37A | 37B = CR29 NC = 37A | 37B = NC
|
||||
CR30 = 38A | 38B = CR31 NC = 38A | 38B = NC
|
||||
NC = 39A | 39B = FIX00 NC = 39A | 39B = NC
|
||||
NC = 40A | 40B = FIX01 NC = 40A | 40B = NC
|
||||
NC = 41A | 41B = FIX02 NC = 41A | 41B = SDPAD0
|
||||
SYSTEMB = 42A | 42B = FIX03 SYSTEMB = 42A | 42B = SDPAD1
|
||||
SDA0 = 43A | 43B = FIX04 SDPA8 = 43A | 43B = SDPAD2
|
||||
SDA1 = 44A | 44B = FIX05 SDPA9 = 44A | 44B = SDPAD3
|
||||
SDA2 = 45A | 45B = FIX06 SDPA10 = 45A | 45B = SDPAD4
|
||||
SDA3 = 46A | 46B = FIX07 SDPA11 = 46A | 46B = SDPAD5
|
||||
SDA4 = 47A | 47B = SDRD0 SDPMPX = 47A | 47B = SDPAD6
|
||||
SDA5 = 48A | 48B = SDRD1 SDPOE = 48A | 48B = SDPAD7
|
||||
SDA6 = 49A | 49B = SDROM SDRA8 = 49A | 49B = SDRA00
|
||||
SDA7 = 50A | 50B = SDMRD SDRA9 = 50A | 50B = SDRA01
|
||||
SDA8 = 51A | 51B = SDDO SDRA20 = 51A | 51B = SDRA02
|
||||
SDA9 = 52A | 52B = SDD1 SDRA21 = 52A | 52B = SDRA03
|
||||
SDA10 = 53A | 53B = SDD2 SDRA22 = 53A | 53B = SDRA04
|
||||
SDA11 = 54A | 54B = SDD3 SDRA23 = 54A | 54B = SDRA05
|
||||
SDA12 = 55A | 55B = SDD4 SDRMPX = 55A | 55B = SDRA06
|
||||
SDA13 = 56A | 56B = SDD5 SDROE = 56A | 56B = SDRA07
|
||||
SDA14 = 57A | 57B = SDD6 GND = 57A | 57B = GND
|
||||
SDA15 = 58A | 58B = SDD7 GND = 58A | 58B = GND
|
||||
GND = 59A | 59B = GND GND = 59A | 59B = GND
|
||||
GND = 60A | 60B = GND GND = 60A | 60B = GND
|
||||
|
||||
CTRG1 (CHA) = Contains gfx data ('C' - rom), text layer data ('S' - rom) and sound driver ('M' - rom)
|
||||
CTRG2 (PROG) = Contains sample data ('V' - rom) and program code ('P' - rom)
|
||||
CTRG1 (CHA) = Contains gfx data ('C' - rom), text layer data ('S' - rom) and sound driver ('M' - rom)
|
||||
CTRG2 (PROG) = Contains sample data ('V' - rom) and program code ('P' - rom)
|
||||
|
||||
NOTE: On CTRG2-B, The "A" lines start at "A1". If you trace this on an
|
||||
actual cart, you will see that this is actually "A0" (A0 - A18).
|
||||
actual cart, you will see that this is actually "A0" (A0 - A18).
|
||||
|
||||
These are from a very hard to read copy of the schematics, so
|
||||
I hope that I got the pin names correct.
|
||||
These are from a very hard to read copy of the schematics, so
|
||||
I hope that I got the pin names correct.
|
||||
|
||||
Apollo69 10/19/99
|
||||
Apollo69 10/19/99
|
||||
|
||||
|
||||
Known driver issues/to-do's:
|
||||
============================
|
||||
Known driver issues/to-do's:
|
||||
============================
|
||||
|
||||
* Fatal Fury 3 crashes during the ending - this doesn't occur if
|
||||
the language is set to Japanese, maybe the English endings
|
||||
|
@ -416,7 +416,7 @@ static ADDRESS_MAP_START( pcat_io, ADDRESS_SPACE_IO, 32 )
|
||||
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff)
|
||||
AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff)
|
||||
AM_RANGE(0x0060, 0x006f) AM_READWRITE(kbdc8042_32le_r, kbdc8042_32le_w)
|
||||
AM_RANGE(0x0070, 0x007f) AM_RAM//READWRITE(mc146818_port32le_r, mc146818_port32le_w)
|
||||
AM_RANGE(0x0070, 0x007f) AM_RAM//READWRITE(mc146818_port32le_r, mc146818_port32le_w)
|
||||
AM_RANGE(0x0080, 0x009f) AM_READWRITE8(dma_page_select_r,dma_page_select_w, 0xffffffff)//TODO
|
||||
AM_RANGE(0x00a0, 0x00bf) AM_DEVREADWRITE8("pic8259_2", pic8259_r, pic8259_w, 0xffffffff)
|
||||
AM_RANGE(0x00c0, 0x00df) AM_DEVREADWRITE8("dma8237_2", dma8237_r, dma8237_w, 0xffff)
|
||||
@ -521,9 +521,9 @@ static void streetg2_set_keyb_int(running_machine *machine, int state) {
|
||||
|
||||
static MACHINE_START( streetg2 )
|
||||
{
|
||||
// bank = -1;
|
||||
// lastvalue = -1;
|
||||
// hv_blank = 0;
|
||||
// bank = -1;
|
||||
// lastvalue = -1;
|
||||
// hv_blank = 0;
|
||||
cpu_set_irq_callback(machine->cpu[0], irq_callback);
|
||||
streetg2_devices.pit8253 = devtag_get_device( machine, "pit8254" );
|
||||
streetg2_devices.pic8259_1 = devtag_get_device( machine, "pic8259_1" );
|
||||
@ -574,7 +574,7 @@ static MACHINE_DRIVER_START( pcat_nit )
|
||||
MDRV_MACHINE_START(streetg2)
|
||||
MDRV_NVRAM_HANDLER( mc146818 )
|
||||
|
||||
// MDRV_IMPORT_FROM( at_kbdc8042 )
|
||||
// MDRV_IMPORT_FROM( at_kbdc8042 )
|
||||
MDRV_PIC8259_ADD( "pic8259_1", pic8259_1_config )
|
||||
MDRV_PIC8259_ADD( "pic8259_2", pic8259_2_config )
|
||||
MDRV_DMA8237_ADD( "dma8237_1", dma8237_1_config )
|
||||
|
@ -1962,7 +1962,7 @@ static WRITE16_HANDLER( olds_w16 )
|
||||
UINT16 cmd0 = olds_sharedprotram[0x3082/2];
|
||||
UINT16 val0 = olds_sharedprotram[0x3050/2]; //CMD_FORMAT
|
||||
{
|
||||
if((cmd0&0xff)==0x2)
|
||||
if((cmd0&0xff)==0x2)
|
||||
olds_write_reg(val0,olds_read_reg(val0)+0x10000);
|
||||
}
|
||||
break;
|
||||
@ -3402,7 +3402,7 @@ ROM_START( kov2p205 )
|
||||
/* not correct for this set, needs dumping from internal rom */
|
||||
//ROM_LOAD( "kov2p.asic", 0x000000, 0x04000, BAD_DUMP CRC(e0d7679f) SHA1(e1c2d127eba4ddbeb8ad173c55b90ac1467e1ca8) ) // NOT for this version, works with a hack
|
||||
ROM_LOAD( "kov2p205.asic", 0x000000, 0x04000, NO_DUMP )
|
||||
|
||||
|
||||
|
||||
ROM_REGION32_LE( 0x400000, "user1", 0 ) /* Protection Data (encrypted external ARM data) */
|
||||
ROM_LOAD( "v200-16.rom", 0x000000, 0x200000, CRC(16a0c11f) SHA1(ce449cef76ebd5657d49b57951e2eb0f132e203e) )
|
||||
|
@ -5,12 +5,12 @@
|
||||
|
||||
driver by Angelo Salese and Pierpaolo Prazzoli
|
||||
dump and info provided by Yoshi
|
||||
|
||||
To initialize the eeprom, keep Service button pressed at boot.
|
||||
|
||||
Notes:
|
||||
|
||||
To initialize the eeprom, keep Service button pressed at boot.
|
||||
|
||||
Notes:
|
||||
- Text tilemap flickering could be a bit slower / faster
|
||||
- Brightness effect could be a bit darker / lighter
|
||||
- Brightness effect could be a bit darker / lighter
|
||||
|
||||
*****************************************************************************************/
|
||||
|
||||
@ -40,9 +40,9 @@ static TILE_GET_INFO( get_txt_tile_info )
|
||||
tileno = txt_videoram[tile_index] & 0x0fff;
|
||||
colour = txt_videoram[tile_index] & 0xf000;
|
||||
colour = colour >> 12;
|
||||
|
||||
|
||||
SET_TILE_INFO(0,tileno,colour,0);
|
||||
|
||||
|
||||
tileinfo->category = (colour & 8) ? 1 : 0;
|
||||
}
|
||||
|
||||
|
@ -49,9 +49,9 @@ static ADDRESS_MAP_START(queen_io, ADDRESS_SPACE_IO, 32)
|
||||
AM_RANGE(0x0000, 0x001f) AM_RAM//AM_DEVREADWRITE8("dma8237_1", dma8237_r, dma8237_w, 0xffffffff)
|
||||
AM_RANGE(0x0020, 0x003f) AM_RAM//AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff)
|
||||
AM_RANGE(0x0040, 0x005f) AM_RAM//AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff)
|
||||
AM_RANGE(0x0060, 0x006f) AM_RAM//AM_READWRITE(kbdc8042_32le_r, kbdc8042_32le_w)
|
||||
AM_RANGE(0x0070, 0x007f) AM_RAM//AM_READWRITE(mc146818_port32le_r, mc146818_port32le_w)
|
||||
AM_RANGE(0x0080, 0x009f) AM_RAM//AM_READWRITE(at_page32_r, at_page32_w)
|
||||
AM_RANGE(0x0060, 0x006f) AM_RAM//AM_READWRITE(kbdc8042_32le_r, kbdc8042_32le_w)
|
||||
AM_RANGE(0x0070, 0x007f) AM_RAM//AM_READWRITE(mc146818_port32le_r, mc146818_port32le_w)
|
||||
AM_RANGE(0x0080, 0x009f) AM_RAM//AM_READWRITE(at_page32_r, at_page32_w)
|
||||
AM_RANGE(0x00a0, 0x00bf) AM_RAM//AM_DEVREADWRITE8("pic8259_2", pic8259_r, pic8259_w, 0xffffffff)
|
||||
AM_RANGE(0x00c0, 0x00df) AM_RAM//AM_DEVREADWRITE("dma8237_2", at32_dma8237_2_r, at32_dma8237_2_w)
|
||||
AM_RANGE(0x00e8, 0x00eb) AM_NOP
|
||||
@ -61,7 +61,7 @@ static ADDRESS_MAP_START(queen_io, ADDRESS_SPACE_IO, 32)
|
||||
AM_RANGE(0x0278, 0x027b) AM_WRITENOP//AM_WRITE(pnp_config_w)
|
||||
AM_RANGE(0x03f0, 0x03ff) AM_RAM//AM_DEVREADWRITE("ide", fdc_r, fdc_w)
|
||||
AM_RANGE(0x0a78, 0x0a7b) AM_WRITENOP//AM_WRITE(pnp_data_w)
|
||||
AM_RANGE(0x0cf8, 0x0cff) AM_RAM//AM_DEVREADWRITE("pcibus", pci_32le_r, pci_32le_w)
|
||||
AM_RANGE(0x0cf8, 0x0cff) AM_RAM//AM_DEVREADWRITE("pcibus", pci_32le_r, pci_32le_w)
|
||||
AM_RANGE(0x4004, 0x4007) AM_RAM // - todo: identify these two.
|
||||
AM_RANGE(0x5000, 0x5007) AM_RAM // /
|
||||
ADDRESS_MAP_END
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -58,7 +58,7 @@ static WRITE8_HANDLER( rom2_bank_select_w )
|
||||
{
|
||||
UINT8 *region_base = memory_region(space->machine, "user2");
|
||||
mame_printf_debug("ROM_BANK 0x4000 - %X @%X\n",data,cpu_get_previouspc(space->cpu));
|
||||
// if(data == 0) data = 1; //test hack
|
||||
// if(data == 0) data = 1; //test hack
|
||||
memory_set_bankptr(space->machine, 1, region_base + (data&0x0f ) * 0x4000);
|
||||
}
|
||||
|
||||
|
@ -148,12 +148,12 @@ static unsigned char rf5c296_reg = 0;
|
||||
|
||||
static void rf5c296_reg_w(ATTR_UNUSED running_machine *machine, UINT8 reg, UINT8 data)
|
||||
{
|
||||
// fprintf(stderr, "rf5c296_reg_w %02x, %02x (%s)\n", reg, data, cpuexec_describe_context(machine));
|
||||
// fprintf(stderr, "rf5c296_reg_w %02x, %02x (%s)\n", reg, data, cpuexec_describe_context(machine));
|
||||
}
|
||||
|
||||
static UINT8 rf5c296_reg_r(ATTR_UNUSED running_machine *machine, UINT8 reg)
|
||||
{
|
||||
// fprintf(stderr, "rf5c296_reg_r %02x (%s)\n", reg, cpuexec_describe_context(machine));
|
||||
// fprintf(stderr, "rf5c296_reg_r %02x (%s)\n", reg, cpuexec_describe_context(machine));
|
||||
return 0x00;
|
||||
}
|
||||
|
||||
|
@ -756,7 +756,7 @@ MACHINE_DRIVER_END
|
||||
static MACHINE_DRIVER_START( buggyboy )
|
||||
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
|
||||
MDRV_CPU_PROGRAM_MAP(buggyboy_main, 0)
|
||||
// MDRV_WATCHDOG_TIME_INIT(5)
|
||||
// MDRV_WATCHDOG_TIME_INIT(5)
|
||||
|
||||
MDRV_CPU_ADD("math_cpu", I8086, CPU_MASTER_CLOCK / 3)
|
||||
MDRV_CPU_PROGRAM_MAP(buggyboy_math, 0)
|
||||
@ -1137,10 +1137,10 @@ ROM_START( buggyboy )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
The game is comprised of three boards:
|
||||
- Sound Board (labeled TC043-1, top small board)
|
||||
- CPU Board (labeled TC041, middle board, uses 15.000 MHz xtal)
|
||||
- Video Board (labeled TC042, bottom board, uses 18.000 MHz xtal)
|
||||
The game is comprised of three boards:
|
||||
- Sound Board (labeled TC043-1, top small board)
|
||||
- CPU Board (labeled TC041, middle board, uses 15.000 MHz xtal)
|
||||
- Video Board (labeled TC042, bottom board, uses 18.000 MHz xtal)
|
||||
*/
|
||||
ROM_START( buggybjr )
|
||||
ROM_REGION( 0x100000, "main_cpu", 0 )
|
||||
|
@ -79,7 +79,7 @@ static WRITE16_HANDLER( eeprom_w )
|
||||
eeprom_write_bit(data & 0x01);
|
||||
eeprom_set_cs_line((data & 0x04) ? CLEAR_LINE : ASSERT_LINE );
|
||||
eeprom_set_clock_line((data & 0x02) ? ASSERT_LINE : CLEAR_LINE );
|
||||
|
||||
|
||||
// data & 8?
|
||||
}
|
||||
}
|
||||
@ -1737,7 +1737,7 @@ static DRIVER_INIT( jmpbreak )
|
||||
{
|
||||
memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x00906fc, 0x00906ff, 0, 0, jmpbreak_speedup_r );
|
||||
memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xe0000000, 0xe0000003, 0, 0, jmpbreak_flipscreen_w );
|
||||
|
||||
|
||||
palshift = 0;
|
||||
}
|
||||
|
||||
|
@ -338,7 +338,7 @@ void naomi_game_decrypt(running_machine* machine, UINT64 key, UINT8* region, int
|
||||
int i;
|
||||
|
||||
des_generate_subkeys (rev64(key), des_subkeys);
|
||||
|
||||
|
||||
/* save the original file */
|
||||
{
|
||||
FILE *fp;
|
||||
@ -351,7 +351,7 @@ void naomi_game_decrypt(running_machine* machine, UINT64 key, UINT8* region, int
|
||||
fclose(fp);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for(i=0;i<length;i+=8)
|
||||
{
|
||||
UINT64 ret;
|
||||
@ -361,7 +361,7 @@ void naomi_game_decrypt(running_machine* machine, UINT64 key, UINT8* region, int
|
||||
ret = rev64(ret);
|
||||
write_from_qword(region+i, ret);
|
||||
}
|
||||
|
||||
|
||||
/* save the decrypted file */
|
||||
{
|
||||
FILE *fp;
|
||||
@ -374,6 +374,6 @@ void naomi_game_decrypt(running_machine* machine, UINT64 key, UINT8* region, int
|
||||
fclose(fp);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -245,8 +245,8 @@ static void kick_sn74s516(running_machine *machine, UINT16 *data, const int ins)
|
||||
#define CLEAR_SEQUENCE (SN74S516.code = 0)
|
||||
|
||||
/*
|
||||
Remember to change the Z/W flag.
|
||||
*/
|
||||
Remember to change the Z/W flag.
|
||||
*/
|
||||
switch (SN74S516.state)
|
||||
{
|
||||
case 0:
|
||||
@ -462,11 +462,11 @@ static void tx1_update_state(running_machine *machine)
|
||||
if (!GO_EN(math.inslatch) && GO_EN(prom[math.promaddr]))
|
||||
go = 1;
|
||||
/*
|
||||
Example:
|
||||
120 /GO /LHIEN
|
||||
121 /GO /LLOEN
|
||||
Both 120 and 121 are used.
|
||||
*/
|
||||
Example:
|
||||
120 /GO /LHIEN
|
||||
121 /GO /LLOEN
|
||||
Both 120 and 121 are used.
|
||||
*/
|
||||
else if ((GO_EN(math.inslatch) && GO_EN(prom[math.promaddr])) && (LHIEN(math.inslatch) && LLOEN(prom[math.promaddr])))
|
||||
go = 1;
|
||||
|
||||
@ -523,15 +523,15 @@ static void tx1_update_state(running_machine *machine)
|
||||
kick_sn74s516(machine, &data, ins);
|
||||
}
|
||||
/*
|
||||
TODO: Changed ppshift to muxlatch for TX-1
|
||||
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;
|
||||
@ -561,13 +561,13 @@ static void tx1_update_state(running_machine *machine)
|
||||
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;
|
||||
@ -684,9 +684,9 @@ READ16_HANDLER( tx1_math_r )
|
||||
else if (dsel == 1 )
|
||||
{
|
||||
/*
|
||||
TODO make this constant somewhere
|
||||
e.g. math.retval = math.romptr[ get_tx1_datarom_addr() ];
|
||||
*/
|
||||
TODO make this constant somewhere
|
||||
e.g. math.retval = math.romptr[ get_tx1_datarom_addr() ];
|
||||
*/
|
||||
UINT16 *romdata = (UINT16*)memory_region(space->machine, "au_data");
|
||||
UINT16 addr = get_tx1_datarom_addr();
|
||||
math.retval = romdata[addr];
|
||||
@ -812,10 +812,10 @@ WRITE16_HANDLER( tx1_math_w )
|
||||
{
|
||||
|
||||
/*
|
||||
/TMPLD1: 0
|
||||
/TMPLD2: 0
|
||||
/TMPLD3: 0
|
||||
*/
|
||||
/TMPLD1: 0
|
||||
/TMPLD2: 0
|
||||
/TMPLD3: 0
|
||||
*/
|
||||
math.muxlatch = math.cpulatch;
|
||||
}
|
||||
|
||||
@ -1285,7 +1285,7 @@ WRITE16_HANDLER( buggyboy_math_w )
|
||||
}
|
||||
|
||||
/*
|
||||
This is for ROM range 0x5000-0x7fff
|
||||
This is for ROM range 0x5000-0x7fff
|
||||
*/
|
||||
READ16_HANDLER( buggyboy_spcs_rom_r )
|
||||
{
|
||||
|
@ -9296,7 +9296,7 @@ Other Sun games
|
||||
|
||||
/* JPM Impact games */
|
||||
DRIVER( m_tbirds )
|
||||
|
||||
|
||||
/* Scorpion1 games */
|
||||
DRIVER( m_lotsse ) /* (c) 198? BFM Dutch ROMS, prelim*/
|
||||
DRIVER( m_roulet ) /* (c) 198? BFM Dutch ROMS, prelim*/
|
||||
|
@ -93,7 +93,7 @@ static void draw_sprite_line(int wide, UINT32* dest, int xzoom, int xgrow, int y
|
||||
if ((xdrawpos >= 0) && (xdrawpos < 448))
|
||||
{
|
||||
if (pri) dest[xdrawpos] = srcdat | 0x8000 | 0x10000;
|
||||
else dest[xdrawpos] = srcdat | 0x10000;
|
||||
else dest[xdrawpos] = srcdat | 0x10000;
|
||||
}
|
||||
}
|
||||
xcntdraw++;
|
||||
@ -318,7 +318,7 @@ static TILE_GET_INFO( get_pgm_bg_tilemap_tile_info )
|
||||
VIDEO_START( pgm )
|
||||
{
|
||||
int i;
|
||||
|
||||
|
||||
pgm_tx_tilemap= tilemap_create(machine, get_pgm_tx_tilemap_tile_info,tilemap_scan_rows, 8, 8,64,32);
|
||||
tilemap_set_transparent_pen(pgm_tx_tilemap,15);
|
||||
|
||||
@ -327,10 +327,10 @@ VIDEO_START( pgm )
|
||||
tilemap_set_scroll_rows(pgm_bg_tilemap,64*32);
|
||||
|
||||
tmppgmbitmap = auto_bitmap_alloc(448,224,BITMAP_FORMAT_RGB32);
|
||||
|
||||
|
||||
for (i=0; i < 0x1200/2; i++)
|
||||
palette_set_color(machine, i, MAKE_RGB(0, 0, 0));
|
||||
|
||||
palette_set_color(machine, i, MAKE_RGB(0, 0, 0));
|
||||
|
||||
pgm_spritebufferram = auto_malloc (0xa00);
|
||||
|
||||
/* we render each sprite to a bitmap then copy the bitmap to screen bitmap with zooming */
|
||||
@ -345,7 +345,7 @@ VIDEO_UPDATE( pgm )
|
||||
bitmap_fill(bitmap,cliprect,get_black_pen(screen->machine));
|
||||
bitmap_fill(tmppgmbitmap, cliprect, 0x00000000);
|
||||
|
||||
|
||||
|
||||
pgm_sprite_source = pgm_spritebufferram;
|
||||
draw_sprites(screen->machine, tmppgmbitmap);
|
||||
|
||||
@ -364,14 +364,14 @@ VIDEO_UPDATE( pgm )
|
||||
|
||||
for (x=0;x<448;x++)
|
||||
{
|
||||
if (src[x]&0x10000)
|
||||
if (src[x]&0x10000)
|
||||
if ((src[x]&0x8000)==0x8000)
|
||||
dst[x] = src[x]&0x7fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
tilemap_draw(bitmap,cliprect,pgm_bg_tilemap,0,0);
|
||||
|
||||
{
|
||||
@ -384,13 +384,13 @@ VIDEO_UPDATE( pgm )
|
||||
|
||||
for (x=0;x<448;x++)
|
||||
{
|
||||
if (src[x]&0x10000)
|
||||
if (src[x]&0x10000)
|
||||
if ((src[x]&0x8000)==0x0000)
|
||||
dst[x] = src[x];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
tilemap_set_scrolly(pgm_tx_tilemap,0, pgm_videoregs[0x5000/2]);
|
||||
tilemap_set_scrollx(pgm_tx_tilemap,0, pgm_videoregs[0x6000/2]); // Check
|
||||
tilemap_draw(bitmap,cliprect,pgm_tx_tilemap,0,0);
|
||||
|
@ -3349,7 +3349,7 @@ void psx_gpu_write( running_machine *machine, UINT32 *p_ram, INT32 n_size )
|
||||
case 0x48:
|
||||
case 0x4a:
|
||||
case 0x4c:
|
||||
case 0x4e:
|
||||
case 0x4e:
|
||||
if( m_n_gpu_buffer_offset < 3 )
|
||||
{
|
||||
m_n_gpu_buffer_offset++;
|
||||
|
@ -1523,9 +1523,9 @@ void buggyboy_get_roadpix(int screen, int ls161, UINT8 rva0_6, UINT8 sld, UINT32
|
||||
else
|
||||
{
|
||||
/*
|
||||
TODO: When ROM is not enabled, data = 0xff
|
||||
But does anybody care?
|
||||
*/
|
||||
TODO: When ROM is not enabled, data = 0xff
|
||||
But does anybody care?
|
||||
*/
|
||||
*rc0 = *rc1 = *rc2 = *rc3 = 0;
|
||||
}
|
||||
|
||||
@ -1832,11 +1832,11 @@ static void buggyboy_draw_road(running_machine *machine, UINT8 *bitmap)
|
||||
px3[2] = BIT(rc3[2], pix);
|
||||
|
||||
/*
|
||||
Now evaluate the pixel logic for each of the three screens
|
||||
Now evaluate the pixel logic for each of the three screens
|
||||
|
||||
TODO: A lot of this could be macrofied to avoid repetition.
|
||||
Shuffling the equations around would squeeze out some extra speed.
|
||||
*/
|
||||
TODO: A lot of this could be macrofied to avoid repetition.
|
||||
Shuffling the equations around would squeeze out some extra speed.
|
||||
*/
|
||||
|
||||
/* Left */
|
||||
ic96_o14 =
|
||||
@ -1943,7 +1943,7 @@ static void buggyboy_draw_road(running_machine *machine, UINT8 *bitmap)
|
||||
ic79_o17 = (!px2[0] && _rorevls && ic78_o15) || (tnlf && !ic97_o19) || (tnlf && ic79_p19 && px2[0] && ic78_o15);
|
||||
ic79_o16 = (!px2[1] && _rorevcs && ic80_o15) || (tnlf && !ic97_o18) || (tnlf && ic79_p19 && px2[1] && ic80_o15);
|
||||
ic79_o15 = (!px2[2] && _rorevrs && ic82_o15) || (tnlf && !ic97_o17) || (tnlf && ic79_p19 && px2[2] && ic82_o15);
|
||||
|
||||
|
||||
|
||||
/* Left */
|
||||
{
|
||||
@ -2020,7 +2020,7 @@ static void buggyboy_draw_road(running_machine *machine, UINT8 *bitmap)
|
||||
if (ic50_o19)
|
||||
{
|
||||
if (ic80_o14)
|
||||
ic50_o12 =
|
||||
ic50_o12 =
|
||||
(px2[1] && px1[1] && px0[1] && rm1 && !rm0)
|
||||
|| (!px2[1] && px1[1] && px0[1] && !P8 && rm0)
|
||||
|| (px2[1] && px0[1] && !P7 && !rm1 && !rm0)
|
||||
@ -2747,11 +2747,11 @@ static void buggyboy_draw_objs(running_machine *machine, UINT8 *bitmap, int wide
|
||||
UINT32 low_addr = ((x_acc >> (FRAC + 3)) & x_mask);
|
||||
|
||||
/*
|
||||
Objects are grouped by width (either 16, 8 or 4 tiles) in
|
||||
the LUT ROMs. The ROM address lines therefore indicate
|
||||
width and are used to determine the correct scan order
|
||||
when x-flip is set.
|
||||
*/
|
||||
Objects are grouped by width (either 16, 8 or 4 tiles) in
|
||||
the LUT ROMs. The ROM address lines therefore indicate
|
||||
width and are used to determine the correct scan order
|
||||
when x-flip is set.
|
||||
*/
|
||||
if (gxflip)
|
||||
{
|
||||
UINT32 xor_mask;
|
||||
|
@ -247,7 +247,7 @@ static chd_error guess_chs(const char *filename, int offset, int sectorsize, UIN
|
||||
get_chs_from_ident - extract chs from an ident
|
||||
information, validate it with the file size
|
||||
|
||||
Note: limited to IDE for now
|
||||
Note: limited to IDE for now
|
||||
-------------------------------------------------*/
|
||||
|
||||
static chd_error get_chs_from_ident(const char *filename, int offset, const UINT8 *ident, UINT32 identsize, UINT32 *cylinders, UINT32 *heads, UINT32 *sectors, UINT32 *bps)
|
||||
@ -305,12 +305,12 @@ static int do_createhd(int argc, char *argv[], int param)
|
||||
UINT8 *identdata = NULL;
|
||||
chd_file *chd = NULL;
|
||||
char metadata[256];
|
||||
|
||||
|
||||
/* if a file is provided for argument 4 (ident filename), then shift the remaining arguments down */
|
||||
if (argc >= 5)
|
||||
{
|
||||
char *scan;
|
||||
|
||||
|
||||
/* if there are any non-digits in the 'offset', then treat it as a ident file */
|
||||
for (scan = argv[4]; *scan != 0; scan++)
|
||||
if (!isdigit(*scan))
|
||||
@ -324,7 +324,7 @@ static int do_createhd(int argc, char *argv[], int param)
|
||||
fprintf(stderr, "Error opening ident file '%s'\n", argv[4]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
/* shift the remaining arguments down */
|
||||
if (argc > 5)
|
||||
memmove(&argv[4], &argv[5], (argc - 5) * sizeof(argv[0]));
|
||||
@ -396,7 +396,7 @@ static int do_createhd(int argc, char *argv[], int param)
|
||||
fprintf(stderr, "Error adding hard disk metadata: %s\n", chd_error_string(err));
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
/* write the ident if present */
|
||||
if (identdata != NULL)
|
||||
{
|
||||
@ -2664,7 +2664,7 @@ cleanup:
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
do_addmeta - add metadata to a CHD from a
|
||||
do_addmeta - add metadata to a CHD from a
|
||||
file
|
||||
-------------------------------------------------*/
|
||||
|
||||
@ -2698,7 +2698,7 @@ static int do_addmeta(int argc, char *argv[], int param)
|
||||
metaindex = atoi(argv[4]);
|
||||
srcfile = argv[5];
|
||||
}
|
||||
|
||||
|
||||
/* verify the tag */
|
||||
if (strlen(tagstring) > 4)
|
||||
{
|
||||
@ -2749,7 +2749,7 @@ static int do_addmeta(int argc, char *argv[], int param)
|
||||
fprintf(stderr, "Error opening CHD file '%s' read/write: %s\n", inoutfile, chd_error_string(err));
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
/* attempt to open the source file */
|
||||
filerr = core_fload(srcfile, (void **)&metadata, &metalength);
|
||||
if (filerr != FILERR_NONE)
|
||||
@ -2758,7 +2758,7 @@ static int do_addmeta(int argc, char *argv[], int param)
|
||||
err = CHDERR_FILE_NOT_FOUND;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
/* if it's text, strip any trailing Ctrl-Z and CR/LF and add a trailing NULL */
|
||||
if (param)
|
||||
{
|
||||
@ -3071,17 +3071,17 @@ static chd_error chdman_clone_metadata(chd_file *source, chd_file *dest)
|
||||
err = CHDERR_NONE;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
/* promote certain bits of metadata to checksummed for older CHDs */
|
||||
if (header->version <= 3)
|
||||
{
|
||||
if (metatag == HARD_DISK_METADATA_TAG || metatag == CDROM_OLD_METADATA_TAG ||
|
||||
metatag == CDROM_TRACK_METADATA_TAG || metatag == AV_METADATA_TAG ||
|
||||
if (metatag == HARD_DISK_METADATA_TAG || metatag == CDROM_OLD_METADATA_TAG ||
|
||||
metatag == CDROM_TRACK_METADATA_TAG || metatag == AV_METADATA_TAG ||
|
||||
metatag == AV_LD_METADATA_TAG)
|
||||
{
|
||||
metaflags |= CHD_MDFLAGS_CHECKSUM;
|
||||
}
|
||||
|
||||
|
||||
/* convert old-style CD-ROM data to newer */
|
||||
if (metatag == CDROM_OLD_METADATA_TAG)
|
||||
{
|
||||
|
@ -9,4 +9,4 @@
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
const char build_version[] = "0.130 ("__DATE__")";
|
||||
const char build_version[] = "0.130u1 ("__DATE__")";
|
||||
|
Loading…
Reference in New Issue
Block a user