Previous 199869 Revisions Next

r19275 Monday 3rd December, 2012 at 15:01:55 UTC by Angelo Salese
Various changes to Nichibutsu Mahjong drivers: [Takahiro Nogi]
* drivers/nbmj8688.c: Fixed graphics in orangec,orangeci,vipclub sets, removed GAME_IMPERFECT_GRAPHICS flag for these.
* drivers/nbmj8891.c: Added Font Select configuration setting for hanamomo
* machine/nb1413m3.c: Added special case for ORANGECI and removed unnecessary information in the file
[src/mame/drivers]nbmj8688.c nbmj8891.c
[src/mame/includes]nb1413m3.h
[src/mame/machine]nb1413m3.c
[src/mame/video]nbmj8688.c nbmj8891.c

trunk/src/mame/includes/nb1413m3.h
r19274r19275
110110   NB1413M3_PAIRSTEN
111111};
112112
113#define NB1413M3_VCR_NOP   0x00
114#define NB1413M3_VCR_POWER   0x01
115#define NB1413M3_VCR_STOP   0x02
116#define NB1413M3_VCR_REWIND   0x04
117#define NB1413M3_VCR_PLAY   0x08
113#define NB1413M3_VCR_NOP      0x00
114#define NB1413M3_VCR_POWER      0x01
115#define NB1413M3_VCR_STOP      0x02
116#define NB1413M3_VCR_REWIND      0x04
117#define NB1413M3_VCR_PLAY      0x08
118118#define NB1413M3_VCR_FFORWARD   0x10
119#define NB1413M3_VCR_PAUSE   0x20
119#define NB1413M3_VCR_PAUSE      0x20
120120
121121
122122/*----------- defined in machine/nb1413m3.c -----------*/
trunk/src/mame/video/nbmj8891.c
r19274r19275
230230      nbmj8891_gfxdraw(machine());
231231   }
232232
233//  m_blitter_direction_x = 0;                // for debug
234//  m_blitter_direction_y = 0;                // for debug
235   m_dispflag = 1;               // for debug
236
237233   m_param_cnt++;
238234}
239235
r19274r19275
376372
377373         color = GFX[gfxaddr++];
378374
375         // for hanamomo font type
376         if ((state->ioport("FONTTYPE")->read()) == 0)
377         {
378            if (nb1413m3_type == NB1413M3_HANAMOMO)
379            {
380               if ((gfxaddr >= 0x20000) && (gfxaddr < 0x28000))
381               {
382                  color |= ((color & 0x0f) << 4);
383               }
384            }
385         }
386
379387         dx1 = (2 * x + 0) & 0x1ff;
380388         dx2 = (2 * x + 1) & 0x1ff;
381389
trunk/src/mame/video/nbmj8688.c
r19274r19275
319319
320320   gfxlen = machine.root_device().memregion("gfx1")->bytes();
321321   gfxaddr = (state->m_mjsikaku_gfxrom << 17) + (state->m_blitter_src_addr << 1);
322
322323//popmessage("ADDR:%08X DX:%03d DY:%03d SX:%03d SY:%03d", gfxaddr, startx, starty, sizex, sizey);
324//logerror("ADDR:%08X DX:%03d DY:%03d SX:%03d SY:%03d\n", gfxaddr, startx, starty, sizex, sizey);
323325//if (state->m_blitter_direction_x|state->m_blitter_direction_y) popmessage("ADDR:%08X FX:%01d FY:%01d", gfxaddr, state->m_blitter_direction_x, state->m_blitter_direction_y);
324326
325327   for (y = starty, ctry = sizey; ctry >= 0; y += skipy, ctry--)
r19274r19275
328330      {
329331         if ((gfxaddr > (gfxlen - 1)))
330332         {
331#ifdef MAME_DEBUG
333//#ifdef MAME_DEBUG
332334            popmessage("GFXROM ADDRESS OVER!!");
333#endif
335//#endif
334336            gfxaddr = 0;
335337         }
336338
r19274r19275
664666{
665667   int x, y;
666668
669if(machine().input().code_pressed_once(KEYCODE_T))
670{
671   //
672}
673
667674   if (m_mjsikaku_screen_refresh)
668675   {
669676      m_mjsikaku_screen_refresh = 0;
r19274r19275
676683      }
677684   }
678685
679   if (m_mjsikaku_dispflag)
686//   if (m_mjsikaku_dispflag)
680687   {
681688      int scrolly;
682689      if (m_mjsikaku_flipscreen) scrolly =   m_mjsikaku_scrolly;
r19274r19275
685692      copybitmap(bitmap, *m_mjsikaku_tmpbitmap, 0, 0, 0, scrolly,       cliprect);
686693      copybitmap(bitmap, *m_mjsikaku_tmpbitmap, 0, 0, 0, scrolly - 256, cliprect);
687694   }
688   else
689      bitmap.fill(0);
695//   else
696//      bitmap.fill(0);
690697
691698   return 0;
692699}
trunk/src/mame/drivers/nbmj8891.c
r19274r19275
706706   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )         // COIN1
707707   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )      // SERVICE
708708
709   /* This DIPSW is fake. Type A is common, Type B is rare */
710   PORT_START("FONTTYPE")
711   PORT_CONFNAME(    0x01, 0x00, "Font Type" )
712   PORT_CONFSETTING( 0x00,       "Type-A" )
713   PORT_CONFSETTING( 0x01,       "Type-B" )
714   PORT_BIT(         0xfe,       IP_ACTIVE_HIGH, IPT_UNUSED )
715
709716   PORT_INCLUDE( nbmjcontrols )
710717INPUT_PORTS_END
711718
r19274r19275
26252632   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
26262633
26272634   MCFG_DAC_ADD("dac")
2628   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
2635   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
26292636MACHINE_CONFIG_END
26302637
26312638static MACHINE_CONFIG_DERIVED( mgion, gionbana )
trunk/src/mame/drivers/nbmj8688.c
r19274r19275
2020
2121- Input handling is wrong in crystalg, crystal2 and nightlov.
2222
23- Some games display "GFXROM BANK OVER!!" or "GFXROM ADDRESS OVER!!"
230- Some games display "GFXROM BANK OVER!!" or "GFXROM ADDRESS OVER!!"
2424  in Debug build.
2525
2626- Screen flip is not perfect.
r19274r19275
20962096
20972097static INPUT_PORTS_START( orangec )
20982098   PORT_START("DSWA")
2099   PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
2100   PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2101   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2102   PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
2103   PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2104   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2105   PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
2106   PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
2107   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2099   PORT_DIPNAME( 0x07, 0x07, DEF_STR( Difficulty ) )
2100   PORT_DIPSETTING(    0x07, "1 (Easy)" )
2101   PORT_DIPSETTING(    0x06, "2" )
2102   PORT_DIPSETTING(    0x05, "3" )
2103   PORT_DIPSETTING(    0x04, "4" )
2104   PORT_DIPSETTING(    0x03, "5" )
2105   PORT_DIPSETTING(    0x02, "6" )
2106   PORT_DIPSETTING(    0x01, "7" )
2107   PORT_DIPSETTING(    0x00, "8 (Hard)" )
21082108   PORT_DIPNAME( 0x08, 0x00, "Select Girl" )
21092109   PORT_DIPSETTING(    0x08, DEF_STR( No ) )
21102110   PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
2111   PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
2111   PORT_DIPNAME( 0x10, 0x00, "Extend TSUMO" )
21122112   PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
21132113   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2114   PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
2115   PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
2116   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2114   PORT_DIPNAME( 0x20, 0x20, DEF_STR( Coinage ) )
2115   PORT_DIPSETTING(    0x20, DEF_STR( 1C_1C ) )
2116   PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
21172117   PORT_DIPNAME( 0x40, 0x40, "Character Display Test" )
21182118   PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
21192119   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2120   PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2120   PORT_DIPNAME( 0x80, 0x80, "DIPSW 1-8" )
21212121   PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
21222122   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
21232123
r19274r19275
36033603   ROM_LOAD( "ic2.bin",  0x140000, 0x40000, CRC(da46163e) SHA1(c6e5f59fe813915f94d81ff28526614c943b7082) )
36043604   ROM_LOAD( "ic3.bin",  0x180000, 0x40000, CRC(efb13b61) SHA1(61d100b52d01e447dd599cc9ff06b97dd7a4ae0b) )
36053605   ROM_LOAD( "ic4.bin",  0x1c0000, 0x40000, CRC(9acc54fa) SHA1(7975370e1dd32ecd98d7f2e32f14feb88e0cdb43) )
3606   ROM_LOAD( "ic6i.bin", 0x0f0000, 0x10000, CRC(94bf4847) SHA1(a1ff0a5b1918b9f1a0f608ad341d091512988c1a) )
3607   ROM_LOAD( "ic7i.bin", 0x110000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // overlaps ic1!
3606   ROM_LOAD( "ic6i.bin", 0x0f0000, 0x10000, CRC(94bf4847) SHA1(a1ff0a5b1918b9f1a0f608ad341d091512988c1a) )   // orangec/ic6i.bin
3607   ROM_LOAD( "ic7i.bin", 0x100000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // orangec/ic7i.bin overlaps ic1!
3608   ROM_LOAD( "ic7i.bin", 0x110000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // orangec/ic7i.bin overlaps ic1!
36083609ROM_END
36093610
36103611ROM_START( orangeci )
r19274r19275
36263627   ROM_LOAD( "ic2.bin",  0x140000, 0x40000, CRC(da46163e) SHA1(c6e5f59fe813915f94d81ff28526614c943b7082) )
36273628   ROM_LOAD( "ic3.bin",  0x180000, 0x40000, CRC(efb13b61) SHA1(61d100b52d01e447dd599cc9ff06b97dd7a4ae0b) )
36283629   ROM_LOAD( "ic4.bin",  0x1c0000, 0x40000, CRC(9acc54fa) SHA1(7975370e1dd32ecd98d7f2e32f14feb88e0cdb43) )
3629   ROM_LOAD( "ic6i.bin", 0x0f0000, 0x10000, CRC(94bf4847) SHA1(a1ff0a5b1918b9f1a0f608ad341d091512988c1a) )
3630   ROM_LOAD( "ic7i.bin", 0x110000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // overlaps ic1!
3630   ROM_LOAD( "ic6i.bin", 0x0f0000, 0x10000, CRC(94bf4847) SHA1(a1ff0a5b1918b9f1a0f608ad341d091512988c1a) )   // orangec/ic6i.bin
3631   ROM_LOAD( "ic7i.bin", 0x100000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // orangec/ic7i.bin overlaps ic1!
3632   ROM_LOAD( "ic7i.bin", 0x110000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // orangec/ic7i.bin overlaps ic1!
36313633ROM_END
36323634
36333635ROM_START( vipclub )
r19274r19275
36363638   ROM_LOAD( "1.2c",     0x08000, 0x08000, CRC(42101925) SHA1(b3e1b4a3c905e0c5ad85fd1276b221440937719e) )
36373639
36383640   ROM_REGION( 0x10000, "voice", 0 ) /* voice */
3639   ROM_LOAD( "ft3.5c",   0x00000, 0x10000, CRC(2390a28b) SHA1(7bced9e7680d0cc98e30ab82da1c4ab0c4ef37b4) )   // orangec/ft3.5c
3641   ROM_LOAD( "ft3.5c",   0x00000, 0x10000, CRC(2390a28b) SHA1(7bced9e7680d0cc98e30ab82da1c4ab0c4ef37b4) )
36403642
36413643   ROM_REGION( 0x200000, "gfx1", 0 ) /* gfx */
36423644   ROM_LOAD( "ic5.bin",  0x000000, 0x10000, CRC(e6fe4540) SHA1(00625ea017305b2622ac31ad2e6e4c928ee0cfcd) )   // orangec/ic5.bin
r19274r19275
36503652   ROM_LOAD( "ic3.bin",  0x180000, 0x40000, CRC(efb13b61) SHA1(61d100b52d01e447dd599cc9ff06b97dd7a4ae0b) )   // orangec/ic3.bin
36513653   ROM_LOAD( "ic4.bin",  0x1c0000, 0x40000, CRC(9acc54fa) SHA1(7975370e1dd32ecd98d7f2e32f14feb88e0cdb43) )   // orangec/ic4.bin
36523654   ROM_LOAD( "ic6i.bin", 0x0f0000, 0x10000, CRC(94bf4847) SHA1(a1ff0a5b1918b9f1a0f608ad341d091512988c1a) )   // orangec/ic6i.bin
3655   ROM_LOAD( "ic7i.bin", 0x100000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // orangec/ic7i.bin overlaps ic1!
36533656   ROM_LOAD( "ic7i.bin", 0x110000, 0x10000, CRC(284f5648) SHA1(f0a734744901313f5052ea1727815e11a93e1811) )   // orangec/ic7i.bin overlaps ic1!
36543657ROM_END
36553658
r19274r19275
40454048GAME( 1987, livegal,  0,        mbmj_p16bit_LCD, livegal, nbmj8688_state,  livegal,  ROT0, "Central Denshi", "Live Gal (Japan 870530)", 0 )
40464049GAME( 1987, bijokkoy, 0,        mbmj_p16bit_LCD, bijokkoy, nbmj8688_state, bijokkoy, ROT0, "Nichibutsu", "Bijokko Yume Monogatari (Japan 870925)", 0 )
40474050GAME( 1988, bijokkog, 0,        mbmj_p16bit_LCD, bijokkog, nbmj8688_state, bijokkog, ROT0, "Nichibutsu", "Bijokko Gakuen (Japan 880116)", 0 )
4048GAME( 1988, orangec,  0,        mbmj_p16bit,     orangec, nbmj8688_state,  orangec,  ROT0, "Daiichi Denshi", "Orange Club - Maruhi Kagai Jugyou (Japan 880213)", GAME_IMPERFECT_GRAPHICS )
4049GAME( 1988, orangeci, orangec,  mbmj_p16bit,     orangeci, nbmj8688_state, orangeci, ROT0, "Daiichi Denshi", "Orange Club - Maru-hi Ippatsu Kaihou [BET] (Japan 880221)", GAME_IMPERFECT_GRAPHICS )
4050GAME( 1988, vipclub,  orangec,  mbmj_p16bit,     vipclub, nbmj8688_state,  vipclub,  ROT0, "Daiichi Denshi", "Vip Club - Maru-hi Ippatsu Kaihou [BET] (Japan 880310)", GAME_IMPERFECT_GRAPHICS )
4051GAME( 1988, orangec,  0,        mbmj_p16bit,     orangec, nbmj8688_state,  orangec,  ROT0, "Daiichi Denshi", "Orange Club - Maruhi Kagai Jugyou (Japan 880213)", 0 )
4052GAME( 1988, orangeci, orangec,  mbmj_p16bit,     orangeci, nbmj8688_state, orangeci, ROT0, "Daiichi Denshi", "Orange Club - Maru-hi Ippatsu Kaihou [BET] (Japan 880221)", 0 )
4053GAME( 1988, vipclub,  orangec,  mbmj_p16bit,     vipclub, nbmj8688_state,  vipclub,  ROT0, "Daiichi Denshi", "Vip Club - Maru-hi Ippatsu Kaihou [BET] (Japan 880310)", 0 )
40514054
40524055/* pure 12-bit palette */
40534056GAME( 1988, kaguya,   0,        mbmj_p12bit,     kaguya, nbmj8688_state,   kaguya,   ROT0, "Miki Syouji", "Mahjong Kaguyahime [BET] (Japan 880521)", 0 )
trunk/src/mame/machine/nb1413m3.c
r19274r19275
1616
1717
1818#define NB1413M3_DEBUG   0
19#define NB1413M3_CHEAT   0
2019
2120
2221int nb1413m3_type;
23//int nb1413m3_sndromregion;
2422const char * nb1413m3_sndromrgntag;
2523int nb1413m3_sndrombank1;
2624int nb1413m3_sndrombank2;
r19274r19275
6260      switch (nb1413m3_type)
6361      {
6462         case NB1413M3_TAIWANMB:
65            nb1413m3_74ls193_counter = 0x05;   // 130 ???
63            nb1413m3_74ls193_counter = 0x05;
6664            break;
6765         case NB1413M3_OMOTESND:
68            nb1413m3_74ls193_counter = 0x05;   // 130 ???
66            nb1413m3_74ls193_counter = 0x05;
6967            break;
7068         case NB1413M3_PASTELG:
71            nb1413m3_74ls193_counter = 0x02;   // 96 ???
69            nb1413m3_74ls193_counter = 0x02;
7270            break;
7371         case NB1413M3_HYHOO:
7472         case NB1413M3_HYHOO2:
75            nb1413m3_74ls193_counter = 0x05;   // 128 ???
73            nb1413m3_74ls193_counter = 0x05;
7674            break;
7775      }
7876   }
r19274r19275
152150
153151INTERRUPT_GEN( nb1413m3_interrupt )
154152{
155//  nb1413m3_busyflag = 1;
156//  nb1413m3_busyctr = 0;
157153   device->execute().set_input_line(0, HOLD_LINE);
158154
159155#if NB1413M3_DEBUG
160156   popmessage("NMI SW:%01X CLOCK:%02X COUNT:%02X", nb1413m3_nmi_enable, nb1413m3_nmi_clock, nb1413m3_nmi_count);
161157   nb1413m3_nmi_count = 0;
162158#endif
163
164   #if NB1413M3_CHEAT
165   #include "nbmjchet.inc"
166   #endif
167159}
168160
169161READ8_HANDLER( nb1413m3_sndrom_r )
r19274r19275
201193      case NB1413M3_HOUSEMN2:      // 0-1
202194      case NB1413M3_LIVEGAL:      // 0-1
203195      case NB1413M3_ORANGEC:      // 0-1
196      case NB1413M3_ORANGECI:      // 0-1
197      case NB1413M3_VIPCLUB:      // 0-1
204198      case NB1413M3_KAGUYA:      // 0-3
205199      case NB1413M3_KAGUYA2:      // 0-3 + 4-5 for protection
206200      case NB1413M3_BIJOKKOY:      // 0-7

Previous 199869 Revisions Next


© 1997-2024 The MAME Team