Cleanups and version bump for 0.123u2.

This commit is contained in:
Aaron Giles 2008-02-21 17:43:00 +00:00
parent e619861862
commit 8436bec1e3
36 changed files with 298 additions and 298 deletions

View File

@ -166,11 +166,11 @@ int sign_of(int n)
void zero(int n,int sign)
{
if (sign == 0)
if (sign == 0)
sh4.fr[n] = 0x00000000;
else
else
sh4.fr[n] = 0x80000000;
if ((sh4.fpscr & PR) == 1)
if ((sh4.fpscr & PR) == 1)
sh4.fr[n+1] = 0x00000000;
}
@ -183,53 +183,53 @@ UINT32 abs;
if (abs < 0x00800000) {
if (((sh4.fpscr & DN) == 1) || (abs == 0x00000000)) {
if (sign_of(n) == 0) {
zero(n, 0);
zero(n, 0);
return(SH4_FPU_PZERO);
} else {
zero(n, 1);
zero(n, 1);
return(SH4_FPU_NZERO);
}
} else
} else
return(SH4_FPU_DENORM);
} else
if (abs < 0x7f800000)
} else
if (abs < 0x7f800000)
return(SH4_FPU_NORM);
else
else
if (abs == 0x7f800000) {
if (sign_of(n) == 0)
if (sign_of(n) == 0)
return(SH4_FPU_PINF);
else
else
return(SH4_FPU_NINF);
} else
if (abs < 0x7fc00000)
} else
if (abs < 0x7fc00000)
return(SH4_FPU_qNaN);
else
else
return(SH4_FPU_sNaN);
} else { /* Double-precision */
if (abs < 0x00100000) {
if (((sh4.fpscr & DN) == 1) || ((abs == 0x00000000) && (sh4.fr[n+1] == 0x00000000))) {
if(sign_of(n) == 0) {
zero(n, 0);
zero(n, 0);
return(SH4_FPU_PZERO);
} else {
zero(n, 1);
zero(n, 1);
return(SH4_FPU_NZERO);
}
} else
} else
return(SH4_FPU_DENORM);
} else
if (abs < 0x7ff00000)
if (abs < 0x7ff00000)
return(SH4_FPU_NORM);
else
else
if ((abs == 0x7ff00000) && (sh4.fr[n+1] == 0x00000000)) {
if (sign_of(n) == 0)
if (sign_of(n) == 0)
return(SH4_FPU_PINF);
else
else
return(SH4_FPU_NINF);
} else
if (abs < 0x7ff80000)
} else
if (abs < 0x7ff80000)
return(SH4_FPU_qNaN);
else
else
return(SH4_FPU_sNaN);
}
return(SH4_FPU_NORM);
@ -3383,7 +3383,7 @@ INLINE void FSRRA(UINT32 n)
INLINE void FSSCA(UINT32 n)
{
float angle;
angle = (((float)(sh4.fpul & 0xFFFF)) / 65536.0) * 2.0 * M_PI;
FP_RFS(n) = sinf(angle);
FP_RFS(n+1) = cosf(angle);

View File

@ -84,23 +84,23 @@ device_config *device_list_add(device_config **listheadptr, device_type type, co
device_config **devptr;
device_config *device;
deviceinfo info;
assert(listheadptr != NULL);
assert(type != NULL);
assert(tag != NULL);
/* find the end of the list, and ensure no duplicates along the way */
for (devptr = listheadptr; *devptr != NULL; devptr = &(*devptr)->next)
if (type == (*devptr)->type && strcmp(tag, (*devptr)->tag) == 0)
fatalerror("Attempted to add duplicate device: type=%s tag=%s\n", devtype_name(type), tag);
/* get the size of the inline config */
info.i = 0;
(*type)(NULL, NULL, DEVINFO_INT_INLINE_CONFIG_BYTES, &info);
/* allocate a new device */
device = malloc_or_die(sizeof(*device) + strlen(tag) + info.i);
/* populate all fields */
device->next = NULL;
device->type = type;
@ -108,7 +108,7 @@ device_config *device_list_add(device_config **listheadptr, device_type type, co
device->inline_config = (info.i == 0) ? NULL : (device->tag + strlen(tag) + 1);
device->token = NULL;
strcpy(device->tag, tag);
/* reset the inline_config to 0 */
if (info.i > 0)
memset(device->inline_config, 0, info.i);
@ -117,19 +117,19 @@ device_config *device_list_add(device_config **listheadptr, device_type type, co
info.set_info = NULL;
(*type)(NULL, NULL, DEVINFO_FCT_SET_INFO, &info);
device->set_info = info.set_info;
info.start = NULL;
(*type)(NULL, NULL, DEVINFO_FCT_START, &info);
device->start = info.start;
info.stop = NULL;
(*type)(NULL, NULL, DEVINFO_FCT_STOP, &info);
device->stop = info.stop;
info.reset = NULL;
(*type)(NULL, NULL, DEVINFO_FCT_RESET, &info);
device->reset = info.reset;
/* link us to the end and return */
*devptr = device;
return device;
@ -156,7 +156,7 @@ void device_list_remove(device_config **listheadptr, device_type type, const cha
break;
if (*devptr == NULL)
fatalerror("Attempted to remove non-existant device: type=%s tag=%s\n", devtype_name(type), tag);
/* remove the device from the list */
device = *devptr;
*devptr = device->next;
@ -167,8 +167,8 @@ void device_list_remove(device_config **listheadptr, device_type type, const cha
/*-------------------------------------------------
device_list_items - return the number of
items of a given type; DEVICE_TYPE_WILDCARD
device_list_items - return the number of
items of a given type; DEVICE_TYPE_WILDCARD
is allowed
-------------------------------------------------*/
@ -176,51 +176,51 @@ int device_list_items(const device_config *listhead, device_type type)
{
const device_config *curdev;
int count = 0;
/* locate all devices */
for (curdev = listhead; curdev != NULL; curdev = curdev->next)
count += device_matches_type(curdev, type);
return count;
}
/*-------------------------------------------------
device_list_first - return the first device
in the list of a given type;
device_list_first - return the first device
in the list of a given type;
DEVICE_TYPE_WILDCARD is allowed
-------------------------------------------------*/
const device_config *device_list_first(const device_config *listhead, device_type type)
{
const device_config *curdev;
/* scan forward starting with the list head */
for (curdev = listhead; curdev != NULL; curdev = curdev->next)
if (device_matches_type(curdev, type))
return curdev;
return NULL;
}
/*-------------------------------------------------
device_list_next - return the next device
in the list of a given type;
device_list_next - return the next device
in the list of a given type;
DEVICE_TYPE_WILDCARD is allowed
-------------------------------------------------*/
const device_config *device_list_next(const device_config *prevdevice, device_type type)
{
const device_config *curdev;
assert(prevdevice != NULL);
/* scan forward starting with the item after the previous one */
for (curdev = prevdevice->next; curdev != NULL; curdev = curdev->next)
if (device_matches_type(curdev, type))
return curdev;
return NULL;
}
@ -240,7 +240,7 @@ const device_config *device_list_find_by_tag(const device_config *listhead, devi
for (curdev = listhead; curdev != NULL; curdev = curdev->next)
if (device_matches_type(curdev, type) && strcmp(tag, curdev->tag) == 0)
return curdev;
/* fail */
return NULL;
}
@ -253,8 +253,8 @@ const device_config *device_list_find_by_tag(const device_config *listhead, devi
/*-------------------------------------------------
device_list_index - return the index of a
device based on its type and tag;
device_list_index - return the index of a
device based on its type and tag;
DEVICE_TYPE_WILDCARD is allowed
-------------------------------------------------*/
@ -262,7 +262,7 @@ int device_list_index(const device_config *listhead, device_type type, const cha
{
const device_config *curdev;
int index = 0;
/* locate all devices */
for (curdev = listhead; curdev != NULL; curdev = curdev->next)
if (device_matches_type(curdev, type))
@ -271,7 +271,7 @@ int device_list_index(const device_config *listhead, device_type type, const cha
return index;
index++;
}
return -1;
}
@ -291,7 +291,7 @@ const device_config *device_list_find_by_index(const device_config *listhead, de
for (curdev = listhead; curdev != NULL; curdev = curdev->next)
if (device_matches_type(curdev, type) && index-- == 0)
return curdev;
/* fail */
return NULL;
}
@ -303,18 +303,18 @@ const device_config *device_list_find_by_index(const device_config *listhead, de
***************************************************************************/
/*-------------------------------------------------
device_list_start - start the configured list
device_list_start - start the configured list
of devices for a machine
-------------------------------------------------*/
void device_list_start(running_machine *machine)
{
device_config *config;
/* add an exit callback for cleanup */
add_reset_callback(machine, device_list_reset);
add_exit_callback(machine, device_list_stop);
/* iterate over devices and start them */
for (config = (device_config *)machine->config->devicelist; config != NULL; config = config->next)
{
@ -322,10 +322,10 @@ void device_list_start(running_machine *machine)
assert(config->type != NULL);
assert(config->start != NULL);
/* call the start function */
/* call the start function */
config->token = (*config->start)(machine, config->tag, config->static_config, config->inline_config);
assert(config->token != NULL);
/* fatal error if this fails */
if (config->token == NULL)
fatalerror("Error starting device: type=%s tag=%s\n", devtype_name(config->type), config->tag);
@ -334,24 +334,24 @@ void device_list_start(running_machine *machine)
/*-------------------------------------------------
device_list_stop - stop the configured list
device_list_stop - stop the configured list
of devices for a machine
-------------------------------------------------*/
static void device_list_stop(running_machine *machine)
{
device_config *config;
/* iterate over devices and stop them */
for (config = (device_config *)machine->config->devicelist; config != NULL; config = config->next)
{
assert(config->token != NULL);
assert(config->type != NULL);
/* if we have a stop function, call it */
if (config->stop != NULL)
(*config->stop)(machine, config->token);
/* clear the token to indicate we are finished */
config->token = NULL;
}
@ -359,14 +359,14 @@ static void device_list_stop(running_machine *machine)
/*-------------------------------------------------
device_list_reset - reset the configured list
device_list_reset - reset the configured list
of devices for a machine
-------------------------------------------------*/
static void device_list_reset(running_machine *machine)
{
const device_config *config;
/* iterate over devices and stop them */
for (config = (device_config *)machine->config->devicelist; config != NULL; config = config->next)
device_reset(machine, config);
@ -374,7 +374,7 @@ static void device_list_reset(running_machine *machine)
/*-------------------------------------------------
device_reset - reset a device based on an
device_reset - reset a device based on an
allocated device_config
-------------------------------------------------*/
@ -382,7 +382,7 @@ void device_reset(running_machine *machine, const device_config *config)
{
assert(config->token != NULL);
assert(config->type != NULL);
/* if we have a reset function, call it */
if (config->reset != NULL)
(*config->reset)(machine, config->token);
@ -404,7 +404,7 @@ void devtag_reset(running_machine *machine, device_type type, const char *tag)
***************************************************************************/
/*-------------------------------------------------
devtag_get_token - return the token associated
devtag_get_token - return the token associated
with an allocated device
-------------------------------------------------*/
@ -418,8 +418,8 @@ void *devtag_get_token(running_machine *machine, device_type type, const char *t
/*-------------------------------------------------
devtag_get_static_config - return a pointer to
the static configuration for a device based on
devtag_get_static_config - return a pointer to
the static configuration for a device based on
type and tag
-------------------------------------------------*/
@ -433,8 +433,8 @@ const void *devtag_get_static_config(running_machine *machine, device_type type,
/*-------------------------------------------------
devtag_get_inline_config - return a pointer to
the inline configuration for a device based on
devtag_get_inline_config - return a pointer to
the inline configuration for a device based on
type and tag
-------------------------------------------------*/
@ -448,18 +448,18 @@ const void *devtag_get_inline_config(running_machine *machine, device_type type,
/*-------------------------------------------------
device_get_info_int - return an integer state
device_get_info_int - return an integer state
value from an allocated device
-------------------------------------------------*/
INT64 device_get_info_int(running_machine *machine, const device_config *config, UINT32 state)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_INT_FIRST && state <= DEVINFO_INT_LAST);
/* retrieve the value */
info.i = 0;
(*config->type)(machine, config->token, state, &info);
@ -477,18 +477,18 @@ INT64 devtag_get_info_int(running_machine *machine, device_type type, const char
/*-------------------------------------------------
device_get_info_ptr - return a pointer state
device_get_info_ptr - return a pointer state
value from an allocated device
-------------------------------------------------*/
void *device_get_info_ptr(running_machine *machine, const device_config *config, UINT32 state)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_PTR_FIRST && state <= DEVINFO_PTR_LAST);
/* retrieve the value */
info.p = NULL;
(*config->type)(machine, config->token, state, &info);
@ -506,18 +506,18 @@ void *devtag_get_info_ptr(running_machine *machine, device_type type, const char
/*-------------------------------------------------
device_get_info_fct - return a function
device_get_info_fct - return a function
pointer state value from an allocated device
-------------------------------------------------*/
genf *device_get_info_fct(running_machine *machine, const device_config *config, UINT32 state)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_FCT_FIRST && state <= DEVINFO_FCT_LAST);
/* retrieve the value */
info.f = 0;
(*config->type)(machine, config->token, state, &info);
@ -535,18 +535,18 @@ genf *devtag_get_info_fct(running_machine *machine, device_type type, const char
/*-------------------------------------------------
device_get_info_string - return a string value
device_get_info_string - return a string value
from an allocated device
-------------------------------------------------*/
const char *device_get_info_string(running_machine *machine, const device_config *config, UINT32 state)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_STR_FIRST && state <= DEVINFO_STR_LAST);
/* retrieve the value */
info.s = get_temp_string_buffer();
(*config->type)(machine, config->token, state, &info);
@ -564,18 +564,18 @@ const char *devtag_get_info_string(running_machine *machine, device_type type, c
/*-------------------------------------------------
devtype_get_info_string - return a string value
from a device type (does not need to be
devtype_get_info_string - return a string value
from a device type (does not need to be
allocated)
-------------------------------------------------*/
const char *devtype_get_info_string(device_type type, UINT32 state)
{
deviceinfo info;
assert(type != NULL);
assert(state >= DEVINFO_STR_FIRST && state <= DEVINFO_STR_LAST);
/* retrieve the value */
info.s = get_temp_string_buffer();
(*type)(NULL, NULL, state, &info);
@ -589,18 +589,18 @@ const char *devtype_get_info_string(device_type type, UINT32 state)
***************************************************************************/
/*-------------------------------------------------
device_set_info_int - set an integer state
device_set_info_int - set an integer state
value for an allocated device
-------------------------------------------------*/
void device_set_info_int(running_machine *machine, const device_config *config, UINT32 state, INT64 data)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_INT_FIRST && state <= DEVINFO_INT_LAST);
/* set the value */
info.i = data;
(*config->set_info)(machine, config->token, state, &info);
@ -617,18 +617,18 @@ void devtag_set_info_int(running_machine *machine, device_type type, const char
/*-------------------------------------------------
device_set_info_ptr - set a pointer state
device_set_info_ptr - set a pointer state
value for an allocated device
-------------------------------------------------*/
void device_set_info_ptr(running_machine *machine, const device_config *config, UINT32 state, void *data)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_PTR_FIRST && state <= DEVINFO_PTR_LAST);
/* set the value */
info.p = data;
(*config->set_info)(machine, config->token, state, &info);
@ -645,18 +645,18 @@ void devtag_set_info_ptr(running_machine *machine, device_type type, const char
/*-------------------------------------------------
device_set_info_fct - set a function pointer
device_set_info_fct - set a function pointer
state value for an allocated device
-------------------------------------------------*/
void device_set_info_fct(running_machine *machine, const device_config *config, UINT32 state, genf *data)
{
deviceinfo info;
assert(config->token != NULL);
assert(config->type != NULL);
assert(state >= DEVINFO_FCT_FIRST && state <= DEVINFO_FCT_LAST);
/* set the value */
info.f = data;
(*config->set_info)(machine, config->token, state, &info);

View File

@ -39,14 +39,14 @@ enum
/* --- the following bits of info are returned as pointers --- */
DEVINFO_PTR_FIRST = 0x10000,
DEVINFO_PTR_DEVICE_SPECIFIC = 0x18000, /* R/W: device-specific values start here */
DEVINFO_PTR_LAST = 0x1ffff,
/* --- the following bits of info are returned as pointers to functions --- */
DEVINFO_FCT_FIRST = 0x20000,
DEVINFO_FCT_SET_INFO = DEVINFO_FCT_FIRST, /* R/O: device_set_info_func */
DEVINFO_FCT_START, /* R/O: device_start_func */
DEVINFO_FCT_STOP, /* R/O: device_stop_func */
@ -99,7 +99,7 @@ union _deviceinfo
void * p; /* generic pointers */
genf * f; /* generic function pointers */
const char * s; /* generic strings */
device_set_info_func set_info; /* DEVINFO_FCT_SET_INFO */
device_start_func start; /* DEVINFO_FCT_START */
device_stop_func stop; /* DEVINFO_FCT_STOP */

View File

@ -359,7 +359,7 @@ static void print_game_bios(FILE *out, const game_driver *game)
/* skip if no ROMs */
if (game->rom == NULL)
return;
/* iterate over ROM entries and look for BIOSes */
for (rom = game->rom; !ROMENTRY_ISEND(rom); rom++)
if (ROMENTRY_ISSYSTEM_BIOS(rom))
@ -407,7 +407,7 @@ static void print_game_rom(FILE *out, const game_driver *game)
if ((is_disk && rom_type != 2) || (!is_disk && rom_type == 2))
continue;
/* iterate through ROM entries */
/* iterate through ROM entries */
for (rom = rom_first_file(region); rom != NULL; rom = rom_next_file(rom))
{
int is_bios = ROM_GETBIOSFLAGS(rom);
@ -417,7 +417,7 @@ static void print_game_rom(FILE *out, const game_driver *game)
const rom_entry *chunk;
char bios_name[100];
int length;
/* BIOS ROMs only apply to bioses */
if ((is_bios && rom_type != 0) || (!is_bios && rom_type == 0))
continue;
@ -431,7 +431,7 @@ static void print_game_rom(FILE *out, const game_driver *game)
if (!ROM_NOGOODDUMP(rom) && clone_of != NULL)
{
const rom_entry *pregion, *prom;
/* scan the clone_of ROM for a matching ROM entry */
for (pregion = rom_first_region(clone_of); pregion != NULL; pregion = rom_next_region(pregion))
for (prom = rom_first_file(pregion); prom != NULL; prom = rom_next_file(prom))
@ -478,7 +478,7 @@ static void print_game_rom(FILE *out, const game_driver *game)
{
char checksum[HASH_BUF_SIZE];
int hashtype;
/* iterate over hash function types and print out their values */
for (hashtype = 0; hashtype < HASH_NUM_FUNCTIONS; hashtype++)
if (hash_data_extract_printable_checksum(ROM_GETHASHDATA(rom), 1 << hashtype, checksum))
@ -551,7 +551,7 @@ static void print_game_rom(FILE *out, const game_driver *game)
fprintf(out, " dispose=\"yes\"");
fprintf(out, " offset=\"%x\"", offset);
}
/* for disk entries, add the disk index */
else
fprintf(out, " index=\"%x\"", DISK_GETINDEX(rom));
@ -579,12 +579,12 @@ static void print_game_sampleof(FILE *out, const game_driver *game, const machin
if (samplenames != NULL)
{
int sampnum;
/* iterate over sample names */
for (sampnum = 0; samplenames[sampnum] != NULL; sampnum++)
{
const char *cursampname = samplenames[sampnum];
/* only output sampleof if different from the game name */
if (cursampname[0] == '*' && strcmp(cursampname + 1, game->name) != 0)
fprintf(out, " sampleof=\"%s\"", xml_normalize_string(cursampname + 1));
@ -596,7 +596,7 @@ static void print_game_sampleof(FILE *out, const game_driver *game, const machin
/*-------------------------------------------------
print_game_sample - print a list of all
print_game_sample - print a list of all
samples referenced by a game_driver
-------------------------------------------------*/
@ -613,17 +613,17 @@ static void print_game_sample(FILE *out, const game_driver *game, const machine_
if (samplenames != NULL)
{
int sampnum;
/* iterate over sample names */
for (sampnum = 0; samplenames[sampnum] != NULL; sampnum++)
{
const char *cursampname = samplenames[sampnum];
int dupnum;
/* ignore the special '*' samplename */
if (sampnum == 0 && cursampname[0] == '*')
continue;
/* filter out duplicates */
for (dupnum = 0; dupnum < sampnum; dupnum++)
if (strcmp(samplenames[dupnum], cursampname) == 0)
@ -682,14 +682,14 @@ static void print_game_chips(FILE *out, const game_driver *game, const machine_c
static void print_game_display(FILE *out, const game_driver *game, const machine_config *config)
{
const device_config *screen;
/* iterate over screens */
for (screen = video_screen_first(config); screen != NULL; screen = video_screen_next(screen))
{
const screen_config *scrconfig = screen->inline_config;
fprintf(out, "\t\t<display");
switch (scrconfig->type)
{
case SCREEN_TYPE_RASTER: fprintf(out, " type=\"raster\""); break;
@ -915,7 +915,7 @@ static void print_game_info(FILE *out, const game_driver *game)
/* close the topmost tag */
fprintf(out, "\t</" XML_TOP ">\n");
/* release resources */
end_resource_tracking();
machine_config_free(config);
@ -930,7 +930,7 @@ static void print_game_info(FILE *out, const game_driver *game)
void print_mame_xml(FILE *out, const game_driver *const games[], const char *gamename)
{
int drvnum;
fprintf(out,
"<?xml version=\"1.0\"?>\n"
"<!DOCTYPE " XML_ROOT " [\n"

View File

@ -1585,7 +1585,7 @@ static void init_machine(running_machine *machine)
ui_set_startup_text(machine, "Initializing...", TRUE);
if (machine->gamedrv->driver_init != NULL)
(*machine->gamedrv->driver_init)(machine);
/* start the video and audio hardware */
video_init(machine);
sound_init(machine);

View File

@ -26,13 +26,13 @@
machine_config *machine_config_alloc(void (*constructor)(machine_config *))
{
machine_config *config;
/* allocate a new configuration object */
config = malloc_or_die(sizeof(*config));
if (config == NULL)
return NULL;
memset(config, 0, sizeof(*config));
/* call the function to construct the data */
(*constructor)(config);
return config;

View File

@ -88,7 +88,7 @@ struct _machine_config
void (*sound_start)(running_machine *machine); /* one-time sound start callback */
void (*sound_reset)(running_machine *machine); /* sound reset callback */
device_config * devicelist; /* list head for devices */
};

View File

@ -1355,7 +1355,7 @@ static int get_variable_value(const char *string, char **outputptr)
{
int scrnum = device_list_index(Machine->config->devicelist, VIDEO_SCREEN, device->tag);
const screen_config *scrconfig = device->inline_config;
/* native X aspect factor */
sprintf(temp, "~scr%dnativexaspect~", scrnum);
if (!strncmp(string, temp, strlen(temp)))

View File

@ -71,7 +71,7 @@
#define DIPAN(slot) ((slot->udata.data[0x24/2]>>0x0)&0x001F)
#define EFSDL(slot) ((AICA->EFSPAN[slot*4]>>8)&0x000f)
#define EFPAN(slot) ((AICA->EFSPAN[slot*4]>>0)&0x001f)
#define EFPAN(slot) ((AICA->EFSPAN[slot*4]>>0)&0x001f)
//Envelope times in ms
static const double ARTimes[64]={100000/*infinity*/,100000/*infinity*/,8100.0,6900.0,6000.0,4800.0,4000.0,3400.0,3000.0,2400.0,2000.0,1700.0,1500.0,
@ -356,7 +356,7 @@ static int EG_Update(struct _SLOT *slot)
slot->EG.volume+=slot->EG.AR;
if(slot->EG.volume>=(0x3ff<<EG_SHIFT))
{
if (!LPSLNK(slot))
if (!LPSLNK(slot))
{
slot->EG.state=DECAY1;
if(slot->EG.D1R>=(1024<<EG_SHIFT)) //Skip DECAY1, go directly to DECAY2
@ -386,8 +386,8 @@ static int EG_Update(struct _SLOT *slot)
{
slot->EG.volume=0;
AICA_StopSlot(slot,0);
// slot->EG.volume=0x17f<<EG_SHIFT;
// slot->EG.state=ATTACK;
// slot->EG.volume=0x17f<<EG_SHIFT;
// slot->EG.state=ATTACK;
}
break;
default:
@ -529,7 +529,7 @@ static void AICA_Init(struct _AICA *AICA, const struct AICAinterface *intf, int
{
AICA->AICARAM = memory_region(intf->region);
AICA->AICARAM += intf->roffset;
AICA->AICARAM_LENGTH = memory_region_length(intf->region);
AICA->AICARAM_LENGTH = memory_region_length(intf->region);
AICA->RAM_MASK = AICA->AICARAM_LENGTH-1;
AICA->RAM_MASK16 = AICA->RAM_MASK & 0x7ffffe;
AICA->DSP.AICARAM = (UINT16 *)AICA->AICARAM;
@ -700,7 +700,7 @@ static void AICA_UpdateSlotReg(struct _AICA *AICA,int s,int r)
Compute_LFO(slot);
break;
case 0x24:
// printf("[%02d]: %x to DISDL/DIPAN (PC=%x)\n", s, slot->udata.data[0x24/2], arm7_get_register(15));
// printf("[%02d]: %x to DISDL/DIPAN (PC=%x)\n", s, slot->udata.data[0x24/2], arm7_get_register(15));
break;
}
}
@ -728,13 +728,13 @@ static void AICA_UpdateReg(struct _AICA *AICA, int reg)
case 0x9:
AICA_MidiIn(0, AICA->udata.data[0x8/2]&0xff, 0);
break;
/* case 0x12:
case 0x13:
case 0x14:
case 0x15:
case 0x16:
case 0x17:
break;*/
/* case 0x12:
case 0x13:
case 0x14:
case 0x15:
case 0x16:
case 0x17:
break;*/
case 0x90:
case 0x91:
if(AICA->Master)
@ -795,7 +795,7 @@ static void AICA_UpdateReg(struct _AICA *AICA, int reg)
case 0xa4: //SCIRE
case 0xa5:
if(AICA->Master)
if(AICA->Master)
{
AICA->udata.data[0xa0/2] &= ~AICA->udata.data[0xa4/2];
ResetInterrupts(AICA);
@ -860,9 +860,9 @@ static void AICA_UpdateRegR(struct _AICA *AICA, int reg)
case 0x10: // LP check
case 0x11:
{
// int MSLC = (AICA->udata.data[0xc/2]>>8) & 0x3f; // which slot are we monitoring?
// int MSLC = (AICA->udata.data[0xc/2]>>8) & 0x3f; // which slot are we monitoring?
// AICA->udata.data[0x10/2] |= 0x8000; // set LP if necessary
// AICA->udata.data[0x10/2] |= 0x8000; // set LP if necessary
}
break;
@ -885,7 +885,7 @@ static void AICA_w16(struct _AICA *AICA,unsigned int addr,unsigned short val)
{
int slot=addr/0x80;
addr&=0x7f;
// printf("%x to slot %d offset %x\n", val, slot, addr);
// printf("%x to slot %d offset %x\n", val, slot, addr);
*((unsigned short *) (AICA->Slots[slot].udata.datab+(addr))) = val;
AICA_UpdateSlotReg(AICA,slot,addr&0x7f);
}
@ -893,7 +893,7 @@ static void AICA_w16(struct _AICA *AICA,unsigned int addr,unsigned short val)
{
if (addr <= 0x2044)
{
// printf("%x to EFSxx slot %d (addr %x)\n", val, (addr-0x2000)/4, addr&0x7f);
// printf("%x to EFSxx slot %d (addr %x)\n", val, (addr-0x2000)/4, addr&0x7f);
AICA->EFSPAN[addr&0x7f] = val;
}
}
@ -901,7 +901,7 @@ static void AICA_w16(struct _AICA *AICA,unsigned int addr,unsigned short val)
{
if (addr < 0x28be)
{
// printf("%x to AICA global @ %x\n", val, addr & 0xff);
// printf("%x to AICA global @ %x\n", val, addr & 0xff);
*((unsigned short *) (AICA->udata.datab+((addr&0xff)))) = val;
AICA_UpdateReg(AICA, addr&0xff);
}
@ -969,8 +969,8 @@ static unsigned short AICA_r16(struct _AICA *AICA, unsigned int addr)
return AICA->IRQR;
}
}
// else if (addr<0x700)
// v=AICA->RINGBUF[(addr-0x600)/2];
// else if (addr<0x700)
// v=AICA->RINGBUF[(addr-0x600)/2];
return v;
}
@ -1038,7 +1038,7 @@ INLINE INT32 AICA_UpdateSlot(struct _AICA *AICA, struct _SLOT *slot)
addr1=slot->cur_addr>>SHIFT;
addr2=slot->nxt_addr>>SHIFT;
}
else if(PCMS(slot) == 0)
else if(PCMS(slot) == 0)
{
addr1=(slot->cur_addr>>(SHIFT-1))&AICA->RAM_MASK16;
addr2=(slot->nxt_addr>>(SHIFT-1))&AICA->RAM_MASK16;
@ -1123,7 +1123,7 @@ INLINE INT32 AICA_UpdateSlot(struct _AICA *AICA, struct _SLOT *slot)
sample=(s>>SHIFT);
}
slot->prv_addr=slot->cur_addr;
slot->cur_addr+=step;
slot->nxt_addr=slot->cur_addr+(1<<SHIFT);
@ -1166,7 +1166,7 @@ INLINE INT32 AICA_UpdateSlot(struct _AICA *AICA, struct _SLOT *slot)
slot->cur_quant = slot->cur_lpquant;
}
// printf("Looping: slot_addr %x LSA %x LEA %x step %x base %x\n", *slot_addr[addr_select]>>SHIFT, LSA(slot), LEA(slot), slot->curstep, slot->adbase);
// printf("Looping: slot_addr %x LSA %x LEA %x step %x base %x\n", *slot_addr[addr_select]>>SHIFT, LSA(slot), LEA(slot), slot->curstep, slot->adbase);
}
else if(PCMS(slot)>=2 && addr_select==1)
{
@ -1231,7 +1231,7 @@ static void AICA_DoMasterSamples(struct _AICA *AICA, int nsamples)
smpr+=(sample*AICA->RPANTABLE[Enc])>>SHIFT;
}
}
AICA->BUFPTR&=63;
}
@ -1299,7 +1299,7 @@ void aica_stop(void)
void AICA_set_ram_base(int which, void *base, int size)
{
struct _AICA *AICA = sndti_token(SOUND_AICA, which);
struct _AICA *AICA = sndti_token(SOUND_AICA, which);
if (AICA)
{
AICA->AICARAM = base;

View File

@ -1,6 +1,6 @@
/*
Sega/Yamaha AICA emulation
Sega/Yamaha AICA emulation
*/
#ifndef _AICA_H_
@ -8,7 +8,7 @@
#define MAX_AICA (2)
struct AICAinterface
struct AICAinterface
{
int region; /* region of 2M/8M RAM */
int roffset; /* offset in the region */

View File

@ -86,7 +86,7 @@ void AICADSP_Step(struct _AICADSP *DSP)
for(step=0;step</*128*/DSP->LastStep;++step)
{
UINT16 *IPtr=DSP->MPRO+step*8;
// if(IPtr[0]==0 && IPtr[1]==0 && IPtr[2]==0 && IPtr[3]==0)
// break;
@ -119,7 +119,7 @@ void AICADSP_Step(struct _AICADSP *DSP)
UINT32 MASA=(IPtr[6]>>9)&0x1f; //???
UINT32 ADREB=(IPtr[6]>>8)&0x1;
UINT32 NXADR=(IPtr[6]>>7)&0x1;
INT64 v;
//operations are done at 24 bit precision

View File

@ -1,10 +1,10 @@
/*
AICA LFO handling
AICA LFO handling
Part of the AICA emulator package.
(not compiled directly, #included from aica.c)
Part of the AICA emulator package.
(not compiled directly, #included from aica.c)
By ElSemi, kingshriek, Deunan Knute, and R. Belmont
By ElSemi, kingshriek, Deunan Knute, and R. Belmont
*/
#define LFO_SHIFT 8
@ -40,16 +40,16 @@ void AICALFO_Init(void)
for(i=0;i<256;++i)
{
int a,p;
// float TL;
// float TL;
//Saw
a=255-i;
if(i<128)
p=i;
else
p=i-256;
p=i-256;
ALFO_SAW[i]=a;
PLFO_SAW[i]=p;
//Square
if(i<128)
{
@ -63,7 +63,7 @@ void AICALFO_Init(void)
}
ALFO_SQR[i]=a;
PLFO_SQR[i]=p;
//Tri
if(i<128)
a=255-(i*2);
@ -79,7 +79,7 @@ void AICALFO_Init(void)
p=i*2-511;
ALFO_TRI[i]=a;
PLFO_TRI[i]=p;
//noise
//a=lfo_noise[i];
a=mame_rand(Machine)&0xff;
@ -107,10 +107,10 @@ signed int INLINE AICAPLFO_Step(struct _LFO *LFO)
{
int p;
LFO->phase+=LFO->phase_step;
#if LFO_SHIFT!=8
LFO->phase+=LFO->phase_step;
#if LFO_SHIFT!=8
LFO->phase&=(1<<(LFO_SHIFT+8))-1;
#endif
#endif
p=LFO->table[LFO->phase>>LFO_SHIFT];
p=LFO->scale[p+128];
return p<<(SHIFT-LFO_SHIFT);
@ -119,10 +119,10 @@ signed int INLINE AICAPLFO_Step(struct _LFO *LFO)
signed int INLINE AICAALFO_Step(struct _LFO *LFO)
{
int p;
LFO->phase+=LFO->phase_step;
#if LFO_SHIFT!=8
LFO->phase+=LFO->phase_step;
#if LFO_SHIFT!=8
LFO->phase&=(1<<(LFO_SHIFT+8))-1;
#endif
#endif
p=LFO->table[LFO->phase>>LFO_SHIFT];
p=LFO->scale[p];
return p<<(SHIFT-LFO_SHIFT);

View File

@ -1112,7 +1112,7 @@ int sprintf_game_info(char *buffer)
{
int index = device_list_index(Machine->config->devicelist, VIDEO_SCREEN, device->tag);
const screen_config *scrconfig = device->inline_config;
if (scrcount > 1)
bufptr += sprintf(bufptr, "Screen %d: ", index + 1);

View File

@ -100,7 +100,7 @@ INLINE UINT32 quark_string_crc(const char *string)
/*-------------------------------------------------
quark_add - add a quark to the table and
connect it to the hash tables
connect it to the hash tables
-------------------------------------------------*/
INLINE void quark_add(quark_table *table, int index, UINT32 crc)
@ -114,7 +114,7 @@ INLINE void quark_add(quark_table *table, int index, UINT32 crc)
/*-------------------------------------------------
quark_table_get_first - return a pointer to the
quark_table_get_first - return a pointer to the
first hash entry connected to a CRC
-------------------------------------------------*/
@ -130,7 +130,7 @@ INLINE quark_entry *quark_table_get_first(quark_table *table, UINT32 crc)
***************************************************************************/
/*-------------------------------------------------
quark_table_alloc - allocate an array of
quark_table_alloc - allocate an array of
quark entries and a hash table
-------------------------------------------------*/
@ -158,7 +158,7 @@ static quark_table *quark_table_alloc(UINT32 entries, UINT32 hashsize)
/*-------------------------------------------------
quark_tables_create - build "quarks" for fast
quark_tables_create - build "quarks" for fast
string operations
-------------------------------------------------*/
@ -782,7 +782,7 @@ static int validate_display(int drivnum, const machine_config *drv)
for (device = video_screen_first(drv); device != NULL; device = video_screen_next(device))
{
const screen_config *scrconfig = device->inline_config;
/* sanity check dimensions */
if ((scrconfig->defstate.width <= 0) || (scrconfig->defstate.height <= 0))
{
@ -1450,7 +1450,7 @@ int mame_validitychecks(const game_driver *curdriver)
sound_checks -= osd_profiling_ticks();
error = validate_sound(drivnum, config) || error;
sound_checks += osd_profiling_ticks();
machine_config_free(config);
}

View File

@ -1432,7 +1432,7 @@ static INPUT_PORTS_START( goldmedl )
PORT_DIPSETTING( 0x00, "Upright 2 Players" )
PORT_DIPSETTING( 0x80, "Upright 4 Players" )
PORT_DIPSETTING( 0x88, DEF_STR( Cocktail ) )
//PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) ) /* Not documented. */
//PORT_DIPSETTING( 0x08, DEF_STR( Cocktail ) ) /* Not documented. */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START3 ) PORT_DIPLOCATION("SW1:3") /* Listed as "Always OFF". */
PORT_DIPNAME( 0x20, 0x20, "Speed For 100M Dash" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x00, "10 Beats For Max Speed" )

View File

@ -312,11 +312,11 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( angelkds )
/*
Free Play: Set SW1:1-8 ON (A:Free Play & B:Free Play).
Sound Test: Set SW1:1-8 ON (A:Free Play & B:Free Play), hold test switch and reboot.
Joystick Test: Set SW1:1-7 ON & SW1:8 OFF (A:Free Play & B:3C_1C), hold test switch and reboot.
Joystick Test Coin_A & Coin_B seem to be switched, only works when setting A to 3C_1C and B to Free Play.
*/
Free Play: Set SW1:1-8 ON (A:Free Play & B:Free Play).
Sound Test: Set SW1:1-8 ON (A:Free Play & B:Free Play), hold test switch and reboot.
Joystick Test: Set SW1:1-7 ON & SW1:8 OFF (A:Free Play & B:3C_1C), hold test switch and reboot.
Joystick Test Coin_A & Coin_B seem to be switched, only works when setting A to 3C_1C and B to Free Play.
*/
PORT_START_TAG("I40") /* inport $40 */
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2,3,4")
PORT_DIPSETTING( 0x70, DEF_STR( 4C_1C ) )

View File

@ -280,7 +280,7 @@ PROMs : (x1, near EPR-7543.12B, labelled PR7571)
DIPSW : 8 position (x1)
DIPSW Info:
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
-----------------------------------------------------------------------------------
Coin1
1Coin 1Credit OFF OFF OFF
@ -299,14 +299,14 @@ Coin2
3Coin 1Credit ON ON
-----------------------------------------------------------------------------------
Demo Sound
Off OFF
On ON
Off OFF
On ON
-----------------------------------------------------------------------------------
Not Used OFF
Not Used OFF
-----------------------------------------------------------------------------------
Language
Japanese OFF
English ON
Japanese OFF
English ON
-----------------------------------------------------------------------------------

View File

@ -66,9 +66,9 @@ Note :
=======
- To enter test mode, press coin 2 key at start in Argus and Valtric.
- DIP locations verified for:
butasan
argus
valtric
butasan
argus
valtric
Known issues :

View File

@ -144,10 +144,10 @@ Stephh's notes (based on the games M68000 code and some tests) :
2005-04-02 Sebastien Chevalier : various update to video on terrafu, plus some typos here and there
DIP locations verified for:
-cclimbr2
-legion
-terraf
DIP locations verified for:
-cclimbr2
-legion
-terraf
*/
@ -502,12 +502,12 @@ static INPUT_PORTS_START( armedf )
PORT_DIPSETTING( 0x01, "5" )
PORT_DIPSETTING( 0x00, "6" )
/* SW1:3,4 defined in manual/test-mode as:
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, "20k" )
PORT_DIPSETTING( 0x00, "40k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "60k" )
PORT_DIPSETTING( 0x00, "80k" )*/
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, "20k" )
PORT_DIPSETTING( 0x00, "40k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "60k" )
PORT_DIPSETTING( 0x00, "80k" )*/
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:3,4")
PORT_DIPSETTING( 0x0c, "20k then every 60k" )
PORT_DIPSETTING( 0x04, "20k then every 80k" )
@ -595,12 +595,12 @@ static INPUT_PORTS_START( terraf )
PORT_MODIFY("DSW0")
/* SW1:3,4 defined in manual/test-mode as:
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, "20k" )
PORT_DIPSETTING( 0x00, "50k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "60k" )
PORT_DIPSETTING( 0x00, "90k" )*/
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, "20k" )
PORT_DIPSETTING( 0x00, "50k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "60k" )
PORT_DIPSETTING( 0x00, "90k" )*/
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:3,4")
PORT_DIPSETTING( 0x0c, "20k then every 60k" )
PORT_DIPSETTING( 0x04, "20k then every 90k" )
@ -628,12 +628,12 @@ static INPUT_PORTS_START( kodure )
PORT_MODIFY("DSW0")
/* SW1:3,4 defined in manual/test-mode as:
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, DEF_STR( None ) )
PORT_DIPSETTING( 0x00, "50k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "60k" )
PORT_DIPSETTING( 0x00, "90k" )*/
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, DEF_STR( None ) )
PORT_DIPSETTING( 0x00, "50k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "60k" )
PORT_DIPSETTING( 0x00, "90k" )*/
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:3,4")
PORT_DIPSETTING( 0x08, "50k then every 60k" )
PORT_DIPSETTING( 0x00, "50k then every 90k" )
@ -680,12 +680,12 @@ static INPUT_PORTS_START( cclimbr2 )
PORT_MODIFY("DSW0")
/* SW1:3,4 defined in manual/test-mode as:
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, "30k" )
PORT_DIPSETTING( 0x00, "60k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "70k" )
PORT_DIPSETTING( 0x00, DEF_STR( None ) )*/
PORT_DIPNAME( 0x04, 0x04, "1st Bonus Life" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x04, "30k" )
PORT_DIPSETTING( 0x00, "60k" )
PORT_DIPNAME( 0x08, 0x08, "2nd Bonus Life" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x08, "70k" )
PORT_DIPSETTING( 0x00, DEF_STR( None ) )*/
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:3,4")
PORT_DIPSETTING( 0x0c, "30K and 100k" )
PORT_DIPSETTING( 0x08, "60k and 130k" )

View File

@ -13,11 +13,11 @@
* measured against a real PCB, the games run slightly too fast
in spite of accurately measured VBLANK timings
DIP locations verified for:
* ultennis (manual+test mode)
* cheesech (test mode)
* stonebal (test mode)
* stoneba2 (test mode)
DIP locations verified for:
* ultennis (manual+test mode)
* cheesech (test mode)
* stonebal (test mode)
* stoneba2 (test mode)
***************************************************************************/

View File

@ -158,10 +158,10 @@ Kits are available immediately from your Atari Distributor. To determine which
(Left coin always registers 1 credit/coin)
DIP locations verified from manual for:
- asteroid
- llander
- llander1
- astdelux
- asteroid
- llander
- llander1
- astdelux
***************************************************************************/
@ -433,8 +433,8 @@ static INPUT_PORTS_START( astdelux )
PORT_DIPSETTING ( 0x01, DEF_STR( German ) )
PORT_DIPSETTING ( 0x02, DEF_STR( French ) )
PORT_DIPSETTING ( 0x03, DEF_STR( Spanish ) )
/* Default lives is 2,3,4,5. Values incremented by 1 if Bonus Life set to None or Coinage set to 2C_1C.
Incremented by 2 if both are set at the same time. PORT_CONDITION() can only test for 1 switch at a time. */
/* Default lives is 2,3,4,5. Values incremented by 1 if Bonus Life set to None or Coinage set to 2C_1C.
Incremented by 2 if both are set at the same time. PORT_CONDITION() can only test for 1 switch at a time. */
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("R5:3,4") /* Default is 2 or 3 depending on manual version */
PORT_DIPSETTING ( 0x00, "2-4" )
PORT_DIPSETTING ( 0x04, "3-5" )
@ -474,17 +474,17 @@ static INPUT_PORTS_START( astdelux )
PORT_DIPSETTING ( 0xe0, DEF_STR( None ) )
/* The manual includes a 3rd DIP controlling the number & configuration of coin counters, defined as:
PORT_START_TAG("DSW3") // 4-Toggle switch located on game PCB at M12
PORT_DIPNAME( 0x03, 0x00, "Coin Counters" ) PORT_DIPLOCATION("M12:1,2")
PORT_DIPSETTING ( 0x00, "1=Left, Center & Right" ) // "For games having these coin doors: Thai 1Baht/1Baht, German 1DM/1DM, US 25c/25c,
// Belgian or French 5Fr/5Fr, Swiss or French 1Fr/1Fr, US 25c/25c/25c,
// Japanese 100Y/100Y, Swedish 1Kr/1Kr, UK 10P/10P, Australian 20c/20c, or Italian 100L/100L."
PORT_DIPSETTING ( 0x01, "1=Left & Center, 2=Right" ) // "For games having these coin doors: German 2DM/1DM, German 1DM/5DM, US 25c/25c/1$, or US 25c/1$."
PORT_DIPSETTING ( 0x02, "1=Left, 2=Center & Right" ) // "No coin door is currently designed for this configuration."
PORT_DIPSETTING ( 0x03, "1=Left, 2=Center, 3=Right" ) // "For games having these coin doors: German 1DM/2DM/5DM."
PORT_DIPUNUSED_DIPLOC( 0x04, 0x04, "M12:3" ) // Listed as "Unused"
PORT_DIPUNUSED_DIPLOC( 0x08, 0x08, "M12:4" ) // Listed as "Unused"
*/
PORT_START_TAG("DSW3") // 4-Toggle switch located on game PCB at M12
PORT_DIPNAME( 0x03, 0x00, "Coin Counters" ) PORT_DIPLOCATION("M12:1,2")
PORT_DIPSETTING ( 0x00, "1=Left, Center & Right" ) // "For games having these coin doors: Thai 1Baht/1Baht, German 1DM/1DM, US 25c/25c,
// Belgian or French 5Fr/5Fr, Swiss or French 1Fr/1Fr, US 25c/25c/25c,
// Japanese 100Y/100Y, Swedish 1Kr/1Kr, UK 10P/10P, Australian 20c/20c, or Italian 100L/100L."
PORT_DIPSETTING ( 0x01, "1=Left & Center, 2=Right" ) // "For games having these coin doors: German 2DM/1DM, German 1DM/5DM, US 25c/25c/1$, or US 25c/1$."
PORT_DIPSETTING ( 0x02, "1=Left, 2=Center & Right" ) // "No coin door is currently designed for this configuration."
PORT_DIPSETTING ( 0x03, "1=Left, 2=Center, 3=Right" ) // "For games having these coin doors: German 1DM/2DM/5DM."
PORT_DIPUNUSED_DIPLOC( 0x04, 0x04, "M12:3" ) // Listed as "Unused"
PORT_DIPUNUSED_DIPLOC( 0x08, 0x08, "M12:4" ) // Listed as "Unused"
*/
INPUT_PORTS_END

View File

@ -896,7 +896,7 @@ static MACHINE_DRIVER_START( edrandy )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MDRV_GFXDECODE(cninja)
MDRV_PALETTE_LENGTH(2048)

View File

@ -1550,7 +1550,7 @@ static MACHINE_DRIVER_START( snookr10 )
// MDRV_SCREEN_SIZE((124+1)*4, (30+1)*8)
// MDRV_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 29*8-1)
// MDRV_DEVICE_ADD("crtc", MC6845)
// MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_GFXDECODE(sn10)

View File

@ -111,7 +111,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( m52 )
PORT_START_TAG("IN0")
/* Start 1 & 2 also restarts and freezes the game with stop mode on
and are used in test mode to enter and esc the various tests */
and are used in test mode to enter and esc the various tests */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
/* coin input must be active for 19 frames to be consistently recognized */
@ -266,31 +266,31 @@ static INPUT_PORTS_START( alpha1v )
PORT_DIPNAME( 0x0f, 0x00, DEF_STR( Coin_A ) ) /* table at 0x5ef4 - 16 bytes (coins) + 16 bytes (credits) */
PORT_DIPSETTING( 0x0b, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x0c, DEF_STR( 3C_1C ) )
// PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x09, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x0a, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x09, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x0a, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x0d, DEF_STR( 2C_1C ) )
// PORT_DIPSETTING( 0x0e, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x04, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0e, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x04, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPNAME( 0xf0, 0x00, DEF_STR( Coin_B ) ) /* table at 0x5f14 - 16 bytes (coins) + 16 bytes (credits) */
// PORT_DIPSETTING( 0xf0, "1 Coin/0 Credit" )
// PORT_DIPSETTING( 0x70, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x50, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x20, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0xf0, "1 Coin/0 Credit" )
// PORT_DIPSETTING( 0x70, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x50, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x40, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x20, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0xd0, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0xc0, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_4C ) )

View File

@ -90,7 +90,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( m57 )
PORT_START_TAG("IN0")
/* Start 1 & 2 also restarts and freezes the game with stop mode on
and are used in test mode to enter and esc the various tests */
and are used in test mode to enter and esc the various tests */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
/* coin input must be active for 19 frames to be consistently recognized */

View File

@ -54,7 +54,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( m58 )
PORT_START_TAG("IN0")
/* Start 1 & 2 also restarts and freezes the game with stop mode on
and are used in test mode to enter and esc the various tests */
and are used in test mode to enter and esc the various tests */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
/* coin input must be active for 19 frames to be consistently recognized */

View File

@ -801,17 +801,17 @@ static MACHINE_DRIVER_START( renegade )
MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */*2)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0, 30*8-1)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0, 30*8-1)
MDRV_GFXDECODE(renegade)
MDRV_PALETTE_LENGTH(256)
MDRV_GFXDECODE(renegade)
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(renegade)
MDRV_VIDEO_UPDATE(renegade)
MDRV_VIDEO_START(renegade)
MDRV_VIDEO_UPDATE(renegade)
/* sound hardware */
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD(YM3526, 12000000/4)

View File

@ -369,7 +369,7 @@ static MACHINE_DRIVER_START( spbactn )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MDRV_GFXDECODE(spbactn)
MDRV_PALETTE_LENGTH(0x2800/2)

View File

@ -535,7 +535,7 @@ static MACHINE_DRIVER_START( funystrp )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 47*8-1, 2*8, 32*8-1)
MDRV_GFXDECODE(splash)
MDRV_PALETTE_LENGTH(2048)

View File

@ -1128,7 +1128,7 @@ static MACHINE_DRIVER_START( srmp3 )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 256-16)
MDRV_SCREEN_VISIBLE_AREA(16, 400-1, 8, 256-1-24)
MDRV_GFXDECODE(srmp3)
MDRV_PALETTE_LENGTH(512) /* sprites only */

View File

@ -1,4 +1,4 @@
/*
/*
Super Kaneko Nova System
Original Driver by Sylvain Glaize
taken to pieces and attempted reconstruction by David Haywood

View File

@ -11,7 +11,7 @@
#define IREM_Z80_COINAGE_TYPE_1_LOC(DIPBANK) \
/* Coin Mode 1 */ \
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) ) PORT_CONDITION("DSW2", 0x04, PORTCOND_NOTEQUALS, 0x00) PORT_DIPLOCATION(#DIPBANK":5,6,7,8") \
/* PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) */ \
/* PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) */ \
PORT_DIPSETTING( 0x90, DEF_STR( 7C_1C ) ) \
PORT_DIPSETTING( 0xa0, DEF_STR( 6C_1C ) ) \
PORT_DIPSETTING( 0xb0, DEF_STR( 5C_1C ) ) \
@ -42,8 +42,8 @@
#define IREM_Z80_COINAGE_TYPE_2_LOC(DIPBANK) \
/* Coin Mode 1 */ \
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) ) PORT_CONDITION("DSW2", 0x04, PORTCOND_NOTEQUALS, 0x00) PORT_DIPLOCATION(#DIPBANK":5,6,7,8") \
/* PORT_DIPSETTING( 0x80, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x90, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x80, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x90, DEF_STR( Free_Play ) ) */ \
PORT_DIPSETTING( 0xa0, DEF_STR( 6C_1C ) ) \
PORT_DIPSETTING( 0xb0, DEF_STR( 5C_1C ) ) \
PORT_DIPSETTING( 0xc0, DEF_STR( 4C_1C ) ) \
@ -55,8 +55,8 @@
PORT_DIPSETTING( 0x50, DEF_STR( 1C_4C ) ) \
PORT_DIPSETTING( 0x40, DEF_STR( 1C_5C ) ) \
PORT_DIPSETTING( 0x30, DEF_STR( 1C_6C ) ) \
/* PORT_DIPSETTING( 0x20, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x10, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x20, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x10, DEF_STR( Free_Play ) ) */ \
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) \
/* Coin Mode 2 */ \
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) PORT_CONDITION("DSW2", 0x04, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION(#DIPBANK":5,6") \
@ -75,7 +75,7 @@
#define IREM_Z80_COINAGE_TYPE_1 \
/* Coin Mode 1 */ \
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) ) PORT_CONDITION("DSW2", 0x04, PORTCOND_NOTEQUALS, 0x00) \
/* PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) */ \
/* PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) */ \
PORT_DIPSETTING( 0x90, DEF_STR( 7C_1C ) ) \
PORT_DIPSETTING( 0xa0, DEF_STR( 6C_1C ) ) \
PORT_DIPSETTING( 0xb0, DEF_STR( 5C_1C ) ) \
@ -101,13 +101,13 @@
PORT_DIPSETTING( 0xc0, DEF_STR( 1C_2C ) ) \
PORT_DIPSETTING( 0x80, DEF_STR( 1C_3C ) ) \
PORT_DIPSETTING( 0x40, DEF_STR( 1C_5C ) ) \
PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) )
#define IREM_Z80_COINAGE_TYPE_2 \
/* Coin Mode 1 */ \
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) ) PORT_CONDITION("DSW2", 0x04, PORTCOND_NOTEQUALS, 0x00) \
/* PORT_DIPSETTING( 0x80, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x90, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x80, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x90, DEF_STR( Free_Play ) ) */ \
PORT_DIPSETTING( 0xa0, DEF_STR( 6C_1C ) ) \
PORT_DIPSETTING( 0xb0, DEF_STR( 5C_1C ) ) \
PORT_DIPSETTING( 0xc0, DEF_STR( 4C_1C ) ) \
@ -119,8 +119,8 @@
PORT_DIPSETTING( 0x50, DEF_STR( 1C_4C ) ) \
PORT_DIPSETTING( 0x40, DEF_STR( 1C_5C ) ) \
PORT_DIPSETTING( 0x30, DEF_STR( 1C_6C ) ) \
/* PORT_DIPSETTING( 0x20, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x10, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x20, DEF_STR( Free_Play ) ) */ \
/* PORT_DIPSETTING( 0x10, DEF_STR( Free_Play ) ) */ \
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) \
/* Coin Mode 2 */ \
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) PORT_CONDITION("DSW2", 0x04, PORTCOND_EQUALS, 0x00) \
@ -132,5 +132,5 @@
PORT_DIPSETTING( 0xc0, DEF_STR( 1C_2C ) ) \
PORT_DIPSETTING( 0x80, DEF_STR( 1C_3C ) ) \
PORT_DIPSETTING( 0x40, DEF_STR( 1C_5C ) ) \
PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) )

View File

@ -146,7 +146,7 @@ INLINE int decode_reg_64(UINT32 offset, UINT64 mem_mask, UINT64 *shift)
{
mame_printf_verbose("Wrong mask! (PC=%x)\n", activecpu_get_pc());
#ifdef ENABLE_DEBUGGER
// mame_debug_break();
// mame_debug_break();
#endif
}
@ -524,9 +524,9 @@ WRITE64_HANDLER( dc_maple_w )
// first function
maple0x86data2[pos+ 9]=1; // report
maple0x86data2[pos+10]=0; // bits TEST TILT1 TILT2 TILT3 ? ? ? ?
maple0x86data2[pos+11]=readinputportbytag("IN1"); // bits 1Pstart 1Pservice 1Pup 1Pdown 1Pleft 1Pright 1Ppush1 1Ppush2
maple0x86data2[pos+11]=readinputportbytag("IN1"); // bits 1Pstart 1Pservice 1Pup 1Pdown 1Pleft 1Pright 1Ppush1 1Ppush2
maple0x86data2[pos+12]=readinputportbytag("IN2"); // bits 1Ppush3 1Ppush4 1Ppush5 1Ppush6 1Ppush7 1Ppush8 ...
maple0x86data2[pos+13]=readinputportbytag("IN3"); // bits 2Pstart 2Pservice 2Pup 2Pdown 2Pleft 2Pright 2Ppush1 2Ppush2
maple0x86data2[pos+13]=readinputportbytag("IN3"); // bits 2Pstart 2Pservice 2Pup 2Pdown 2Pleft 2Pright 2Ppush1 2Ppush2
maple0x86data2[pos+14]=readinputportbytag("IN4"); // bits 2Ppush3 2Ppush4 2Ppush5 2Ppush6 2Ppush7 2Ppush8 ...
// second function
maple0x86data2[pos+15]=1; // report
@ -547,7 +547,7 @@ WRITE64_HANDLER( dc_maple_w )
maple0x86data2[pos+26]=0;
maple0x86data2[pos+7]=17+2;
tocopy += 17;
}
}
else
{
maple0x86data2[pos+7]=15+2;
@ -846,7 +846,7 @@ READ64_HANDLER( dc_aica_reg_r )
reg = decode_reg_64(offset, mem_mask, &shift);
// mame_printf_verbose("AICA REG: [%08x] read %llx, mask %llx\n", 0x700000+reg*4, (UINT64)offset, mem_mask);
// mame_printf_verbose("AICA REG: [%08x] read %llx, mask %llx\n", 0x700000+reg*4, (UINT64)offset, mem_mask);
return (UINT64) AICA_0_r(offset*2, 0x0000)<<shift;
}
@ -876,7 +876,7 @@ WRITE64_HANDLER( dc_aica_reg_w )
AICA_0_w(offset*2, dat, shift ? ((mem_mask>>32)&0xffff) : (mem_mask & 0xffff));
// mame_printf_verbose("AICA REG: [%08x=%x] write %llx to %x, mask %llx\n", 0x700000+reg*4, dat, data, offset, mem_mask);
// mame_printf_verbose("AICA REG: [%08x=%x] write %llx to %x, mask %llx\n", 0x700000+reg*4, dat, data, offset, mem_mask);
}
READ32_HANDLER( dc_arm_aica_r )

View File

@ -148,7 +148,7 @@ VIDEO_START(magiccrd)
VIDEO_START(snookr10)
{
// mc6845 = devtag_get_token(machine, MC6845, "crtc");
// mc6845 = devtag_get_token(machine, MC6845, "crtc");
bg_tilemap = tilemap_create(get_bg_tile_info, tilemap_scan_rows, 4, 8, 128, 32);
}

View File

@ -839,7 +839,7 @@ VIDEO_UPDATE( rjammer )
PIN15 = select prom @16B (active low)
PIN16 = select prom @16A (active low)
PINs: 1,2,3,4,5 and 7,14 are used for priority system
*/
*/
color_bank = (pal14h4_pin13 & ((bg_data&0x08)>>3) & ((bg_data&0x04)>>2) & (((bg_data&0x02)>>1)^1) & (bg_data&0x01) )
| (pal14h4_pin18 & ((bg_data&0x08)>>3) & ((bg_data&0x04)>>2) & ((bg_data&0x02)>>1) & ((bg_data&0x01)^1) )
| (pal14h4_pin19);

View File

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