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

« back to all changes in this revision

Viewing changes to src/mame/drivers/moo.c

  • Committer: Package Import Robot
  • Author(s): Jordi Mallach, Emmanuel Kasper, Jordi Mallach
  • Date: 2012-06-05 20:02:23 UTC
  • mfrom: (0.3.1) (0.1.4)
  • Revision ID: package-import@ubuntu.com-20120605200223-gnlpogjrg6oqe9md
Tags: 0.146-1
[ Emmanuel Kasper ]
* New upstream release
* Drop patch to fix man pages section and patches to link with flac 
  and jpeg system lib: all this has been pushed upstream by Cesare Falco
* Add DM-Upload-Allowed: yes field.

[ Jordi Mallach ]
* Create a "gnu" TARGETOS stanza that defines NO_AFFINITY_NP.
* Stop setting TARGETOS to "unix" in d/rules. It should be autodetected,
  and set to the appropriate value.
* mame_manpage_section.patch: Change mame's manpage section to 6 (games),
  in the TH declaration.

Show diffs side-by-side

added added

removed removed

Lines of Context:
65
65
        "0100110000000"         /* unlock command */
66
66
};
67
67
 
68
 
static READ16_HANDLER( control2_r )
 
68
READ16_MEMBER(moo_state::control2_r)
69
69
{
70
 
        moo_state *state = space->machine().driver_data<moo_state>();
71
 
        return state->m_cur_control2;
 
70
        return m_cur_control2;
72
71
}
73
72
 
74
 
static WRITE16_HANDLER( control2_w )
 
73
WRITE16_MEMBER(moo_state::control2_w)
75
74
{
76
75
        /* bit 0  is data */
77
76
        /* bit 1  is cs (active low) */
81
80
        /* bit 10 is watchdog */
82
81
        /* bit 11 is enable irq 4 (unconfirmed) */
83
82
 
84
 
        moo_state *state = space->machine().driver_data<moo_state>();
85
 
        COMBINE_DATA(&state->m_cur_control2);
 
83
        COMBINE_DATA(&m_cur_control2);
86
84
 
87
 
        input_port_write(space->machine(), "EEPROMOUT", state->m_cur_control2, 0xff);
 
85
        ioport("EEPROMOUT")->write(m_cur_control2, 0xff);
88
86
 
89
87
        if (data & 0x100)
90
 
                k053246_set_objcha_line(state->m_k053246, ASSERT_LINE);
 
88
                k053246_set_objcha_line(m_k053246, ASSERT_LINE);
91
89
        else
92
 
                k053246_set_objcha_line(state->m_k053246, CLEAR_LINE);
 
90
                k053246_set_objcha_line(m_k053246, CLEAR_LINE);
93
91
}
94
92
 
95
93
 
155
153
        device_set_input_line(device, 5, HOLD_LINE);
156
154
}
157
155
 
158
 
static WRITE16_HANDLER( sound_cmd1_w )
 
156
WRITE16_MEMBER(moo_state::sound_cmd1_w)
159
157
{
160
158
        if ((data & 0x00ff0000) == 0)
161
159
        {
162
160
                data &= 0xff;
163
 
                soundlatch_w(space, 0, data);
 
161
                soundlatch_byte_w(space, 0, data);
164
162
        }
165
163
}
166
164
 
167
 
static WRITE16_HANDLER( sound_cmd2_w )
 
165
WRITE16_MEMBER(moo_state::sound_cmd2_w)
168
166
{
169
167
        if ((data & 0x00ff0000) == 0)
170
 
                soundlatch2_w(space, 0, data & 0xff);
171
 
}
172
 
 
173
 
static WRITE16_HANDLER( sound_irq_w )
174
 
{
175
 
        moo_state *state = space->machine().driver_data<moo_state>();
176
 
        device_set_input_line(state->m_audiocpu, 0, HOLD_LINE);
177
 
}
178
 
 
179
 
static READ16_HANDLER( sound_status_r )
180
 
{
181
 
        return soundlatch3_r(space, 0);
182
 
}
183
 
 
184
 
static WRITE8_HANDLER( sound_bankswitch_w )
185
 
{
186
 
        memory_set_bankptr(space->machine(), "bank1", space->machine().region("soundcpu")->base() + 0x10000 + (data&0xf)*0x4000);
 
168
                soundlatch2_byte_w(space, 0, data & 0xff);
 
169
}
 
170
 
 
171
WRITE16_MEMBER(moo_state::sound_irq_w)
 
172
{
 
173
        device_set_input_line(m_audiocpu, 0, HOLD_LINE);
 
174
}
 
175
 
 
176
READ16_MEMBER(moo_state::sound_status_r)
 
177
{
 
178
        return soundlatch3_byte_r(space, 0);
 
179
}
 
180
 
 
181
WRITE8_MEMBER(moo_state::sound_bankswitch_w)
 
182
{
 
183
        membank("bank1")->set_base(machine().root_device().memregion("soundcpu")->base() + 0x10000 + (data&0xf)*0x4000);
187
184
}
188
185
 
189
186
 
191
188
 
192
189
/* the interface with the 053247 is weird. The chip can address only 0x1000 bytes */
193
190
/* of RAM, but they put 0x10000 there. The CPU can access them all. */
194
 
static READ16_HANDLER( K053247_scattered_word_r )
 
191
READ16_MEMBER(moo_state::K053247_scattered_word_r)
195
192
{
196
 
        moo_state *state = space->machine().driver_data<moo_state>();
197
193
 
198
194
        if (offset & 0x0078)
199
 
                return state->m_spriteram[offset];
 
195
                return m_spriteram[offset];
200
196
        else
201
197
        {
202
198
                offset = (offset & 0x0007) | ((offset & 0x7f80) >> 4);
203
 
                return k053247_word_r(state->m_k053246, offset, mem_mask);
 
199
                return k053247_word_r(m_k053246, offset, mem_mask);
204
200
        }
205
201
}
206
202
 
207
 
static WRITE16_HANDLER( K053247_scattered_word_w )
 
203
WRITE16_MEMBER(moo_state::K053247_scattered_word_w)
208
204
{
209
 
        moo_state *state = space->machine().driver_data<moo_state>();
210
205
 
211
206
        if (offset & 0x0078)
212
 
                COMBINE_DATA(state->m_spriteram + offset);
 
207
                COMBINE_DATA(m_spriteram + offset);
213
208
        else
214
209
        {
215
210
                offset = (offset & 0x0007) | ((offset & 0x7f80) >> 4);
216
211
 
217
 
                k053247_word_w(state->m_k053246, offset, data, mem_mask);
 
212
                k053247_word_w(m_k053246, offset, data, mem_mask);
218
213
        }
219
214
}
220
215
 
221
216
#endif
222
217
 
223
218
 
224
 
static WRITE16_HANDLER( moo_prot_w )
 
219
WRITE16_MEMBER(moo_state::moo_prot_w)
225
220
{
226
 
        moo_state *state = space->machine().driver_data<moo_state>();
227
221
        UINT32 src1, src2, dst, length, a, b, res;
228
222
 
229
 
        COMBINE_DATA(&state->m_protram[offset]);
 
223
        COMBINE_DATA(&m_protram[offset]);
230
224
 
231
225
        if (offset == 0xc)      // trigger operation
232
226
        {
233
 
                src1 = (state->m_protram[1] & 0xff) << 16 | state->m_protram[0];
234
 
                src2 = (state->m_protram[3] & 0xff) << 16 | state->m_protram[2];
235
 
                dst = (state->m_protram[5] & 0xff) << 16 | state->m_protram[4];
236
 
                length = state->m_protram[0xf];
 
227
                src1 = (m_protram[1] & 0xff) << 16 | m_protram[0];
 
228
                src2 = (m_protram[3] & 0xff) << 16 | m_protram[2];
 
229
                dst = (m_protram[5] & 0xff) << 16 | m_protram[4];
 
230
                length = m_protram[0xf];
237
231
 
238
232
                while (length)
239
233
                {
240
 
                        a = space->read_word(src1);
241
 
                        b = space->read_word(src2);
 
234
                        a = space.read_word(src1);
 
235
                        b = space.read_word(src2);
242
236
                        res = a + 2 * b;
243
237
 
244
 
                        space->write_word(dst, res);
 
238
                        space.write_word(dst, res);
245
239
 
246
240
                        src1 += 2;
247
241
                        src2 += 2;
259
253
        downcast<okim6295_device *>(device)->set_bank_base((data & 0x0f) * 0x40000);
260
254
}
261
255
 
262
 
static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16 )
 
256
static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16, moo_state )
263
257
        AM_RANGE(0x000000, 0x07ffff) AM_ROM
264
 
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_word_w)
265
 
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053246_word_w)
 
258
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE_LEGACY("k056832", k056832_word_w)
 
259
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE_LEGACY("k053246", k053246_word_w)
266
260
 
267
 
        AM_RANGE(0x0c4000, 0x0c4001) AM_DEVREAD("k053246", k053246_word_r)
268
 
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVWRITE("k054338", k054338_word_w)             /* K054338 alpha blending engine */
269
 
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVWRITE("k053251", k053251_lsb_w)
 
261
        AM_RANGE(0x0c4000, 0x0c4001) AM_DEVREAD_LEGACY("k053246", k053246_word_r)
 
262
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVWRITE_LEGACY("k054338", k054338_word_w)              /* K054338 alpha blending engine */
 
263
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVWRITE_LEGACY("k053251", k053251_lsb_w)
270
264
        AM_RANGE(0x0ce000, 0x0ce01f) AM_WRITE(moo_prot_w)
271
 
        AM_RANGE(0x0d0000, 0x0d001f) AM_DEVREADWRITE8("k053252",k053252_r,k053252_w,0x00ff)                                     /* CCU regs (ignored) */
 
265
        AM_RANGE(0x0d0000, 0x0d001f) AM_DEVREADWRITE8_LEGACY("k053252",k053252_r,k053252_w,0x00ff)                                      /* CCU regs (ignored) */
272
266
        AM_RANGE(0x0d4000, 0x0d4001) AM_WRITE(sound_irq_w)
273
267
        AM_RANGE(0x0d600c, 0x0d600d) AM_WRITE(sound_cmd1_w)
274
268
        AM_RANGE(0x0d600e, 0x0d600f) AM_WRITE(sound_cmd2_w)
275
269
        AM_RANGE(0x0d6014, 0x0d6015) AM_READ(sound_status_r)
276
270
        AM_RANGE(0x0d6000, 0x0d601f) AM_RAM                                                     /* sound regs fall through */
277
 
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVWRITE("k056832", k056832_b_word_w)           /* VSCCS regs */
 
271
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVWRITE_LEGACY("k056832", k056832_b_word_w)            /* VSCCS regs */
278
272
        AM_RANGE(0x0da000, 0x0da001) AM_READ_PORT("P1_P3")
279
273
        AM_RANGE(0x0da002, 0x0da003) AM_READ_PORT("P2_P4")
280
274
        AM_RANGE(0x0dc000, 0x0dc001) AM_READ_PORT("IN0")
281
275
        AM_RANGE(0x0dc002, 0x0dc003) AM_READ_PORT("IN1")
282
276
        AM_RANGE(0x0de000, 0x0de001) AM_READWRITE(control2_r, control2_w)
283
277
        AM_RANGE(0x100000, 0x17ffff) AM_ROM
284
 
        AM_RANGE(0x180000, 0x18ffff) AM_RAM     AM_BASE_MEMBER(moo_state, m_workram)            /* Work RAM */
285
 
        AM_RANGE(0x190000, 0x19ffff) AM_RAM AM_BASE_MEMBER(moo_state, m_spriteram)      /* Sprite RAM */
286
 
        AM_RANGE(0x1a0000, 0x1a1fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes */
287
 
        AM_RANGE(0x1a2000, 0x1a3fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes mirror */
288
 
        AM_RANGE(0x1b0000, 0x1b1fff) AM_DEVREAD("k056832", k056832_rom_word_r)  /* Passthrough to tile roms */
289
 
        AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(paletteram16_xrgb_word_be_w) AM_BASE_GENERIC(paletteram)
 
278
        AM_RANGE(0x180000, 0x18ffff) AM_RAM     AM_SHARE("workram")             /* Work RAM */
 
279
        AM_RANGE(0x190000, 0x19ffff) AM_RAM AM_SHARE("spriteram")       /* Sprite RAM */
 
280
        AM_RANGE(0x1a0000, 0x1a1fff) AM_DEVREADWRITE_LEGACY("k056832", k056832_ram_word_r, k056832_ram_word_w)  /* Graphic planes */
 
281
        AM_RANGE(0x1a2000, 0x1a3fff) AM_DEVREADWRITE_LEGACY("k056832", k056832_ram_word_r, k056832_ram_word_w)  /* Graphic planes mirror */
 
282
        AM_RANGE(0x1b0000, 0x1b1fff) AM_DEVREAD_LEGACY("k056832", k056832_rom_word_r)   /* Passthrough to tile roms */
 
283
        AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(paletteram_xrgb_word_be_w) AM_SHARE("paletteram")
290
284
#if MOO_DEBUG
291
 
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVREAD("k056832", k056832_word_r)
292
 
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVREAD("k053246", k053246_reg_word_r)
293
 
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVREAD("k054338", k054338_word_r)
294
 
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVREAD("k053251", k053251_lsb_r)
295
 
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVREAD("k056832", k056832_b_word_r)
 
285
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVREAD_LEGACY("k056832", k056832_word_r)
 
286
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVREAD_LEGACY("k053246", k053246_reg_word_r)
 
287
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVREAD_LEGACY("k054338", k054338_word_r)
 
288
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVREAD_LEGACY("k053251", k053251_lsb_r)
 
289
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVREAD_LEGACY("k056832", k056832_b_word_r)
296
290
#endif
297
291
ADDRESS_MAP_END
298
292
 
299
 
static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16 )
 
293
static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16, moo_state )
300
294
        AM_RANGE(0x000000, 0x07ffff) AM_ROM
301
 
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_word_w)
302
 
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053246_word_w)
 
295
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE_LEGACY("k056832", k056832_word_w)
 
296
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE_LEGACY("k053246", k053246_word_w)
303
297
        AM_RANGE(0x0c2f00, 0x0c2f01) AM_READNOP                                         /* heck if I know, but it's polled constantly */
304
 
        AM_RANGE(0x0c4000, 0x0c4001) AM_DEVREAD("k053246", k053246_word_r)
305
 
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVWRITE("k054338", k054338_word_w)       /* K054338 alpha blending engine */
306
 
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVWRITE("k053251", k053251_lsb_w)
 
298
        AM_RANGE(0x0c4000, 0x0c4001) AM_DEVREAD_LEGACY("k053246", k053246_word_r)
 
299
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVWRITE_LEGACY("k054338", k054338_word_w)       /* K054338 alpha blending engine */
 
300
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVWRITE_LEGACY("k053251", k053251_lsb_w)
307
301
        AM_RANGE(0x0d0000, 0x0d001f) AM_WRITEONLY                           /* CCU regs (ignored) */
308
 
        AM_RANGE(0x0d6ffc, 0x0d6ffd) AM_DEVWRITE("oki", moobl_oki_bank_w)
309
 
        AM_RANGE(0x0d6ffe, 0x0d6fff) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff)
310
 
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVWRITE("k056832", k056832_b_word_w)     /* VSCCS regs */
 
302
        AM_RANGE(0x0d6ffc, 0x0d6ffd) AM_DEVWRITE_LEGACY("oki", moobl_oki_bank_w)
 
303
        AM_RANGE(0x0d6ffe, 0x0d6fff) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
 
304
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVWRITE_LEGACY("k056832", k056832_b_word_w)     /* VSCCS regs */
311
305
        AM_RANGE(0x0da000, 0x0da001) AM_READ_PORT("P1_P3")
312
306
        AM_RANGE(0x0da002, 0x0da003) AM_READ_PORT("P2_P4")
313
307
        AM_RANGE(0x0dc000, 0x0dc001) AM_READ_PORT("IN0")
314
308
        AM_RANGE(0x0dc002, 0x0dc003) AM_READ_PORT("IN1")
315
309
        AM_RANGE(0x0de000, 0x0de001) AM_READWRITE(control2_r, control2_w)
316
310
        AM_RANGE(0x100000, 0x17ffff) AM_ROM
317
 
        AM_RANGE(0x180000, 0x18ffff) AM_RAM AM_BASE_MEMBER(moo_state, m_workram)                 /* Work RAM */
318
 
        AM_RANGE(0x190000, 0x19ffff) AM_RAM AM_BASE_MEMBER(moo_state, m_spriteram)       /* Sprite RAM */
319
 
        AM_RANGE(0x1a0000, 0x1a1fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes */
320
 
        AM_RANGE(0x1a2000, 0x1a3fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes mirror */
321
 
        AM_RANGE(0x1b0000, 0x1b1fff) AM_DEVREAD("k056832", k056832_rom_word_r)  /* Passthrough to tile roms */
322
 
        AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(paletteram16_xrgb_word_be_w) AM_BASE_GENERIC(paletteram)
 
311
        AM_RANGE(0x180000, 0x18ffff) AM_RAM AM_SHARE("workram")          /* Work RAM */
 
312
        AM_RANGE(0x190000, 0x19ffff) AM_RAM AM_SHARE("spriteram")        /* Sprite RAM */
 
313
        AM_RANGE(0x1a0000, 0x1a1fff) AM_DEVREADWRITE_LEGACY("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes */
 
314
        AM_RANGE(0x1a2000, 0x1a3fff) AM_DEVREADWRITE_LEGACY("k056832", k056832_ram_word_r, k056832_ram_word_w)  /* Graphic planes mirror */
 
315
        AM_RANGE(0x1b0000, 0x1b1fff) AM_DEVREAD_LEGACY("k056832", k056832_rom_word_r)   /* Passthrough to tile roms */
 
316
        AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(paletteram_xrgb_word_be_w) AM_SHARE("paletteram")
323
317
ADDRESS_MAP_END
324
318
 
325
 
static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16 )
 
319
static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16, moo_state )
326
320
        AM_RANGE(0x000000, 0x07ffff) AM_ROM
327
321
        AM_RANGE(0x080000, 0x08ffff) AM_RAM
328
 
        AM_RANGE(0x090000, 0x09ffff) AM_RAM AM_BASE_MEMBER(moo_state, m_spriteram)      /* Sprite RAM */
 
322
        AM_RANGE(0x090000, 0x09ffff) AM_RAM AM_SHARE("spriteram")       /* Sprite RAM */
329
323
        AM_RANGE(0x0a0000, 0x0affff) AM_RAM                                                     /* extra sprite RAM? */
330
 
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_word_w)
331
 
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053246_word_w)
332
 
        AM_RANGE(0x0c4000, 0x0c4001) AM_DEVREAD("k053246", k053246_word_r)
333
 
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVWRITE("k054338", k054338_word_w)             /* K054338 alpha blending engine */
334
 
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVWRITE("k053251", k053251_lsb_w)
 
324
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE_LEGACY("k056832", k056832_word_w)
 
325
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE_LEGACY("k053246", k053246_word_w)
 
326
        AM_RANGE(0x0c4000, 0x0c4001) AM_DEVREAD_LEGACY("k053246", k053246_word_r)
 
327
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVWRITE_LEGACY("k054338", k054338_word_w)              /* K054338 alpha blending engine */
 
328
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVWRITE_LEGACY("k053251", k053251_lsb_w)
335
329
        AM_RANGE(0x0ce000, 0x0ce01f) AM_WRITE(moo_prot_w)
336
 
        AM_RANGE(0x0d0000, 0x0d001f) AM_DEVREADWRITE8("k053252",k053252_r,k053252_w,0x00ff)                                     /* CCU regs (ignored) */
337
 
        AM_RANGE(0x0d2000, 0x0d20ff) AM_DEVREADWRITE("k054000", k054000_lsb_r, k054000_lsb_w)
 
330
        AM_RANGE(0x0d0000, 0x0d001f) AM_DEVREADWRITE8_LEGACY("k053252",k053252_r,k053252_w,0x00ff)                                      /* CCU regs (ignored) */
 
331
        AM_RANGE(0x0d2000, 0x0d20ff) AM_DEVREADWRITE_LEGACY("k054000", k054000_lsb_r, k054000_lsb_w)
338
332
        AM_RANGE(0x0d4000, 0x0d4001) AM_WRITE(sound_irq_w)
339
333
        AM_RANGE(0x0d600c, 0x0d600d) AM_WRITE(sound_cmd1_w)
340
334
        AM_RANGE(0x0d600e, 0x0d600f) AM_WRITE(sound_cmd2_w)
341
335
        AM_RANGE(0x0d6014, 0x0d6015) AM_READ(sound_status_r)
342
336
        AM_RANGE(0x0d6000, 0x0d601f) AM_RAM                                                     /* sound regs fall through */
343
 
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVWRITE("k056832", k056832_b_word_w)           /* VSCCS regs */
 
337
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVWRITE_LEGACY("k056832", k056832_b_word_w)            /* VSCCS regs */
344
338
        AM_RANGE(0x0da000, 0x0da001) AM_READ_PORT("P1_P3")
345
339
        AM_RANGE(0x0da002, 0x0da003) AM_READ_PORT("P2_P4")
346
340
        AM_RANGE(0x0dc000, 0x0dc001) AM_READ_PORT("IN0")
347
341
        AM_RANGE(0x0dc002, 0x0dc003) AM_READ_PORT("IN1")
348
342
        AM_RANGE(0x0de000, 0x0de001) AM_READWRITE(control2_r, control2_w)
349
 
        AM_RANGE(0x180000, 0x181fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes */
350
 
        AM_RANGE(0x182000, 0x183fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) /* Graphic planes mirror */
 
343
        AM_RANGE(0x180000, 0x181fff) AM_DEVREADWRITE_LEGACY("k056832", k056832_ram_word_r, k056832_ram_word_w)  /* Graphic planes */
 
344
        AM_RANGE(0x182000, 0x183fff) AM_DEVREADWRITE_LEGACY("k056832", k056832_ram_word_r, k056832_ram_word_w)  /* Graphic planes mirror */
351
345
        AM_RANGE(0x184000, 0x187fff) AM_RAM                                                     /* extra tile RAM? */
352
 
        AM_RANGE(0x190000, 0x191fff) AM_DEVREAD("k056832", k056832_rom_word_r)  /* Passthrough to tile roms */
353
 
        AM_RANGE(0x1b0000, 0x1b3fff) AM_RAM_WRITE(paletteram16_xrgb_word_be_w) AM_BASE_GENERIC(paletteram)
 
346
        AM_RANGE(0x190000, 0x191fff) AM_DEVREAD_LEGACY("k056832", k056832_rom_word_r)   /* Passthrough to tile roms */
 
347
        AM_RANGE(0x1b0000, 0x1b3fff) AM_RAM_WRITE(paletteram_xrgb_word_be_w) AM_SHARE("paletteram")
354
348
        AM_RANGE(0x200000, 0x23ffff) AM_ROM                                                     /* data */
355
349
#if MOO_DEBUG
356
 
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVREAD("k056832", k056832_word_r)
357
 
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVREAD("k053246", k053246_reg_word_r)
358
 
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVREAD("k054338", k054338_word_r)
359
 
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVREAD("k053251", k053251_lsb_r)
360
 
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVREAD("k056832", k056832_b_word_r)
 
350
        AM_RANGE(0x0c0000, 0x0c003f) AM_DEVREAD_LEGACY("k056832", k056832_word_r)
 
351
        AM_RANGE(0x0c2000, 0x0c2007) AM_DEVREAD_LEGACY("k053246", k053246_reg_word_r)
 
352
        AM_RANGE(0x0ca000, 0x0ca01f) AM_DEVREAD_LEGACY("k054338", k054338_word_r)
 
353
        AM_RANGE(0x0cc000, 0x0cc01f) AM_DEVREAD_LEGACY("k053251", k053251_lsb_r)
 
354
        AM_RANGE(0x0d8000, 0x0d8007) AM_DEVREAD_LEGACY("k056832", k056832_b_word_r)
361
355
#endif
362
356
ADDRESS_MAP_END
363
357
 
364
 
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 )
 
358
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, moo_state )
365
359
        AM_RANGE(0x0000, 0x7fff) AM_ROM
366
360
        AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
367
361
        AM_RANGE(0xc000, 0xdfff) AM_RAM
368
 
        AM_RANGE(0xe000, 0xe22f) AM_DEVREADWRITE("k054539", k054539_r,k054539_w)
369
 
        AM_RANGE(0xec00, 0xec01) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w)
370
 
        AM_RANGE(0xf000, 0xf000) AM_WRITE(soundlatch3_w)
371
 
        AM_RANGE(0xf002, 0xf002) AM_READ(soundlatch_r)
372
 
        AM_RANGE(0xf003, 0xf003) AM_READ(soundlatch2_r)
 
362
        AM_RANGE(0xe000, 0xe22f) AM_DEVREADWRITE("k054539", k054539_device, read, write)
 
363
        AM_RANGE(0xec00, 0xec01) AM_DEVREADWRITE_LEGACY("ymsnd", ym2151_r,ym2151_w)
 
364
        AM_RANGE(0xf000, 0xf000) AM_WRITE(soundlatch3_byte_w)
 
365
        AM_RANGE(0xf002, 0xf002) AM_READ(soundlatch_byte_r)
 
366
        AM_RANGE(0xf003, 0xf003) AM_READ(soundlatch2_byte_r)
373
367
        AM_RANGE(0xf800, 0xf800) AM_WRITE(sound_bankswitch_w)
374
368
ADDRESS_MAP_END
375
369
 
515
509
        40, 16
516
510
};
517
511
 
 
512
static k054539_interface k054539_config;
 
513
 
518
514
static MACHINE_CONFIG_START( moo, moo_state )
519
515
 
520
516
        /* basic machine hardware */
558
554
        MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
559
555
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
560
556
 
561
 
        MCFG_SOUND_ADD("k054539", K054539, 48000)
 
557
        MCFG_K054539_ADD("k054539", 48000, k054539_config)
562
558
        MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
563
559
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
564
560
MACHINE_CONFIG_END
617
613
MACHINE_CONFIG_END
618
614
 
619
615
 
620
 
 
621
 
ROM_START( moomesa ) /* Version EA - Euro Ver A */
622
 
        ROM_REGION( 0x180000, "maincpu", 0 )
623
 
        /* main program */
624
 
        ROM_LOAD16_BYTE( "151_b01",    0x000000,  0x40000, CRC(fb2fa298) SHA1(f03b24681a2b329ba797fd2780ac9a3cf862ebcb) )
625
 
        ROM_LOAD16_BYTE( "151_ea_b02", 0x000001,  0x40000, CRC(37b30c01) SHA1(cb91739097a4a36f8f8d92998d822ffc851e1279) )
626
 
 
627
 
        /* data */
628
 
        ROM_LOAD16_BYTE( "151a03", 0x100000,  0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
629
 
        ROM_LOAD16_BYTE( "151a04", 0x100001,  0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
630
 
 
631
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
632
 
        /* Z80 sound program */
633
 
        ROM_LOAD( "151a07", 0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
634
 
        ROM_RELOAD(         0x010000, 0x040000 )
635
 
 
636
 
        ROM_REGION( 0x200000, "gfx1", 0 )
637
 
        /* tilemaps */
638
 
        ROM_LOAD( "151a05", 0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
639
 
        ROM_LOAD( "151a06", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
640
 
 
641
 
        ROM_REGION( 0x800000, "gfx2", 0 )
642
 
        /* sprites */
643
 
        ROM_LOAD( "151a10", 0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
644
 
        ROM_LOAD( "151a11", 0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
645
 
        ROM_LOAD( "151a12", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
646
 
        ROM_LOAD( "151a13", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
647
 
 
648
 
        ROM_REGION( 0x200000, "k054539", 0 )
649
 
        /* K054539 samples */
650
 
        ROM_LOAD( "151a08", 0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
651
 
 
652
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
653
 
        ROM_LOAD( "moo.nv", 0x0000, 0x080, CRC(7bd904a8) SHA1(8747c5c62d1832e290be8ace73c61b1f228c0bec) )
654
 
ROM_END
655
 
 
656
 
ROM_START( moomesau ) /* Version UA - USA Ver A */
657
 
        ROM_REGION( 0x180000, "maincpu", 0 )
658
 
        /* main program */
659
 
        ROM_LOAD16_BYTE( "151_c01",    0x000000,  0x40000, CRC(10555732) SHA1(b67cb756c250ddd6f3291683b3f3449e13a2ee83) ) /* Version UAC? */
660
 
        ROM_LOAD16_BYTE( "151_ua_c02", 0x000001,  0x40000, CRC(52ae87b0) SHA1(552d41a2ddd040f92c6a3cfdc07f9d6e751ac9c1) )
661
 
 
662
 
        /* data */
663
 
        ROM_LOAD16_BYTE( "151a03", 0x100000,  0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
664
 
        ROM_LOAD16_BYTE( "151a04", 0x100001,  0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
665
 
 
666
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
667
 
        /* Z80 sound program */
668
 
        ROM_LOAD( "151a07", 0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
669
 
        ROM_RELOAD(         0x010000, 0x040000 )
670
 
 
671
 
        ROM_REGION( 0x200000, "gfx1", 0 )
672
 
        /* tilemaps */
673
 
        ROM_LOAD( "151a05", 0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
674
 
        ROM_LOAD( "151a06", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
675
 
 
676
 
        ROM_REGION( 0x800000, "gfx2", 0 )
677
 
        /* sprites */
678
 
        ROM_LOAD( "151a10", 0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
679
 
        ROM_LOAD( "151a11", 0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
680
 
        ROM_LOAD( "151a12", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
681
 
        ROM_LOAD( "151a13", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
682
 
 
683
 
        ROM_REGION( 0x200000, "k054539", 0 )
684
 
        /* K054539 samples */
685
 
        ROM_LOAD( "151a08", 0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
686
 
 
687
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
688
 
        ROM_LOAD( "moou.nv", 0x0000, 0x080, CRC(a5cb137a) SHA1(119df859d6b5c366481305b1433eea0deadc3fa9) )
689
 
ROM_END
690
 
 
691
 
ROM_START( moomesaua ) /* Version UA - USA Ver A */
692
 
        ROM_REGION( 0x180000, "maincpu", 0 )
693
 
        /* main program */
694
 
        ROM_LOAD16_BYTE( "151_b01",    0x000000,  0x40000, CRC(fb2fa298) SHA1(f03b24681a2b329ba797fd2780ac9a3cf862ebcb) ) /* Version UAB? */
695
 
        ROM_LOAD16_BYTE( "151_ua_b02", 0x000001,  0x40000, CRC(3d9f4d59) SHA1(db47044bd4935fce94ec659242c9819c30eb6d0f) )
696
 
 
697
 
        /* data */
698
 
        ROM_LOAD16_BYTE( "151a03", 0x100000,  0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
699
 
        ROM_LOAD16_BYTE( "151a04", 0x100001,  0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
700
 
 
701
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
702
 
        /* Z80 sound program */
703
 
        ROM_LOAD( "151a07", 0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
704
 
        ROM_RELOAD(         0x010000, 0x040000 )
705
 
 
706
 
        ROM_REGION( 0x200000, "gfx1", 0 )
707
 
        /* tilemaps */
708
 
        ROM_LOAD( "151a05", 0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
709
 
        ROM_LOAD( "151a06", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
710
 
 
711
 
        ROM_REGION( 0x800000, "gfx2", 0 )
712
 
        /* sprites */
713
 
        ROM_LOAD( "151a10", 0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
714
 
        ROM_LOAD( "151a11", 0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
715
 
        ROM_LOAD( "151a12", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
716
 
        ROM_LOAD( "151a13", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
717
 
 
718
 
        ROM_REGION( 0x200000, "k054539", 0 )
719
 
        /* K054539 samples */
720
 
        ROM_LOAD( "151a08", 0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
721
 
 
722
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
723
 
        ROM_LOAD( "moou.nv", 0x0000, 0x080, CRC(a5cb137a) SHA1(119df859d6b5c366481305b1433eea0deadc3fa9) )
724
 
ROM_END
725
 
 
726
 
ROM_START( moomesaa ) /* Version AA - Asia Ver A */
727
 
        ROM_REGION( 0x180000, "maincpu", 0 )
728
 
        /* main program */
729
 
        ROM_LOAD16_BYTE( "151_b01",    0x000000,  0x40000, CRC(fb2fa298) SHA1(f03b24681a2b329ba797fd2780ac9a3cf862ebcb) )
730
 
        ROM_LOAD16_BYTE( "151_ua_b02", 0x000001,  0x40000, CRC(2162d593) SHA1(a6cfe4a57b3f22b2aa0f04f91acefe3b7bea9e76) )
731
 
 
732
 
        /* data */
733
 
        ROM_LOAD16_BYTE( "151a03", 0x100000,  0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
734
 
        ROM_LOAD16_BYTE( "151a04", 0x100001,  0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
735
 
 
736
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
737
 
        /* Z80 sound program */
738
 
        ROM_LOAD( "151a07", 0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
739
 
        ROM_RELOAD(         0x010000, 0x040000 )
740
 
 
741
 
        ROM_REGION( 0x200000, "gfx1", 0 )
742
 
        /* tilemaps */
743
 
        ROM_LOAD( "151a05", 0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
744
 
        ROM_LOAD( "151a06", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
745
 
 
746
 
        ROM_REGION( 0x800000, "gfx2", 0 )
747
 
        /* sprites */
748
 
        ROM_LOAD( "151a10", 0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
749
 
        ROM_LOAD( "151a11", 0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
750
 
        ROM_LOAD( "151a12", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
751
 
        ROM_LOAD( "151a13", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
752
 
 
753
 
        ROM_REGION( 0x200000, "k054539", 0 )
754
 
        /* K054539 samples */
755
 
        ROM_LOAD( "151a08", 0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
756
 
 
757
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
758
 
        ROM_LOAD( "moo.nv", 0x0000, 0x080, CRC(7bd904a8) SHA1(8747c5c62d1832e290be8ace73c61b1f228c0bec) )
759
 
ROM_END
760
 
 
761
 
ROM_START( bucky )
762
 
        ROM_REGION( 0x240000, "maincpu", 0 )
763
 
        /* main program */
764
 
        ROM_LOAD16_BYTE( "173_ea_b01.q5", 0x000000,  0x40000, CRC(7785ac8a) SHA1(ef78d14f54d3a0b724b9702a18c67891e2d366a7) )
765
 
        ROM_LOAD16_BYTE( "173_ea_b02.q6", 0x000001,  0x40000, CRC(9b45f122) SHA1(325af1612e6f90ef9ae9353c43dc645be1f3465c) )
766
 
 
767
 
        /* data */
768
 
        ROM_LOAD16_BYTE( "t5", 0x200000,  0x20000, CRC(cd724026) SHA1(525445499604b713da4d8bc0a88e428654ceab95) )
769
 
        ROM_LOAD16_BYTE( "t6", 0x200001,  0x20000, CRC(7dd54d6f) SHA1(b0ee8ec445b92254bca881eefd4449972fed506a) )
770
 
 
771
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
772
 
        /* Z80 sound program */
773
 
        ROM_LOAD("173.a07", 0x000000, 0x40000, CRC(4cdaee71) SHA1(bdc05d4475415f6fac65d7cdbc48df398e57845e) )
774
 
        ROM_RELOAD(         0x010000, 0x040000 )
775
 
 
776
 
        ROM_REGION( 0x200000, "gfx1", 0 )
777
 
        /* tilemaps */
778
 
        ROM_LOAD( "173a05.t8",  0x000000, 0x100000, CRC(d14333b4) SHA1(d1a15ead2d156e1fceca0bf202ab3962411caf11) )
779
 
        ROM_LOAD( "173a06.t10", 0x100000, 0x100000, CRC(6541a34f) SHA1(15cf481498e3b7e0b2f7bfe5434121cc3bd65662) )
780
 
 
781
 
        ROM_REGION( 0x800000, "gfx2", 0 )
782
 
        /* sprites */
783
 
        ROM_LOAD( "173a10.b8",  0x000000, 0x200000, CRC(42fb0a0c) SHA1(d68c932cfabdec7896698b433525fe47ef4698d0) )
784
 
        ROM_LOAD( "173a11.a8",  0x200000, 0x200000, CRC(b0d747c4) SHA1(0cf1ee1b9a35ded31a81c321df2a076f7b588971) )
785
 
        ROM_LOAD( "173a12.b10", 0x400000, 0x200000, CRC(0fc2ad24) SHA1(6eda1043ee1266b8ba938a03a90bc7787210a936) )
786
 
        ROM_LOAD( "173a13.a10", 0x600000, 0x200000, CRC(4cf85439) SHA1(8c298bf0e659a830a1830a1180f4ce71215ade45) )
787
 
 
788
 
        ROM_REGION( 0x400000, "k054539", 0 )
789
 
        /* K054539 samples */
790
 
        ROM_LOAD("173a08.b6", 0x000000, 0x200000, CRC(dcdded95) SHA1(8eeb546a0b60a35a6dce36c5ee872e6c93c577c9) )
791
 
        ROM_LOAD("173a09.a6", 0x200000, 0x200000, CRC(c93697c4) SHA1(0528a604868267a30d281b822c187df118566691) )
792
 
 
793
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
794
 
        ROM_LOAD( "bucky.nv", 0x0000, 0x080, CRC(6a5986f3) SHA1(3efddeed261b09031c582e12318f00c2cbb214ea) )
795
 
ROM_END
796
 
 
797
 
ROM_START( buckyua )
798
 
        ROM_REGION( 0x240000, "maincpu", 0 )
799
 
        /* main program */
800
 
        ROM_LOAD16_BYTE( "173_ua_b01.q5", 0x000000,  0x40000, CRC(dcaecca0) SHA1(c41847c9d89cdaf7cfa81ad9cc018c32592a882f) )
801
 
        ROM_LOAD16_BYTE( "173_ua_b02.q6", 0x000001,  0x40000, CRC(e3c856a6) SHA1(33cc8a29643e44b31ee280015c0c994bed72a0e3) )
802
 
 
803
 
        /* data */
804
 
        ROM_LOAD16_BYTE( "t5", 0x200000,  0x20000, CRC(cd724026) SHA1(525445499604b713da4d8bc0a88e428654ceab95) )
805
 
        ROM_LOAD16_BYTE( "t6", 0x200001,  0x20000, CRC(7dd54d6f) SHA1(b0ee8ec445b92254bca881eefd4449972fed506a) )
806
 
 
807
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
808
 
        /* Z80 sound program */
809
 
        ROM_LOAD("173.a07", 0x000000, 0x40000, CRC(4cdaee71) SHA1(bdc05d4475415f6fac65d7cdbc48df398e57845e) )
810
 
        ROM_RELOAD(         0x010000, 0x040000 )
811
 
 
812
 
        ROM_REGION( 0x200000, "gfx1", 0 )
813
 
        /* tilemaps */
814
 
        ROM_LOAD( "173a05.t8",  0x000000, 0x100000, CRC(d14333b4) SHA1(d1a15ead2d156e1fceca0bf202ab3962411caf11) )
815
 
        ROM_LOAD( "173a06.t10", 0x100000, 0x100000, CRC(6541a34f) SHA1(15cf481498e3b7e0b2f7bfe5434121cc3bd65662) )
816
 
 
817
 
        ROM_REGION( 0x800000, "gfx2", 0 )
818
 
        /* sprites */
819
 
        ROM_LOAD( "173a10.b8",  0x000000, 0x200000, CRC(42fb0a0c) SHA1(d68c932cfabdec7896698b433525fe47ef4698d0) )
820
 
        ROM_LOAD( "173a11.a8",  0x200000, 0x200000, CRC(b0d747c4) SHA1(0cf1ee1b9a35ded31a81c321df2a076f7b588971) )
821
 
        ROM_LOAD( "173a12.b10", 0x400000, 0x200000, CRC(0fc2ad24) SHA1(6eda1043ee1266b8ba938a03a90bc7787210a936) )
822
 
        ROM_LOAD( "173a13.a10", 0x600000, 0x200000, CRC(4cf85439) SHA1(8c298bf0e659a830a1830a1180f4ce71215ade45) )
823
 
 
824
 
        ROM_REGION( 0x400000, "k054539", 0 )
825
 
        /* K054539 samples */
826
 
        ROM_LOAD("173a08.b6", 0x000000, 0x200000, CRC(dcdded95) SHA1(8eeb546a0b60a35a6dce36c5ee872e6c93c577c9) )
827
 
        ROM_LOAD("173a09.a6", 0x200000, 0x200000, CRC(c93697c4) SHA1(0528a604868267a30d281b822c187df118566691) )
828
 
 
829
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
830
 
        ROM_LOAD( "buckyu.nv", 0x0000, 0x080, CRC(a5cb137a) SHA1(119df859d6b5c366481305b1433eea0deadc3fa9) )
831
 
ROM_END
832
 
 
833
 
ROM_START( buckyaa )
834
 
        ROM_REGION( 0x240000, "maincpu", 0 )
835
 
        /* main program */
836
 
        ROM_LOAD16_BYTE( "173_aa_b01.q5", 0x000000,  0x40000, CRC(9193e89f) SHA1(574d6eb4097cd10c3dea99060ee09f220d41f1dc) )
837
 
        ROM_LOAD16_BYTE( "173_aa_b02.q6", 0x000001,  0x40000, CRC(2567f3eb) SHA1(ccdb2a4b3ad1464f70d1442df8a3a7a7e34f6cd7) )
838
 
 
839
 
        /* data */
840
 
        ROM_LOAD16_BYTE( "t5", 0x200000,  0x20000, CRC(cd724026) SHA1(525445499604b713da4d8bc0a88e428654ceab95) )
841
 
        ROM_LOAD16_BYTE( "t6", 0x200001,  0x20000, CRC(7dd54d6f) SHA1(b0ee8ec445b92254bca881eefd4449972fed506a) )
842
 
 
843
 
        ROM_REGION( 0x050000, "soundcpu", 0 )
844
 
        /* Z80 sound program */
845
 
        ROM_LOAD("173.a07", 0x000000, 0x40000, CRC(4cdaee71) SHA1(bdc05d4475415f6fac65d7cdbc48df398e57845e) )
846
 
        ROM_RELOAD(         0x010000, 0x040000 )
847
 
 
848
 
        ROM_REGION( 0x200000, "gfx1", 0 )
849
 
        /* tilemaps */
850
 
        ROM_LOAD( "173a05.t8",  0x000000, 0x100000, CRC(d14333b4) SHA1(d1a15ead2d156e1fceca0bf202ab3962411caf11) )
851
 
        ROM_LOAD( "173a06.t10", 0x100000, 0x100000, CRC(6541a34f) SHA1(15cf481498e3b7e0b2f7bfe5434121cc3bd65662) )
852
 
 
853
 
        ROM_REGION( 0x800000, "gfx2", 0 )
854
 
        /* sprites */
855
 
        ROM_LOAD( "173a10.b8",  0x000000, 0x200000, CRC(42fb0a0c) SHA1(d68c932cfabdec7896698b433525fe47ef4698d0) )
856
 
        ROM_LOAD( "173a11.a8",  0x200000, 0x200000, CRC(b0d747c4) SHA1(0cf1ee1b9a35ded31a81c321df2a076f7b588971) )
857
 
        ROM_LOAD( "173a12.b10", 0x400000, 0x200000, CRC(0fc2ad24) SHA1(6eda1043ee1266b8ba938a03a90bc7787210a936) )
858
 
        ROM_LOAD(        "173a13.a10", 0x600000, 0x200000, CRC(4cf85439) SHA1(8c298bf0e659a830a1830a1180f4ce71215ade45) )
859
 
 
860
 
        ROM_REGION( 0x400000, "k054539", 0 )
861
 
        /* K054539 samples */
862
 
        ROM_LOAD("173a08.b6", 0x000000, 0x200000, CRC(dcdded95) SHA1(8eeb546a0b60a35a6dce36c5ee872e6c93c577c9) )
863
 
        ROM_LOAD("173a09.a6", 0x200000, 0x200000, CRC(c93697c4) SHA1(0528a604868267a30d281b822c187df118566691) )
864
 
 
865
 
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
866
 
        ROM_LOAD( "bucky.nv", 0x0000, 0x080, CRC(6a5986f3) SHA1(3efddeed261b09031c582e12318f00c2cbb214ea) )
 
616
ROM_START( moomesa ) /* Version EA */
 
617
        ROM_REGION( 0x180000, "maincpu", 0 )
 
618
        /* main program */
 
619
        ROM_LOAD16_BYTE( "151b01.q5",   0x000000, 0x40000, CRC(fb2fa298) SHA1(f03b24681a2b329ba797fd2780ac9a3cf862ebcb) )       /* B */
 
620
        ROM_LOAD16_BYTE( "151eab02.q6", 0x000001, 0x40000, CRC(37b30c01) SHA1(cb91739097a4a36f8f8d92998d822ffc851e1279) )       /* EAB */
 
621
 
 
622
        /* data */
 
623
        ROM_LOAD16_BYTE( "151a03.t5", 0x100000, 0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
 
624
        ROM_LOAD16_BYTE( "151a04.t6", 0x100001, 0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
 
625
 
 
626
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
627
        /* Z80 sound program */
 
628
        ROM_LOAD( "151a07.f5",  0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
 
629
        ROM_RELOAD(             0x010000, 0x040000 )
 
630
 
 
631
        ROM_REGION( 0x200000, "gfx1", 0 )
 
632
        /* tilemaps */
 
633
        ROM_LOAD( "151a05.t8",  0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
 
634
        ROM_LOAD( "151a06.t10", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
 
635
 
 
636
        ROM_REGION( 0x800000, "gfx2", 0 )
 
637
        /* sprites */
 
638
        ROM_LOAD( "151a10.b8",  0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
 
639
        ROM_LOAD( "151a11.a8",  0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
 
640
        ROM_LOAD( "151a12.b10", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
 
641
        ROM_LOAD( "151a13.a10", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
 
642
 
 
643
        ROM_REGION( 0x200000, "k054539", 0 )
 
644
        /* K054539 samples */
 
645
        ROM_LOAD( "151a08.b6",  0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
 
646
 
 
647
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
648
        ROM_LOAD( "moomesa.nv", 0x0000, 0x080, CRC(7bd904a8) SHA1(8747c5c62d1832e290be8ace73c61b1f228c0bec) )
 
649
ROM_END
 
650
 
 
651
ROM_START( moomesauac ) /* Version UA */
 
652
        ROM_REGION( 0x180000, "maincpu", 0 )
 
653
        /* main program */
 
654
        ROM_LOAD16_BYTE( "151c01.q5",   0x000000, 0x40000, CRC(10555732) SHA1(b67cb756c250ddd6f3291683b3f3449e13a2ee83) )       /* C */
 
655
        ROM_LOAD16_BYTE( "151uac02.q6", 0x000001, 0x40000, CRC(52ae87b0) SHA1(552d41a2ddd040f92c6a3cfdc07f9d6e751ac9c1) )       /* UAC */
 
656
 
 
657
        /* data */
 
658
        ROM_LOAD16_BYTE( "151a03.t5", 0x100000, 0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
 
659
        ROM_LOAD16_BYTE( "151a04.t6", 0x100001, 0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
 
660
 
 
661
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
662
        /* Z80 sound program */
 
663
        ROM_LOAD( "151a07.f5",  0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
 
664
        ROM_RELOAD(             0x010000, 0x040000 )
 
665
 
 
666
        ROM_REGION( 0x200000, "gfx1", 0 )
 
667
        /* tilemaps */
 
668
        ROM_LOAD( "151a05.t8",  0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
 
669
        ROM_LOAD( "151a06.t10", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
 
670
 
 
671
        ROM_REGION( 0x800000, "gfx2", 0 )
 
672
        /* sprites */
 
673
        ROM_LOAD( "151a10.b8",  0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
 
674
        ROM_LOAD( "151a11.a8",  0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
 
675
        ROM_LOAD( "151a12.b10", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
 
676
        ROM_LOAD( "151a13.a10", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
 
677
 
 
678
        ROM_REGION( 0x200000, "k054539", 0 )
 
679
        /* K054539 samples */
 
680
        ROM_LOAD( "151a08.b6",  0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
 
681
 
 
682
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
683
        ROM_LOAD( "moomesauac.nv", 0x0000, 0x080, CRC(a5cb137a) SHA1(119df859d6b5c366481305b1433eea0deadc3fa9) )
 
684
ROM_END
 
685
 
 
686
ROM_START( moomesauab ) /* Version UA */
 
687
        ROM_REGION( 0x180000, "maincpu", 0 )
 
688
        /* main program */
 
689
        ROM_LOAD16_BYTE( "151b01.q5",   0x000000, 0x40000, CRC(fb2fa298) SHA1(f03b24681a2b329ba797fd2780ac9a3cf862ebcb) )       /* B */
 
690
        ROM_LOAD16_BYTE( "151uab02.q6", 0x000001, 0x40000, CRC(3d9f4d59) SHA1(db47044bd4935fce94ec659242c9819c30eb6d0f) )       /* UAB */
 
691
 
 
692
        /* data */
 
693
        ROM_LOAD16_BYTE( "151a03.t5", 0x100000, 0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
 
694
        ROM_LOAD16_BYTE( "151a04.t6", 0x100001, 0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
 
695
 
 
696
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
697
        /* Z80 sound program */
 
698
        ROM_LOAD( "151a07.f5",  0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
 
699
        ROM_RELOAD(             0x010000, 0x040000 )
 
700
 
 
701
        ROM_REGION( 0x200000, "gfx1", 0 )
 
702
        /* tilemaps */
 
703
        ROM_LOAD( "151a05.t8",  0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
 
704
        ROM_LOAD( "151a06.t10", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
 
705
 
 
706
        ROM_REGION( 0x800000, "gfx2", 0 )
 
707
        /* sprites */
 
708
        ROM_LOAD( "151a10.b8",  0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
 
709
        ROM_LOAD( "151a11.a8",  0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
 
710
        ROM_LOAD( "151a12.b10", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
 
711
        ROM_LOAD( "151a13.a10", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
 
712
 
 
713
        ROM_REGION( 0x200000, "k054539", 0 )
 
714
        /* K054539 samples */
 
715
        ROM_LOAD( "151a08.b6",  0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
 
716
 
 
717
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
718
        ROM_LOAD( "moomesauab.nv", 0x0000, 0x080, CRC(a5cb137a) SHA1(119df859d6b5c366481305b1433eea0deadc3fa9) )
 
719
ROM_END
 
720
 
 
721
ROM_START( moomesaaab ) /* Version AA */
 
722
        ROM_REGION( 0x180000, "maincpu", 0 )
 
723
        /* main program */
 
724
        ROM_LOAD16_BYTE( "151b01.q5",   0x000000, 0x40000, CRC(fb2fa298) SHA1(f03b24681a2b329ba797fd2780ac9a3cf862ebcb) )       /* B */
 
725
        ROM_LOAD16_BYTE( "151aab02.q6", 0x000001, 0x40000, CRC(2162d593) SHA1(a6cfe4a57b3f22b2aa0f04f91acefe3b7bea9e76) )       /* AAB */
 
726
 
 
727
        /* data */
 
728
        ROM_LOAD16_BYTE( "151a03.t5", 0x100000, 0x40000, CRC(c896d3ea) SHA1(ea83c63e2c3dbc4f1e1d49f1852a78ffc1f0ea4b) )
 
729
        ROM_LOAD16_BYTE( "151a04.t6", 0x100001, 0x40000, CRC(3b24706a) SHA1(c2a77944284e35ff57f0774fa7b67e53d3b63e1f) )
 
730
 
 
731
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
732
        /* Z80 sound program */
 
733
        ROM_LOAD( "151a07.f5",  0x000000, 0x040000, CRC(cde247fc) SHA1(cdee0228db55d53ae43d7cd2d9001dadd20c2c61) )
 
734
        ROM_RELOAD(             0x010000, 0x040000 )
 
735
 
 
736
        ROM_REGION( 0x200000, "gfx1", 0 )
 
737
        /* tilemaps */
 
738
        ROM_LOAD( "151a05.t8",  0x000000, 0x100000, CRC(bc616249) SHA1(58c1f1a03ce9bead8f79d12ce4b2d342432b24b5) )
 
739
        ROM_LOAD( "151a06.t10", 0x100000, 0x100000, CRC(38dbcac1) SHA1(c357779733921695b20ac586db5b475f5b2b8f4c) )
 
740
 
 
741
        ROM_REGION( 0x800000, "gfx2", 0 )
 
742
        /* sprites */
 
743
        ROM_LOAD( "151a10.b8",  0x000000, 0x200000, CRC(376c64f1) SHA1(eb69c5a27f9795e28f04a503955132f0a9e4de12) )
 
744
        ROM_LOAD( "151a11.a8",  0x200000, 0x200000, CRC(e7f49225) SHA1(1255b214f29b6507540dad5892c60a7ae2aafc5c) )
 
745
        ROM_LOAD( "151a12.b10", 0x400000, 0x200000, CRC(4978555f) SHA1(d9871f21d0c8a512b408e137e2e80e9392c2bf6f) )
 
746
        ROM_LOAD( "151a13.a10", 0x600000, 0x200000, CRC(4771f525) SHA1(218d86b6230919b5db0304dac00513eb6b27ba9a) )
 
747
 
 
748
        ROM_REGION( 0x200000, "k054539", 0 )
 
749
        /* K054539 samples */
 
750
        ROM_LOAD( "151a08.b6",  0x000000, 0x200000, CRC(962251d7) SHA1(32dccf515d2ca8eeffb45cada3dcc60089991b77) )
 
751
 
 
752
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
753
        ROM_LOAD( "moomesaaab.nv", 0x0000, 0x080, CRC(7bd904a8) SHA1(8747c5c62d1832e290be8ace73c61b1f228c0bec) )
 
754
ROM_END
 
755
 
 
756
ROM_START( bucky ) /* Version EA */
 
757
        ROM_REGION( 0x240000, "maincpu", 0 )
 
758
        /* main program */
 
759
        ROM_LOAD16_BYTE( "173eab01.q5", 0x000000, 0x40000, CRC(7785ac8a) SHA1(ef78d14f54d3a0b724b9702a18c67891e2d366a7) )       /* EAB */
 
760
        ROM_LOAD16_BYTE( "173eab02.q6", 0x000001, 0x40000, CRC(9b45f122) SHA1(325af1612e6f90ef9ae9353c43dc645be1f3465c) )       /* EAB */
 
761
 
 
762
        /* data */
 
763
        ROM_LOAD16_BYTE( "173a03.t5", 0x200000, 0x20000, CRC(cd724026) SHA1(525445499604b713da4d8bc0a88e428654ceab95) )
 
764
        ROM_LOAD16_BYTE( "173a04.t6", 0x200001, 0x20000, CRC(7dd54d6f) SHA1(b0ee8ec445b92254bca881eefd4449972fed506a) )
 
765
 
 
766
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
767
        /* Z80 sound program */
 
768
        ROM_LOAD( "173a07.f5",  0x000000, 0x040000, CRC(4cdaee71) SHA1(bdc05d4475415f6fac65d7cdbc48df398e57845e) )
 
769
        ROM_RELOAD(             0x010000, 0x040000 )
 
770
 
 
771
        ROM_REGION( 0x200000, "gfx1", 0 )
 
772
        /* tilemaps */
 
773
        ROM_LOAD( "173a05.t8",  0x000000, 0x100000, CRC(d14333b4) SHA1(d1a15ead2d156e1fceca0bf202ab3962411caf11) )
 
774
        ROM_LOAD( "173a06.t10", 0x100000, 0x100000, CRC(6541a34f) SHA1(15cf481498e3b7e0b2f7bfe5434121cc3bd65662) )
 
775
 
 
776
        ROM_REGION( 0x800000, "gfx2", 0 )
 
777
        /* sprites */
 
778
        ROM_LOAD( "173a10.b8",  0x000000, 0x200000, CRC(42fb0a0c) SHA1(d68c932cfabdec7896698b433525fe47ef4698d0) )
 
779
        ROM_LOAD( "173a11.a8",  0x200000, 0x200000, CRC(b0d747c4) SHA1(0cf1ee1b9a35ded31a81c321df2a076f7b588971) )
 
780
        ROM_LOAD( "173a12.b10", 0x400000, 0x200000, CRC(0fc2ad24) SHA1(6eda1043ee1266b8ba938a03a90bc7787210a936) )
 
781
        ROM_LOAD( "173a13.a10", 0x600000, 0x200000, CRC(4cf85439) SHA1(8c298bf0e659a830a1830a1180f4ce71215ade45) )
 
782
 
 
783
        ROM_REGION( 0x400000, "k054539", 0 )
 
784
        /* K054539 samples */
 
785
        ROM_LOAD( "173a08.b6",  0x000000, 0x200000, CRC(dcdded95) SHA1(8eeb546a0b60a35a6dce36c5ee872e6c93c577c9) )
 
786
        ROM_LOAD( "173a09.a6",  0x200000, 0x200000, CRC(c93697c4) SHA1(0528a604868267a30d281b822c187df118566691) )
 
787
 
 
788
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
789
        ROM_LOAD( "bucky.nv", 0x0000, 0x080, CRC(6a5986f3) SHA1(3efddeed261b09031c582e12318f00c2cbb214ea) )
 
790
ROM_END
 
791
 
 
792
ROM_START( buckyuab ) /* Version UA */
 
793
        ROM_REGION( 0x240000, "maincpu", 0 )
 
794
        /* main program */
 
795
        ROM_LOAD16_BYTE( "173uab01.q5", 0x000000, 0x40000, CRC(dcaecca0) SHA1(c41847c9d89cdaf7cfa81ad9cc018c32592a882f) )       /* UAB */
 
796
        ROM_LOAD16_BYTE( "173uab02.q6", 0x000001, 0x40000, CRC(e3c856a6) SHA1(33cc8a29643e44b31ee280015c0c994bed72a0e3) )       /* UAB */
 
797
 
 
798
        /* data */
 
799
        ROM_LOAD16_BYTE( "173a03.t5", 0x200000, 0x20000, CRC(cd724026) SHA1(525445499604b713da4d8bc0a88e428654ceab95) )
 
800
        ROM_LOAD16_BYTE( "173a04.t6", 0x200001, 0x20000, CRC(7dd54d6f) SHA1(b0ee8ec445b92254bca881eefd4449972fed506a) )
 
801
 
 
802
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
803
        /* Z80 sound program */
 
804
        ROM_LOAD( "173a07.f5",  0x000000, 0x040000, CRC(4cdaee71) SHA1(bdc05d4475415f6fac65d7cdbc48df398e57845e) )
 
805
        ROM_RELOAD(             0x010000, 0x040000 )
 
806
 
 
807
        ROM_REGION( 0x200000, "gfx1", 0 )
 
808
        /* tilemaps */
 
809
        ROM_LOAD( "173a05.t8",  0x000000, 0x100000, CRC(d14333b4) SHA1(d1a15ead2d156e1fceca0bf202ab3962411caf11) )
 
810
        ROM_LOAD( "173a06.t10", 0x100000, 0x100000, CRC(6541a34f) SHA1(15cf481498e3b7e0b2f7bfe5434121cc3bd65662) )
 
811
 
 
812
        ROM_REGION( 0x800000, "gfx2", 0 )
 
813
        /* sprites */
 
814
        ROM_LOAD( "173a10.b8",  0x000000, 0x200000, CRC(42fb0a0c) SHA1(d68c932cfabdec7896698b433525fe47ef4698d0) )
 
815
        ROM_LOAD( "173a11.a8",  0x200000, 0x200000, CRC(b0d747c4) SHA1(0cf1ee1b9a35ded31a81c321df2a076f7b588971) )
 
816
        ROM_LOAD( "173a12.b10", 0x400000, 0x200000, CRC(0fc2ad24) SHA1(6eda1043ee1266b8ba938a03a90bc7787210a936) )
 
817
        ROM_LOAD( "173a13.a10", 0x600000, 0x200000, CRC(4cf85439) SHA1(8c298bf0e659a830a1830a1180f4ce71215ade45) )
 
818
 
 
819
        ROM_REGION( 0x400000, "k054539", 0 )
 
820
        /* K054539 samples */
 
821
        ROM_LOAD( "173a08.b6",  0x000000, 0x200000, CRC(dcdded95) SHA1(8eeb546a0b60a35a6dce36c5ee872e6c93c577c9) )
 
822
        ROM_LOAD( "173a09.a6",  0x200000, 0x200000, CRC(c93697c4) SHA1(0528a604868267a30d281b822c187df118566691) )
 
823
 
 
824
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
825
        ROM_LOAD( "buckyuab.nv", 0x0000, 0x080, CRC(a5cb137a) SHA1(119df859d6b5c366481305b1433eea0deadc3fa9) )
 
826
ROM_END
 
827
 
 
828
ROM_START( buckyaab ) /* Version AA */
 
829
        ROM_REGION( 0x240000, "maincpu", 0 )
 
830
        /* main program */
 
831
        ROM_LOAD16_BYTE( "173aab01.q5", 0x000000, 0x40000, CRC(9193e89f) SHA1(574d6eb4097cd10c3dea99060ee09f220d41f1dc) )       /* AAB */
 
832
        ROM_LOAD16_BYTE( "173aab02.q6", 0x000001, 0x40000, CRC(2567f3eb) SHA1(ccdb2a4b3ad1464f70d1442df8a3a7a7e34f6cd7) )       /* AAB */
 
833
 
 
834
        /* data */
 
835
        ROM_LOAD16_BYTE( "173a03.t5", 0x200000, 0x20000, CRC(cd724026) SHA1(525445499604b713da4d8bc0a88e428654ceab95) )
 
836
        ROM_LOAD16_BYTE( "173a04.t6", 0x200001, 0x20000, CRC(7dd54d6f) SHA1(b0ee8ec445b92254bca881eefd4449972fed506a) )
 
837
 
 
838
        ROM_REGION( 0x050000, "soundcpu", 0 )
 
839
        /* Z80 sound program */
 
840
        ROM_LOAD( "173a07.f5",  0x000000, 0x040000, CRC(4cdaee71) SHA1(bdc05d4475415f6fac65d7cdbc48df398e57845e) )
 
841
        ROM_RELOAD(             0x010000, 0x040000 )
 
842
 
 
843
        ROM_REGION( 0x200000, "gfx1", 0 )
 
844
        /* tilemaps */
 
845
        ROM_LOAD( "173a05.t8",  0x000000, 0x100000, CRC(d14333b4) SHA1(d1a15ead2d156e1fceca0bf202ab3962411caf11) )
 
846
        ROM_LOAD( "173a06.t10", 0x100000, 0x100000, CRC(6541a34f) SHA1(15cf481498e3b7e0b2f7bfe5434121cc3bd65662) )
 
847
 
 
848
        ROM_REGION( 0x800000, "gfx2", 0 )
 
849
        /* sprites */
 
850
        ROM_LOAD( "173a10.b8",  0x000000, 0x200000, CRC(42fb0a0c) SHA1(d68c932cfabdec7896698b433525fe47ef4698d0) )
 
851
        ROM_LOAD( "173a11.a8",  0x200000, 0x200000, CRC(b0d747c4) SHA1(0cf1ee1b9a35ded31a81c321df2a076f7b588971) )
 
852
        ROM_LOAD( "173a12.b10", 0x400000, 0x200000, CRC(0fc2ad24) SHA1(6eda1043ee1266b8ba938a03a90bc7787210a936) )
 
853
        ROM_LOAD( "173a13.a10", 0x600000, 0x200000, CRC(4cf85439) SHA1(8c298bf0e659a830a1830a1180f4ce71215ade45) )
 
854
 
 
855
        ROM_REGION( 0x400000, "k054539", 0 )
 
856
        /* K054539 samples */
 
857
        ROM_LOAD( "173a08.b6",  0x000000, 0x200000, CRC(dcdded95) SHA1(8eeb546a0b60a35a6dce36c5ee872e6c93c577c9) )
 
858
        ROM_LOAD( "173a09.a6",  0x200000, 0x200000, CRC(c93697c4) SHA1(0528a604868267a30d281b822c187df118566691) )
 
859
 
 
860
        ROM_REGION( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting upside down with error
 
861
        ROM_LOAD( "buckyaab.nv", 0x0000, 0x080, CRC(6a5986f3) SHA1(3efddeed261b09031c582e12318f00c2cbb214ea) )
867
862
ROM_END
868
863
 
869
864
 
928
923
}
929
924
 
930
925
 
931
 
GAME( 1992, moomesa,  0,       moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver EA)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
932
 
GAME( 1992, moomesau, moomesa, moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver UA, set 1)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
933
 
GAME( 1992, moomesaua,moomesa, moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver UA, set 2)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
934
 
GAME( 1992, moomesaa, moomesa, moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver AA)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
935
 
GAME( 1992, moomesabl,moomesa, moobl,   moo,     moo,      ROT0, "bootleg", "Wild West C.O.W.-Boys of Moo Mesa (bootleg ver AA)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )
936
 
GAME( 1992, bucky,    0,       bucky,   bucky,   moo,      ROT0, "Konami", "Bucky O'Hare (ver EA)", GAME_SUPPORTS_SAVE )
937
 
GAME( 1992, buckyua,  bucky,   bucky,   bucky,   moo,      ROT0, "Konami", "Bucky O'Hare (ver UA)", GAME_SUPPORTS_SAVE )
938
 
GAME( 1992, buckyaa,  bucky,   bucky,   bucky,   moo,      ROT0, "Konami", "Bucky O'Hare (ver AA)", GAME_SUPPORTS_SAVE )
 
926
GAME( 1992, moomesa,    0,       moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver EAB)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
 
927
GAME( 1992, moomesauac, moomesa, moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver UAC)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
 
928
GAME( 1992, moomesauab, moomesa, moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver UAB)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
 
929
GAME( 1992, moomesaaab, moomesa, moo,     moo,     moo,      ROT0, "Konami", "Wild West C.O.W.-Boys of Moo Mesa (ver AAB)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
 
930
GAME( 1992, moomesabl,  moomesa, moobl,   moo,     moo,      ROT0, "bootleg", "Wild West C.O.W.-Boys of Moo Mesa (bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )    // based on Version AA
 
931
GAME( 1992, bucky,      0,       bucky,   bucky,   moo,      ROT0, "Konami", "Bucky O'Hare (ver EAB)", GAME_SUPPORTS_SAVE )
 
932
GAME( 1992, buckyuab,   bucky,   bucky,   bucky,   moo,      ROT0, "Konami", "Bucky O'Hare (ver UAB)", GAME_SUPPORTS_SAVE )
 
933
GAME( 1992, buckyaab,   bucky,   bucky,   bucky,   moo,      ROT0, "Konami", "Bucky O'Hare (ver AAB)", GAME_SUPPORTS_SAVE )