Previous 15994 Revisions Next

r15401 Monday 4th June, 2012 at 14:26:50 UTC by Miodrag Milanović
New skeleton added:
- ITT3030 [rfka01]
[src/mess]mess.lst mess.mak
[src/mess/drivers]itt3030.c*

src/mess/mess.lst
r15400r15401
21282128test420
21292129hxhdci2k
21302130hpz80unk
2131itt3030
src/mess/drivers/itt3030.c
r0r15401
1/***************************************************************************
2
3   ITT 3030
4
5***************************************************************************/
6
7
8#include "emu.h"
9#include "cpu/z80/z80.h"
10
11#define MAIN_CLOCK XTAL_8MHz
12
13class itt3030_state : public driver_device
14{
15public:
16   itt3030_state(const machine_config &mconfig, device_type type, const char *tag)
17      : driver_device(mconfig, type, tag),
18        m_maincpu(*this, "maincpu")
19   { }
20
21   // devices
22   required_device<cpu_device> m_maincpu;
23
24   // screen updates
25   UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
26
27protected:
28   // driver_device overrides
29   virtual void machine_start();
30   virtual void machine_reset();
31
32   virtual void video_start();
33public:   
34   
35   DECLARE_READ8_MEMBER(unk1_r);
36   DECLARE_READ8_MEMBER(unk2_r);
37private:
38   UINT8 m_unk;
39};
40
41void itt3030_state::video_start()
42{
43   m_unk = 0x80;
44}
45
46READ8_MEMBER(itt3030_state::unk1_r)
47{
48   UINT8 ret = m_unk;
49   m_unk ^= 0x80;
50   return ret;
51}
52
53READ8_MEMBER(itt3030_state::unk2_r)
54{
55   return 0x40;
56}
57
58UINT32 itt3030_state::screen_update( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect )
59{
60   address_space *space = screen.machine().device("maincpu")->memory().space(AS_PROGRAM);
61
62   for(int y = 0; y < 24; y++ )
63   {
64      for(int x = 0; x < 80; x++ )
65      {
66         UINT8 code = space->read_byte(0x3000 + x + y*128);
67         drawgfx_opaque(bitmap, cliprect, screen.machine().gfx[0],  code , 0, 0,0, x*8,y*16);
68      }
69   }
70   
71   return 0;
72}
73
74static ADDRESS_MAP_START( itt3030_map, AS_PROGRAM, 8, itt3030_state )
75   AM_RANGE(0x0000, 0x07ff) AM_ROM
76   AM_RANGE(0x0800, 0xffff) AM_RAM
77ADDRESS_MAP_END
78
79
80static ADDRESS_MAP_START( itt3030_io, AS_IO, 8, itt3030_state )
81   ADDRESS_MAP_GLOBAL_MASK(0xff)
82   AM_RANGE(0x0031, 0x0031) AM_READ(unk2_r)
83   AM_RANGE(0x0035, 0x0035) AM_READ(unk1_r)
84ADDRESS_MAP_END
85
86static INPUT_PORTS_START( itt3030 )
87INPUT_PORTS_END
88
89static const gfx_layout charlayout =
90{
91   8, 16,            /* 8x16 characters */
92   128,            /* 128 characters */
93   1,              /* 1 bits per pixel */
94   {0},            /* no bitplanes; 1 bit per pixel */
95   {7, 6, 5, 4, 3, 2, 1, 0},
96   { 0*8,  1*8,  2*8,  3*8,  4*8,  5*8,  6*8,  7*8,
97     8*8,  9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
98   8*16               /* size of one char */
99};
100
101static GFXDECODE_START( itt3030 )
102   GFXDECODE_ENTRY( "gfx1", 0, charlayout,     0, 1 )
103GFXDECODE_END
104
105
106void itt3030_state::machine_start()
107{
108}
109
110void itt3030_state::machine_reset()
111{
112}
113
114static MACHINE_CONFIG_START( itt3030, itt3030_state )
115
116   /* basic machine hardware */
117   MCFG_CPU_ADD("maincpu",Z80,XTAL_4MHz)
118   MCFG_CPU_PROGRAM_MAP(itt3030_map)
119   MCFG_CPU_IO_MAP(itt3030_io)
120
121   /* video hardware */
122   MCFG_SCREEN_ADD("screen", RASTER)
123   MCFG_SCREEN_REFRESH_RATE(60)
124   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
125   MCFG_SCREEN_UPDATE_DRIVER(itt3030_state, screen_update)
126   MCFG_SCREEN_SIZE(80*8, 24*16)
127   MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*16-1)
128
129   MCFG_GFXDECODE(itt3030)
130
131   MCFG_PALETTE_LENGTH(2)
132   MCFG_PALETTE_INIT(black_and_white)
133
134   /* sound hardware */
135   MCFG_SPEAKER_STANDARD_MONO("mono")
136MACHINE_CONFIG_END
137
138
139/***************************************************************************
140
141  Game driver(s)
142
143***************************************************************************/
144
145ROM_START( itt3030 )
146   ROM_REGION( 0x0800, "maincpu", ROMREGION_ERASE00 )
147   ROM_LOAD( "bootv1.2.bin", 0x0000, 0x0800, CRC(90279d45) SHA1(a39a3f31f4f98980b1ef50805870837fbf72261d))
148   ROM_REGION( 0x0800, "gfx1", ROMREGION_ERASE00 )
149   ROM_LOAD( "gb136-0.bin", 0x0000, 0x0800, CRC(6a3895a8) SHA1(f3b977ffa2f54c346521c9ef034830de8f404621))
150   ROM_REGION( 0x0400, "gfxcpu", ROMREGION_ERASE00 )
151   ROM_LOAD( "8741ad.bin", 0x0000, 0x0400, CRC(cabf4394) SHA1(e5d1416b568efa32b578ca295a29b7b5d20c0def))   
152ROM_END
153
154GAME( 1982, itt3030,  0,   itt3030,  itt3030,  0,       ROT0, "ITT RFA",      "ITT3030", GAME_NOT_WORKING | GAME_NO_SOUND )
src/mess/mess.mak
r15400r15401
19261926   $(MESS_DRIVERS)/if800.o      \
19271927   $(MESS_DRIVERS)/indiana.o   \
19281928   $(MESS_DRIVERS)/instruct.o   \
1929   $(MESS_DRIVERS)/itt3030.o   \
19291930   $(MESS_DRIVERS)/konin.o      \
19301931   $(MESS_DRIVERS)/m79152pc.o   \
19311932   $(MESS_DRIVERS)/mbc200.o   \

Previous 15994 Revisions Next


© 1998-2018 The MESS Team