~ubuntu-branches/debian/sid/mame/sid

« back to all changes in this revision

Viewing changes to mess/src/mame/drivers/1942.c

  • Committer: Package Import Robot
  • Author(s): Jordi Mallach, Jordi Mallach, Emmanuel Kasper
  • Date: 2011-12-19 22:56:27 UTC
  • mfrom: (0.1.2)
  • Revision ID: package-import@ubuntu.com-20111219225627-ub5oga1oys4ogqzm
Tags: 0.144-1
[ Jordi Mallach ]
* Fix syntax errors in DEP5 copyright file (lintian).
* Use a versioned copyright Format specification field.
* Update Vcs-* URLs.
* Move transitional packages to the new metapackages section, and make
  them priority extra.
* Remove references to GNU/Linux and MESS sources from copyright.
* Add build variables for s390x.
* Use .xz tarballs as it cuts 4MB for the upstream sources.
* Add nplayers.ini as a patch. Update copyright file to add CC-BY-SA-3.0.

[ Emmanuel Kasper ]
* New upstream release. Closes: #651538.
* Add Free Desktop compliant png icons of various sizes taken from
  the hydroxygen iconset
* Mess is now built from a new source package, to avoid possible source
  incompatibilities between mame and the mess overlay.
* Mame-tools are not built from the mame source package anymore, but
  from the mess source package

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/***************************************************************************
2
 
 
3
 
1942
4
 
 
5
 
driver by Paul Leaman
6
 
 
7
 
 
8
 
MAIN CPU:
9
 
 
10
 
0000-bfff ROM (8000-bfff banked)
11
 
cc00-cc7f Sprites
12
 
d000-d3ff Video RAM
13
 
d400-d7ff Color RAM
14
 
d800-dbff Background RAM (groups of 32 bytes, 16 code, 16 color/attribute)
15
 
e000-efff RAM
16
 
 
17
 
read:
18
 
c000      IN0
19
 
c001      IN1
20
 
c002      IN2
21
 
c003      DSW0
22
 
c004      DSW1
23
 
 
24
 
write:
25
 
c800      command for the audio CPU
26
 
c802-c803 background scroll
27
 
c804      bit 7: flip screen
28
 
          bit 4: cpu B reset
29
 
          bit 0: coin counter
30
 
c805      background palette bank selector
31
 
c806      bit 0-1 ROM bank selector 00=1-N5.BIN
32
 
                                    01=1-N6.BIN
33
 
                                    10=1-N7.BIN
34
 
 
35
 
 
36
 
 
37
 
SOUND CPU:
38
 
 
39
 
0000-3fff ROM
40
 
4000-47ff RAM
41
 
6000      command from the main CPU
42
 
8000      8910 #1 control
43
 
8001      8910 #1 write
44
 
c000      8910 #2 control
45
 
c001      8910 #2 write
46
 
 
47
 
 
48
 
 
49
 
Game runs in interrupt mode 0 (the devices supply the interrupt number).
50
 
 
51
 
Two interrupts must be triggered per refresh for the game to function
52
 
correctly.
53
 
 
54
 
0x10 is the video retrace. This controls the speed of the game and generally
55
 
     drives the code. This must be triggerd for each video retrace.
56
 
0x08 is the sound card service interupt. The game uses this to throw sounds
57
 
     at the sound CPU.
58
 
 
59
 
 
60
 
***************************************************************************/
61
 
 
62
 
#define MAIN_CPU_CLOCK          (XTAL_12MHz/3) /* 12MHz is the only OSC on the PCB */
63
 
#define SOUND_CPU_CLOCK         (XTAL_12MHz/4) /* 12MHz is the only OSC on the PCB */
64
 
#define AUDIO_CLOCK             (XTAL_12MHz/8) /* 12MHz is the only OSC on the PCB */
65
 
 
66
 
#include "emu.h"
67
 
#include "cpu/z80/z80.h"
68
 
#include "sound/ay8910.h"
69
 
#include "includes/1942.h"
70
 
 
71
 
 
72
 
static WRITE8_HANDLER( c1942_bankswitch_w )
73
 
{
74
 
        memory_set_bank(space->machine(), "bank1", data & 0x03);
75
 
}
76
 
 
77
 
static TIMER_DEVICE_CALLBACK( c1942_scanline )
78
 
{
79
 
        int scanline = param;
80
 
 
81
 
        if(scanline == 240) // vblank-out irq
82
 
                cputag_set_input_line_and_vector(timer.machine(), "maincpu", 0, HOLD_LINE, 0xd7);       /* RST 10h - vblank */
83
 
 
84
 
        if(scanline == 0) // unknown irq event, presumably vblank-in or a periodic one (writes to the soundlatch and drives freeze dip-switch)
85
 
                cputag_set_input_line_and_vector(timer.machine(), "maincpu", 0, HOLD_LINE, 0xcf);       /* RST 08h */
86
 
}
87
 
 
88
 
 
89
 
static ADDRESS_MAP_START( c1942_map, AS_PROGRAM, 8 )
90
 
        AM_RANGE(0x0000, 0x7fff) AM_ROM
91
 
        AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
92
 
        AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
93
 
        AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1")
94
 
        AM_RANGE(0xc002, 0xc002) AM_READ_PORT("P2")
95
 
        AM_RANGE(0xc003, 0xc003) AM_READ_PORT("DSWA")
96
 
        AM_RANGE(0xc004, 0xc004) AM_READ_PORT("DSWB")
97
 
        AM_RANGE(0xc800, 0xc800) AM_WRITE(soundlatch_w)
98
 
        AM_RANGE(0xc802, 0xc803) AM_WRITE(c1942_scroll_w)
99
 
        AM_RANGE(0xc804, 0xc804) AM_WRITE(c1942_c804_w)
100
 
        AM_RANGE(0xc805, 0xc805) AM_WRITE(c1942_palette_bank_w)
101
 
        AM_RANGE(0xc806, 0xc806) AM_WRITE(c1942_bankswitch_w)
102
 
        AM_RANGE(0xcc00, 0xcc7f) AM_RAM AM_BASE_SIZE_MEMBER(_1942_state, m_spriteram, m_spriteram_size)
103
 
        AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(c1942_fgvideoram_w) AM_BASE_MEMBER(_1942_state, m_fg_videoram)
104
 
        AM_RANGE(0xd800, 0xdbff) AM_RAM_WRITE(c1942_bgvideoram_w) AM_BASE_MEMBER(_1942_state, m_bg_videoram)
105
 
        AM_RANGE(0xe000, 0xefff) AM_RAM
106
 
ADDRESS_MAP_END
107
 
 
108
 
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 )
109
 
        AM_RANGE(0x0000, 0x3fff) AM_ROM
110
 
        AM_RANGE(0x4000, 0x47ff) AM_RAM
111
 
        AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r)
112
 
        AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w)
113
 
        AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ay2", ay8910_address_data_w)
114
 
ADDRESS_MAP_END
115
 
 
116
 
 
117
 
static INPUT_PORTS_START( 1942 )
118
 
        PORT_START("SYSTEM")
119
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
120
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
121
 
        PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )
122
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
123
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
124
 
        PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 )
125
 
        PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
126
 
 
127
 
        PORT_START("P1")
128
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
129
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
130
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
131
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
132
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
133
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
134
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
135
 
 
136
 
        PORT_START("P2")
137
 
        PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
138
 
        PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
139
 
        PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
140
 
        PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
141
 
        PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
142
 
        PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
143
 
        PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
144
 
 
145
 
        PORT_START("DSWA")
146
 
        PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )           PORT_DIPLOCATION("SWA:8,7,6")
147
 
        PORT_DIPSETTING(    0x01, DEF_STR( 4C_1C ) )
148
 
        PORT_DIPSETTING(    0x02, DEF_STR( 3C_1C ) )
149
 
        PORT_DIPSETTING(    0x04, DEF_STR( 2C_1C ) )
150
 
        PORT_DIPSETTING(    0x07, DEF_STR( 1C_1C ) )
151
 
        PORT_DIPSETTING(    0x03, DEF_STR( 2C_3C ) )
152
 
        PORT_DIPSETTING(    0x06, DEF_STR( 1C_2C ) )
153
 
        PORT_DIPSETTING(    0x05, DEF_STR( 1C_4C ) )
154
 
        PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
155
 
        PORT_DIPNAME( 0x08, 0x00, DEF_STR( Cabinet ) )          PORT_DIPLOCATION("SWA:5")
156
 
        PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
157
 
        PORT_DIPSETTING(    0x08, DEF_STR( Cocktail ) )
158
 
        PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )       PORT_DIPLOCATION("SWA:4,3")
159
 
        PORT_DIPSETTING(    0x30, "20K 80K 80K+" )
160
 
        PORT_DIPSETTING(    0x20, "20K 100K 100K+" )
161
 
        PORT_DIPSETTING(    0x10, "30K 80K 80K+" )
162
 
        PORT_DIPSETTING(    0x00, "30K 100K 100K+" )
163
 
        PORT_DIPNAME( 0xc0, 0x40, DEF_STR( Lives ) )            PORT_DIPLOCATION("SWA:2,1")
164
 
        PORT_DIPSETTING(    0x80, "1" )
165
 
        PORT_DIPSETTING(    0x40, "2" )
166
 
        PORT_DIPSETTING(    0xc0, "3" )
167
 
        PORT_DIPSETTING(    0x00, "5" )
168
 
 
169
 
        PORT_START("DSWB")
170
 
        PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_B ) )           PORT_DIPLOCATION("SWB:8,7,6")
171
 
        PORT_DIPSETTING(    0x01, DEF_STR( 4C_1C ) )
172
 
        PORT_DIPSETTING(    0x02, DEF_STR( 3C_1C ) )
173
 
        PORT_DIPSETTING(    0x04, DEF_STR( 2C_1C ) )
174
 
        PORT_DIPSETTING(    0x07, DEF_STR( 1C_1C ) )
175
 
        PORT_DIPSETTING(    0x03, DEF_STR( 2C_3C ) )
176
 
        PORT_DIPSETTING(    0x06, DEF_STR( 1C_2C ) )
177
 
        PORT_DIPSETTING(    0x05, DEF_STR( 1C_4C ) )
178
 
        PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
179
 
        PORT_SERVICE_DIPLOC(0x08, IP_ACTIVE_LOW, "SWB:5" )
180
 
        PORT_DIPNAME( 0x10, 0x10, DEF_STR( Flip_Screen ) )      PORT_DIPLOCATION("SWB:4")
181
 
        PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
182
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
183
 
        PORT_DIPNAME( 0x60, 0x60, DEF_STR( Difficulty ) )       PORT_DIPLOCATION("SWB:3,2")
184
 
        PORT_DIPSETTING(    0x40, DEF_STR( Easy ) )
185
 
        PORT_DIPSETTING(    0x60, DEF_STR( Normal ) )
186
 
        PORT_DIPSETTING(    0x20, DEF_STR( Difficult ) )
187
 
        PORT_DIPSETTING(    0x00, DEF_STR( Very_Difficult ) )
188
 
        PORT_DIPNAME( 0x80, 0x80, "Screen Stop" )                       PORT_DIPLOCATION("SWB:1")
189
 
        PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
190
 
        PORT_DIPSETTING(    0x00, DEF_STR( On ) )
191
 
INPUT_PORTS_END
192
 
 
193
 
 
194
 
 
195
 
static const gfx_layout charlayout =
196
 
{
197
 
        8,8,
198
 
        RGN_FRAC(1,1),
199
 
        2,
200
 
        { 4, 0 },
201
 
        { 0, 1, 2, 3, 8+0, 8+1, 8+2, 8+3 },
202
 
        { 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16 },
203
 
        16*8
204
 
};
205
 
 
206
 
static const gfx_layout tilelayout =
207
 
{
208
 
        16,16,
209
 
        RGN_FRAC(1,3),
210
 
        3,
211
 
        { RGN_FRAC(0,3), RGN_FRAC(1,3), RGN_FRAC(2,3) },
212
 
        { 0, 1, 2, 3, 4, 5, 6, 7,
213
 
                        16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7 },
214
 
        { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
215
 
                        8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
216
 
        32*8
217
 
};
218
 
 
219
 
static const gfx_layout spritelayout =
220
 
{
221
 
        16,16,
222
 
        RGN_FRAC(1,2),
223
 
        4,
224
 
        { RGN_FRAC(1,2)+4, RGN_FRAC(1,2)+0, 4, 0 },
225
 
        { 0, 1, 2, 3, 8+0, 8+1, 8+2, 8+3,
226
 
                        16*16+0, 16*16+1, 16*16+2, 16*16+3, 16*16+8+0, 16*16+8+1, 16*16+8+2, 16*16+8+3 },
227
 
        { 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
228
 
                        8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
229
 
        64*8
230
 
};
231
 
 
232
 
static GFXDECODE_START( 1942 )
233
 
        GFXDECODE_ENTRY( "gfx1", 0, charlayout,             0, 64 )
234
 
        GFXDECODE_ENTRY( "gfx2", 0, tilelayout,          64*4, 4*32 )
235
 
        GFXDECODE_ENTRY( "gfx3", 0, spritelayout, 64*4+4*32*8, 16 )
236
 
GFXDECODE_END
237
 
 
238
 
 
239
 
static MACHINE_START( 1942 )
240
 
{
241
 
        _1942_state *state = machine.driver_data<_1942_state>();
242
 
 
243
 
        state->m_audiocpu = machine.device("audiocpu");
244
 
 
245
 
        state->save_item(NAME(state->m_palette_bank));
246
 
        state->save_item(NAME(state->m_scroll));
247
 
}
248
 
 
249
 
static MACHINE_RESET( 1942 )
250
 
{
251
 
        _1942_state *state = machine.driver_data<_1942_state>();
252
 
 
253
 
        state->m_palette_bank = 0;
254
 
        state->m_scroll[0] = 0;
255
 
        state->m_scroll[1] = 0;
256
 
}
257
 
 
258
 
static MACHINE_CONFIG_START( 1942, _1942_state )
259
 
 
260
 
        /* basic machine hardware */
261
 
        MCFG_CPU_ADD("maincpu", Z80, MAIN_CPU_CLOCK)    /* 4 MHz ??? */
262
 
        MCFG_CPU_PROGRAM_MAP(c1942_map)
263
 
        MCFG_TIMER_ADD_SCANLINE("scantimer", c1942_scanline, "screen", 0, 1)
264
 
 
265
 
        MCFG_CPU_ADD("audiocpu", Z80, SOUND_CPU_CLOCK)  /* 3 MHz ??? */
266
 
        MCFG_CPU_PROGRAM_MAP(sound_map)
267
 
        MCFG_CPU_PERIODIC_INT(irq0_line_hold,4*60)
268
 
 
269
 
        MCFG_MACHINE_START(1942)
270
 
        MCFG_MACHINE_RESET(1942)
271
 
 
272
 
        /* video hardware */
273
 
        MCFG_GFXDECODE(1942)
274
 
        MCFG_PALETTE_LENGTH(64*4+4*32*8+16*16)
275
 
 
276
 
        MCFG_SCREEN_ADD("screen", RASTER)
277
 
        MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
278
 
        MCFG_SCREEN_REFRESH_RATE(60)
279
 
        MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
280
 
        MCFG_SCREEN_SIZE(32*8, 32*8)
281
 
        MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
282
 
        MCFG_SCREEN_UPDATE(1942)
283
 
 
284
 
        MCFG_PALETTE_INIT(1942)
285
 
        MCFG_VIDEO_START(1942)
286
 
 
287
 
        /* sound hardware */
288
 
        MCFG_SPEAKER_STANDARD_MONO("mono")
289
 
 
290
 
        MCFG_SOUND_ADD("ay1", AY8910, AUDIO_CLOCK)      /* 1.5 MHz */
291
 
        MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
292
 
        MCFG_SOUND_ADD("ay2", AY8910, AUDIO_CLOCK)      /* 1.5 MHz */
293
 
        MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
294
 
MACHINE_CONFIG_END
295
 
 
296
 
 
297
 
 
298
 
/***************************************************************************
299
 
 
300
 
  Game driver(s)
301
 
 
302
 
***************************************************************************/
303
 
 
304
 
ROM_START( 1942 )
305
 
        ROM_REGION( 0x1c000, "maincpu", 0 )     /* 64k for code + 3*16k for the banked ROMs images */
306
 
        ROM_LOAD( "srb-03.m3", 0x00000, 0x4000, CRC(d9dafcc3) SHA1(a089a9bc55fb7d6d0ac53f91b258396d5d62677a) )
307
 
        ROM_LOAD( "srb-04.m4", 0x04000, 0x4000, CRC(da0cf924) SHA1(856fbb302c9a4ec7850a26ab23dab8467f79bba4) )
308
 
        ROM_LOAD( "srb-05.m5", 0x10000, 0x4000, CRC(d102911c) SHA1(35ba1d82bd901940f61d8619273463d02fc0a952) )
309
 
        ROM_LOAD( "srb-06.m6", 0x14000, 0x2000, CRC(466f8248) SHA1(2ccc8fc59962d3001fbc10e8d2f20a254a74f251) )
310
 
        ROM_LOAD( "srb-07.m7", 0x18000, 0x4000, CRC(0d31038c) SHA1(b588eaf6fddd66ecb2d9832dc197f286f1ccd846) )
311
 
 
312
 
        ROM_REGION( 0x10000, "audiocpu", 0 )
313
 
        ROM_LOAD( "sr-01.c11", 0x0000, 0x4000, CRC(bd87f06b) SHA1(821f85cf157f81117eeaba0c3cf0337eac357e58) )
314
 
 
315
 
        ROM_REGION( 0x2000, "gfx1", 0 )
316
 
        ROM_LOAD( "sr-02.f2", 0x0000, 0x2000, CRC(6ebca191) SHA1(0dbddadde54a0ab66994c4a8726be05c6ca88a0e) )    /* characters */
317
 
 
318
 
        ROM_REGION( 0xc000, "gfx2", 0 )
319
 
        ROM_LOAD( "sr-08.a1", 0x0000, 0x2000, CRC(3884d9eb) SHA1(5cbd9215fa5ba5a61208b383700adc4428521aed) )    /* tiles */
320
 
        ROM_LOAD( "sr-09.a2", 0x2000, 0x2000, CRC(999cf6e0) SHA1(5b8b685038ec98b781908b92eb7fb9506db68544) )
321
 
        ROM_LOAD( "sr-10.a3", 0x4000, 0x2000, CRC(8edb273a) SHA1(85fdd4c690ed31e6396e3c16aa02140ee7ea2d61) )
322
 
        ROM_LOAD( "sr-11.a4", 0x6000, 0x2000, CRC(3a2726c3) SHA1(187c92ef591febdcbd1d42ab850e0cbb62c00873) )
323
 
        ROM_LOAD( "sr-12.a5", 0x8000, 0x2000, CRC(1bd3d8bb) SHA1(ef4dce605eb4dc8035985a415315ec61c21419c6) )
324
 
        ROM_LOAD( "sr-13.a6", 0xa000, 0x2000, CRC(658f02c4) SHA1(f087d69e49e38cf3107350cde18fcf85a8fa04f0) )
325
 
 
326
 
        ROM_REGION( 0x10000, "gfx3", 0 )
327
 
        ROM_LOAD( "sr-14.l1", 0x00000, 0x4000, CRC(2528bec6) SHA1(29f7719f18faad6bd1ec6735cc24e69168361470) )   /* sprites */
328
 
        ROM_LOAD( "sr-15.l2", 0x04000, 0x4000, CRC(f89287aa) SHA1(136fff6d2a4f48a488fc7c620213761459c3ada0) )
329
 
        ROM_LOAD( "sr-16.n1", 0x08000, 0x4000, CRC(024418f8) SHA1(145b8d5d6c8654cd090955a98f6dd8c8dbafe7c1) )
330
 
        ROM_LOAD( "sr-17.n2", 0x0c000, 0x4000, CRC(e2c7e489) SHA1(d4b5d575c021f58f6966df189df94e08c5b3621c) )
331
 
 
332
 
        ROM_REGION( 0x0a00, "proms", 0 )
333
 
        ROM_LOAD( "sb-5.e8",  0x0000, 0x0100, CRC(93ab8153) SHA1(a792f24e5c0c3c4a6b436102e7a98199f878ece1) )    /* red component */
334
 
        ROM_LOAD( "sb-6.e9",  0x0100, 0x0100, CRC(8ab44f7d) SHA1(f74680a6a987d74b3acb32e6396f20e127874149) )    /* green component */
335
 
        ROM_LOAD( "sb-7.e10", 0x0200, 0x0100, CRC(f4ade9a4) SHA1(62ad31d31d183cce213b03168daa035083b2f28e) )    /* blue component */
336
 
        ROM_LOAD( "sb-0.f1",  0x0300, 0x0100, CRC(6047d91b) SHA1(1ce025f9524c1033e48c5294ee7d360f8bfebe8d) )    /* char lookup table */
337
 
        ROM_LOAD( "sb-4.d6",  0x0400, 0x0100, CRC(4858968d) SHA1(20b5dbcaa1a4081b3139e7e2332d8fe3c9e55ed6) )    /* tile lookup table */
338
 
        ROM_LOAD( "sb-8.k3",  0x0500, 0x0100, CRC(f6fad943) SHA1(b0a24ea7805272e8ebf72a99b08907bc00d5f82f) )    /* sprite lookup table */
339
 
        ROM_LOAD( "sb-2.d1",  0x0600, 0x0100, CRC(8bb8b3df) SHA1(49de2819c4c92057fedcb20425282515d85829aa) )    /* tile palette selector? (not used) */
340
 
        ROM_LOAD( "sb-3.d2",  0x0700, 0x0100, CRC(3b0c99af) SHA1(38f30ac1e48632634e409f328ee3051b987de7ad) )    /* tile palette selector? (not used) */
341
 
        ROM_LOAD( "sb-1.k6",  0x0800, 0x0100, CRC(712ac508) SHA1(5349d722ab6733afdda65f6e0a98322f0d515e86) )    /* interrupt timing (not used) */
342
 
        ROM_LOAD( "sb-9.m11", 0x0900, 0x0100, CRC(4921635c) SHA1(aee37d6cdc36acf0f11ff5f93e7b16e4b12f6c39) )    /* video timing? (not used) */
343
 
ROM_END
344
 
 
345
 
ROM_START( 1942a )
346
 
        ROM_REGION( 0x1c000, "maincpu", 0 )     /* 64k for code + 3*16k for the banked ROMs images */
347
 
        ROM_LOAD( "sra-03.m3", 0x00000, 0x4000, CRC(40201bab) SHA1(4886c07a4602223c21419118e10aadce9c99fa5a) )
348
 
        ROM_LOAD( "sr-04.m4",  0x04000, 0x4000, CRC(a60ac644) SHA1(f37862db3cf5e6cc9ab3276f3bc45fd629fd70dd) )
349
 
        ROM_LOAD( "sr-05.m5",  0x10000, 0x4000, CRC(835f7b24) SHA1(24b66827f08c43fbf5b9517d638acdfc38e1b1e7) )
350
 
        ROM_LOAD( "sr-06.m6",  0x14000, 0x2000, CRC(821c6481) SHA1(06becb6bf8b4bde3a458098498eecad566a87711) )
351
 
        ROM_LOAD( "sr-07.m7",  0x18000, 0x4000, CRC(5df525e1) SHA1(70cd2910e2945db76bd6ebfa0ff09a5efadc2d0b) )
352
 
 
353
 
        ROM_REGION( 0x10000, "audiocpu", 0 )
354
 
        ROM_LOAD( "sr-01.c11", 0x0000, 0x4000, CRC(bd87f06b) SHA1(821f85cf157f81117eeaba0c3cf0337eac357e58) )
355
 
 
356
 
        ROM_REGION( 0x2000, "gfx1", 0 )
357
 
        ROM_LOAD( "sr-02.f2", 0x0000, 0x2000, CRC(6ebca191) SHA1(0dbddadde54a0ab66994c4a8726be05c6ca88a0e) )    /* characters */
358
 
 
359
 
        ROM_REGION( 0xc000, "gfx2", 0 )
360
 
        ROM_LOAD( "sr-08.a1", 0x0000, 0x2000, CRC(3884d9eb) SHA1(5cbd9215fa5ba5a61208b383700adc4428521aed) )    /* tiles */
361
 
        ROM_LOAD( "sr-09.a2", 0x2000, 0x2000, CRC(999cf6e0) SHA1(5b8b685038ec98b781908b92eb7fb9506db68544) )
362
 
        ROM_LOAD( "sr-10.a3", 0x4000, 0x2000, CRC(8edb273a) SHA1(85fdd4c690ed31e6396e3c16aa02140ee7ea2d61) )
363
 
        ROM_LOAD( "sr-11.a4", 0x6000, 0x2000, CRC(3a2726c3) SHA1(187c92ef591febdcbd1d42ab850e0cbb62c00873) )
364
 
        ROM_LOAD( "sr-12.a5", 0x8000, 0x2000, CRC(1bd3d8bb) SHA1(ef4dce605eb4dc8035985a415315ec61c21419c6) )
365
 
        ROM_LOAD( "sr-13.a6", 0xa000, 0x2000, CRC(658f02c4) SHA1(f087d69e49e38cf3107350cde18fcf85a8fa04f0) )
366
 
 
367
 
        ROM_REGION( 0x10000, "gfx3", 0 )
368
 
        ROM_LOAD( "sr-14.l1", 0x00000, 0x4000, CRC(2528bec6) SHA1(29f7719f18faad6bd1ec6735cc24e69168361470) )   /* sprites */
369
 
        ROM_LOAD( "sr-15.l2", 0x04000, 0x4000, CRC(f89287aa) SHA1(136fff6d2a4f48a488fc7c620213761459c3ada0) )
370
 
        ROM_LOAD( "sr-16.n1", 0x08000, 0x4000, CRC(024418f8) SHA1(145b8d5d6c8654cd090955a98f6dd8c8dbafe7c1) )
371
 
        ROM_LOAD( "sr-17.n2", 0x0c000, 0x4000, CRC(e2c7e489) SHA1(d4b5d575c021f58f6966df189df94e08c5b3621c) )
372
 
 
373
 
        ROM_REGION( 0x0a00, "proms", 0 )
374
 
        ROM_LOAD( "sb-5.e8",  0x0000, 0x0100, CRC(93ab8153) SHA1(a792f24e5c0c3c4a6b436102e7a98199f878ece1) )    /* red component */
375
 
        ROM_LOAD( "sb-6.e9",  0x0100, 0x0100, CRC(8ab44f7d) SHA1(f74680a6a987d74b3acb32e6396f20e127874149) )    /* green component */
376
 
        ROM_LOAD( "sb-7.e10", 0x0200, 0x0100, CRC(f4ade9a4) SHA1(62ad31d31d183cce213b03168daa035083b2f28e) )    /* blue component */
377
 
        ROM_LOAD( "sb-0.f1",  0x0300, 0x0100, CRC(6047d91b) SHA1(1ce025f9524c1033e48c5294ee7d360f8bfebe8d) )    /* char lookup table */
378
 
        ROM_LOAD( "sb-4.d6",  0x0400, 0x0100, CRC(4858968d) SHA1(20b5dbcaa1a4081b3139e7e2332d8fe3c9e55ed6) )    /* tile lookup table */
379
 
        ROM_LOAD( "sb-8.k3",  0x0500, 0x0100, CRC(f6fad943) SHA1(b0a24ea7805272e8ebf72a99b08907bc00d5f82f) )    /* sprite lookup table */
380
 
        ROM_LOAD( "sb-2.d1",  0x0600, 0x0100, CRC(8bb8b3df) SHA1(49de2819c4c92057fedcb20425282515d85829aa) )    /* tile palette selector? (not used) */
381
 
        ROM_LOAD( "sb-3.d2",  0x0700, 0x0100, CRC(3b0c99af) SHA1(38f30ac1e48632634e409f328ee3051b987de7ad) )    /* tile palette selector? (not used) */
382
 
        ROM_LOAD( "sb-1.k6",  0x0800, 0x0100, CRC(712ac508) SHA1(5349d722ab6733afdda65f6e0a98322f0d515e86) )    /* interrupt timing (not used) */
383
 
        ROM_LOAD( "sb-9.m11", 0x0900, 0x0100, CRC(4921635c) SHA1(aee37d6cdc36acf0f11ff5f93e7b16e4b12f6c39) )    /* video timing? (not used) */
384
 
ROM_END
385
 
 
386
 
/* this is the same as the 1942a set, but with a different rom arrangement (larger roms), it appears to be a common bootleg */
387
 
ROM_START( 1942abl )
388
 
        ROM_REGION( 0x1c000, "maincpu", 0 )     /* 64k for code + 3*16k for the banked ROMs images */
389
 
        ROM_LOAD( "3.bin", 0x00000, 0x8000, CRC(f3184f5a) SHA1(a566c344ee1f63580d41aca95ece9ad1f7a135d2) )
390
 
        ROM_LOAD( "5.bin", 0x10000, 0x4000, CRC(835f7b24) SHA1(24b66827f08c43fbf5b9517d638acdfc38e1b1e7) )
391
 
        ROM_LOAD( "7.bin", 0x14000, 0x8000, CRC(2f456c6e) SHA1(b728c72f97ccdb57a4aac53ef7ca3f4516fc2ecb) )
392
 
 
393
 
        ROM_REGION( 0x10000, "audiocpu", 0 )
394
 
        ROM_LOAD( "1.bin", 0x0000, 0x4000, CRC(bd87f06b) SHA1(821f85cf157f81117eeaba0c3cf0337eac357e58) )
395
 
 
396
 
        ROM_REGION( 0x2000, "gfx1", 0 )
397
 
        ROM_LOAD( "2.bin", 0x0000, 0x2000, CRC(6ebca191) SHA1(0dbddadde54a0ab66994c4a8726be05c6ca88a0e) )       /* characters */
398
 
 
399
 
        ROM_REGION( 0xc000, "gfx2", 0 )
400
 
        ROM_LOAD( "9.bin",  0x0000, 0x4000, CRC(60329fa4) SHA1(8f66c283c992a6bc676f5f0f739b7e9d07bbf9ee) )      /* tiles */
401
 
        ROM_LOAD( "11.bin", 0x4000, 0x4000, CRC(66bac116) SHA1(ce21a693ad8d7592d21e05d0cb9eabb36e7e8fef) )
402
 
        ROM_LOAD( "13.bin", 0x8000, 0x4000, CRC(623fcec1) SHA1(b3eea37d705e3871dc94e4cf6f2aacc6fbd09216) )
403
 
 
404
 
        ROM_REGION( 0x10000, "gfx3", 0 )
405
 
        ROM_LOAD( "14.bin", 0x04000, 0x4000, CRC(df2345ef) SHA1(3776edebda7bc9c72117f4b764f3bdaec0a632b4) )     /* sprites */
406
 
        ROM_CONTINUE(0x0000,0x4000)
407
 
        ROM_LOAD( "16.bin", 0x0c000, 0x4000, CRC(c106b1ed) SHA1(a16520752fb02e403c93975ecf12b75854d58d69) )
408
 
        ROM_CONTINUE(0x8000,0x4000)
409
 
 
410
 
        // proms not in the set, assumed to be the same
411
 
        ROM_REGION( 0x0a00, "proms", 0 )
412
 
        ROM_LOAD( "sb-5.e8",  0x0000, 0x0100, CRC(93ab8153) SHA1(a792f24e5c0c3c4a6b436102e7a98199f878ece1) )    /* red component */
413
 
        ROM_LOAD( "sb-6.e9",  0x0100, 0x0100, CRC(8ab44f7d) SHA1(f74680a6a987d74b3acb32e6396f20e127874149) )    /* green component */
414
 
        ROM_LOAD( "sb-7.e10", 0x0200, 0x0100, CRC(f4ade9a4) SHA1(62ad31d31d183cce213b03168daa035083b2f28e) )    /* blue component */
415
 
        ROM_LOAD( "sb-0.f1",  0x0300, 0x0100, CRC(6047d91b) SHA1(1ce025f9524c1033e48c5294ee7d360f8bfebe8d) )    /* char lookup table */
416
 
        ROM_LOAD( "sb-4.d6",  0x0400, 0x0100, CRC(4858968d) SHA1(20b5dbcaa1a4081b3139e7e2332d8fe3c9e55ed6) )    /* tile lookup table */
417
 
        ROM_LOAD( "sb-8.k3",  0x0500, 0x0100, CRC(f6fad943) SHA1(b0a24ea7805272e8ebf72a99b08907bc00d5f82f) )    /* sprite lookup table */
418
 
        ROM_LOAD( "sb-2.d1",  0x0600, 0x0100, CRC(8bb8b3df) SHA1(49de2819c4c92057fedcb20425282515d85829aa) )    /* tile palette selector? (not used) */
419
 
        ROM_LOAD( "sb-3.d2",  0x0700, 0x0100, CRC(3b0c99af) SHA1(38f30ac1e48632634e409f328ee3051b987de7ad) )    /* tile palette selector? (not used) */
420
 
        ROM_LOAD( "sb-1.k6",  0x0800, 0x0100, CRC(712ac508) SHA1(5349d722ab6733afdda65f6e0a98322f0d515e86) )    /* interrupt timing (not used) */
421
 
        ROM_LOAD( "sb-9.m11", 0x0900, 0x0100, CRC(4921635c) SHA1(aee37d6cdc36acf0f11ff5f93e7b16e4b12f6c39) )    /* video timing? (not used) */
422
 
ROM_END
423
 
 
424
 
ROM_START( 1942b )
425
 
        ROM_REGION( 0x1c000, "maincpu", 0 )     /* 64k for code + 3*16k for the banked ROMs images */
426
 
        ROM_LOAD( "sr-03.m3", 0x00000, 0x4000, CRC(612975f2) SHA1(f3744335862dd4c53925cc32792badd4a378c837) )
427
 
        ROM_LOAD( "sr-04.m4", 0x04000, 0x4000, CRC(a60ac644) SHA1(f37862db3cf5e6cc9ab3276f3bc45fd629fd70dd) )
428
 
        ROM_LOAD( "sr-05.m5", 0x10000, 0x4000, CRC(835f7b24) SHA1(24b66827f08c43fbf5b9517d638acdfc38e1b1e7) )
429
 
        ROM_LOAD( "sr-06.m6", 0x14000, 0x2000, CRC(821c6481) SHA1(06becb6bf8b4bde3a458098498eecad566a87711) )
430
 
        ROM_LOAD( "sr-07.m7", 0x18000, 0x4000, CRC(5df525e1) SHA1(70cd2910e2945db76bd6ebfa0ff09a5efadc2d0b) )
431
 
 
432
 
        ROM_REGION( 0x10000, "audiocpu", 0 )
433
 
        ROM_LOAD( "sr-01.c11", 0x0000, 0x4000, CRC(bd87f06b) SHA1(821f85cf157f81117eeaba0c3cf0337eac357e58) )
434
 
 
435
 
        ROM_REGION( 0x2000, "gfx1", 0 )
436
 
        ROM_LOAD( "sr-02.f2", 0x0000, 0x2000, CRC(6ebca191) SHA1(0dbddadde54a0ab66994c4a8726be05c6ca88a0e) )    /* characters */
437
 
 
438
 
        ROM_REGION( 0xc000, "gfx2", 0 )
439
 
        ROM_LOAD( "sr-08.a1", 0x0000, 0x2000, CRC(3884d9eb) SHA1(5cbd9215fa5ba5a61208b383700adc4428521aed) )    /* tiles */
440
 
        ROM_LOAD( "sr-09.a2", 0x2000, 0x2000, CRC(999cf6e0) SHA1(5b8b685038ec98b781908b92eb7fb9506db68544) )
441
 
        ROM_LOAD( "sr-10.a3", 0x4000, 0x2000, CRC(8edb273a) SHA1(85fdd4c690ed31e6396e3c16aa02140ee7ea2d61) )
442
 
        ROM_LOAD( "sr-11.a4", 0x6000, 0x2000, CRC(3a2726c3) SHA1(187c92ef591febdcbd1d42ab850e0cbb62c00873) )
443
 
        ROM_LOAD( "sr-12.a5", 0x8000, 0x2000, CRC(1bd3d8bb) SHA1(ef4dce605eb4dc8035985a415315ec61c21419c6) )
444
 
        ROM_LOAD( "sr-13.a6", 0xa000, 0x2000, CRC(658f02c4) SHA1(f087d69e49e38cf3107350cde18fcf85a8fa04f0) )
445
 
 
446
 
        ROM_REGION( 0x10000, "gfx3", 0 )
447
 
        ROM_LOAD( "sr-14.l1", 0x00000, 0x4000, CRC(2528bec6) SHA1(29f7719f18faad6bd1ec6735cc24e69168361470) )   /* sprites */
448
 
        ROM_LOAD( "sr-15.l2", 0x04000, 0x4000, CRC(f89287aa) SHA1(136fff6d2a4f48a488fc7c620213761459c3ada0) )
449
 
        ROM_LOAD( "sr-16.n1", 0x08000, 0x4000, CRC(024418f8) SHA1(145b8d5d6c8654cd090955a98f6dd8c8dbafe7c1) )
450
 
        ROM_LOAD( "sr-17.n2", 0x0c000, 0x4000, CRC(e2c7e489) SHA1(d4b5d575c021f58f6966df189df94e08c5b3621c) )
451
 
 
452
 
        ROM_REGION( 0x0a00, "proms", 0 )
453
 
        ROM_LOAD( "sb-5.e8",  0x0000, 0x0100, CRC(93ab8153) SHA1(a792f24e5c0c3c4a6b436102e7a98199f878ece1) )    /* red component */
454
 
        ROM_LOAD( "sb-6.e9",  0x0100, 0x0100, CRC(8ab44f7d) SHA1(f74680a6a987d74b3acb32e6396f20e127874149) )    /* green component */
455
 
        ROM_LOAD( "sb-7.e10", 0x0200, 0x0100, CRC(f4ade9a4) SHA1(62ad31d31d183cce213b03168daa035083b2f28e) )    /* blue component */
456
 
        ROM_LOAD( "sb-0.f1",  0x0300, 0x0100, CRC(6047d91b) SHA1(1ce025f9524c1033e48c5294ee7d360f8bfebe8d) )    /* char lookup table */
457
 
        ROM_LOAD( "sb-4.d6",  0x0400, 0x0100, CRC(4858968d) SHA1(20b5dbcaa1a4081b3139e7e2332d8fe3c9e55ed6) )    /* tile lookup table */
458
 
        ROM_LOAD( "sb-8.k3",  0x0500, 0x0100, CRC(f6fad943) SHA1(b0a24ea7805272e8ebf72a99b08907bc00d5f82f) )    /* sprite lookup table */
459
 
        ROM_LOAD( "sb-2.d1",  0x0600, 0x0100, CRC(8bb8b3df) SHA1(49de2819c4c92057fedcb20425282515d85829aa) )    /* tile palette selector? (not used) */
460
 
        ROM_LOAD( "sb-3.d2",  0x0700, 0x0100, CRC(3b0c99af) SHA1(38f30ac1e48632634e409f328ee3051b987de7ad) )    /* tile palette selector? (not used) */
461
 
        ROM_LOAD( "sb-1.k6",  0x0800, 0x0100, CRC(712ac508) SHA1(5349d722ab6733afdda65f6e0a98322f0d515e86) )    /* interrupt timing (not used) */
462
 
        ROM_LOAD( "sb-9.m11", 0x0900, 0x0100, CRC(4921635c) SHA1(aee37d6cdc36acf0f11ff5f93e7b16e4b12f6c39) )    /* video timing? (not used) */
463
 
ROM_END
464
 
 
465
 
ROM_START( 1942w )
466
 
        ROM_REGION( 0x1c000, "maincpu", 0 )     /* 64k for code + 3*16k for the banked ROMs images */
467
 
        ROM_LOAD( "sw-03.m3", 0x00000, 0x4000, CRC(afd79770) SHA1(74c7a887fe3d4abfce1dcfec4c75b21ab81adc8c) )
468
 
        ROM_LOAD( "sw-04.m4", 0x04000, 0x4000, CRC(933d9910) SHA1(9c73ef880f56e30a865be959f8bbdbe79c7ef8e2) )
469
 
        ROM_LOAD( "sw-05.m5", 0x10000, 0x4000, CRC(e9a71bb6) SHA1(1f0d52c9282d15f9e4898b3b144ece25d345b71f) )
470
 
        ROM_LOAD( "sw-06.m6", 0x14000, 0x2000, CRC(466f8248) SHA1(2ccc8fc59962d3001fbc10e8d2f20a254a74f251) )   /* matches srb-06.m6 from 1942 (Revision B) */
471
 
        ROM_LOAD( "sw-07.m7", 0x18000, 0x4000, CRC(ec41655e) SHA1(dbe4bb11f2e88574cb43ba5cd216354c3b7f69a6) )
472
 
 
473
 
        ROM_REGION( 0x10000, "audiocpu", 0 )
474
 
        ROM_LOAD( "sr-01.c11", 0x0000, 0x4000, CRC(bd87f06b) SHA1(821f85cf157f81117eeaba0c3cf0337eac357e58) )
475
 
 
476
 
        ROM_REGION( 0x2000, "gfx1", 0 )
477
 
        ROM_LOAD( "sw-02.f2", 0x0000, 0x2000, CRC(f8e9ada2) SHA1(028f554e70425c53faa30a6fe1c45cc16724560a) )    /* characters */
478
 
 
479
 
        ROM_REGION( 0xc000, "gfx2", 0 )
480
 
        ROM_LOAD( "sr-08.a1", 0x0000, 0x2000, CRC(3884d9eb) SHA1(5cbd9215fa5ba5a61208b383700adc4428521aed) )    /* tiles */
481
 
        ROM_LOAD( "sr-09.a2", 0x2000, 0x2000, CRC(999cf6e0) SHA1(5b8b685038ec98b781908b92eb7fb9506db68544) )
482
 
        ROM_LOAD( "sr-10.a3", 0x4000, 0x2000, CRC(8edb273a) SHA1(85fdd4c690ed31e6396e3c16aa02140ee7ea2d61) )
483
 
        ROM_LOAD( "sr-11.a4", 0x6000, 0x2000, CRC(3a2726c3) SHA1(187c92ef591febdcbd1d42ab850e0cbb62c00873) )
484
 
        ROM_LOAD( "sr-12.a5", 0x8000, 0x2000, CRC(1bd3d8bb) SHA1(ef4dce605eb4dc8035985a415315ec61c21419c6) )
485
 
        ROM_LOAD( "sr-13.a6", 0xa000, 0x2000, CRC(658f02c4) SHA1(f087d69e49e38cf3107350cde18fcf85a8fa04f0) )
486
 
 
487
 
        ROM_REGION( 0x10000, "gfx3", 0 )
488
 
        ROM_LOAD( "sr-14.l1", 0x00000, 0x4000, CRC(2528bec6) SHA1(29f7719f18faad6bd1ec6735cc24e69168361470) )   /* sprites */
489
 
        ROM_LOAD( "sr-15.l2", 0x04000, 0x4000, CRC(f89287aa) SHA1(136fff6d2a4f48a488fc7c620213761459c3ada0) )
490
 
        ROM_LOAD( "sr-16.n1", 0x08000, 0x4000, CRC(024418f8) SHA1(145b8d5d6c8654cd090955a98f6dd8c8dbafe7c1) )
491
 
        ROM_LOAD( "sr-17.n2", 0x0c000, 0x4000, CRC(e2c7e489) SHA1(d4b5d575c021f58f6966df189df94e08c5b3621c) )
492
 
 
493
 
        ROM_REGION( 0x0a00, "proms", 0 )
494
 
        ROM_LOAD( "sb-5.e8",  0x0000, 0x0100, CRC(93ab8153) SHA1(a792f24e5c0c3c4a6b436102e7a98199f878ece1) )    /* red component */
495
 
        ROM_LOAD( "sb-6.e9",  0x0100, 0x0100, CRC(8ab44f7d) SHA1(f74680a6a987d74b3acb32e6396f20e127874149) )    /* green component */
496
 
        ROM_LOAD( "sb-7.e10", 0x0200, 0x0100, CRC(f4ade9a4) SHA1(62ad31d31d183cce213b03168daa035083b2f28e) )    /* blue component */
497
 
        ROM_LOAD( "sb-0.f1",  0x0300, 0x0100, CRC(6047d91b) SHA1(1ce025f9524c1033e48c5294ee7d360f8bfebe8d) )    /* char lookup table */
498
 
        ROM_LOAD( "sb-4.d6",  0x0400, 0x0100, CRC(4858968d) SHA1(20b5dbcaa1a4081b3139e7e2332d8fe3c9e55ed6) )    /* tile lookup table */
499
 
        ROM_LOAD( "sb-8.k3",  0x0500, 0x0100, CRC(f6fad943) SHA1(b0a24ea7805272e8ebf72a99b08907bc00d5f82f) )    /* sprite lookup table */
500
 
        ROM_LOAD( "sb-2.d1",  0x0600, 0x0100, CRC(8bb8b3df) SHA1(49de2819c4c92057fedcb20425282515d85829aa) )    /* tile palette selector? (not used) */
501
 
        ROM_LOAD( "sb-3.d2",  0x0700, 0x0100, CRC(3b0c99af) SHA1(38f30ac1e48632634e409f328ee3051b987de7ad) )    /* tile palette selector? (not used) */
502
 
        ROM_LOAD( "sb-1.k6",  0x0800, 0x0100, CRC(712ac508) SHA1(5349d722ab6733afdda65f6e0a98322f0d515e86) )    /* interrupt timing (not used) */
503
 
        ROM_LOAD( "sb-9.m11", 0x0900, 0x0100, CRC(4921635c) SHA1(aee37d6cdc36acf0f11ff5f93e7b16e4b12f6c39) )    /* video timing? (not used) */
504
 
ROM_END
505
 
 
506
 
 
507
 
static DRIVER_INIT( 1942 )
508
 
{
509
 
        UINT8 *ROM = machine.region("maincpu")->base();
510
 
        memory_configure_bank(machine, "bank1", 0, 3, &ROM[0x10000], 0x4000);
511
 
}
512
 
 
513
 
 
514
 
GAME( 1984, 1942,     0,    1942, 1942, 1942, ROT270, "Capcom", "1942 (Revision B)", GAME_SUPPORTS_SAVE )
515
 
GAME( 1984, 1942a,    1942, 1942, 1942, 1942, ROT270, "Capcom", "1942 (Revision A)", GAME_SUPPORTS_SAVE )
516
 
GAME( 1984, 1942abl,  1942, 1942, 1942, 1942, ROT270, "bootleg", "1942 (Revision A, bootleg)", GAME_SUPPORTS_SAVE ) // data is the same as 1942a set, different rom format
517
 
GAME( 1984, 1942b,    1942, 1942, 1942, 1942, ROT270, "Capcom", "1942 (First Version)", GAME_SUPPORTS_SAVE )
518
 
GAME( 1985, 1942w,    1942, 1942, 1942, 1942, ROT270, "Capcom (Williams Electronics license)", "1942 (Williams Electronics license)", GAME_SUPPORTS_SAVE ) /* Based on 1942 (Revision B) */