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