Previous 199869 Revisions Next

r31122 Thursday 26th June, 2014 at 17:04:09 UTC by Tafoid
New games marked as GAME_NOT_WORKING
------------------------------------
(MESS) TECNBRAS Dot Matrix Display [Felipe Sanches]
[src/mess]mess.lst mess.mak
[src/mess/drivers]tecnbras.c*
[src/mess/layout]dmd_tecnbras.py* tecnbras.lay*

trunk/src/mess/mess.lst
r31121r31122
24172417fc100
24182418alto2
24192419gimix
2420tecnbras
trunk/src/mess/layout/dmd_tecnbras.py
r0r31122
1print '<?xml version="1.0"?>\n\
2<mamelayout version="2">\n\
3   <element name="dotmatrix5dot">\n\
4   <dotmatrix5dot>\n\
5      <color red="1.0" green="0" blue="0" />\n\
6   </dotmatrix5dot>\n\
7   </element>\n\
8   <element name="background">\n\
9      <rect>\n\
10         <bounds left="0" top="0" right="1" bottom="1" />\n\
11         <color red="0.3" green="0.3" blue="0.5" />\n\
12      </rect>\n\
13   </element>\n\
14   <view name="DMD">\n\
15      <bezel element="background">\n\
16         <bounds left="00" top="00" right="70" bottom="7" />\n\
17      </bezel>'
18
19for x in range(14):
20   for y in range(7):
21      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)
22
23print "\t</view>\n</mamelayout>"
Property changes on: trunk/src/mess/layout/dmd_tecnbras.py
Added: svn:mime-type
   + text/plain
Added: svn:eol-style
   + native
trunk/src/mess/layout/tecnbras.lay
r0r31122
1<?xml version="1.0"?>
2<mamelayout version="2">
3   <element name="dotmatrix5dot">
4   <dotmatrix5dot>
5      <color red="1.0" green="0" blue="0" />
6   </dotmatrix5dot>
7   </element>
8   <element name="background">
9      <rect>
10         <bounds left="0" top="0" right="1" bottom="1" />
11         <color red="0.3" green="0.3" blue="0.5" />
12      </rect>
13   </element>
14   <view name="DMD">
15      <bezel element="background">
16         <bounds left="00" top="00" right="70" bottom="7" />
17      </bezel>
18   <bezel name="dmd_0" element="dotmatrix5dot" state="0">
19      <bounds x="0" y="0" width="5" height="1" />
20   </bezel>
21   <bezel name="dmd_1" element="dotmatrix5dot" state="0">
22      <bounds x="0" y="1" width="5" height="1" />
23   </bezel>
24   <bezel name="dmd_2" element="dotmatrix5dot" state="0">
25      <bounds x="0" y="2" width="5" height="1" />
26   </bezel>
27   <bezel name="dmd_3" element="dotmatrix5dot" state="0">
28      <bounds x="0" y="3" width="5" height="1" />
29   </bezel>
30   <bezel name="dmd_4" element="dotmatrix5dot" state="0">
31      <bounds x="0" y="4" width="5" height="1" />
32   </bezel>
33   <bezel name="dmd_5" element="dotmatrix5dot" state="0">
34      <bounds x="0" y="5" width="5" height="1" />
35   </bezel>
36   <bezel name="dmd_6" element="dotmatrix5dot" state="0">
37      <bounds x="0" y="6" width="5" height="1" />
38   </bezel>
39   <bezel name="dmd_7" element="dotmatrix5dot" state="0">
40      <bounds x="5" y="0" width="5" height="1" />
41   </bezel>
42   <bezel name="dmd_8" element="dotmatrix5dot" state="0">
43      <bounds x="5" y="1" width="5" height="1" />
44   </bezel>
45   <bezel name="dmd_9" element="dotmatrix5dot" state="0">
46      <bounds x="5" y="2" width="5" height="1" />
47   </bezel>
48   <bezel name="dmd_10" element="dotmatrix5dot" state="0">
49      <bounds x="5" y="3" width="5" height="1" />
50   </bezel>
51   <bezel name="dmd_11" element="dotmatrix5dot" state="0">
52      <bounds x="5" y="4" width="5" height="1" />
53   </bezel>
54   <bezel name="dmd_12" element="dotmatrix5dot" state="0">
55      <bounds x="5" y="5" width="5" height="1" />
56   </bezel>
57   <bezel name="dmd_13" element="dotmatrix5dot" state="0">
58      <bounds x="5" y="6" width="5" height="1" />
59   </bezel>
60   <bezel name="dmd_14" element="dotmatrix5dot" state="0">
61      <bounds x="10" y="0" width="5" height="1" />
62   </bezel>
63   <bezel name="dmd_15" element="dotmatrix5dot" state="0">
64      <bounds x="10" y="1" width="5" height="1" />
65   </bezel>
66   <bezel name="dmd_16" element="dotmatrix5dot" state="0">
67      <bounds x="10" y="2" width="5" height="1" />
68   </bezel>
69   <bezel name="dmd_17" element="dotmatrix5dot" state="0">
70      <bounds x="10" y="3" width="5" height="1" />
71   </bezel>
72   <bezel name="dmd_18" element="dotmatrix5dot" state="0">
73      <bounds x="10" y="4" width="5" height="1" />
74   </bezel>
75   <bezel name="dmd_19" element="dotmatrix5dot" state="0">
76      <bounds x="10" y="5" width="5" height="1" />
77   </bezel>
78   <bezel name="dmd_20" element="dotmatrix5dot" state="0">
79      <bounds x="10" y="6" width="5" height="1" />
80   </bezel>
81   <bezel name="dmd_21" element="dotmatrix5dot" state="0">
82      <bounds x="15" y="0" width="5" height="1" />
83   </bezel>
84   <bezel name="dmd_22" element="dotmatrix5dot" state="0">
85      <bounds x="15" y="1" width="5" height="1" />
86   </bezel>
87   <bezel name="dmd_23" element="dotmatrix5dot" state="0">
88      <bounds x="15" y="2" width="5" height="1" />
89   </bezel>
90   <bezel name="dmd_24" element="dotmatrix5dot" state="0">
91      <bounds x="15" y="3" width="5" height="1" />
92   </bezel>
93   <bezel name="dmd_25" element="dotmatrix5dot" state="0">
94      <bounds x="15" y="4" width="5" height="1" />
95   </bezel>
96   <bezel name="dmd_26" element="dotmatrix5dot" state="0">
97      <bounds x="15" y="5" width="5" height="1" />
98   </bezel>
99   <bezel name="dmd_27" element="dotmatrix5dot" state="0">
100      <bounds x="15" y="6" width="5" height="1" />
101   </bezel>
102   <bezel name="dmd_28" element="dotmatrix5dot" state="0">
103      <bounds x="20" y="0" width="5" height="1" />
104   </bezel>
105   <bezel name="dmd_29" element="dotmatrix5dot" state="0">
106      <bounds x="20" y="1" width="5" height="1" />
107   </bezel>
108   <bezel name="dmd_30" element="dotmatrix5dot" state="0">
109      <bounds x="20" y="2" width="5" height="1" />
110   </bezel>
111   <bezel name="dmd_31" element="dotmatrix5dot" state="0">
112      <bounds x="20" y="3" width="5" height="1" />
113   </bezel>
114   <bezel name="dmd_32" element="dotmatrix5dot" state="0">
115      <bounds x="20" y="4" width="5" height="1" />
116   </bezel>
117   <bezel name="dmd_33" element="dotmatrix5dot" state="0">
118      <bounds x="20" y="5" width="5" height="1" />
119   </bezel>
120   <bezel name="dmd_34" element="dotmatrix5dot" state="0">
121      <bounds x="20" y="6" width="5" height="1" />
122   </bezel>
123   <bezel name="dmd_35" element="dotmatrix5dot" state="0">
124      <bounds x="25" y="0" width="5" height="1" />
125   </bezel>
126   <bezel name="dmd_36" element="dotmatrix5dot" state="0">
127      <bounds x="25" y="1" width="5" height="1" />
128   </bezel>
129   <bezel name="dmd_37" element="dotmatrix5dot" state="0">
130      <bounds x="25" y="2" width="5" height="1" />
131   </bezel>
132   <bezel name="dmd_38" element="dotmatrix5dot" state="0">
133      <bounds x="25" y="3" width="5" height="1" />
134   </bezel>
135   <bezel name="dmd_39" element="dotmatrix5dot" state="0">
136      <bounds x="25" y="4" width="5" height="1" />
137   </bezel>
138   <bezel name="dmd_40" element="dotmatrix5dot" state="0">
139      <bounds x="25" y="5" width="5" height="1" />
140   </bezel>
141   <bezel name="dmd_41" element="dotmatrix5dot" state="0">
142      <bounds x="25" y="6" width="5" height="1" />
143   </bezel>
144   <bezel name="dmd_42" element="dotmatrix5dot" state="0">
145      <bounds x="30" y="0" width="5" height="1" />
146   </bezel>
147   <bezel name="dmd_43" element="dotmatrix5dot" state="0">
148      <bounds x="30" y="1" width="5" height="1" />
149   </bezel>
150   <bezel name="dmd_44" element="dotmatrix5dot" state="0">
151      <bounds x="30" y="2" width="5" height="1" />
152   </bezel>
153   <bezel name="dmd_45" element="dotmatrix5dot" state="0">
154      <bounds x="30" y="3" width="5" height="1" />
155   </bezel>
156   <bezel name="dmd_46" element="dotmatrix5dot" state="0">
157      <bounds x="30" y="4" width="5" height="1" />
158   </bezel>
159   <bezel name="dmd_47" element="dotmatrix5dot" state="0">
160      <bounds x="30" y="5" width="5" height="1" />
161   </bezel>
162   <bezel name="dmd_48" element="dotmatrix5dot" state="0">
163      <bounds x="30" y="6" width="5" height="1" />
164   </bezel>
165   <bezel name="dmd_49" element="dotmatrix5dot" state="0">
166      <bounds x="35" y="0" width="5" height="1" />
167   </bezel>
168   <bezel name="dmd_50" element="dotmatrix5dot" state="0">
169      <bounds x="35" y="1" width="5" height="1" />
170   </bezel>
171   <bezel name="dmd_51" element="dotmatrix5dot" state="0">
172      <bounds x="35" y="2" width="5" height="1" />
173   </bezel>
174   <bezel name="dmd_52" element="dotmatrix5dot" state="0">
175      <bounds x="35" y="3" width="5" height="1" />
176   </bezel>
177   <bezel name="dmd_53" element="dotmatrix5dot" state="0">
178      <bounds x="35" y="4" width="5" height="1" />
179   </bezel>
180   <bezel name="dmd_54" element="dotmatrix5dot" state="0">
181      <bounds x="35" y="5" width="5" height="1" />
182   </bezel>
183   <bezel name="dmd_55" element="dotmatrix5dot" state="0">
184      <bounds x="35" y="6" width="5" height="1" />
185   </bezel>
186   <bezel name="dmd_56" element="dotmatrix5dot" state="0">
187      <bounds x="40" y="0" width="5" height="1" />
188   </bezel>
189   <bezel name="dmd_57" element="dotmatrix5dot" state="0">
190      <bounds x="40" y="1" width="5" height="1" />
191   </bezel>
192   <bezel name="dmd_58" element="dotmatrix5dot" state="0">
193      <bounds x="40" y="2" width="5" height="1" />
194   </bezel>
195   <bezel name="dmd_59" element="dotmatrix5dot" state="0">
196      <bounds x="40" y="3" width="5" height="1" />
197   </bezel>
198   <bezel name="dmd_60" element="dotmatrix5dot" state="0">
199      <bounds x="40" y="4" width="5" height="1" />
200   </bezel>
201   <bezel name="dmd_61" element="dotmatrix5dot" state="0">
202      <bounds x="40" y="5" width="5" height="1" />
203   </bezel>
204   <bezel name="dmd_62" element="dotmatrix5dot" state="0">
205      <bounds x="40" y="6" width="5" height="1" />
206   </bezel>
207   <bezel name="dmd_63" element="dotmatrix5dot" state="0">
208      <bounds x="45" y="0" width="5" height="1" />
209   </bezel>
210   <bezel name="dmd_64" element="dotmatrix5dot" state="0">
211      <bounds x="45" y="1" width="5" height="1" />
212   </bezel>
213   <bezel name="dmd_65" element="dotmatrix5dot" state="0">
214      <bounds x="45" y="2" width="5" height="1" />
215   </bezel>
216   <bezel name="dmd_66" element="dotmatrix5dot" state="0">
217      <bounds x="45" y="3" width="5" height="1" />
218   </bezel>
219   <bezel name="dmd_67" element="dotmatrix5dot" state="0">
220      <bounds x="45" y="4" width="5" height="1" />
221   </bezel>
222   <bezel name="dmd_68" element="dotmatrix5dot" state="0">
223      <bounds x="45" y="5" width="5" height="1" />
224   </bezel>
225   <bezel name="dmd_69" element="dotmatrix5dot" state="0">
226      <bounds x="45" y="6" width="5" height="1" />
227   </bezel>
228   <bezel name="dmd_70" element="dotmatrix5dot" state="0">
229      <bounds x="50" y="0" width="5" height="1" />
230   </bezel>
231   <bezel name="dmd_71" element="dotmatrix5dot" state="0">
232      <bounds x="50" y="1" width="5" height="1" />
233   </bezel>
234   <bezel name="dmd_72" element="dotmatrix5dot" state="0">
235      <bounds x="50" y="2" width="5" height="1" />
236   </bezel>
237   <bezel name="dmd_73" element="dotmatrix5dot" state="0">
238      <bounds x="50" y="3" width="5" height="1" />
239   </bezel>
240   <bezel name="dmd_74" element="dotmatrix5dot" state="0">
241      <bounds x="50" y="4" width="5" height="1" />
242   </bezel>
243   <bezel name="dmd_75" element="dotmatrix5dot" state="0">
244      <bounds x="50" y="5" width="5" height="1" />
245   </bezel>
246   <bezel name="dmd_76" element="dotmatrix5dot" state="0">
247      <bounds x="50" y="6" width="5" height="1" />
248   </bezel>
249   <bezel name="dmd_77" element="dotmatrix5dot" state="0">
250      <bounds x="55" y="0" width="5" height="1" />
251   </bezel>
252   <bezel name="dmd_78" element="dotmatrix5dot" state="0">
253      <bounds x="55" y="1" width="5" height="1" />
254   </bezel>
255   <bezel name="dmd_79" element="dotmatrix5dot" state="0">
256      <bounds x="55" y="2" width="5" height="1" />
257   </bezel>
258   <bezel name="dmd_80" element="dotmatrix5dot" state="0">
259      <bounds x="55" y="3" width="5" height="1" />
260   </bezel>
261   <bezel name="dmd_81" element="dotmatrix5dot" state="0">
262      <bounds x="55" y="4" width="5" height="1" />
263   </bezel>
264   <bezel name="dmd_82" element="dotmatrix5dot" state="0">
265      <bounds x="55" y="5" width="5" height="1" />
266   </bezel>
267   <bezel name="dmd_83" element="dotmatrix5dot" state="0">
268      <bounds x="55" y="6" width="5" height="1" />
269   </bezel>
270   <bezel name="dmd_84" element="dotmatrix5dot" state="0">
271      <bounds x="60" y="0" width="5" height="1" />
272   </bezel>
273   <bezel name="dmd_85" element="dotmatrix5dot" state="0">
274      <bounds x="60" y="1" width="5" height="1" />
275   </bezel>
276   <bezel name="dmd_86" element="dotmatrix5dot" state="0">
277      <bounds x="60" y="2" width="5" height="1" />
278   </bezel>
279   <bezel name="dmd_87" element="dotmatrix5dot" state="0">
280      <bounds x="60" y="3" width="5" height="1" />
281   </bezel>
282   <bezel name="dmd_88" element="dotmatrix5dot" state="0">
283      <bounds x="60" y="4" width="5" height="1" />
284   </bezel>
285   <bezel name="dmd_89" element="dotmatrix5dot" state="0">
286      <bounds x="60" y="5" width="5" height="1" />
287   </bezel>
288   <bezel name="dmd_90" element="dotmatrix5dot" state="0">
289      <bounds x="60" y="6" width="5" height="1" />
290   </bezel>
291   <bezel name="dmd_91" element="dotmatrix5dot" state="0">
292      <bounds x="65" y="0" width="5" height="1" />
293   </bezel>
294   <bezel name="dmd_92" element="dotmatrix5dot" state="0">
295      <bounds x="65" y="1" width="5" height="1" />
296   </bezel>
297   <bezel name="dmd_93" element="dotmatrix5dot" state="0">
298      <bounds x="65" y="2" width="5" height="1" />
299   </bezel>
300   <bezel name="dmd_94" element="dotmatrix5dot" state="0">
301      <bounds x="65" y="3" width="5" height="1" />
302   </bezel>
303   <bezel name="dmd_95" element="dotmatrix5dot" state="0">
304      <bounds x="65" y="4" width="5" height="1" />
305   </bezel>
306   <bezel name="dmd_96" element="dotmatrix5dot" state="0">
307      <bounds x="65" y="5" width="5" height="1" />
308   </bezel>
309   <bezel name="dmd_97" element="dotmatrix5dot" state="0">
310      <bounds x="65" y="6" width="5" height="1" />
311   </bezel>
312   </view>
313</mamelayout>
Property changes on: trunk/src/mess/layout/tecnbras.lay
Added: svn:mime-type
   + text/plain
Added: svn:eol-style
   + native
trunk/src/mess/drivers/tecnbras.c
r0r31122
1// license:MAME|GPL-2.0+
2// copyright-holders: Felipe Sanches
3/***************************************************************************
4
5  TECNBRAS dot matrix display (70x7 pixels)
6  Driver by Felipe Correa da Silva Sanches <juca@members.fsf.org>
7
8   The display is composed of 14 blocks of 5x7 LEDs
9
10   These LEDs are driven by several 74xx chips:
11   * one 74138
12   * several 74164 and ULN2003 chips
13
14  Changelog:
15
16   2014 JUN 23 [Felipe Sanches]:
17   * Initial driver skeleton
18
19================
20*/
21
22#include "emu.h"
23#include "cpu/mcs51/mcs51.h"
24#include "tecnbras.lh"
25
26class tecnbras_state : public driver_device
27{
28public:
29   tecnbras_state(const machine_config &mconfig, device_type type, const char *tag)
30      : driver_device(mconfig, type, tag)
31      , m_maincpu(*this, "maincpu")
32   { }
33
34   DECLARE_WRITE8_MEMBER(set_x_position_w);
35   DECLARE_WRITE8_MEMBER(print_column_w);
36
37//   DECLARE_WRITE8_MEMBER(tecnbras_io_w);
38//   DECLARE_READ8_MEMBER(tecnbras_io_r);
39   DECLARE_DRIVER_INIT(tecnbras);
40private:
41   int m_xcoord;
42   char m_digit[14][7];
43   virtual void machine_start();
44   virtual void machine_reset();
45   required_device<cpu_device> m_maincpu;
46};
47
48static ADDRESS_MAP_START(i80c31_prg, AS_PROGRAM, 8, tecnbras_state)
49   AM_RANGE(0x0000, 0x7FFF) AM_ROM
50   AM_RANGE(0x8000, 0xFFFF) AM_RAM
51ADDRESS_MAP_END
52
53static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, tecnbras_state)
54   AM_RANGE(0x0100, 0x0145) AM_WRITE(set_x_position_w)
55   AM_RANGE(0x06B8, 0x06BC) AM_WRITE(print_column_w)
56   AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_NOP /*buzzer ?*/
57ADDRESS_MAP_END
58
59DRIVER_INIT_MEMBER( tecnbras_state, tecnbras )
60{
61   m_xcoord = 0;
62   for (int x=0; x<14; x++){
63      for (int y=0; y<7; y++){
64         m_digit[x][y] = 0;
65      }
66   }
67}
68
69WRITE8_MEMBER(tecnbras_state::set_x_position_w)
70{
71   m_xcoord = offset;
72}
73
74WRITE8_MEMBER(tecnbras_state::print_column_w)
75{
76   int x = m_xcoord + offset;
77   for (int i=0; i<7; i++){
78      m_digit[x/5][i] &= ~(1 << (x%5));
79      m_digit[x/5][i] |= BIT(data, 7-i) ? (1 << (x%5)) : 0;
80      output_set_indexed_value("dmd_", (x/5)*7 + i, 0x1F & m_digit[x/5][i]);
81   }
82}
83
84void tecnbras_state::machine_start()
85{
86/*
87   for (int x=0; x<14; x++){
88      for (int y=0; y<7; y++){
89         output_set_indexed_value("dmd_", x*7 + y, y);
90      }
91   }
92*/
93}
94
95void tecnbras_state::machine_reset()
96{
97}
98
99static MACHINE_CONFIG_START( tecnbras, tecnbras_state )
100   /* basic machine hardware */
101   MCFG_CPU_ADD("maincpu", I80C31, XTAL_12MHz) /* verified on pcb */
102   MCFG_CPU_PROGRAM_MAP(i80c31_prg)
103   MCFG_CPU_IO_MAP(i80c31_io)
104
105/* TODO: Add an I2C RTC (Phillips PCF8583P)
106   pin 6 (SCL): cpu T0/P3.4 (pin 14)
107   pin 5 (SDA): cpu T1/P3.5 (pin 15)
108*/
109
110/*
111   TODO: Add a speaker
112   CPU P1.0 (pin 1)
113*/
114
115/*
116   TODO: Add a communications port to receive commands from the remote control
117*/
118
119   /* video hardware */
120   MCFG_DEFAULT_LAYOUT(layout_tecnbras)
121
122MACHINE_CONFIG_END
123
124ROM_START( tecnbras )
125   ROM_REGION( 0x8000, "maincpu", 0 )
126   ROM_LOAD( "tecnbras.u2",  0x0000, 0x8000, CRC(1a1e18fc) SHA1(8907e72f0356a2e2e1097dabac6d6b0b3d717f85) )
127ROM_END
128
129/*    YEAR  NAME      PARENT  COMPAT  MACHINE     INPUT     CLASS         INIT    COMPANY  FULLNAME                       FLAGS */
130COMP( 200?, tecnbras,   0,      0,      tecnbras,     0,   tecnbras_state, tecnbras, "Tecnbras", "Dot Matrix Display (70x7 pixels)",    GAME_IMPERFECT_GRAPHICS | GAME_NO_SOUND)
Property changes on: trunk/src/mess/drivers/tecnbras.c
Added: svn:mime-type
   + text/plain
Added: svn:eol-style
   + native
trunk/src/mess/mess.mak
r31121r31122
21612161   $(MESS_DRIVERS)/sys2900.o   \
21622162   $(MESS_DRIVERS)/systec.o    \
21632163   $(MESS_DRIVERS)/tavernie.o  \
2164   $(MESS_DRIVERS)/tecnbras.o  \
21642165   $(MESS_DRIVERS)/terak.o     \
21652166   $(MESS_DRIVERS)/ti630.o     \
21662167   $(MESS_DRIVERS)/tsispch.o   \
r31121r31122
23332334$(MESS_DRIVERS)/sym1.o:     $(MESS_LAYOUT)/sym1.lh
23342335$(MESS_DRIVERS)/tavernie.o: $(MESS_LAYOUT)/tavernie.lh
23352336$(MESS_DRIVERS)/tec1.o:     $(MESS_LAYOUT)/tec1.lh
2337$(MESS_DRIVERS)/tecnbras.o: $(MESS_LAYOUT)/tecnbras.lh
23362338$(MESS_DRIVERS)/tk80.o:     $(MESS_LAYOUT)/tk80.lh
23372339$(MESS_DRIVERS)/tm990189.o: $(MESS_LAYOUT)/tm990189.lh \
23382340                     $(MESS_LAYOUT)/tm990189v.lh

Previous 199869 Revisions Next


© 1997-2024 The MAME Team