mirror of
https://github.com/holub/mame
synced 2025-10-04 08:28:39 +03:00
sc4dnd / sc4dndtp / sc4dnddw layout fun - backup of WIP (nw)
This commit is contained in:
parent
be76aeae5b
commit
6c31448b58
2
.gitattributes
vendored
2
.gitattributes
vendored
@ -6351,6 +6351,8 @@ src/mame/layout/sc2_vfd.lay svneol=native#text/xml
|
||||
src/mame/layout/sc2_vid.lay svneol=native#text/xml
|
||||
src/mame/layout/sc4_dmd.lay svneol=native#text/xml
|
||||
src/mame/layout/sc4dnd.lay svneol=native#text/plain
|
||||
src/mame/layout/sc4dnddw.lay svneol=native#text/plain
|
||||
src/mame/layout/sc4dndtp.lay svneol=native#text/plain
|
||||
src/mame/layout/sderby.lay svneol=native#text/xml
|
||||
src/mame/layout/seabattl.lay svneol=native#text/xml
|
||||
src/mame/layout/seawolf.lay svneol=native#text/xml
|
||||
|
@ -185,6 +185,20 @@ enum ioport_type
|
||||
IPT_BUTTON14,
|
||||
IPT_BUTTON15,
|
||||
IPT_BUTTON16,
|
||||
IPT_BUTTON17,
|
||||
IPT_BUTTON18,
|
||||
IPT_BUTTON19,
|
||||
IPT_BUTTON20,
|
||||
IPT_BUTTON21,
|
||||
IPT_BUTTON22,
|
||||
IPT_BUTTON23,
|
||||
IPT_BUTTON24,
|
||||
IPT_BUTTON25,
|
||||
IPT_BUTTON26,
|
||||
IPT_BUTTON27,
|
||||
IPT_BUTTON28,
|
||||
IPT_BUTTON29,
|
||||
IPT_BUTTON30,
|
||||
|
||||
// mahjong inputs
|
||||
IPT_MAHJONG_FIRST,
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -123,6 +123,15 @@ int find_project_string(running_machine &machine, int addrxor, int mode)
|
||||
|
||||
// find where the button definitions are in the ROM to make creating input ports easier for games using common test mode code
|
||||
// not ALL games have a comprehensive list, but enough do to make this a worthwile debugging aid.
|
||||
|
||||
struct sc4inputinfo
|
||||
{
|
||||
astring name;
|
||||
bool used;
|
||||
};
|
||||
|
||||
sc4inputinfo sc4inputs[32][16];
|
||||
|
||||
bool compare_input_code(running_machine &machine, int addr)
|
||||
{
|
||||
UINT16 *src = (UINT16*)machine.root_device().memregion( "maincpu" )->base();
|
||||
@ -140,6 +149,19 @@ bool compare_input_code(running_machine &machine, int addr)
|
||||
|
||||
int find_input_strings(running_machine &machine)
|
||||
{
|
||||
for (int i = 0; i < 32; i++)
|
||||
{
|
||||
for (int j = 0; j < 16; j++)
|
||||
{
|
||||
char tempstr[32];
|
||||
sprintf(tempstr, "IN%d-%d", i, j);
|
||||
|
||||
sc4inputs[i][j].name = tempstr;
|
||||
sc4inputs[i][j].used = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int foundat = -1;
|
||||
UINT32 startblock = 0;
|
||||
UINT32 endblock = 0;
|
||||
@ -167,6 +189,7 @@ int find_input_strings(running_machine &machine)
|
||||
UINT16 portpos = rom[j + 0];
|
||||
int port = (portpos & 0x1f);
|
||||
int pos = (portpos >> 5);
|
||||
|
||||
UINT16 unk2 = rom[j + 1];
|
||||
UINT32 stringaddr = (rom[j + 2] << 16) | rom[j + 3];
|
||||
|
||||
@ -188,6 +211,32 @@ int find_input_strings(running_machine &machine)
|
||||
|
||||
}
|
||||
|
||||
tempstring.trimspace();
|
||||
tempstring.makelower();
|
||||
|
||||
|
||||
//if (pos <= 5)
|
||||
{
|
||||
if (sc4inputs[port][pos].used == false)
|
||||
{
|
||||
sc4inputs[port][pos].used = true;
|
||||
sc4inputs[port][pos].name = tempstring;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("position already used?\n");
|
||||
|
||||
sc4inputs[port][pos].name.cat(" OR ");
|
||||
sc4inputs[port][pos].name.cat(tempstring);
|
||||
}
|
||||
}
|
||||
//else
|
||||
//{
|
||||
// printf("invalid port position?\n");
|
||||
//}
|
||||
|
||||
|
||||
|
||||
sc45helperlog("%s", tempstring.cstr());
|
||||
|
||||
sc45helperlog("\n");
|
||||
@ -198,12 +247,108 @@ int find_input_strings(running_machine &machine)
|
||||
}
|
||||
}
|
||||
|
||||
sc45helperlog("------------ INPUT STRUCTURE -----------------\n");
|
||||
|
||||
// i'm not sure exactly how many ports are valid for inputs, or if different
|
||||
// hardware can also be connected to them, buttons typically map in
|
||||
// ports 1,2, then jump to 8,9, and sometimes 10 (sc4dndys)
|
||||
// some games appear to have mistakes in their tables (sc4dndclc claims the
|
||||
// %age key maps over the dips?)
|
||||
// dips are on the motherboard and the 16 switches appear mapped at 16,17,18,19 split 5-5-5-1 (I'm assuming this can't move)
|
||||
// the green service mode button in port 20 is also on the motherboard (I'm assuming this can't move)
|
||||
//
|
||||
// sometimes an upper bit (0x100) is set for hopper related ports?
|
||||
|
||||
int ignoreports[32][16] =
|
||||
{
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ 1, 2, 3, 4, 5, 6, -1, -1, -4, -1, -1, -1, -1, -1, -1, -1, }, // port 1
|
||||
{ 7, 8, 9, 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 2
|
||||
{ -1, -1, -2, -2, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -4, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -2, -2, -2, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -2, -2, -2, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ 13, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 8
|
||||
{ 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 9
|
||||
{ 25, 26, 27, 28, 29, 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 10
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -3, -3, -3, -3, -3, -1, -1, -1, -4, -1, -1, -1, -1, -1, -1, -1, }, // port 16
|
||||
{ -3, -3, -3, -3, -3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 17
|
||||
{ -3, -3, -3, -3, -3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 18
|
||||
{ -3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 19
|
||||
{ -3, -2, -2, -2, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }, // port 20
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }
|
||||
};
|
||||
|
||||
int buttons_used = 1;
|
||||
|
||||
printf("INPUT_PORTS_START( %s ) // this structure is generated\n", machine.system().name);
|
||||
printf(" PORT_INCLUDE( sc4_base )\n");
|
||||
|
||||
for (int i = 0; i < 32; i++)
|
||||
{
|
||||
int thisportused = 0;
|
||||
|
||||
for (int j = 0; j < 16; j++)
|
||||
{
|
||||
if (sc4inputs[i][j].used == true)
|
||||
{
|
||||
if (thisportused == 0)
|
||||
{
|
||||
printf(" PORT_MODIFY(\"IN-%d\")\n", i);
|
||||
thisportused = 1;
|
||||
}
|
||||
|
||||
if (ignoreports[i][j] > 0)
|
||||
{
|
||||
printf(" PORT_BIT( 0x%04x, IP_ACTIVE_HIGH, IPT_BUTTON%d ) PORT_NAME(\"%s\")\n", 1 << j, ignoreports[i][j], sc4inputs[i][j].name.cstr());
|
||||
buttons_used++;
|
||||
}
|
||||
else if (ignoreports[i][j] == -3)
|
||||
{
|
||||
printf(" // 0x%04x - \"%s\" // standard input (motherboard)\n", 1 << j, sc4inputs[i][j].name.cstr());
|
||||
}
|
||||
else if (ignoreports[i][j] == -2)
|
||||
{
|
||||
printf(" // 0x%04x - \"%s\" // standard input (expected here)\n", 1 << j, sc4inputs[i][j].name.cstr());
|
||||
}
|
||||
else if (ignoreports[i][j] == -1)
|
||||
{
|
||||
printf(" // 0x%04x - \"%s\" // unexpected here\n", 1 << j, sc4inputs[i][j].name.cstr());
|
||||
}
|
||||
else if (ignoreports[i][j] == -4)
|
||||
{
|
||||
printf(" // 0x%04x - \"%s\" // known extended input, mapping not understood\n", 1 << j, sc4inputs[i][j].name.cstr());
|
||||
}
|
||||
buttons_used++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
printf("INPUT_PORTS_END\n");
|
||||
|
||||
return foundat;
|
||||
}
|
||||
|
||||
struct lampinfo
|
||||
{
|
||||
astring lampname;
|
||||
astring lampname_alt;
|
||||
bool used;
|
||||
int x, y;
|
||||
int width, height;
|
||||
@ -221,7 +366,7 @@ void set_clickable_temp(running_machine &machine, astring teststring, int clickp
|
||||
{
|
||||
for (int x = 0; x < 16; x++)
|
||||
{
|
||||
if (!strcmp(teststring.cstr(), lamps[y][x].lampname.cstr()))
|
||||
if (!strcmp(teststring.cstr(), lamps[y][x].lampname_alt.cstr()))
|
||||
{
|
||||
lamps[y][x].clickport = clickport;
|
||||
lamps[y][x].clickmask = clickmask;
|
||||
@ -235,7 +380,29 @@ void set_clickable_temp(running_machine &machine, astring teststring, int clickp
|
||||
|
||||
int find_lamp_strings(running_machine &machine)
|
||||
{
|
||||
if (strcmp(machine.system().name, "sc4dnd"))
|
||||
|
||||
int startblock = -1;
|
||||
int endblock = -1;
|
||||
|
||||
|
||||
if (!strcmp(machine.system().name, "sc4dnd"))
|
||||
{
|
||||
// these are for sc4dnd ONLY, need to work out how the code calculates them
|
||||
startblock = 0x1cac0;
|
||||
endblock = 0x1cf9a;
|
||||
}
|
||||
else if (!strcmp(machine.system().name, "sc4dndtp"))
|
||||
{
|
||||
startblock = 0x2175c;
|
||||
endblock = 0x21cb4;
|
||||
}
|
||||
else if (!strcmp(machine.system().name, "sc4dnddw"))
|
||||
{
|
||||
startblock = 0x18a8e;
|
||||
endblock = 0x18fc2;
|
||||
}
|
||||
|
||||
if (startblock == -1)
|
||||
return 0;
|
||||
|
||||
|
||||
@ -266,9 +433,7 @@ int find_lamp_strings(running_machine &machine)
|
||||
|
||||
|
||||
|
||||
// these are for sc4dnd ONLY, need to work out how the code calculates them
|
||||
int startblock = 0x1cac0;
|
||||
int endblock = 0x1cf9a;
|
||||
|
||||
|
||||
|
||||
UINT16 *rom = (UINT16*)machine.root_device().memregion( "maincpu" )->base();
|
||||
@ -338,6 +503,25 @@ int find_lamp_strings(running_machine &machine)
|
||||
}
|
||||
}
|
||||
|
||||
sc45helperlog("\n\n");
|
||||
// print out some input text labels for specific rows
|
||||
d = 0;
|
||||
for (int y = 0; y < 6; y++)
|
||||
{
|
||||
int actualrows[] = { 1, 2, 8, 9, 10, 20 };
|
||||
int realy = actualrows[y];
|
||||
|
||||
for (int x = 0; x < 6; x++)
|
||||
{
|
||||
sc45helperlog("<element name=\"inputlabel%d-%d\"><text string=\"%s\"><color red=\"1.0\" green=\"1.0\" blue=\"1.0\" /></text></element>\n", realy,x,sc4inputs[realy][x].name.cstr());
|
||||
|
||||
}
|
||||
}
|
||||
sc45helperlog("\n");
|
||||
|
||||
|
||||
|
||||
|
||||
// some stuff needed by the matrix layout
|
||||
sc45helperlog("<element name=\"matrixlamp\">\n");
|
||||
sc45helperlog("<rect state =\"0\"><bounds x=\"0\" y=\"0\" width=\"7\" height=\"7\" /><color red=\"0.7\" green=\"0.7\" blue=\"0.7\" /></rect>\n");
|
||||
@ -359,6 +543,11 @@ int find_lamp_strings(running_machine &machine)
|
||||
sc45helperlog("<rect state =\"1\"><bounds x=\"0\" y=\"0\" width=\"7\" height=\"7\" /><color red=\"0.0\" green=\"1.0\" blue=\"0.0\" /></rect>\n");
|
||||
sc45helperlog("<rect state =\"2\"><bounds x=\"0\" y=\"0\" width=\"7\" height=\"7\" /><color red=\"0.0\" green=\"0.0\" blue=\"1.0\" /></rect>\n");
|
||||
sc45helperlog("</element>\n");
|
||||
sc45helperlog("<element name=\"button\">\n");
|
||||
sc45helperlog("<rect state =\"0\"><bounds x=\"0\" y=\"0\" width=\"7\" height=\"7\" /><color red=\"0.2\" green=\"0.8\" blue=\"0.2\" /></rect>\n");
|
||||
sc45helperlog("<rect state =\"1\"><bounds x=\"0\" y=\"0\" width=\"7\" height=\"7\" /><color red=\"0.2\" green=\"0.9\" blue=\"0.2\" /></rect>\n");
|
||||
sc45helperlog("<rect state =\"2\"><bounds x=\"0\" y=\"0\" width=\"7\" height=\"7\" /><color red=\"0.2\" green=\"1.0\" blue=\"0.2\" /></rect>\n");
|
||||
sc45helperlog("</element>\n");
|
||||
sc45helperlog("<element name=\"vfd0\">\n");
|
||||
sc45helperlog("<led14segsc><color red=\"0\" green=\"0.6\" blue=\"1.0\" /></led14segsc>\n");
|
||||
sc45helperlog("</element>\n");
|
||||
@ -373,6 +562,24 @@ int find_lamp_strings(running_machine &machine)
|
||||
|
||||
sc45helperlog("<view name=\"AWP Simulated Video (No Artwork)\">\n");
|
||||
|
||||
// copy the button strings so we can modify some for easier comparisons
|
||||
d = 0;
|
||||
for (int y = 0; y < 16; y++)
|
||||
{
|
||||
for (int x = 0; x < 16; x++)
|
||||
{
|
||||
lamps[y][x].lampname_alt = lamps[y][x].lampname;
|
||||
|
||||
if (!strcmp(lamps[y][x].lampname_alt.cstr(), "hold2/hi")) lamps[y][x].lampname_alt = "hold2";
|
||||
if (!strcmp(lamps[y][x].lampname_alt.cstr(), "hold3/lo")) lamps[y][x].lampname_alt = "hold3";
|
||||
if (!strcmp(lamps[y][x].lampname_alt.cstr(), "chg stake")) lamps[y][x].lampname_alt = "chnge stk";
|
||||
if (!strcmp(lamps[y][x].lampname_alt.cstr(), "canc/coll")) lamps[y][x].lampname_alt = "cancel";
|
||||
if (!strcmp(lamps[y][x].lampname_alt.cstr(), "start")) lamps[y][x].lampname_alt = "strt exch";
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// try to find some specific named elements and move them around
|
||||
d = 0;
|
||||
|
||||
@ -396,7 +603,7 @@ int find_lamp_strings(running_machine &machine)
|
||||
for (int x = 0; x < 16; x++)
|
||||
{
|
||||
|
||||
if (!strcmp(tempname2, lamps[y][x].lampname.cstr()))
|
||||
if (!strcmp(tempname2, lamps[y][x].lampname_alt.cstr()))
|
||||
{
|
||||
//sc45helperlog("%s found\n", tempname2);
|
||||
lamps[y][x].draw_label = false;
|
||||
@ -411,7 +618,7 @@ int find_lamp_strings(running_machine &machine)
|
||||
}
|
||||
else
|
||||
{
|
||||
//printf("%s:%s:\n", tempname2, lamps[y][x].lampname.cstr());
|
||||
//printf("%s:%s:\n", tempname2, lamps[y][x].lampname_alt.cstr());
|
||||
}
|
||||
|
||||
}
|
||||
@ -461,6 +668,23 @@ int find_lamp_strings(running_machine &machine)
|
||||
}
|
||||
}
|
||||
|
||||
// print out a simple matrix of some of the most common inputs,
|
||||
d = 0;
|
||||
for (int y = 0; y < 6; y++)
|
||||
{
|
||||
int actualrows[] = { 1, 2, 8, 9, 10, 20 };
|
||||
int realy = actualrows[y];
|
||||
|
||||
for (int x = 0; x < 6; x++)
|
||||
{
|
||||
sc45helperlog("<bezel name=\"input%d-%d\" element=\"button\" state=\"0\" inputtag=\"IN-%d\" inputmask=\"0x%02x\"><bounds x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" /></bezel>\n", realy,x, realy, 1<<x, 180+x*20, 0+y*20, 19, 10);
|
||||
|
||||
sc45helperlog("<bezel name=\"inputlab%d-%d\" element=\"inputlabel%d-%d\"><bounds x=\"%d\" y=\"%d\" width=\"%d\" height=\"10\" /></bezel>\n", realy,x,realy,x, 180+x*20, 0+(y*20)-10, 19);
|
||||
|
||||
d++;
|
||||
}
|
||||
}
|
||||
|
||||
sc45helperlog("\n");
|
||||
|
||||
// other layout debug stuff
|
||||
@ -533,23 +757,69 @@ int find_lamp_strings(running_machine &machine)
|
||||
|
||||
int find_reel_strings(running_machine &machine)
|
||||
{
|
||||
if (strcmp(machine.system().name, "sc4dnd"))
|
||||
return 0;
|
||||
int startblock = -1;
|
||||
int endblock = -1;
|
||||
|
||||
dynamic_array<int> reelsizes;
|
||||
|
||||
// these are for sc4dnd ONLY, need to work out how the code calculates them
|
||||
|
||||
// this list is 4 * 16 symbols for the regular reels, 12 symbols for the number spin, and 2 groups of 16 depending on jackpot/stake keys used for the prize reel
|
||||
// code that points at these is likely to be complex because it's conditional on the game code / mode..
|
||||
int reelsizes[] = { 16, 16, 16, 16, 12, 16, 16 };
|
||||
if (!strcmp(machine.system().name, "sc4dnd"))
|
||||
{
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(12);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
|
||||
startblock = 0x8d74c;
|
||||
}
|
||||
else if (!strcmp(machine.system().name, "sc4dndtp"))
|
||||
{
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(12);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
|
||||
startblock = 0x9d252;
|
||||
}
|
||||
else if (!strcmp(machine.system().name, "sc4dnddw"))
|
||||
{
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(16);
|
||||
reelsizes.append(12);
|
||||
reelsizes.append(20);
|
||||
reelsizes.append(20);
|
||||
reelsizes.append(20);
|
||||
|
||||
startblock = 0x9b8c8;
|
||||
}
|
||||
|
||||
|
||||
int total_reel_symbols = 0;
|
||||
|
||||
for (int i = 0; i < 7; i++)
|
||||
for (int i = 0; i < reelsizes.count(); i++)
|
||||
{
|
||||
total_reel_symbols += reelsizes[i];
|
||||
}
|
||||
|
||||
int startblock = 0x8d74c;
|
||||
int endblock = startblock + 4 * (total_reel_symbols);
|
||||
endblock = startblock + 4 * (total_reel_symbols);
|
||||
|
||||
|
||||
|
||||
if (startblock == -1)
|
||||
return 0;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
UINT16 *rom = (UINT16*)machine.root_device().memregion( "maincpu" )->base();
|
||||
@ -580,6 +850,10 @@ int find_reel_strings(running_machine &machine)
|
||||
}
|
||||
|
||||
UINT32 stringaddr = (rom[j + 0] << 16) | rom[j + 1];
|
||||
stringaddr &= 0xfffff;
|
||||
|
||||
if (stringaddr >= (0x10000 - 16))
|
||||
continue;
|
||||
|
||||
//sc45helperlog("addr %08x ", stringaddr);
|
||||
|
||||
|
@ -2,9 +2,7 @@
|
||||
|
||||
Scorpion 4 Hardware Platform (c)1996 Bell Fruit Manufacturing
|
||||
|
||||
Skeleton Driver
|
||||
|
||||
THIS DRIVER IS NOT WORKING
|
||||
preliminary driver
|
||||
|
||||
-----------------
|
||||
|
||||
@ -23,9 +21,30 @@
|
||||
This file contains the hardware emulation, for the supported sets
|
||||
see bfm_sc4.c
|
||||
|
||||
---
|
||||
note, if game says 'read meters' simply press CTRL then 'B'
|
||||
I think we're stuck in some king of free play test mode so Start 1 will spin and give you credit
|
||||
The hopper(s) are not currently emulated, many of the games can
|
||||
be operated in 'Door Open' mode granting you free credits.
|
||||
|
||||
Most games will show a RAM error on first boot due, after that they
|
||||
will initialize their NVRAM.
|
||||
|
||||
If 'Read Meters' is shown press the 'Cancel' button (this moves around
|
||||
per game, so where it maps might not be obvious) Doing this will allow
|
||||
the games to run in Door Open mode, pressing 'Start' (also moves around)
|
||||
will allow you to test the game. Not all games have this feature.
|
||||
|
||||
Pressing the service key ('Green Button') often allows test mode to be
|
||||
entered, some games have more comprehensive tests than others.
|
||||
|
||||
Various (poorly programmed) sets require specific Jackpot 'keys' etc. to
|
||||
boot and won't even warn you if they're invalid, others allow you to
|
||||
set options if keys are not present. (again the buttons to do so move
|
||||
between games)
|
||||
|
||||
Many games have missing sound roms, incorrect sound roms, or badly
|
||||
dumped sound roms. We also have several dumps where only sound roms
|
||||
are present.
|
||||
|
||||
Many of the titles here were also released on the SC5 platform.
|
||||
|
||||
*/
|
||||
|
||||
@ -36,11 +55,10 @@
|
||||
#include "machine/68307.h"
|
||||
#include "machine/68340.h"
|
||||
#include "includes/bfm_sc45.h"
|
||||
#include "bfm_sc4.lh"
|
||||
#include "video/awpvid.h"
|
||||
//DMD01
|
||||
#include "cpu/m6809/m6809.h"
|
||||
#include "sc4_dmd.lh"
|
||||
|
||||
|
||||
|
||||
UINT8 sc4_state::read_input_matrix(running_machine &machine, int row)
|
||||
@ -554,7 +572,7 @@ UINT8 sc4_state::bfm_sc4_68307_porta_r(address_space &space, bool dedicated, UIN
|
||||
{
|
||||
int pc = space.device().safe_pc();
|
||||
logerror("%08x bfm_sc4_68307_porta_r\n", pc);
|
||||
return machine().rand();
|
||||
return 0xbb;// machine().rand();
|
||||
}
|
||||
|
||||
UINT16 sc4_state::bfm_sc4_68307_portb_r(address_space &space, bool dedicated, UINT16 line_mask)
|
||||
@ -705,7 +723,7 @@ MACHINE_CONFIG_START( sc4, sc4_state )
|
||||
|
||||
MCFG_BFMBDA_ADD("vfd0",0)
|
||||
|
||||
MCFG_DEFAULT_LAYOUT(layout_bfm_sc4)
|
||||
// MCFG_DEFAULT_LAYOUT(layout_bfm_sc4)
|
||||
|
||||
MCFG_SOUND_ADD("ymz", YMZ280B, 16000000) // ?? Mhz
|
||||
MCFG_YMZ280B_IRQ_HANDLER(WRITELINE(sc4_state, bfm_sc4_irqhandler))
|
||||
@ -731,7 +749,7 @@ MACHINE_CONFIG_END
|
||||
MACHINE_CONFIG_DERIVED_CLASS( sc4dmd, sc4, sc4_state )
|
||||
/* video hardware */
|
||||
|
||||
MCFG_DEFAULT_LAYOUT(layout_sc4_dmd)
|
||||
//MCFG_DEFAULT_LAYOUT(layout_sc4_dmd)
|
||||
MCFG_DEVICE_ADD("dm01", BF_DM01, 0)
|
||||
MCFG_BF_DM01_BUSY_CB(WRITELINE(sc4_state, bfmdm01_busy))
|
||||
MCFG_CPU_ADD("matrix", M6809, 2000000 ) /* matrix board 6809 CPU at 2 Mhz ?? I don't know the exact freq.*/
|
||||
@ -924,7 +942,7 @@ INPUT_PORTS_START( sc4_raw ) // completley unmapped, but named inputs for all th
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
|
||||
PORT_BIT( 0xffe0, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN-A")
|
||||
PORT_START("IN-10")
|
||||
PORT_DIPNAME( 0x01, 0x00, "IN 10-0 (STRB 10 Data 0)" )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
|
||||
@ -943,7 +961,7 @@ INPUT_PORTS_START( sc4_raw ) // completley unmapped, but named inputs for all th
|
||||
PORT_BIT( 0xffe0, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
|
||||
PORT_START("IN-B")
|
||||
PORT_START("IN-11")
|
||||
PORT_DIPNAME( 0x01, 0x00, "IN 11-0 (STRB 11 Data 0)" )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
|
||||
@ -1066,20 +1084,20 @@ INPUT_PORTS_END
|
||||
INPUT_PORTS_START( sc4_base ) // just some fairly generic defaults we map to games where there isn't a specific mapping yet
|
||||
PORT_INCLUDE ( sc4_raw )
|
||||
PORT_MODIFY("IN-1")
|
||||
PORT_CANCEL(0x01)
|
||||
PORT_HOLD1(0x02)
|
||||
PORT_HOLD2(0x04)
|
||||
PORT_HOLD3(0x08)
|
||||
PORT_CUSTOMSC4_1(0x10, "Custom 1")
|
||||
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("IN1-0")
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("IN1-1")
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME("IN1-2")
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_NAME("IN1-3")
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_NAME("IN1-4")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_NAME("IN1-5")
|
||||
|
||||
PORT_MODIFY("IN-2")
|
||||
PORT_CUSTOMSC4_2(0x01, "Custom 2")
|
||||
PORT_CUSTOMSC4_3(0x02, "Custom 3")
|
||||
PORT_CUSTOMSC4_4(0x04, "Custom 4")
|
||||
PORT_CUSTOMSC4_5(0x08, "Custom 5")
|
||||
PORT_CUSTOMSC4_6(0x10, "Custom 6")
|
||||
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_NAME("IN2-0")
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_NAME("IN2-1")
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON9 ) PORT_NAME("IN2-2")
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON10) PORT_NAME("IN2-3")
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON11) PORT_NAME("IN2-4")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON12) PORT_NAME("IN2-5")
|
||||
|
||||
PORT_MODIFY("IN-3")
|
||||
PORT_DIPNAME( 0x04, 0x00, "IN 3-2 (STK 4 3.2)" )
|
||||
@ -1120,6 +1138,29 @@ INPUT_PORTS_START( sc4_base ) // just some fairly generic defaults we map to gam
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( On ) )
|
||||
|
||||
PORT_MODIFY("IN-8")
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON13) PORT_NAME("IN8-0")
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON14) PORT_NAME("IN8-1")
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON15) PORT_NAME("IN8-2")
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON16) PORT_NAME("IN8-3")
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON17) PORT_NAME("IN8-4")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON18) PORT_NAME("IN8-5")
|
||||
|
||||
PORT_MODIFY("IN-9")
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON19) PORT_NAME("IN9-0")
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON20) PORT_NAME("IN9-1")
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON21) PORT_NAME("IN9-2")
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON22) PORT_NAME("IN9-3")
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON23) PORT_NAME("IN9-4")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON24) PORT_NAME("IN9-5")
|
||||
|
||||
PORT_MODIFY("IN-10")
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON25) PORT_NAME("IN10-0")
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON26) PORT_NAME("IN10-1")
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON27) PORT_NAME("IN10-2")
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON28) PORT_NAME("IN10-3")
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON29) PORT_NAME("IN10-4")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON30) PORT_NAME("IN10-5")
|
||||
|
||||
PORT_MODIFY("IN-20")
|
||||
PORT_BIT(0x0001, IP_ACTIVE_HIGH, IPT_SERVICE1) PORT_NAME("Green Button")
|
||||
|
@ -67,8 +67,8 @@ public:
|
||||
m_io8(*this, "IN-7"),
|
||||
m_io9(*this, "IN-8"),
|
||||
m_io10(*this, "IN-9"),
|
||||
m_io11(*this, "IN-A"),
|
||||
m_io12(*this, "IN-B")
|
||||
m_io11(*this, "IN-10"),
|
||||
m_io12(*this, "IN-11")
|
||||
{
|
||||
m_chk41addr = -1;
|
||||
m_dochk41 = false;
|
||||
@ -603,63 +603,6 @@ INPUT_PORTS_EXTERN( sc4_raw );
|
||||
PORT_DIPSETTING( 0x0e, "14" ) \
|
||||
PORT_DIPSETTING( 0x0f, "15" )
|
||||
|
||||
// just use macros for these for now, makes changing them later easier.
|
||||
#define PORT_HOLD1( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON9 ) PORT_NAME("Hold1") PORT_CODE(KEYCODE_A)
|
||||
|
||||
#define PORT_HOLD2( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON10 ) PORT_NAME("Hold2") PORT_CODE(KEYCODE_S)
|
||||
|
||||
#define PORT_HOLD3( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON11 ) PORT_NAME("Hold3") PORT_CODE(KEYCODE_D)
|
||||
|
||||
#define PORT_HOLD4( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON12 ) PORT_NAME("Hold4") PORT_CODE(KEYCODE_F)
|
||||
|
||||
#define PORT_HOLD5( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON13 ) PORT_NAME("Hold5") PORT_CODE(KEYCODE_G)
|
||||
|
||||
#define PORT_HOLD6( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON14 ) PORT_NAME("Hold6") PORT_CODE(KEYCODE_H)
|
||||
|
||||
#define PORT_HOLD7( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON15 ) PORT_NAME("Hold7") PORT_CODE(KEYCODE_J)
|
||||
|
||||
#define PORT_CANCEL( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_POKER_CANCEL ) PORT_NAME("Cancel") PORT_CODE(KEYCODE_2)
|
||||
|
||||
#define PORT_STARTBTN( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Start")
|
||||
|
||||
#define PORT_REFILL( bits ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_SERVICE2 ) PORT_NAME("Refill")
|
||||
|
||||
#define PORT_CUSTOMSC4_1( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME(name) PORT_CODE(KEYCODE_Z)
|
||||
|
||||
#define PORT_CUSTOMSC4_2( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME(name) PORT_CODE(KEYCODE_X)
|
||||
|
||||
#define PORT_CUSTOMSC4_3( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME(name) PORT_CODE(KEYCODE_C)
|
||||
|
||||
#define PORT_CUSTOMSC4_4( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_NAME(name) PORT_CODE(KEYCODE_V)
|
||||
|
||||
#define PORT_CUSTOMSC4_5( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_NAME(name) PORT_CODE(KEYCODE_B)
|
||||
|
||||
#define PORT_CUSTOMSC4_6( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_NAME(name) PORT_CODE(KEYCODE_N)
|
||||
|
||||
#define PORT_CUSTOMSC4_7( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_NAME(name) PORT_CODE(KEYCODE_M)
|
||||
|
||||
#define PORT_CUSTOMSC4_8( bits, name ) \
|
||||
PORT_BIT( bits, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_NAME(name) PORT_CODE(KEYCODE_COMMA)
|
||||
|
||||
|
||||
|
||||
|
||||
#define SC4_STANDARD_STAKE_KEY \
|
||||
PORT_MODIFY("IN-3") /* the Stake key */ \
|
||||
|
@ -277,6 +277,45 @@
|
||||
<element name="lamplabelel253"><text string="(15:13)"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="lamplabelel254"><text string="(15:14)"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="lamplabelel255"><text string="(15:15)"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
|
||||
|
||||
<element name="inputlabel1-0"><text string="cancel"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel1-1"><text string="hold 1"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel1-2"><text string="hold 2"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel1-3"><text string="hold 3"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel1-4"><text string="hold 4"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel1-5"><text string="hpunit"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel2-0"><text string="cstake"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel2-1"><text string="colect"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel2-2"><text string="transf"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel2-3"><text string="refill"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel2-4"><text string="start"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel2-5"><text string="IN2-5"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel8-0"><text string="nodeal"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel8-1"><text string="deal"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel8-2"><text string="c or b"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel8-3"><text string="IN8-3"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel8-4"><text string="IN8-4"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel8-5"><text string="IN8-5"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel9-0"><text string="IN9-0"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel9-1"><text string="IN9-1"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel9-2"><text string="IN9-2"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel9-3"><text string="IN9-3"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel9-4"><text string="IN9-4"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel9-5"><text string="IN9-5"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel10-0"><text string="IN10-0"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel10-1"><text string="IN10-1"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel10-2"><text string="IN10-2"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel10-3"><text string="IN10-3"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel10-4"><text string="IN10-4"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel10-5"><text string="IN10-5"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel20-0"><text string="grnbut"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel20-1"><text string="dorlok"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel20-2"><text string="serdor"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel20-3"><text string="cshdor"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel20-4"><text string="hopdmp"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
<element name="inputlabel20-5"><text string="IN20-5"><color red="1.0" green="1.0" blue="1.0" /></text></element>
|
||||
|
||||
<element name="matrixlamp">
|
||||
<rect state ="0"><bounds x="0" y="0" width="7" height="7" /><color red="0.7" green="0.7" blue="0.7" /></rect>
|
||||
<rect state ="1"><bounds x="0" y="0" width="7" height="7" /><color red="0.0" green="0.0" blue="1.0" /></rect>
|
||||
@ -297,6 +336,11 @@
|
||||
<rect state ="1"><bounds x="0" y="0" width="7" height="7" /><color red="0.0" green="1.0" blue="0.0" /></rect>
|
||||
<rect state ="2"><bounds x="0" y="0" width="7" height="7" /><color red="0.0" green="0.0" blue="1.0" /></rect>
|
||||
</element>
|
||||
<element name="button">
|
||||
<rect state ="0"><bounds x="0" y="0" width="7" height="7" /><color red="0.2" green="0.8" blue="0.2" /></rect>
|
||||
<rect state ="1"><bounds x="0" y="0" width="7" height="7" /><color red="0.2" green="0.9" blue="0.2" /></rect>
|
||||
<rect state ="2"><bounds x="0" y="0" width="7" height="7" /><color red="0.2" green="1.0" blue="0.2" /></rect>
|
||||
</element>
|
||||
<element name="vfd0">
|
||||
<led14segsc><color red="0" green="0.6" blue="1.0" /></led14segsc>
|
||||
</element>
|
||||
@ -845,6 +889,78 @@
|
||||
<bezel name="lamplabel254" element="lamplabelel254"><bounds x="716" y="410" width="23" height="10" /></bezel>
|
||||
<bezel name="lamp255" element="unusedlamp" state="0"><bounds x="740" y="420" width="23" height="16"/></bezel>
|
||||
<bezel name="lamplabel255" element="lamplabelel255"><bounds x="740" y="410" width="23" height="10" /></bezel>
|
||||
<bezel name="input1-0" element="button" state="0" inputtag="IN-1" inputmask="0x01"><bounds x="180" y="0" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab1-0" element="inputlabel1-0"><bounds x="180" y="-10" width="19" height="10" /></bezel>
|
||||
<bezel name="input1-1" element="button" state="0" inputtag="IN-1" inputmask="0x02"><bounds x="200" y="0" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab1-1" element="inputlabel1-1"><bounds x="200" y="-10" width="19" height="10" /></bezel>
|
||||
<bezel name="input1-2" element="button" state="0" inputtag="IN-1" inputmask="0x04"><bounds x="220" y="0" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab1-2" element="inputlabel1-2"><bounds x="220" y="-10" width="19" height="10" /></bezel>
|
||||
<bezel name="input1-3" element="button" state="0" inputtag="IN-1" inputmask="0x08"><bounds x="240" y="0" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab1-3" element="inputlabel1-3"><bounds x="240" y="-10" width="19" height="10" /></bezel>
|
||||
<bezel name="input1-4" element="button" state="0" inputtag="IN-1" inputmask="0x10"><bounds x="260" y="0" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab1-4" element="inputlabel1-4"><bounds x="260" y="-10" width="19" height="10" /></bezel>
|
||||
<bezel name="input1-5" element="button" state="0" inputtag="IN-1" inputmask="0x20"><bounds x="280" y="0" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab1-5" element="inputlabel1-5"><bounds x="280" y="-10" width="19" height="10" /></bezel>
|
||||
<bezel name="input2-0" element="button" state="0" inputtag="IN-2" inputmask="0x01"><bounds x="180" y="20" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab2-0" element="inputlabel2-0"><bounds x="180" y="10" width="19" height="10" /></bezel>
|
||||
<bezel name="input2-1" element="button" state="0" inputtag="IN-2" inputmask="0x02"><bounds x="200" y="20" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab2-1" element="inputlabel2-1"><bounds x="200" y="10" width="19" height="10" /></bezel>
|
||||
<bezel name="input2-2" element="button" state="0" inputtag="IN-2" inputmask="0x04"><bounds x="220" y="20" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab2-2" element="inputlabel2-2"><bounds x="220" y="10" width="19" height="10" /></bezel>
|
||||
<bezel name="input2-3" element="button" state="0" inputtag="IN-2" inputmask="0x08"><bounds x="240" y="20" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab2-3" element="inputlabel2-3"><bounds x="240" y="10" width="19" height="10" /></bezel>
|
||||
<bezel name="input2-4" element="button" state="0" inputtag="IN-2" inputmask="0x10"><bounds x="260" y="20" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab2-4" element="inputlabel2-4"><bounds x="260" y="10" width="19" height="10" /></bezel>
|
||||
<bezel name="input2-5" element="button" state="0" inputtag="IN-2" inputmask="0x20"><bounds x="280" y="20" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab2-5" element="inputlabel2-5"><bounds x="280" y="10" width="19" height="10" /></bezel>
|
||||
<bezel name="input8-0" element="button" state="0" inputtag="IN-8" inputmask="0x01"><bounds x="180" y="40" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab8-0" element="inputlabel8-0"><bounds x="180" y="30" width="19" height="10" /></bezel>
|
||||
<bezel name="input8-1" element="button" state="0" inputtag="IN-8" inputmask="0x02"><bounds x="200" y="40" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab8-1" element="inputlabel8-1"><bounds x="200" y="30" width="19" height="10" /></bezel>
|
||||
<bezel name="input8-2" element="button" state="0" inputtag="IN-8" inputmask="0x04"><bounds x="220" y="40" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab8-2" element="inputlabel8-2"><bounds x="220" y="30" width="19" height="10" /></bezel>
|
||||
<bezel name="input8-3" element="button" state="0" inputtag="IN-8" inputmask="0x08"><bounds x="240" y="40" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab8-3" element="inputlabel8-3"><bounds x="240" y="30" width="19" height="10" /></bezel>
|
||||
<bezel name="input8-4" element="button" state="0" inputtag="IN-8" inputmask="0x10"><bounds x="260" y="40" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab8-4" element="inputlabel8-4"><bounds x="260" y="30" width="19" height="10" /></bezel>
|
||||
<bezel name="input8-5" element="button" state="0" inputtag="IN-8" inputmask="0x20"><bounds x="280" y="40" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab8-5" element="inputlabel8-5"><bounds x="280" y="30" width="19" height="10" /></bezel>
|
||||
<bezel name="input9-0" element="button" state="0" inputtag="IN-9" inputmask="0x01"><bounds x="180" y="60" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab9-0" element="inputlabel9-0"><bounds x="180" y="50" width="19" height="10" /></bezel>
|
||||
<bezel name="input9-1" element="button" state="0" inputtag="IN-9" inputmask="0x02"><bounds x="200" y="60" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab9-1" element="inputlabel9-1"><bounds x="200" y="50" width="19" height="10" /></bezel>
|
||||
<bezel name="input9-2" element="button" state="0" inputtag="IN-9" inputmask="0x04"><bounds x="220" y="60" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab9-2" element="inputlabel9-2"><bounds x="220" y="50" width="19" height="10" /></bezel>
|
||||
<bezel name="input9-3" element="button" state="0" inputtag="IN-9" inputmask="0x08"><bounds x="240" y="60" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab9-3" element="inputlabel9-3"><bounds x="240" y="50" width="19" height="10" /></bezel>
|
||||
<bezel name="input9-4" element="button" state="0" inputtag="IN-9" inputmask="0x10"><bounds x="260" y="60" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab9-4" element="inputlabel9-4"><bounds x="260" y="50" width="19" height="10" /></bezel>
|
||||
<bezel name="input9-5" element="button" state="0" inputtag="IN-9" inputmask="0x20"><bounds x="280" y="60" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab9-5" element="inputlabel9-5"><bounds x="280" y="50" width="19" height="10" /></bezel>
|
||||
<bezel name="input10-0" element="button" state="0" inputtag="IN-10" inputmask="0x01"><bounds x="180" y="80" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab10-0" element="inputlabel10-0"><bounds x="180" y="70" width="19" height="10" /></bezel>
|
||||
<bezel name="input10-1" element="button" state="0" inputtag="IN-10" inputmask="0x02"><bounds x="200" y="80" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab10-1" element="inputlabel10-1"><bounds x="200" y="70" width="19" height="10" /></bezel>
|
||||
<bezel name="input10-2" element="button" state="0" inputtag="IN-10" inputmask="0x04"><bounds x="220" y="80" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab10-2" element="inputlabel10-2"><bounds x="220" y="70" width="19" height="10" /></bezel>
|
||||
<bezel name="input10-3" element="button" state="0" inputtag="IN-10" inputmask="0x08"><bounds x="240" y="80" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab10-3" element="inputlabel10-3"><bounds x="240" y="70" width="19" height="10" /></bezel>
|
||||
<bezel name="input10-4" element="button" state="0" inputtag="IN-10" inputmask="0x10"><bounds x="260" y="80" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab10-4" element="inputlabel10-4"><bounds x="260" y="70" width="19" height="10" /></bezel>
|
||||
<bezel name="input10-5" element="button" state="0" inputtag="IN-10" inputmask="0x20"><bounds x="280" y="80" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab10-5" element="inputlabel10-5"><bounds x="280" y="70" width="19" height="10" /></bezel>
|
||||
<bezel name="input20-0" element="button" state="0" inputtag="IN-20" inputmask="0x01"><bounds x="180" y="100" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab20-0" element="inputlabel20-0"><bounds x="180" y="90" width="19" height="10" /></bezel>
|
||||
<bezel name="input20-1" element="button" state="0" inputtag="IN-20" inputmask="0x02"><bounds x="200" y="100" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab20-1" element="inputlabel20-1"><bounds x="200" y="90" width="19" height="10" /></bezel>
|
||||
<bezel name="input20-2" element="button" state="0" inputtag="IN-20" inputmask="0x04"><bounds x="220" y="100" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab20-2" element="inputlabel20-2"><bounds x="220" y="90" width="19" height="10" /></bezel>
|
||||
<bezel name="input20-3" element="button" state="0" inputtag="IN-20" inputmask="0x08"><bounds x="240" y="100" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab20-3" element="inputlabel20-3"><bounds x="240" y="90" width="19" height="10" /></bezel>
|
||||
<bezel name="input20-4" element="button" state="0" inputtag="IN-20" inputmask="0x10"><bounds x="260" y="100" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab20-4" element="inputlabel20-4"><bounds x="260" y="90" width="19" height="10" /></bezel>
|
||||
<bezel name="input20-5" element="button" state="0" inputtag="IN-20" inputmask="0x20"><bounds x="280" y="100" width="19" height="10" /></bezel>
|
||||
<bezel name="inputlab20-5" element="inputlabel20-5"><bounds x="280" y="90" width="19" height="10" /></bezel>
|
||||
|
||||
<bezel name="matrix0" element="matrixlamp" state="0"><bounds x="4" y="40" width="3" height="3" /></bezel>
|
||||
<bezel name="matrix1" element="matrixlamp" state="0"><bounds x="4" y="44" width="3" height="3" /></bezel>
|
||||
|
1278
src/mame/layout/sc4dnddw.lay
Normal file
1278
src/mame/layout/sc4dnddw.lay
Normal file
File diff suppressed because it is too large
Load Diff
1284
src/mame/layout/sc4dndtp.lay
Normal file
1284
src/mame/layout/sc4dndtp.lay
Normal file
File diff suppressed because it is too large
Load Diff
@ -2498,10 +2498,9 @@ $(DRIVERS)/bfm_sc2.o: $(LAYOUT)/sc2_vfd.lh \
|
||||
|
||||
$(DRIVERS)/bfm_sc4.o: $(LAYOUT)/bfm_sc4.lh \
|
||||
$(LAYOUT)/sc4_dmd.lh \
|
||||
$(LAYOUT)/sc4dnd.lh
|
||||
|
||||
$(DRIVERS)/bfm_sc4h.o: $(LAYOUT)/bfm_sc4.lh \
|
||||
$(LAYOUT)/sc4_dmd.lh
|
||||
$(LAYOUT)/sc4dnd.lh \
|
||||
$(LAYOUT)/sc4dndtp.lh \
|
||||
$(LAYOUT)/sc4dnddw.lh
|
||||
|
||||
$(DRIVERS)/bfm_sc5.o: $(LAYOUT)/bfm_sc5.lh
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user