New games marked as GAME_NOT_WORKING

------------------------------------
(MESS) TECNBRAS Dot Matrix Display [Felipe Sanches]
This commit is contained in:
Scott Stone 2014-06-26 17:04:09 +00:00
parent 41f7240529
commit 15ecfddff8
6 changed files with 472 additions and 0 deletions

3
.gitattributes vendored
View File

@ -8298,6 +8298,7 @@ src/mess/drivers/tandy2k.c svneol=native#text/plain
src/mess/drivers/tavernie.c svneol=native#text/plain
src/mess/drivers/tdv2324.c svneol=native#text/plain
src/mess/drivers/tec1.c svneol=native#text/plain
src/mess/drivers/tecnbras.c svneol=native#text/plain
src/mess/drivers/tek405x.c svneol=native#text/plain
src/mess/drivers/tek410x.c svneol=native#text/plain
src/mess/drivers/terak.c svneol=native#text/plain
@ -8631,6 +8632,7 @@ src/mess/layout/cosmicos.lay svneol=native#text/xml
src/mess/layout/cp1.lay svneol=native#text/xml
src/mess/layout/cvicny.lay svneol=native#text/xml
src/mess/layout/digel804.lay svneol=native#text/xml
src/mess/layout/dmd_tecnbras.py svneol=native#text/plain
src/mess/layout/dmv.lay svneol=native#text/xml
src/mess/layout/dolphunk.lay svneol=native#text/xml
src/mess/layout/eacc.lay svneol=native#text/xml
@ -8697,6 +8699,7 @@ src/mess/layout/svmu.lay svneol=native#text/xml
src/mess/layout/sym1.lay svneol=native#text/xml
src/mess/layout/tavernie.lay svneol=native#text/xml
src/mess/layout/tec1.lay svneol=native#text/xml
src/mess/layout/tecnbras.lay svneol=native#text/plain
src/mess/layout/tk80.lay svneol=native#text/xml
src/mess/layout/tm990189.lay svneol=native#text/xml
src/mess/layout/tm990189v.lay svneol=native#text/xml

130
src/mess/drivers/tecnbras.c Normal file
View File

@ -0,0 +1,130 @@
// license:MAME|GPL-2.0+
// copyright-holders: Felipe Sanches
/***************************************************************************
TECNBRAS dot matrix display (70x7 pixels)
Driver by Felipe Correa da Silva Sanches <juca@members.fsf.org>
The display is composed of 14 blocks of 5x7 LEDs
These LEDs are driven by several 74xx chips:
* one 74138
* several 74164 and ULN2003 chips
Changelog:
2014 JUN 23 [Felipe Sanches]:
* Initial driver skeleton
================
*/
#include "emu.h"
#include "cpu/mcs51/mcs51.h"
#include "tecnbras.lh"
class tecnbras_state : public driver_device
{
public:
tecnbras_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "maincpu")
{ }
DECLARE_WRITE8_MEMBER(set_x_position_w);
DECLARE_WRITE8_MEMBER(print_column_w);
// DECLARE_WRITE8_MEMBER(tecnbras_io_w);
// DECLARE_READ8_MEMBER(tecnbras_io_r);
DECLARE_DRIVER_INIT(tecnbras);
private:
int m_xcoord;
char m_digit[14][7];
virtual void machine_start();
virtual void machine_reset();
required_device<cpu_device> m_maincpu;
};
static ADDRESS_MAP_START(i80c31_prg, AS_PROGRAM, 8, tecnbras_state)
AM_RANGE(0x0000, 0x7FFF) AM_ROM
AM_RANGE(0x8000, 0xFFFF) AM_RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, tecnbras_state)
AM_RANGE(0x0100, 0x0145) AM_WRITE(set_x_position_w)
AM_RANGE(0x06B8, 0x06BC) AM_WRITE(print_column_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_NOP /*buzzer ?*/
ADDRESS_MAP_END
DRIVER_INIT_MEMBER( tecnbras_state, tecnbras )
{
m_xcoord = 0;
for (int x=0; x<14; x++){
for (int y=0; y<7; y++){
m_digit[x][y] = 0;
}
}
}
WRITE8_MEMBER(tecnbras_state::set_x_position_w)
{
m_xcoord = offset;
}
WRITE8_MEMBER(tecnbras_state::print_column_w)
{
int x = m_xcoord + offset;
for (int i=0; i<7; i++){
m_digit[x/5][i] &= ~(1 << (x%5));
m_digit[x/5][i] |= BIT(data, 7-i) ? (1 << (x%5)) : 0;
output_set_indexed_value("dmd_", (x/5)*7 + i, 0x1F & m_digit[x/5][i]);
}
}
void tecnbras_state::machine_start()
{
/*
for (int x=0; x<14; x++){
for (int y=0; y<7; y++){
output_set_indexed_value("dmd_", x*7 + y, y);
}
}
*/
}
void tecnbras_state::machine_reset()
{
}
static MACHINE_CONFIG_START( tecnbras, tecnbras_state )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", I80C31, XTAL_12MHz) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(i80c31_prg)
MCFG_CPU_IO_MAP(i80c31_io)
/* TODO: Add an I2C RTC (Phillips PCF8583P)
pin 6 (SCL): cpu T0/P3.4 (pin 14)
pin 5 (SDA): cpu T1/P3.5 (pin 15)
*/
/*
TODO: Add a speaker
CPU P1.0 (pin 1)
*/
/*
TODO: Add a communications port to receive commands from the remote control
*/
/* video hardware */
MCFG_DEFAULT_LAYOUT(layout_tecnbras)
MACHINE_CONFIG_END
ROM_START( tecnbras )
ROM_REGION( 0x8000, "maincpu", 0 )
ROM_LOAD( "tecnbras.u2", 0x0000, 0x8000, CRC(1a1e18fc) SHA1(8907e72f0356a2e2e1097dabac6d6b0b3d717f85) )
ROM_END
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
COMP( 200?, tecnbras, 0, 0, tecnbras, 0, tecnbras_state, tecnbras, "Tecnbras", "Dot Matrix Display (70x7 pixels)", GAME_IMPERFECT_GRAPHICS | GAME_NO_SOUND)

View File

@ -0,0 +1,23 @@
print '<?xml version="1.0"?>\n\
<mamelayout version="2">\n\
<element name="dotmatrix5dot">\n\
<dotmatrix5dot>\n\
<color red="1.0" green="0" blue="0" />\n\
</dotmatrix5dot>\n\
</element>\n\
<element name="background">\n\
<rect>\n\
<bounds left="0" top="0" right="1" bottom="1" />\n\
<color red="0.3" green="0.3" blue="0.5" />\n\
</rect>\n\
</element>\n\
<view name="DMD">\n\
<bezel element="background">\n\
<bounds left="00" top="00" right="70" bottom="7" />\n\
</bezel>'
for x in range(14):
for y in range(7):
print '\t<bezel name="dmd_%d" element="dotmatrix5dot" state="0">\n\t\t<bounds x="%d" y="%d" width="5" height="1" />\n\t</bezel>' % (x*7 + y, x*5, y)
print "\t</view>\n</mamelayout>"

View File

@ -0,0 +1,313 @@
<?xml version="1.0"?>
<mamelayout version="2">
<element name="dotmatrix5dot">
<dotmatrix5dot>
<color red="1.0" green="0" blue="0" />
</dotmatrix5dot>
</element>
<element name="background">
<rect>
<bounds left="0" top="0" right="1" bottom="1" />
<color red="0.3" green="0.3" blue="0.5" />
</rect>
</element>
<view name="DMD">
<bezel element="background">
<bounds left="00" top="00" right="70" bottom="7" />
</bezel>
<bezel name="dmd_0" element="dotmatrix5dot" state="0">
<bounds x="0" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_1" element="dotmatrix5dot" state="0">
<bounds x="0" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_2" element="dotmatrix5dot" state="0">
<bounds x="0" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_3" element="dotmatrix5dot" state="0">
<bounds x="0" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_4" element="dotmatrix5dot" state="0">
<bounds x="0" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_5" element="dotmatrix5dot" state="0">
<bounds x="0" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_6" element="dotmatrix5dot" state="0">
<bounds x="0" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_7" element="dotmatrix5dot" state="0">
<bounds x="5" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_8" element="dotmatrix5dot" state="0">
<bounds x="5" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_9" element="dotmatrix5dot" state="0">
<bounds x="5" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_10" element="dotmatrix5dot" state="0">
<bounds x="5" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_11" element="dotmatrix5dot" state="0">
<bounds x="5" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_12" element="dotmatrix5dot" state="0">
<bounds x="5" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_13" element="dotmatrix5dot" state="0">
<bounds x="5" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_14" element="dotmatrix5dot" state="0">
<bounds x="10" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_15" element="dotmatrix5dot" state="0">
<bounds x="10" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_16" element="dotmatrix5dot" state="0">
<bounds x="10" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_17" element="dotmatrix5dot" state="0">
<bounds x="10" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_18" element="dotmatrix5dot" state="0">
<bounds x="10" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_19" element="dotmatrix5dot" state="0">
<bounds x="10" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_20" element="dotmatrix5dot" state="0">
<bounds x="10" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_21" element="dotmatrix5dot" state="0">
<bounds x="15" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_22" element="dotmatrix5dot" state="0">
<bounds x="15" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_23" element="dotmatrix5dot" state="0">
<bounds x="15" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_24" element="dotmatrix5dot" state="0">
<bounds x="15" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_25" element="dotmatrix5dot" state="0">
<bounds x="15" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_26" element="dotmatrix5dot" state="0">
<bounds x="15" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_27" element="dotmatrix5dot" state="0">
<bounds x="15" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_28" element="dotmatrix5dot" state="0">
<bounds x="20" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_29" element="dotmatrix5dot" state="0">
<bounds x="20" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_30" element="dotmatrix5dot" state="0">
<bounds x="20" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_31" element="dotmatrix5dot" state="0">
<bounds x="20" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_32" element="dotmatrix5dot" state="0">
<bounds x="20" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_33" element="dotmatrix5dot" state="0">
<bounds x="20" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_34" element="dotmatrix5dot" state="0">
<bounds x="20" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_35" element="dotmatrix5dot" state="0">
<bounds x="25" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_36" element="dotmatrix5dot" state="0">
<bounds x="25" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_37" element="dotmatrix5dot" state="0">
<bounds x="25" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_38" element="dotmatrix5dot" state="0">
<bounds x="25" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_39" element="dotmatrix5dot" state="0">
<bounds x="25" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_40" element="dotmatrix5dot" state="0">
<bounds x="25" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_41" element="dotmatrix5dot" state="0">
<bounds x="25" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_42" element="dotmatrix5dot" state="0">
<bounds x="30" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_43" element="dotmatrix5dot" state="0">
<bounds x="30" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_44" element="dotmatrix5dot" state="0">
<bounds x="30" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_45" element="dotmatrix5dot" state="0">
<bounds x="30" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_46" element="dotmatrix5dot" state="0">
<bounds x="30" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_47" element="dotmatrix5dot" state="0">
<bounds x="30" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_48" element="dotmatrix5dot" state="0">
<bounds x="30" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_49" element="dotmatrix5dot" state="0">
<bounds x="35" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_50" element="dotmatrix5dot" state="0">
<bounds x="35" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_51" element="dotmatrix5dot" state="0">
<bounds x="35" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_52" element="dotmatrix5dot" state="0">
<bounds x="35" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_53" element="dotmatrix5dot" state="0">
<bounds x="35" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_54" element="dotmatrix5dot" state="0">
<bounds x="35" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_55" element="dotmatrix5dot" state="0">
<bounds x="35" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_56" element="dotmatrix5dot" state="0">
<bounds x="40" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_57" element="dotmatrix5dot" state="0">
<bounds x="40" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_58" element="dotmatrix5dot" state="0">
<bounds x="40" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_59" element="dotmatrix5dot" state="0">
<bounds x="40" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_60" element="dotmatrix5dot" state="0">
<bounds x="40" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_61" element="dotmatrix5dot" state="0">
<bounds x="40" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_62" element="dotmatrix5dot" state="0">
<bounds x="40" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_63" element="dotmatrix5dot" state="0">
<bounds x="45" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_64" element="dotmatrix5dot" state="0">
<bounds x="45" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_65" element="dotmatrix5dot" state="0">
<bounds x="45" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_66" element="dotmatrix5dot" state="0">
<bounds x="45" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_67" element="dotmatrix5dot" state="0">
<bounds x="45" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_68" element="dotmatrix5dot" state="0">
<bounds x="45" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_69" element="dotmatrix5dot" state="0">
<bounds x="45" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_70" element="dotmatrix5dot" state="0">
<bounds x="50" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_71" element="dotmatrix5dot" state="0">
<bounds x="50" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_72" element="dotmatrix5dot" state="0">
<bounds x="50" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_73" element="dotmatrix5dot" state="0">
<bounds x="50" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_74" element="dotmatrix5dot" state="0">
<bounds x="50" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_75" element="dotmatrix5dot" state="0">
<bounds x="50" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_76" element="dotmatrix5dot" state="0">
<bounds x="50" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_77" element="dotmatrix5dot" state="0">
<bounds x="55" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_78" element="dotmatrix5dot" state="0">
<bounds x="55" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_79" element="dotmatrix5dot" state="0">
<bounds x="55" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_80" element="dotmatrix5dot" state="0">
<bounds x="55" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_81" element="dotmatrix5dot" state="0">
<bounds x="55" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_82" element="dotmatrix5dot" state="0">
<bounds x="55" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_83" element="dotmatrix5dot" state="0">
<bounds x="55" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_84" element="dotmatrix5dot" state="0">
<bounds x="60" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_85" element="dotmatrix5dot" state="0">
<bounds x="60" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_86" element="dotmatrix5dot" state="0">
<bounds x="60" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_87" element="dotmatrix5dot" state="0">
<bounds x="60" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_88" element="dotmatrix5dot" state="0">
<bounds x="60" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_89" element="dotmatrix5dot" state="0">
<bounds x="60" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_90" element="dotmatrix5dot" state="0">
<bounds x="60" y="6" width="5" height="1" />
</bezel>
<bezel name="dmd_91" element="dotmatrix5dot" state="0">
<bounds x="65" y="0" width="5" height="1" />
</bezel>
<bezel name="dmd_92" element="dotmatrix5dot" state="0">
<bounds x="65" y="1" width="5" height="1" />
</bezel>
<bezel name="dmd_93" element="dotmatrix5dot" state="0">
<bounds x="65" y="2" width="5" height="1" />
</bezel>
<bezel name="dmd_94" element="dotmatrix5dot" state="0">
<bounds x="65" y="3" width="5" height="1" />
</bezel>
<bezel name="dmd_95" element="dotmatrix5dot" state="0">
<bounds x="65" y="4" width="5" height="1" />
</bezel>
<bezel name="dmd_96" element="dotmatrix5dot" state="0">
<bounds x="65" y="5" width="5" height="1" />
</bezel>
<bezel name="dmd_97" element="dotmatrix5dot" state="0">
<bounds x="65" y="6" width="5" height="1" />
</bezel>
</view>
</mamelayout>

View File

@ -2417,3 +2417,4 @@ amust
fc100
alto2
gimix
tecnbras

View File

@ -2161,6 +2161,7 @@ $(MESSOBJ)/skeleton.a: \
$(MESS_DRIVERS)/sys2900.o \
$(MESS_DRIVERS)/systec.o \
$(MESS_DRIVERS)/tavernie.o \
$(MESS_DRIVERS)/tecnbras.o \
$(MESS_DRIVERS)/terak.o \
$(MESS_DRIVERS)/ti630.o \
$(MESS_DRIVERS)/tsispch.o \
@ -2333,6 +2334,7 @@ $(MESS_DRIVERS)/svmu.o: $(MESS_LAYOUT)/svmu.lh
$(MESS_DRIVERS)/sym1.o: $(MESS_LAYOUT)/sym1.lh
$(MESS_DRIVERS)/tavernie.o: $(MESS_LAYOUT)/tavernie.lh
$(MESS_DRIVERS)/tec1.o: $(MESS_LAYOUT)/tec1.lh
$(MESS_DRIVERS)/tecnbras.o: $(MESS_LAYOUT)/tecnbras.lh
$(MESS_DRIVERS)/tk80.o: $(MESS_LAYOUT)/tk80.lh
$(MESS_DRIVERS)/tm990189.o: $(MESS_LAYOUT)/tm990189.lh \
$(MESS_LAYOUT)/tm990189v.lh