Cleanups and version bump.

This commit is contained in:
Aaron Giles 2009-03-19 07:28:58 +00:00
parent cf9d3c888d
commit 3b302a8bae
35 changed files with 701 additions and 701 deletions

View File

@ -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;
} }

View File

@ -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? */

View File

@ -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;
} }

View File

@ -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 */

View File

@ -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); */

View File

@ -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++)
{ {

View File

@ -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);

View File

@ -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)
{ {

View File

@ -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 */

View File

@ -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)
===================================================================================== =====================================================================================

View File

@ -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)

View File

@ -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 )

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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.
****/ ****/

View File

@ -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

View File

@ -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 )

View File

@ -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) )

View File

@ -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;
} }

View File

@ -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

View File

@ -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);
} }

View File

@ -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;
} }

View File

@ -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 )

View File

@ -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;
} }

View File

@ -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);
} }
} }
} }

View File

@ -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 )
{ {

View File

@ -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*/

View File

@ -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);

View File

@ -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++;

View File

@ -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;

View File

@ -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)
{ {

View File

@ -9,4 +9,4 @@
***************************************************************************/ ***************************************************************************/
const char build_version[] = "0.130 ("__DATE__")"; const char build_version[] = "0.130u1 ("__DATE__")";