Previous 199869 Revisions Next

r34404 Thursday 15th January, 2015 at 17:05:01 UTC by Osso
hyhoo.c, pastelg.c: added save state support (nw)
the 2 drivers look really similar, maybe merging could be explored..
[src/mame/drivers]hyhoo.c pastelg.c
[src/mame/includes]hyhoo.h pastelg.h
[src/mame/video]hyhoo.c pastelg.c

trunk/src/mame/drivers/hyhoo.c
r242915r242916
302302ROM_END
303303
304304
305GAME( 1987, hyhoo,  0, hyhoo,  hyhoo,  driver_device, 0, ROT90, "Nichibutsu", "Hayaoshi Taisen Quiz Hyhoo (Japan)", 0 )
306GAME( 1987, hyhoo2, 0, hyhoo2, hyhoo2, driver_device, 0, ROT90, "Nichibutsu", "Hayaoshi Taisen Quiz Hyhoo 2 (Japan)", 0 )
305GAME( 1987, hyhoo,  0, hyhoo,  hyhoo,  driver_device, 0, ROT90, "Nichibutsu", "Hayaoshi Taisen Quiz Hyhoo (Japan)", GAME_SUPPORTS_SAVE )
306GAME( 1987, hyhoo2, 0, hyhoo2, hyhoo2, driver_device, 0, ROT90, "Nichibutsu", "Hayaoshi Taisen Quiz Hyhoo 2 (Japan)", GAME_SUPPORTS_SAVE )
trunk/src/mame/drivers/pastelg.c
r242915r242916
3636#endif
3737
3838
39void pastelg_state::machine_start()
40{
41   save_item(NAME(m_mux_data));
42}
3943
4044READ8_MEMBER(pastelg_state::pastelg_sndrom_r)
4145{
4246   UINT8 *ROM = memregion("voice")->base();
4347
44   return ROM[pastelg_blitter_src_addr_r(space) & 0x7fff];
48   return ROM[pastelg_blitter_src_addr_r() & 0x7fff];
4549}
4650
4751static ADDRESS_MAP_START( pastelg_map, AS_PROGRAM, 8, pastelg_state )
r242915r242916
6670   AM_RANGE(0xa0, 0xa0) AM_DEVREADWRITE("nb1413m3", nb1413m3_device, inputport1_r, inputportsel_w)
6771   AM_RANGE(0xb0, 0xb0) AM_DEVREAD("nb1413m3", nb1413m3_device, inputport2_r) AM_WRITE(pastelg_romsel_w)
6872   AM_RANGE(0xc0, 0xc0) AM_READ(pastelg_sndrom_r)
69   AM_RANGE(0xc0, 0xcf) AM_WRITE(pastelg_clut_w)
73   AM_RANGE(0xc0, 0xcf) AM_WRITEONLY AM_SHARE("clut")
7074   AM_RANGE(0xd0, 0xd0) AM_READ(pastelg_irq_ack_r) AM_DEVWRITE("dac", dac_device, write_unsigned8)
7175   AM_RANGE(0xe0, 0xe0) AM_READ_PORT("DSWC")
7276ADDRESS_MAP_END
r242915r242916
118122   AM_RANGE(0xf0, 0xf6) AM_WRITE(pastelg_blitter_w)
119123   AM_RANGE(0xa0, 0xa0) AM_READWRITE(threeds_inputport1_r, threeds_inputportsel_w)
120124   AM_RANGE(0xb0, 0xb0) AM_READ(threeds_inputport2_r) AM_WRITE(threeds_output_w)//writes: bit 3 is coin lockout, bit 1 is coin counter
121   AM_RANGE(0xc0, 0xcf) AM_WRITE(pastelg_clut_w)
125   AM_RANGE(0xc0, 0xcf) AM_WRITEONLY AM_SHARE("clut")
122126   AM_RANGE(0xc0, 0xc0) AM_READ(threeds_rom_readback_r)
123127   AM_RANGE(0xd0, 0xd0) AM_READ(pastelg_irq_ack_r) AM_DEVWRITE("dac", dac_device, write_unsigned8)
124128ADDRESS_MAP_END
r242915r242916
559563
560564
561565
562GAME( 1985, pastelg, 0,       pastelg, pastelg, driver_device, 0, ROT0, "Nichibutsu", "Pastel Gal (Japan 851224)", 0 )
563GAME( 1985, threeds, 0,       threeds, threeds, driver_device, 0, ROT0, "Nichibutsu", "Three Ds - Three Dealers Casino House", 0 )
564GAME( 1985, galds,   threeds, threeds, galds,   driver_device, 0, ROT0, "Nihon System Corp.", "Gals Ds - Three Dealers Casino House (bootleg?)", 0 )
566GAME( 1985, pastelg, 0,       pastelg, pastelg, driver_device, 0, ROT0, "Nichibutsu", "Pastel Gal (Japan 851224)", GAME_SUPPORTS_SAVE )
567GAME( 1985, threeds, 0,       threeds, threeds, driver_device, 0, ROT0, "Nichibutsu", "Three Ds - Three Dealers Casino House", GAME_SUPPORTS_SAVE )
568GAME( 1985, galds,   threeds, threeds, galds,   driver_device, 0, ROT0, "Nihon System Corp.", "Gals Ds - Three Dealers Casino House (bootleg?)", GAME_SUPPORTS_SAVE )
trunk/src/mame/includes/hyhoo.h
r242915r242916
1010
1111   hyhoo_state(const machine_config &mconfig, device_type type, const char *tag)
1212      : driver_device(mconfig, type, tag),
13      m_clut(*this, "clut"),
1413      m_maincpu(*this, "maincpu"),
1514      m_nb1413m3(*this, "nb1413m3"),
16      m_screen(*this, "screen")   { }
15      m_screen(*this, "screen"),
16      m_clut(*this, "clut") { }
1717
18   required_shared_ptr<UINT8> m_clut;
1918   required_device<cpu_device> m_maincpu;
2019   required_device<nb1413m3_device> m_nb1413m3;
2120   required_device<screen_device> m_screen;
21   required_shared_ptr<UINT8> m_clut;
2222
2323   int m_blitter_destx;
2424   int m_blitter_desty;
r242915r242916
3232   int m_highcolorflag;
3333   int m_flipscreen;
3434   bitmap_rgb32 m_tmpbitmap;
35   
3536   DECLARE_WRITE8_MEMBER(hyhoo_blitter_w);
3637   DECLARE_WRITE8_MEMBER(hyhoo_romsel_w);
38   
3739   DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r);
40   
3841   virtual void video_start();
42   
3943   UINT32 screen_update_hyhoo(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
4044   void hyhoo_gfxdraw();
4145
trunk/src/mame/includes/pastelg.h
r242915r242916
1212      : driver_device(mconfig, type, tag) ,
1313      m_maincpu(*this, "maincpu"),
1414      m_nb1413m3(*this, "nb1413m3"),
15      m_screen(*this, "screen")   { }
15      m_screen(*this, "screen"),
16      m_clut(*this, "clut") { }
1617
1718   required_device<cpu_device> m_maincpu;
1819   required_device<nb1413m3_device> m_nb1413m3;
1920   required_device<screen_device> m_screen;
21   required_shared_ptr<UINT8> m_clut;
2022
2123   UINT8 m_mux_data;
2224   int m_blitter_destx;
r242915r242916
3133   int m_blitter_direction_y;
3234   int m_palbank;
3335   UINT8 *m_videoram;
34   UINT8 *m_clut;
3536   int m_flipscreen_old;
37   
3638   DECLARE_READ8_MEMBER(pastelg_sndrom_r);
3739   DECLARE_READ8_MEMBER(pastelg_irq_ack_r);
3840   DECLARE_READ8_MEMBER(threeds_inputport1_r);
3941   DECLARE_READ8_MEMBER(threeds_inputport2_r);
4042   DECLARE_WRITE8_MEMBER(threeds_inputportsel_w);
41   DECLARE_WRITE8_MEMBER(pastelg_clut_w);
4243   DECLARE_WRITE8_MEMBER(pastelg_blitter_w);
4344   DECLARE_WRITE8_MEMBER(threeds_romsel_w);
4445   DECLARE_WRITE8_MEMBER(threeds_output_w);
4546   DECLARE_READ8_MEMBER(threeds_rom_readback_r);
4647   DECLARE_WRITE8_MEMBER(pastelg_romsel_w);
48   
4749   DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r);
4850   DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_hackbusyflag_r);
51   
52   virtual void machine_start();
4953   virtual void video_start();
54   
5055   DECLARE_PALETTE_INIT(pastelg);
5156   UINT32 screen_update_pastelg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
52   int pastelg_blitter_src_addr_r(address_space &space);
57   int pastelg_blitter_src_addr_r();
5358   void pastelg_vramflip();
5459   void pastelg_gfxdraw();
5560
r242915r242916
5762   virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
5863};
5964
60/*----------- defined in video/pastelg.c -----------*/
61int pastelg_blitter_src_addr_r(address_space &space);
trunk/src/mame/video/hyhoo.c
r242915r242916
226226void hyhoo_state::video_start()
227227{
228228   m_screen->register_screen_bitmap(m_tmpbitmap);
229   save_item(NAME(m_blitter_destx));
230   save_item(NAME(m_blitter_desty));
231   save_item(NAME(m_blitter_sizex));
232   save_item(NAME(m_blitter_sizey));
233   save_item(NAME(m_blitter_src_addr));
234   save_item(NAME(m_blitter_direction_x));
235   save_item(NAME(m_blitter_direction_y));
236   save_item(NAME(m_gfxrom));
237   save_item(NAME(m_dispflag));
238   save_item(NAME(m_highcolorflag));
239   save_item(NAME(m_flipscreen));
240   save_item(NAME(m_tmpbitmap));
229241}
230242
231243
trunk/src/mame/video/pastelg.c
r242915r242916
4242   }
4343}
4444
45WRITE8_MEMBER(pastelg_state::pastelg_clut_w)
46{
47   m_clut[offset] = data;
48}
49
5045/******************************************************************************
5146
5247
5348******************************************************************************/
54int pastelg_state::pastelg_blitter_src_addr_r(address_space &space)
49int pastelg_state::pastelg_blitter_src_addr_r()
5550{
5651   return m_blitter_src_addr;
5752}
r242915r242916
288283   int height = m_screen->height();
289284
290285   m_videoram = auto_alloc_array_clear(machine(), UINT8, width * height);
291   m_clut = auto_alloc_array(machine(), UINT8, 0x10);
286   
287   save_item(NAME(m_blitter_desty));
288   save_item(NAME(m_blitter_sizex));
289   save_item(NAME(m_blitter_sizey));
290   save_item(NAME(m_blitter_src_addr));
291   save_item(NAME(m_gfxrom));
292   save_item(NAME(m_dispflag));
293   save_item(NAME(m_flipscreen));
294   save_item(NAME(m_blitter_direction_x));
295   save_item(NAME(m_blitter_direction_y));
296   save_item(NAME(m_palbank));
297   save_pointer(NAME(m_videoram), width*height);
298   save_item(NAME(m_flipscreen_old));
292299}
293300
294301/******************************************************************************


Previous 199869 Revisions Next


© 1997-2024 The MAME Team