trunk/src/mame/drivers/bnstars.c
| r243658 | r243659 | |
| 106 | 106 | m_ms32_bg1_ram(*this, "bg1_ram"), |
| 107 | 107 | m_ms32_roz0_ram(*this, "roz0_ram"), |
| 108 | 108 | m_ms32_roz1_ram(*this, "roz1_ram"), |
| 109 | | m_ms32_pal_ram(*this, "pal_ram"), |
| 110 | 109 | m_ms32_roz_ctrl(*this, "roz_ctrl"), |
| 111 | 110 | m_ms32_spram(*this, "spram"), |
| 112 | 111 | m_ms32_tx0_scroll(*this, "tx0_scroll"), |
| 113 | 112 | m_ms32_bg0_scroll(*this, "bg0_scroll"), |
| 114 | 113 | m_ms32_tx1_scroll(*this, "tx1_scroll"), |
| 115 | | m_ms32_bg1_scroll(*this, "bg1_scroll") { } |
| 114 | m_ms32_bg1_scroll(*this, "bg1_scroll"), |
| 115 | m_p1_keys(*this, "P1KEY"), |
| 116 | m_p2_keys(*this, "P2KEY") { } |
| 116 | 117 | |
| 117 | 118 | tilemap_t *m_ms32_tx_tilemap[2]; |
| 118 | 119 | tilemap_t *m_ms32_bg_tilemap[2]; |
| r243658 | r243659 | |
| 123 | 124 | required_shared_ptr<UINT32> m_ms32_bg1_ram; |
| 124 | 125 | required_shared_ptr<UINT32> m_ms32_roz0_ram; |
| 125 | 126 | required_shared_ptr<UINT32> m_ms32_roz1_ram; |
| 126 | | required_shared_ptr_array<UINT32, 2> m_ms32_pal_ram; |
| 127 | 127 | required_shared_ptr_array<UINT32, 2> m_ms32_roz_ctrl; |
| 128 | 128 | required_shared_ptr<UINT32> m_ms32_spram; |
| 129 | 129 | required_shared_ptr<UINT32> m_ms32_tx0_scroll; |
| 130 | 130 | required_shared_ptr<UINT32> m_ms32_bg0_scroll; |
| 131 | 131 | required_shared_ptr<UINT32> m_ms32_tx1_scroll; |
| 132 | 132 | required_shared_ptr<UINT32> m_ms32_bg1_scroll; |
| 133 | |
| 134 | required_ioport_array<4> m_p1_keys; |
| 135 | required_ioport_array<4> m_p2_keys; |
| 136 | |
| 133 | 137 | UINT32 m_bnstars1_mahjong_select; |
| 134 | 138 | DECLARE_WRITE32_MEMBER(ms32_tx0_ram_w); |
| 135 | 139 | DECLARE_WRITE32_MEMBER(ms32_tx1_ram_w); |
| r243658 | r243659 | |
| 137 | 141 | DECLARE_WRITE32_MEMBER(ms32_bg1_ram_w); |
| 138 | 142 | DECLARE_WRITE32_MEMBER(ms32_roz0_ram_w); |
| 139 | 143 | DECLARE_WRITE32_MEMBER(ms32_roz1_ram_w); |
| 140 | | DECLARE_WRITE32_MEMBER(ms32_pal0_ram_w); |
| 141 | | DECLARE_WRITE32_MEMBER(ms32_pal1_ram_w); |
| 142 | | DECLARE_READ32_MEMBER(bnstars1_r); |
| 143 | 144 | DECLARE_WRITE32_MEMBER(bnstars1_mahjong_select_w); |
| 145 | DECLARE_CUSTOM_INPUT_MEMBER(mahjong_ctrl_r); |
| 144 | 146 | DECLARE_DRIVER_INIT(bnstars); |
| 145 | 147 | TILE_GET_INFO_MEMBER(get_ms32_tx0_tile_info); |
| 146 | 148 | TILE_GET_INFO_MEMBER(get_ms32_tx1_tile_info); |
| r243658 | r243659 | |
| 153 | 155 | UINT32 screen_update_bnstars_left(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 154 | 156 | UINT32 screen_update_bnstars_right(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 155 | 157 | void draw_roz(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int priority, int chip); |
| 156 | | void update_color(int color, int screen); |
| 157 | | void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, UINT32 *sprram_top, size_t sprram_size, int region); |
| 158 | void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, UINT32 *sprram_top, size_t sprram_size); |
| 158 | 159 | }; |
| 159 | 160 | |
| 160 | 161 | |
| r243658 | r243659 | |
| 176 | 177 | tileno = m_ms32_tx1_ram[tile_index *2+0] & 0x0000ffff; |
| 177 | 178 | colour = m_ms32_tx1_ram[tile_index *2+1] & 0x0000000f; |
| 178 | 179 | |
| 179 | | SET_TILE_INFO_MEMBER(7,tileno,colour,0); |
| 180 | SET_TILE_INFO_MEMBER(6,tileno,colour,0); |
| 180 | 181 | } |
| 181 | 182 | |
| 182 | 183 | WRITE32_MEMBER(bnstars_state::ms32_tx0_ram_w) |
| r243658 | r243659 | |
| 210 | 211 | tileno = m_ms32_bg1_ram[tile_index *2+0] & 0x0000ffff; |
| 211 | 212 | colour = m_ms32_bg1_ram[tile_index *2+1] & 0x0000000f; |
| 212 | 213 | |
| 213 | | SET_TILE_INFO_MEMBER(6,tileno,colour,0); |
| 214 | SET_TILE_INFO_MEMBER(5,tileno,colour,0); |
| 214 | 215 | } |
| 215 | 216 | |
| 216 | 217 | WRITE32_MEMBER(bnstars_state::ms32_bg0_ram_w) |
| r243658 | r243659 | |
| 329 | 330 | tileno = m_ms32_roz1_ram[tile_index *2+0] & 0x0000ffff; |
| 330 | 331 | colour = m_ms32_roz1_ram[tile_index *2+1] & 0x0000000f; |
| 331 | 332 | |
| 332 | | SET_TILE_INFO_MEMBER(5,tileno,colour,0); |
| 333 | SET_TILE_INFO_MEMBER(4,tileno,colour,0); |
| 333 | 334 | } |
| 334 | 335 | |
| 335 | 336 | WRITE32_MEMBER(bnstars_state::ms32_roz0_ram_w) |
| r243658 | r243659 | |
| 345 | 346 | } |
| 346 | 347 | |
| 347 | 348 | |
| 348 | | void bnstars_state::update_color(int color, int screen) |
| 349 | | { |
| 350 | | int r,g,b; |
| 351 | | |
| 352 | | r = ((m_ms32_pal_ram[screen][color*2] & 0xff00) >>8 ); |
| 353 | | g = ((m_ms32_pal_ram[screen][color*2] & 0x00ff) >>0 ); |
| 354 | | b = ((m_ms32_pal_ram[screen][color*2+1] & 0x00ff) >>0 ); |
| 355 | | |
| 356 | | m_palette->set_pen_color(color+screen*0x8000,rgb_t(r,g,b)); |
| 357 | | } |
| 358 | | |
| 359 | | WRITE32_MEMBER(bnstars_state::ms32_pal0_ram_w) |
| 360 | | { |
| 361 | | COMBINE_DATA(&m_ms32_pal_ram[0][offset]); |
| 362 | | update_color(offset/2, 0); |
| 363 | | } |
| 364 | | |
| 365 | | WRITE32_MEMBER(bnstars_state::ms32_pal1_ram_w) |
| 366 | | { |
| 367 | | COMBINE_DATA(&m_ms32_pal_ram[1][offset]); |
| 368 | | update_color(offset/2, 1); |
| 369 | | } |
| 370 | | |
| 371 | | |
| 372 | 349 | /* SPRITES based on tetrisp2 for now, readd priority bits later */ |
| 373 | | void bnstars_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, UINT32 *sprram_top, size_t sprram_size, int region) |
| 350 | void bnstars_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, UINT32 *sprram_top, size_t sprram_size) |
| 374 | 351 | { |
| 375 | 352 | /*************************************************************************** |
| 376 | 353 | |
| r243658 | r243659 | |
| 412 | 389 | int tx, ty, sx, sy, flipx, flipy; |
| 413 | 390 | int xsize, ysize, xzoom, yzoom; |
| 414 | 391 | int code, attr, color, size, pri, pri_mask; |
| 415 | | gfx_element *gfx = m_gfxdecode->gfx(region); |
| 392 | gfx_element *gfx = m_gfxdecode->gfx(0); |
| 416 | 393 | |
| 417 | 394 | UINT32 *source = sprram_top; |
| 418 | 395 | const UINT32 *finish = sprram_top + (sprram_size - 0x10) / 4; |
| r243658 | r243659 | |
| 538 | 515 | m_ms32_tx_tilemap[0]->draw(screen, bitmap, cliprect, 0,4); |
| 539 | 516 | |
| 540 | 517 | |
| 541 | | draw_sprites(screen,bitmap,cliprect, m_ms32_spram, 0x20000, 0); |
| 518 | draw_sprites(screen,bitmap,cliprect, m_ms32_spram, 0x20000); |
| 542 | 519 | |
| 543 | 520 | return 0; |
| 544 | 521 | } |
| r243658 | r243659 | |
| 547 | 524 | { |
| 548 | 525 | screen.priority().fill(0, cliprect); |
| 549 | 526 | |
| 550 | | bitmap.fill(0x8000+0, cliprect); /* bg color */ |
| 527 | bitmap.fill(0, cliprect); /* bg color */ |
| 551 | 528 | |
| 552 | 529 | |
| 553 | 530 | m_ms32_bg_tilemap[1]->set_scrollx(0, m_ms32_bg1_scroll[0x00/4] + m_ms32_bg1_scroll[0x08/4] + 0x10 ); |
| r243658 | r243659 | |
| 560 | 537 | m_ms32_tx_tilemap[1]->set_scrolly(0, m_ms32_tx1_scroll[0x0c/4] + m_ms32_tx1_scroll[0x14/4]); |
| 561 | 538 | m_ms32_tx_tilemap[1]->draw(screen, bitmap, cliprect, 0,4); |
| 562 | 539 | |
| 563 | | draw_sprites(screen,bitmap,cliprect, m_ms32_spram+(0x20000/4), 0x20000, 4); |
| 540 | draw_sprites(screen,bitmap,cliprect, m_ms32_spram+(0x20000/4), 0x20000); |
| 564 | 541 | |
| 565 | 542 | return 0; |
| 566 | 543 | } |
| 567 | 544 | |
| 568 | 545 | static INPUT_PORTS_START( bnstars ) |
| 569 | | PORT_START("IN0") |
| 570 | | PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_START1 ) |
| 546 | PORT_START("P1") |
| 547 | PORT_BIT( 0x000000ff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, bnstars_state, mahjong_ctrl_r, (void *)0) |
| 548 | PORT_BIT( 0x0000ff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 549 | PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 550 | PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 551 | PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 552 | PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("P1 Test?") PORT_CODE(KEYCODE_F1) |
| 553 | |
| 554 | PORT_START("P1KEY.0") |
| 555 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) |
| 571 | 556 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_A ) |
| 572 | 557 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_E ) |
| 573 | 558 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M ) |
| 574 | 559 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_I ) |
| 575 | 560 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) |
| 576 | | PORT_DIPNAME( 0x00000040, 0x00000040, DEF_STR( Unknown ) ) |
| 577 | | PORT_DIPSETTING( 0x00000040, DEF_STR( Off ) ) |
| 578 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 579 | | PORT_DIPNAME( 0x00000080, 0x00000080, DEF_STR( Unknown ) ) |
| 580 | | PORT_DIPSETTING( 0x00000080, DEF_STR( Off ) ) |
| 581 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 582 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) |
| 583 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 584 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 585 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unknown ) ) |
| 586 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 587 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 588 | | PORT_DIPNAME( 0x00000400, 0x00000400, DEF_STR( Unknown ) ) |
| 589 | | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 590 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 591 | | PORT_DIPNAME( 0x00000800, 0x00000800, DEF_STR( Unknown ) ) |
| 592 | | PORT_DIPSETTING( 0x00000800, DEF_STR( Off ) ) |
| 593 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 594 | | PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Unknown ) ) |
| 595 | | PORT_DIPSETTING( 0x00001000, DEF_STR( Off ) ) |
| 596 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 597 | | PORT_DIPNAME( 0x00002000, 0x00002000, DEF_STR( Unknown ) ) |
| 598 | | PORT_DIPSETTING( 0x00002000, DEF_STR( Off ) ) |
| 599 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 600 | | PORT_DIPNAME( 0x00004000, 0x00004000, DEF_STR( Unknown ) ) |
| 601 | | PORT_DIPSETTING( 0x00004000, DEF_STR( Off ) ) |
| 602 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 603 | | PORT_DIPNAME( 0x00008000, 0x00008000, DEF_STR( Unknown ) ) |
| 604 | | PORT_DIPSETTING( 0x00008000, DEF_STR( Off ) ) |
| 605 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 606 | | PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 607 | | PORT_DIPNAME( 0x00020000, 0x00020000, "MAH1" ) |
| 608 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 609 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 610 | | PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_SERVICE1 ) |
| 611 | | PORT_DIPNAME( 0x00080000, 0x00080000, "Service Mode ? 1" ) |
| 612 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 613 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 614 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) |
| 615 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 616 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 617 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unknown ) ) |
| 618 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 619 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 620 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) |
| 621 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 622 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 623 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unknown ) ) |
| 624 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 625 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 626 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 627 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 628 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 629 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 630 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 631 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 632 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 633 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 634 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 635 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 636 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 637 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 638 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 639 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 640 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 641 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 642 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 643 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 644 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 645 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 646 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 647 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 648 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 649 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 561 | PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 650 | 562 | |
| 651 | | PORT_START("IN1") |
| 652 | | PORT_DIPNAME( 0x00000001, 0x00000001, "MAH2" ) |
| 653 | | PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) |
| 654 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 655 | | PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_B ) |
| 656 | | PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_F ) |
| 657 | | PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_N ) |
| 658 | | PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_J ) |
| 659 | | PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) |
| 660 | | PORT_DIPNAME( 0x00000040, 0x00000040, DEF_STR( Unknown ) ) |
| 661 | | PORT_DIPSETTING( 0x00000040, DEF_STR( Off ) ) |
| 662 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 663 | | PORT_DIPNAME( 0x00000080, 0x00000080, DEF_STR( Unknown ) ) |
| 664 | | PORT_DIPSETTING( 0x00000080, DEF_STR( Off ) ) |
| 665 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 666 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) |
| 667 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 668 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 669 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unknown ) ) |
| 670 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 671 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 672 | | PORT_DIPNAME( 0x00000400, 0x00000400, DEF_STR( Unknown ) ) |
| 673 | | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 674 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 675 | | PORT_DIPNAME( 0x00000800, 0x00000800, DEF_STR( Unknown ) ) |
| 676 | | PORT_DIPSETTING( 0x00000800, DEF_STR( Off ) ) |
| 677 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 678 | | PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Unknown ) ) |
| 679 | | PORT_DIPSETTING( 0x00001000, DEF_STR( Off ) ) |
| 680 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 681 | | PORT_DIPNAME( 0x00002000, 0x00002000, DEF_STR( Unknown ) ) |
| 682 | | PORT_DIPSETTING( 0x00002000, DEF_STR( Off ) ) |
| 683 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 684 | | PORT_DIPNAME( 0x00004000, 0x00004000, DEF_STR( Unknown ) ) |
| 685 | | PORT_DIPSETTING( 0x00004000, DEF_STR( Off ) ) |
| 686 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 687 | | PORT_DIPNAME( 0x00008000, 0x00008000, DEF_STR( Unknown ) ) |
| 688 | | PORT_DIPSETTING( 0x00008000, DEF_STR( Off ) ) |
| 689 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 690 | | PORT_DIPNAME( 0x00010000, 0x00010000, "MAH3" ) |
| 691 | | PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) |
| 692 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 693 | | PORT_DIPNAME( 0x00020000, 0x00020000, DEF_STR( Unknown ) ) |
| 694 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 695 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 696 | | PORT_DIPNAME( 0x00040000, 0x00040000, DEF_STR( Unknown ) ) |
| 697 | | PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) ) |
| 698 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 699 | | PORT_DIPNAME( 0x00080000, 0x00080000, DEF_STR( Unknown ) ) |
| 700 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 701 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 702 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) |
| 703 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 704 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 705 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unknown ) ) |
| 706 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 707 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 708 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) |
| 709 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 710 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 711 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unknown ) ) |
| 712 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 713 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 714 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 715 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 716 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 717 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 718 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 719 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 720 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 721 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 722 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 723 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 724 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 725 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 726 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 727 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 728 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 729 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 730 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 731 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 732 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 733 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 734 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 735 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 736 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 737 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 563 | PORT_START("P1KEY.1") |
| 564 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 565 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_B ) |
| 566 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_F ) |
| 567 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N ) |
| 568 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_J ) |
| 569 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) |
| 570 | PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 738 | 571 | |
| 739 | | PORT_START("IN2") |
| 740 | | PORT_DIPNAME( 0x00000001, 0x00000001, "MAH4" ) |
| 741 | | PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) |
| 742 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 743 | | PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_C ) |
| 744 | | PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_G ) |
| 745 | | PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) |
| 746 | | PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_K ) |
| 747 | | PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) |
| 748 | | PORT_DIPNAME( 0x00000040, 0x00000040, DEF_STR( Unknown ) ) |
| 749 | | PORT_DIPSETTING( 0x00000040, DEF_STR( Off ) ) |
| 750 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 751 | | PORT_DIPNAME( 0x00000080, 0x00000080, DEF_STR( Unknown ) ) |
| 752 | | PORT_DIPSETTING( 0x00000080, DEF_STR( Off ) ) |
| 753 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 754 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) |
| 755 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 756 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 757 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unknown ) ) |
| 758 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 759 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 760 | | PORT_DIPNAME( 0x00000400, 0x00000400, DEF_STR( Unknown ) ) |
| 761 | | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 762 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 763 | | PORT_DIPNAME( 0x00000800, 0x00000800, DEF_STR( Unknown ) ) |
| 764 | | PORT_DIPSETTING( 0x00000800, DEF_STR( Off ) ) |
| 765 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 766 | | PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Unknown ) ) |
| 767 | | PORT_DIPSETTING( 0x00001000, DEF_STR( Off ) ) |
| 768 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 769 | | PORT_DIPNAME( 0x00002000, 0x00002000, DEF_STR( Unknown ) ) |
| 770 | | PORT_DIPSETTING( 0x00002000, DEF_STR( Off ) ) |
| 771 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 772 | | PORT_DIPNAME( 0x00004000, 0x00004000, DEF_STR( Unknown ) ) |
| 773 | | PORT_DIPSETTING( 0x00004000, DEF_STR( Off ) ) |
| 774 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 775 | | PORT_DIPNAME( 0x00008000, 0x00008000, DEF_STR( Unknown ) ) |
| 776 | | PORT_DIPSETTING( 0x00008000, DEF_STR( Off ) ) |
| 777 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 778 | | PORT_DIPNAME( 0x00010000, 0x00010000, "MAH5" ) |
| 779 | | PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) |
| 780 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 781 | | PORT_DIPNAME( 0x00020000, 0x00020000, DEF_STR( Unknown ) ) |
| 782 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 783 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 784 | | PORT_DIPNAME( 0x00040000, 0x00040000, DEF_STR( Unknown ) ) |
| 785 | | PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) ) |
| 786 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 787 | | PORT_DIPNAME( 0x00080000, 0x00080000, DEF_STR( Unknown ) ) |
| 788 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 789 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 790 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) |
| 791 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 792 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 793 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unknown ) ) |
| 794 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 795 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 796 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) |
| 797 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 798 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 799 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unknown ) ) |
| 800 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 801 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 802 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 803 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 804 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 805 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 806 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 807 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 808 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 809 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 810 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 811 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 812 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 813 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 814 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 815 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 816 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 817 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 818 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 819 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 820 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 821 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 822 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 823 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 824 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 825 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 572 | PORT_START("P1KEY.2") |
| 573 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 574 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_C ) |
| 575 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_G ) |
| 576 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) |
| 577 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_K ) |
| 578 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) |
| 579 | PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 826 | 580 | |
| 827 | | PORT_START("IN3") |
| 828 | | PORT_DIPNAME( 0x00000001, 0x00000001, "MAH6" ) |
| 829 | | PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) |
| 830 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 831 | | PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_D ) |
| 832 | | PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_H ) |
| 833 | | PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) |
| 834 | | PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_L ) |
| 835 | | PORT_DIPNAME( 0x00000020, 0x00000020, DEF_STR( Unknown ) ) |
| 836 | | PORT_DIPSETTING( 0x00000020, DEF_STR( Off ) ) |
| 837 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 838 | | PORT_DIPNAME( 0x00000040, 0x00000040, DEF_STR( Unknown ) ) |
| 839 | | PORT_DIPSETTING( 0x00000040, DEF_STR( Off ) ) |
| 840 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 841 | | PORT_DIPNAME( 0x00000080, 0x00000080, DEF_STR( Unknown ) ) |
| 842 | | PORT_DIPSETTING( 0x00000080, DEF_STR( Off ) ) |
| 843 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 844 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) |
| 845 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 846 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 847 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unknown ) ) |
| 848 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 849 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 850 | | PORT_DIPNAME( 0x00000400, 0x00000400, DEF_STR( Unknown ) ) |
| 851 | | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 852 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 853 | | PORT_DIPNAME( 0x00000800, 0x00000800, DEF_STR( Unknown ) ) |
| 854 | | PORT_DIPSETTING( 0x00000800, DEF_STR( Off ) ) |
| 855 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 856 | | PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Unknown ) ) |
| 857 | | PORT_DIPSETTING( 0x00001000, DEF_STR( Off ) ) |
| 858 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 859 | | PORT_DIPNAME( 0x00002000, 0x00002000, DEF_STR( Unknown ) ) |
| 860 | | PORT_DIPSETTING( 0x00002000, DEF_STR( Off ) ) |
| 861 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 862 | | PORT_DIPNAME( 0x00004000, 0x00004000, DEF_STR( Unknown ) ) |
| 863 | | PORT_DIPSETTING( 0x00004000, DEF_STR( Off ) ) |
| 864 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 865 | | PORT_DIPNAME( 0x00008000, 0x00008000, DEF_STR( Unknown ) ) |
| 866 | | PORT_DIPSETTING( 0x00008000, DEF_STR( Off ) ) |
| 867 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 868 | | PORT_DIPNAME( 0x00010000, 0x00010000, "MAH7" ) |
| 869 | | PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) |
| 870 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 871 | | PORT_DIPNAME( 0x00020000, 0x00020000, DEF_STR( Unknown ) ) |
| 872 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 873 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 874 | | PORT_DIPNAME( 0x00040000, 0x00040000, DEF_STR( Unknown ) ) |
| 875 | | PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) ) |
| 876 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 877 | | PORT_DIPNAME( 0x00080000, 0x00080000, DEF_STR( Unknown ) ) |
| 878 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 879 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 880 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) |
| 881 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 882 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 883 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unknown ) ) |
| 884 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 885 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 886 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) |
| 887 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 888 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 889 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unknown ) ) |
| 890 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 891 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 892 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 893 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 894 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 895 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 896 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 897 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 898 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 899 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 900 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 901 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 902 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 903 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 904 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 905 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 906 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 907 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 908 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 909 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 910 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 911 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 912 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 913 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 914 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 915 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 581 | PORT_START("P1KEY.3") |
| 582 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 583 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_D ) |
| 584 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_H ) |
| 585 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) |
| 586 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_L ) |
| 587 | PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 916 | 588 | |
| 917 | | PORT_START("IN4") |
| 918 | | PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_START2 ) |
| 919 | | /* The follow 4 bits active 4 button each one for the second player */ |
| 920 | | PORT_DIPNAME( 0x00000002, 0x00000002, "P2: A,B,C,D" ) |
| 921 | | PORT_DIPSETTING( 0x00000002, DEF_STR( Off ) ) |
| 922 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 923 | | PORT_DIPNAME( 0x00000004, 0x00000004, "P2: E,F,G,H" ) |
| 924 | | PORT_DIPSETTING( 0x00000004, DEF_STR( Off ) ) |
| 925 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 926 | | PORT_DIPNAME( 0x00000008, 0x00000008, "P2: M,N,Pon,Chie" ) |
| 927 | | PORT_DIPSETTING( 0x00000008, DEF_STR( Off ) ) |
| 928 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 929 | | PORT_DIPNAME( 0x00000010, 0x00000010, "P2: I,J,K,L" ) |
| 930 | | PORT_DIPSETTING( 0x00000010, DEF_STR( Off ) ) |
| 931 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 932 | | PORT_DIPNAME( 0x00000020, 0x00000020, "P2: Kan,Reach,Ron" ) |
| 933 | | PORT_DIPSETTING( 0x00000020, DEF_STR( Off ) ) |
| 934 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 935 | | PORT_DIPNAME( 0x00000040, 0x00000040, DEF_STR( Unknown ) ) |
| 936 | | PORT_DIPSETTING( 0x00000040, DEF_STR( Off ) ) |
| 937 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 938 | | PORT_DIPNAME( 0x00000080, 0x00000080, DEF_STR( Unknown ) ) |
| 939 | | PORT_DIPSETTING( 0x00000080, DEF_STR( Off ) ) |
| 940 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 941 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) |
| 942 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 943 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 944 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unknown ) ) |
| 945 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 946 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 947 | | PORT_DIPNAME( 0x00000400, 0x00000400, DEF_STR( Unknown ) ) |
| 948 | | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 949 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 950 | | PORT_DIPNAME( 0x00000800, 0x00000800, DEF_STR( Unknown ) ) |
| 951 | | PORT_DIPSETTING( 0x00000800, DEF_STR( Off ) ) |
| 952 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 953 | | PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Unknown ) ) |
| 954 | | PORT_DIPSETTING( 0x00001000, DEF_STR( Off ) ) |
| 955 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 956 | | PORT_DIPNAME( 0x00002000, 0x00002000, DEF_STR( Unknown ) ) |
| 957 | | PORT_DIPSETTING( 0x00002000, DEF_STR( Off ) ) |
| 958 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 959 | | PORT_DIPNAME( 0x00004000, 0x00004000, DEF_STR( Unknown ) ) |
| 960 | | PORT_DIPSETTING( 0x00004000, DEF_STR( Off ) ) |
| 961 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 962 | | PORT_DIPNAME( 0x00008000, 0x00008000, DEF_STR( Unknown ) ) |
| 963 | | PORT_DIPSETTING( 0x00008000, DEF_STR( Off ) ) |
| 964 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 589 | PORT_START("P2") |
| 590 | PORT_BIT( 0x000000ff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, bnstars_state, mahjong_ctrl_r, (void *)1) |
| 591 | PORT_BIT( 0x0000ff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 965 | 592 | PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 966 | | PORT_DIPNAME( 0x00020000, 0x00020000, "MAH9" ) |
| 967 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 968 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 593 | PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 969 | 594 | PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_SERVICE2 ) |
| 970 | | PORT_DIPNAME( 0x00080000, 0x00080000, "Service Mode ? 2" ) |
| 971 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 972 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 973 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) |
| 974 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 975 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 976 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unknown ) ) |
| 977 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 978 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 979 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) |
| 980 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 981 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 982 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unknown ) ) |
| 983 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 984 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 985 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 986 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 987 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 988 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 989 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 990 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 991 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 992 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 993 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 994 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 995 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 996 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 997 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 998 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 999 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1000 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 1001 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 1002 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1003 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 1004 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 1005 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1006 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 1007 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 1008 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 595 | PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("P2 Test?") PORT_CODE(KEYCODE_F2) |
| 1009 | 596 | |
| 1010 | | PORT_START("IN5") |
| 597 | PORT_START("P2KEY.0") |
| 598 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START2 ) |
| 599 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_A ) PORT_PLAYER(2) |
| 600 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_E ) PORT_PLAYER(2) |
| 601 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M ) PORT_PLAYER(2) |
| 602 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_I ) PORT_PLAYER(2) |
| 603 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) PORT_PLAYER(2) |
| 604 | PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 605 | |
| 606 | PORT_START("P2KEY.1") |
| 607 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 608 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_B ) PORT_PLAYER(2) |
| 609 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_F ) PORT_PLAYER(2) |
| 610 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N ) PORT_PLAYER(2) |
| 611 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_J ) PORT_PLAYER(2) |
| 612 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) PORT_PLAYER(2) |
| 613 | PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 614 | |
| 615 | PORT_START("P2KEY.2") |
| 616 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 617 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_C ) PORT_PLAYER(2) |
| 618 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_G ) PORT_PLAYER(2) |
| 619 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) PORT_PLAYER(2) |
| 620 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_K ) PORT_PLAYER(2) |
| 621 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) PORT_PLAYER(2) |
| 622 | PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 623 | |
| 624 | PORT_START("P2KEY.3") |
| 625 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 626 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_D ) PORT_PLAYER(2) |
| 627 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_H ) PORT_PLAYER(2) |
| 628 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) PORT_PLAYER(2) |
| 629 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_L ) PORT_PLAYER(2) |
| 630 | PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 631 | |
| 632 | PORT_START("DSW") |
| 1011 | 633 | PORT_DIPNAME( 0x00000001, 0x00000001, "Test Mode" ) PORT_DIPLOCATION("SW1:8") |
| 1012 | 634 | PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) |
| 1013 | 635 | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| r243658 | r243659 | |
| 1032 | 654 | PORT_DIPSETTING( 0x00000060, DEF_STR( 1C_2C ) ) |
| 1033 | 655 | PORT_DIPSETTING( 0x000000a0, DEF_STR( 1C_3C ) ) |
| 1034 | 656 | PORT_DIPSETTING( 0x00000020, DEF_STR( 1C_4C ) ) |
| 1035 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:8") |
| 1036 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 1037 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1038 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:7") |
| 1039 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 1040 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 657 | |
| 658 | PORT_DIPUNUSED_DIPLOC( 0x00000100, 0x00000100, "SW2:8" ) |
| 659 | PORT_DIPUNUSED_DIPLOC( 0x00000200, 0x00000200, "SW2:7" ) |
| 1041 | 660 | PORT_DIPNAME( 0x00000400, 0x00000400, "Taisen Only" ) PORT_DIPLOCATION("SW2:6") |
| 1042 | 661 | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 1043 | 662 | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| r243658 | r243659 | |
| 1057 | 676 | PORT_DIPSETTING( 0x0000a000, DEF_STR( Harder ) ) |
| 1058 | 677 | PORT_DIPSETTING( 0x00002000, DEF_STR( Hardest ) ) |
| 1059 | 678 | |
| 1060 | | PORT_DIPNAME( 0x00010000, 0x00010000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:8") |
| 1061 | | PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) |
| 1062 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1063 | | PORT_DIPNAME( 0x00020000, 0x00020000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:7") |
| 1064 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 1065 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1066 | | PORT_DIPNAME( 0x00040000, 0x00040000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:6") |
| 1067 | | PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) ) |
| 1068 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1069 | | PORT_DIPNAME( 0x00080000, 0x00080000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:5") |
| 1070 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 1071 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1072 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:4") |
| 1073 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 1074 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1075 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:3") |
| 1076 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 1077 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1078 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:2") |
| 1079 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 1080 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1081 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:1") |
| 1082 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 1083 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1084 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 1085 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 1086 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1087 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 1088 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 1089 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1090 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 1091 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 1092 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1093 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 1094 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 1095 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1096 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 1097 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 1098 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1099 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 1100 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 1101 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1102 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 1103 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 1104 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1105 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 1106 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 1107 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1108 | | |
| 1109 | | PORT_START("IN6") |
| 1110 | | PORT_DIPNAME( 0x00000001, 0x00000001, "4" ) |
| 1111 | | PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) |
| 1112 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1113 | | PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Unknown ) ) |
| 1114 | | PORT_DIPSETTING( 0x00000002, DEF_STR( Off ) ) |
| 1115 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1116 | | PORT_DIPNAME( 0x00000004, 0x00000004, DEF_STR( Unknown ) ) |
| 1117 | | PORT_DIPSETTING( 0x00000004, DEF_STR( Off ) ) |
| 1118 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1119 | | PORT_DIPNAME( 0x00000008, 0x00000008, DEF_STR( Unknown ) ) |
| 1120 | | PORT_DIPSETTING( 0x00000008, DEF_STR( Off ) ) |
| 1121 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1122 | | PORT_DIPNAME( 0x00000010, 0x00000010, DEF_STR( Unknown ) ) |
| 1123 | | PORT_DIPSETTING( 0x00000010, DEF_STR( Off ) ) |
| 1124 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1125 | | PORT_DIPNAME( 0x00000020, 0x00000020, DEF_STR( Unknown ) ) |
| 1126 | | PORT_DIPSETTING( 0x00000020, DEF_STR( Off ) ) |
| 1127 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1128 | | PORT_DIPNAME( 0x00000040, 0x00000040, DEF_STR( Unknown ) ) |
| 1129 | | PORT_DIPSETTING( 0x00000040, DEF_STR( Off ) ) |
| 1130 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1131 | | PORT_DIPNAME( 0x00000080, 0x00000080, DEF_STR( Unknown ) ) |
| 1132 | | PORT_DIPSETTING( 0x00000080, DEF_STR( Off ) ) |
| 1133 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1134 | | PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) |
| 1135 | | PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) |
| 1136 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1137 | | PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Unknown ) ) |
| 1138 | | PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) |
| 1139 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1140 | | PORT_DIPNAME( 0x00000400, 0x00000400, DEF_STR( Unknown ) ) |
| 1141 | | PORT_DIPSETTING( 0x00000400, DEF_STR( Off ) ) |
| 1142 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1143 | | PORT_DIPNAME( 0x00000800, 0x00000800, DEF_STR( Unknown ) ) |
| 1144 | | PORT_DIPSETTING( 0x00000800, DEF_STR( Off ) ) |
| 1145 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1146 | | PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Unknown ) ) |
| 1147 | | PORT_DIPSETTING( 0x00001000, DEF_STR( Off ) ) |
| 1148 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1149 | | PORT_DIPNAME( 0x00002000, 0x00002000, DEF_STR( Unknown ) ) |
| 1150 | | PORT_DIPSETTING( 0x00002000, DEF_STR( Off ) ) |
| 1151 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1152 | | PORT_DIPNAME( 0x00004000, 0x00004000, DEF_STR( Unknown ) ) |
| 1153 | | PORT_DIPSETTING( 0x00004000, DEF_STR( Off ) ) |
| 1154 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1155 | | PORT_DIPNAME( 0x00008000, 0x00008000, DEF_STR( Unknown ) ) |
| 1156 | | PORT_DIPSETTING( 0x00008000, DEF_STR( Off ) ) |
| 1157 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1158 | | PORT_DIPNAME( 0x00010000, 0x00010000, "5" ) |
| 1159 | | PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) |
| 1160 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1161 | | PORT_DIPNAME( 0x00020000, 0x00020000, DEF_STR( Unknown ) ) |
| 1162 | | PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) |
| 1163 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1164 | | PORT_DIPNAME( 0x00040000, 0x00040000, DEF_STR( Unknown ) ) |
| 1165 | | PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) ) |
| 1166 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1167 | | PORT_DIPNAME( 0x00080000, 0x00080000, DEF_STR( Unknown ) ) |
| 1168 | | PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) ) |
| 1169 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1170 | | PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) |
| 1171 | | PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) ) |
| 1172 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1173 | | PORT_DIPNAME( 0x00200000, 0x00200000, DEF_STR( Unknown ) ) |
| 1174 | | PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) ) |
| 1175 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1176 | | PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) |
| 1177 | | PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) ) |
| 1178 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1179 | | PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Unknown ) ) |
| 1180 | | PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) ) |
| 1181 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1182 | | PORT_DIPNAME( 0x01000000, 0x01000000, DEF_STR( Unknown ) ) |
| 1183 | | PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) ) |
| 1184 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1185 | | PORT_DIPNAME( 0x02000000, 0x02000000, DEF_STR( Unknown ) ) |
| 1186 | | PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) ) |
| 1187 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1188 | | PORT_DIPNAME( 0x04000000, 0x04000000, DEF_STR( Unknown ) ) |
| 1189 | | PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) ) |
| 1190 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1191 | | PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) |
| 1192 | | PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) ) |
| 1193 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1194 | | PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) |
| 1195 | | PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) ) |
| 1196 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1197 | | PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) |
| 1198 | | PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) ) |
| 1199 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1200 | | PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) |
| 1201 | | PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) ) |
| 1202 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 1203 | | PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) |
| 1204 | | PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) ) |
| 1205 | | PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) |
| 679 | PORT_DIPUNUSED_DIPLOC( 0x00010000, 0x00010000, "SW3:8" ) |
| 680 | PORT_DIPUNUSED_DIPLOC( 0x00020000, 0x00020000, "SW3:7" ) |
| 681 | PORT_DIPUNUSED_DIPLOC( 0x00040000, 0x00040000, "SW3:6" ) |
| 682 | PORT_DIPUNUSED_DIPLOC( 0x00080000, 0x00080000, "SW3:5" ) |
| 683 | PORT_DIPUNUSED_DIPLOC( 0x00100000, 0x00100000, "SW3:4" ) |
| 684 | PORT_DIPUNUSED_DIPLOC( 0x00200000, 0x00200000, "SW3:3" ) |
| 685 | PORT_DIPUNUSED_DIPLOC( 0x00400000, 0x00400000, "SW3:2" ) |
| 686 | PORT_DIPUNUSED_DIPLOC( 0x00800000, 0x00800000, "SW3:1" ) |
| 687 | PORT_BIT( 0xff000000, IP_ACTIVE_LOW, IPT_UNUSED ) // Unused? |
| 1206 | 688 | INPUT_PORTS_END |
| 1207 | 689 | |
| 1208 | 690 | |
| 1209 | | |
| 1210 | 691 | /* sprites are contained in 256x256 "tiles" */ |
| 1211 | 692 | static GFXLAYOUT_RAW( spritelayout, 256, 256, 256*8, 256*256*8 ) |
| 1212 | 693 | static GFXLAYOUT_RAW( bglayout, 16, 16, 16*8, 16*16*8 ) |
| r243658 | r243659 | |
| 1218 | 699 | GFXDECODE_ENTRY( "gfx4", 0, bglayout, 0x1000, 0x10 ) /* Bg scr1 */ |
| 1219 | 700 | GFXDECODE_ENTRY( "gfx5", 0, txlayout, 0x6000, 0x10 ) /* Tx scr1 */ |
| 1220 | 701 | |
| 1221 | | GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0x8000+0x0000, 0x10 ) |
| 1222 | | GFXDECODE_ENTRY( "gfx3", 0, bglayout, 0x8000+0x5000, 0x10 ) /* Roz scr2 */ |
| 1223 | | GFXDECODE_ENTRY( "gfx6", 0, bglayout, 0x8000+0x1000, 0x10 ) /* Bg scr2 */ |
| 1224 | | GFXDECODE_ENTRY( "gfx7", 0, txlayout, 0x8000+0x6000, 0x10 ) /* Tx scr2 */ |
| 1225 | | |
| 702 | GFXDECODE_ENTRY( "gfx3", 0, bglayout, 0x5000, 0x10 ) /* Roz scr2 */ |
| 703 | GFXDECODE_ENTRY( "gfx6", 0, bglayout, 0x1000, 0x10 ) /* Bg scr2 */ |
| 704 | GFXDECODE_ENTRY( "gfx7", 0, txlayout, 0x6000, 0x10 ) /* Tx scr2 */ |
| 1226 | 705 | GFXDECODE_END |
| 1227 | 706 | |
| 1228 | | READ32_MEMBER(bnstars_state::bnstars1_r) |
| 707 | CUSTOM_INPUT_MEMBER(bnstars_state::mahjong_ctrl_r) |
| 1229 | 708 | { |
| 709 | required_ioport_array<4> &keys = (param == 0) ? m_p1_keys : m_p2_keys; |
| 710 | |
| 1230 | 711 | switch (m_bnstars1_mahjong_select & 0x2080) |
| 1231 | 712 | { |
| 1232 | 713 | default: |
| 1233 | 714 | printf("unk bnstars1_r %08x\n",m_bnstars1_mahjong_select); |
| 1234 | | return 0xffffffff; |
| 715 | return 0xff; |
| 1235 | 716 | |
| 1236 | 717 | case 0x0000: |
| 1237 | | return ioport("IN0")->read(); |
| 718 | return keys[0]->read(); |
| 1238 | 719 | |
| 1239 | 720 | case 0x0080: |
| 1240 | | return ioport("IN1")->read(); |
| 721 | return keys[1]->read(); |
| 1241 | 722 | |
| 1242 | 723 | case 0x2000: |
| 1243 | | return ioport("IN2")->read(); |
| 724 | return keys[2]->read(); |
| 1244 | 725 | |
| 1245 | 726 | case 0x2080: |
| 1246 | | return ioport("IN3")->read(); |
| 1247 | | |
| 727 | return keys[3]->read(); |
| 1248 | 728 | } |
| 1249 | 729 | } |
| 1250 | 730 | |
| r243658 | r243659 | |
| 1260 | 740 | |
| 1261 | 741 | AM_RANGE(0xfc800000, 0xfc800003) AM_WRITE(ms32_sound_w) |
| 1262 | 742 | |
| 1263 | | AM_RANGE(0xfcc00004, 0xfcc00007) AM_READ(bnstars1_r ) |
| 1264 | | AM_RANGE(0xfcc00008, 0xfcc0000b) AM_READ_PORT("IN4") |
| 1265 | | AM_RANGE(0xfcc00010, 0xfcc00013) AM_READ_PORT("IN5") |
| 743 | AM_RANGE(0xfcc00004, 0xfcc00007) AM_READ_PORT("P1") |
| 744 | AM_RANGE(0xfcc00008, 0xfcc0000b) AM_READ_PORT("P2") |
| 745 | AM_RANGE(0xfcc00010, 0xfcc00013) AM_READ_PORT("DSW") |
| 1266 | 746 | |
| 1267 | 747 | AM_RANGE(0xfce00034, 0xfce00037) AM_WRITENOP |
| 1268 | 748 | AM_RANGE(0xfce00038, 0xfce0003b) AM_WRITE(reset_sub_w) |
| r243658 | r243659 | |
| 1286 | 766 | /* wrote together */ |
| 1287 | 767 | AM_RANGE(0xfd040000, 0xfd047fff) AM_RAM // priority ram |
| 1288 | 768 | AM_RANGE(0xfd080000, 0xfd087fff) AM_RAM |
| 1289 | | AM_RANGE(0xfd200000, 0xfd237fff) AM_RAM_WRITE(ms32_pal1_ram_w) AM_SHARE("pal_ram.1") |
| 1290 | | AM_RANGE(0xfd400000, 0xfd437fff) AM_RAM_WRITE(ms32_pal0_ram_w) AM_SHARE("pal_ram.0") |
| 769 | AM_RANGE(0xfd200000, 0xfd237fff) AM_DEVREADWRITE16("palette2", palette_device, read, write, 0x0000ffff) AM_SHARE("palette2") |
| 770 | AM_RANGE(0xfd400000, 0xfd437fff) AM_DEVREADWRITE16("palette", palette_device, read, write, 0x0000ffff) AM_SHARE("palette") |
| 1291 | 771 | AM_RANGE(0xfe000000, 0xfe01ffff) AM_RAM_WRITE(ms32_roz1_ram_w) AM_SHARE("roz1_ram") |
| 1292 | 772 | AM_RANGE(0xfe400000, 0xfe41ffff) AM_RAM_WRITE(ms32_roz0_ram_w) AM_SHARE("roz0_ram") |
| 1293 | 773 | AM_RANGE(0xfe800000, 0xfe83ffff) AM_RAM AM_SHARE("spram") |
| r243658 | r243659 | |
| 1297 | 777 | AM_RANGE(0xfec08000, 0xfec0ffff) AM_RAM_WRITE(ms32_bg0_ram_w) AM_SHARE("bg0_ram") |
| 1298 | 778 | |
| 1299 | 779 | AM_RANGE(0xfee00000, 0xfee1ffff) AM_RAM |
| 1300 | | AM_RANGE(0xffe00000, 0xffffffff) AM_ROMBANK("bank1") |
| 780 | AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0) |
| 1301 | 781 | ADDRESS_MAP_END |
| 1302 | 782 | |
| 1303 | 783 | static ADDRESS_MAP_START( bnstars_sound_map, AS_PROGRAM, 8, bnstars_state ) |
| r243658 | r243659 | |
| 1335 | 815 | |
| 1336 | 816 | MCFG_QUANTUM_TIME(attotime::from_hz(60000)) |
| 1337 | 817 | |
| 1338 | | |
| 1339 | 818 | MCFG_GFXDECODE_ADD("gfxdecode", "palette", bnstars) |
| 1340 | | MCFG_PALETTE_ADD("palette", 0x8000*2) |
| 1341 | 819 | |
| 820 | MCFG_PALETTE_ADD("palette", 0x8000) |
| 821 | MCFG_PALETTE_FORMAT(XBRG) |
| 822 | MCFG_PALETTE_MEMBITS(16) |
| 823 | |
| 824 | MCFG_PALETTE_ADD("palette2", 0x8000) |
| 825 | MCFG_PALETTE_FORMAT(XBRG) |
| 826 | MCFG_PALETTE_MEMBITS(16) |
| 827 | |
| 1342 | 828 | MCFG_DEFAULT_LAYOUT(layout_dualhsxs) |
| 1343 | 829 | |
| 1344 | 830 | MCFG_SCREEN_ADD("lscreen", RASTER) |
| r243658 | r243659 | |
| 1355 | 841 | MCFG_SCREEN_SIZE(40*8, 32*8) |
| 1356 | 842 | MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1) |
| 1357 | 843 | MCFG_SCREEN_UPDATE_DRIVER(bnstars_state, screen_update_bnstars_right) |
| 1358 | | MCFG_SCREEN_PALETTE("palette") |
| 844 | MCFG_SCREEN_PALETTE("palette2") |
| 1359 | 845 | |
| 1360 | 846 | |
| 1361 | 847 | /* sound hardware */ |
| r243658 | r243659 | |
| 1415 | 901 | ROM_LOAD( "vsjanshi5.6", 0x000000, 0x080000, CRC(fdbbac21) SHA1(c77d852e53126cc8ebfe1e79d1134e42b54d1aab) ) |
| 1416 | 902 | |
| 1417 | 903 | /* Sound Program (one, driving both screen sound) */ |
| 1418 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 904 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1419 | 905 | ROM_LOAD( "sb93145.5", 0x000000, 0x040000, CRC(0424e899) SHA1(fbcdebfa3d5f52b10cf30f7e416f5f53994e4d55) ) |
| 1420 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1421 | 906 | |
| 1422 | 907 | /* Samples #1 (Screen 1?) */ |
| 1423 | 908 | ROM_REGION( 0x400000, "ymf1", 0 ) /* samples - 8-bit signed PCM */ |
| r243658 | r243659 | |
| 1439 | 924 | decrypt_ms32_tx(machine(), 0x00020,0x7e, "gfx7"); |
| 1440 | 925 | decrypt_ms32_bg(machine(), 0x00001,0x9b, "gfx6"); |
| 1441 | 926 | |
| 1442 | | membank("bank1")->set_base(memregion("maincpu")->base()); |
| 1443 | 927 | configure_banks(); |
| 1444 | 928 | } |
| 1445 | 929 | |
trunk/src/mame/drivers/ms32.c
| r243658 | r243659 | |
| 353 | 353 | AM_RANGE(0xc2c08000, 0xc2c0ffff) AM_READWRITE16(ms32_bgram_r16, ms32_bgram_w16, 0x0000ffff) AM_MIRROR(0x3c1f0000) AM_SHARE("bgram") /* bgram is 16-bit wide, 0x4000 in size */ |
| 354 | 354 | /* AM_RANGE(0xc2c10000, 0xc2dfffff) // mirrors of txram / bg, handled above */ |
| 355 | 355 | AM_RANGE(0xc2e00000, 0xc2e1ffff) AM_RAM AM_SHARE("mainram") AM_MIRROR(0x3c0e0000) /* mainram is 32-bit wide, 0x20000 in size */ |
| 356 | | AM_RANGE(0xc3e00000, 0xc3ffffff) AM_ROMBANK("bank1") AM_MIRROR(0x3c000000) // ROM is 32-bit wide, 0x200000 in size */ |
| 356 | AM_RANGE(0xc3e00000, 0xc3ffffff) AM_ROM AM_REGION("maincpu", 0) AM_MIRROR(0x3c000000) // ROM is 32-bit wide, 0x200000 in size */ |
| 357 | 357 | |
| 358 | 358 | /* todo: clean up the mapping of these */ |
| 359 | 359 | AM_RANGE(0xfc800000, 0xfc800003) AM_READNOP /* sound? */ |
| r243658 | r243659 | |
| 1375 | 1375 | |
| 1376 | 1376 | void ms32_state::machine_reset() |
| 1377 | 1377 | { |
| 1378 | | membank("bank1")->set_base(memregion("maincpu")->base()); |
| 1379 | 1378 | membank("bank4")->set_entry(0); |
| 1380 | 1379 | membank("bank5")->set_entry(1); |
| 1381 | 1380 | irq_init(); |
| r243658 | r243659 | |
| 1460 | 1459 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1461 | 1460 | ROM_LOAD( "bbbx32-2.bin",0x000000, 0x080000, CRC(3ffdae75) SHA1(2b837d28f7ecdd49e8525bd5c249e83021d5fe9f) ) |
| 1462 | 1461 | |
| 1463 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1462 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1464 | 1463 | ROM_LOAD( "bbbx21.bin", 0x000000, 0x040000, CRC(5f3ea01f) SHA1(761f6a5852312d2b12de009f3cf0476f5b2e906c) ) |
| 1465 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1466 | 1464 | |
| 1467 | 1465 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1468 | 1466 | ROM_LOAD( "bbbx22.bin", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common samples |
| r243658 | r243659 | |
| 1498 | 1496 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1499 | 1497 | ROM_LOAD( "93166-30.bin", 0x000000, 0x080000, CRC(0c738883) SHA1(e552c1842d759e5e617eb9c6cc178620a461b4dd) ) |
| 1500 | 1498 | |
| 1501 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1499 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1502 | 1500 | ROM_LOAD( "93166-21.bin", 0x000000, 0x040000, CRC(e7fd1bf4) SHA1(74567530364bfd93bffddb588758d8498e197668) ) |
| 1503 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1504 | 1501 | |
| 1505 | 1502 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1506 | 1503 | ROM_LOAD( "94019-10.22", 0x000000, 0x200000, CRC(745d41ec) SHA1(9118d0f27b65c9d37970326ccf86fdccb81d32f5) ) |
| r243658 | r243659 | |
| 1536 | 1533 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1537 | 1534 | ROM_LOAD( "93166-30.bin", 0x000000, 0x080000, CRC(0c738883) SHA1(e552c1842d759e5e617eb9c6cc178620a461b4dd) ) |
| 1538 | 1535 | |
| 1539 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1536 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1540 | 1537 | ROM_LOAD( "93166-21.bin", 0x000000, 0x040000, CRC(e7fd1bf4) SHA1(74567530364bfd93bffddb588758d8498e197668) ) |
| 1541 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1542 | 1538 | |
| 1543 | 1539 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1544 | 1540 | ROM_LOAD( "94019-10.22", 0x000000, 0x200000, CRC(745d41ec) SHA1(9118d0f27b65c9d37970326ccf86fdccb81d32f5) ) |
| r243658 | r243659 | |
| 1576 | 1572 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1577 | 1573 | ROM_LOAD( "93166-30.41", 0x000000, 0x080000, CRC(980ab89c) SHA1(8468fc13a5988e25750e8d99ff464f46e86ab412) ) |
| 1578 | 1574 | |
| 1579 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1575 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1580 | 1576 | ROM_LOAD( "93166-21.30", 0x000000, 0x040000, CRC(9300be4c) SHA1(a8e9c1704abf26545aeb9a5d28fd0cafd38f2d84) ) |
| 1581 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1582 | 1577 | |
| 1583 | 1578 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1584 | 1579 | ROM_LOAD( "92042-01.33", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common samples |
| r243658 | r243659 | |
| 1631 | 1626 | ROM_LOAD( "f1sb4b.bin", 0x400000, 0x200000, CRC(077180c5) SHA1(ab16739da709ecdbbb1264beba349ef6ecf3f8b1) ) |
| 1632 | 1627 | ROM_LOAD( "f1sb5b.bin", 0x600000, 0x200000, CRC(efabc47d) SHA1(195afde8a1f45da4fc04c3080a3cf5fdfff7be5e) ) |
| 1633 | 1628 | |
| 1634 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1629 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1635 | 1630 | ROM_LOAD( "f1sb21.bin", 0x000000, 0x040000, CRC(e131e1c7) SHA1(33f95a074930c49548069518d8c6dcde7fa25627) ) |
| 1636 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1637 | 1631 | |
| 1638 | 1632 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1639 | 1633 | ROM_LOAD( "f1sb24.bin", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common samples |
| r243658 | r243659 | |
| 1668 | 1662 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1669 | 1663 | ROM_LOAD( "94019_2.030",0x000000, 0x080000, CRC(f9543fcf) SHA1(8466c7893bc6c43e2a80b8f91a776fd0a345ea6c) ) |
| 1670 | 1664 | |
| 1671 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1665 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1672 | 1666 | ROM_LOAD( "94019.021",0x000000, 0x040000, CRC(6e8dd039) SHA1(f1e69c9b40b14ba0f8377a6d9b6c3933919bc803) ) |
| 1673 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1674 | 1667 | |
| 1675 | 1668 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1676 | 1669 | ROM_LOAD( "92042.01", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common rom? |
| r243658 | r243659 | |
| 1705 | 1698 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1706 | 1699 | ROM_LOAD( "94019.030",0x000000, 0x080000, CRC(026b5379) SHA1(b9237477f1bf8ae83174e8231492fe667e6d6a13) ) |
| 1707 | 1700 | |
| 1708 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1701 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1709 | 1702 | ROM_LOAD( "94019.021",0x000000, 0x040000, CRC(6e8dd039) SHA1(f1e69c9b40b14ba0f8377a6d9b6c3933919bc803) ) |
| 1710 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1711 | 1703 | |
| 1712 | 1704 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1713 | 1705 | ROM_LOAD( "92042.01", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common rom? |
| r243658 | r243659 | |
| 1745 | 1737 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1746 | 1738 | ROM_LOAD( "mr94041.30", 0x000000, 0x080000, CRC(c0f27b7f) SHA1(874fe80aa4b46520f844ef6efa61f28eabccbc4f) ) |
| 1747 | 1739 | |
| 1748 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1740 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1749 | 1741 | ROM_LOAD( "mr94041.21", 0x000000, 0x040000, CRC(38dcb837) SHA1(29fdde54e52dec4ee39a6f2db8e0d67774320d15) ) |
| 1750 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1751 | 1742 | |
| 1752 | 1743 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 1753 | 1744 | ROM_LOAD( "mr94041.13", 0x000000, 0x200000, CRC(fba84caf) SHA1(318270dbf825a8e0f315992c49a2dc34dd1df7c1) ) |
| r243658 | r243659 | |
| 1781 | 1772 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1782 | 1773 | ROM_LOAD( "mb93138a.32", 0x000000, 0x080000, CRC(f563a144) SHA1(14d86e4992329811857e1faf282cd9ec530a364c) ) |
| 1783 | 1774 | |
| 1784 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1775 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1785 | 1776 | ROM_LOAD( "mb93138a.21", 0x000000, 0x040000, CRC(8e8048b0) SHA1(93285a0570ed829b36f4e8c57d133a7dd14f123d) ) |
| 1786 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1787 | 1777 | |
| 1788 | 1778 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples - 8-bit signed PCM */ |
| 1789 | 1779 | ROM_LOAD( "mr92042.01", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common samples |
| r243658 | r243659 | |
| 1886 | 1876 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1887 | 1877 | ROM_LOAD( "mb93138.32", 0x000000, 0x080000, CRC(df5d00b4) SHA1(2bbbcd546d5b5170d81bf33b37b46b70b417c9c7) ) |
| 1888 | 1878 | |
| 1889 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1879 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1890 | 1880 | ROM_LOAD( "mb93138.21", 0x000000, 0x040000, CRC(008bc217) SHA1(eec66a86f285ccbc47eba17a4bb83cc1f8a5f425) ) |
| 1891 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1892 | 1881 | |
| 1893 | 1882 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples - 8-bit signed PCM */ |
| 1894 | 1883 | ROM_LOAD( "mr92042.01", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common samples |
| r243658 | r243659 | |
| 1925 | 1914 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1926 | 1915 | ROM_LOAD( "mr95025.30", 0x000000, 0x080000, CRC(aee6e0c2) SHA1(dee985f7a9773ba7a4d31a3833a7775d778bbe5a) ) |
| 1927 | 1916 | |
| 1928 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1917 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1929 | 1918 | ROM_LOAD( "mr95025.21", 0x000000, 0x040000, CRC(a6c70c7f) SHA1(fe2108f3e8d46ed53d8c5c98e8d0fdb19b77075d) ) |
| 1930 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1931 | 1919 | |
| 1932 | 1920 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples - 8-bit signed PCM */ |
| 1933 | 1921 | ROM_LOAD( "mr95025.12", 0x000000, 0x200000, CRC(1dd4f766) SHA1(455befd3a216f2197cd2e7e4899d4f1af7d20bf7) ) |
| r243658 | r243659 | |
| 1963 | 1951 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 1964 | 1952 | ROM_LOAD( "93166.30", 0x000000, 0x080000, CRC(1807c1ea) SHA1(94696b8319c4982cb5d33423f56e2348f210cdb5) ) |
| 1965 | 1953 | |
| 1966 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1954 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 1967 | 1955 | ROM_LOAD( "93166.21", 0x000000, 0x040000, CRC(01a03687) SHA1(2340c4ed19f434e8c23709edfc93259313aefaf9)) |
| 1968 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 1969 | 1956 | |
| 1970 | 1957 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples - 8-bit signed PCM */ |
| 1971 | 1958 | ROM_LOAD( "95008-11.22", 0x000000, 0x200000, CRC(23b9af76) SHA1(98b4087c142500dc759bda94d71c77634452a7ad)) |
| r243658 | r243659 | |
| 2003 | 1990 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 2004 | 1991 | ROM_LOAD( "p47-30.bin", 0x000000, 0x080000, CRC(7ba90fad) SHA1(c0a3d4458816f00b8f5eb4b6d4531d1abeaccbe5) ) |
| 2005 | 1992 | |
| 2006 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 1993 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 2007 | 1994 | ROM_LOAD( "p47-21.bin", 0x000000, 0x040000, CRC(f2d43927) SHA1(69ac20f339a515d58cafbcd6f7d7982ca5cda681) ) |
| 2008 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 2009 | 1995 | |
| 2010 | 1996 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples - 8-bit signed PCM */ |
| 2011 | 1997 | ROM_LOAD( "p47-22.bin", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) |
| r243658 | r243659 | |
| 2035 | 2021 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 2036 | 2022 | ROM_LOAD( "mr95024.30", 0x000000, 0x080000, CRC(cea7002d) SHA1(5462edaeb9339790b95ed15a4bfaab8fae655b12) ) |
| 2037 | 2023 | |
| 2038 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 2024 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 2039 | 2025 | ROM_LOAD( "mr95024.21", 0x000000, 0x040000, CRC(5c565e3b) SHA1(d349a8ca50d03c06d8978e6d3632b624f019dee4) ) |
| 2040 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 2041 | 2026 | |
| 2042 | 2027 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 2043 | 2028 | ROM_LOAD( "mr95024.22", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) // common samples |
| r243658 | r243659 | |
| 2067 | 2052 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 2068 | 2053 | ROM_LOAD( "tp2m3230.30", 0x000000, 0x080000, CRC(6845e476) SHA1(61c33714db2e2b5ccdcef0e0d3efdc391fe6aba2) ) |
| 2069 | 2054 | |
| 2070 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 2055 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 2071 | 2056 | ROM_LOAD( "tp2m3221.21", 0x000000, 0x040000, CRC(2bcc4176) SHA1(74740fa13ab81b9819b4cfbe9d34a0749ba23b8f) ) |
| 2072 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 2073 | 2057 | |
| 2074 | 2058 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 2075 | 2059 | ROM_LOAD( "tp2m3205.22", 0x000000, 0x200000, CRC(74aa5c31) SHA1(7e3f86198fb678244fab76bee9c72bbdfc818118) ) |
| r243658 | r243659 | |
| 2106 | 2090 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 2107 | 2091 | ROM_LOAD( "vsjanshi30.41", 0x000000, 0x080000, CRC(fdbbac21) SHA1(c77d852e53126cc8ebfe1e79d1134e42b54d1aab) ) |
| 2108 | 2092 | |
| 2109 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 2093 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 2110 | 2094 | ROM_LOAD( "vsjanshi21.30", 0x000000, 0x040000, CRC(d622bce1) SHA1(059fcc3c7216d3ea4f3a4226a06219375ce8c2bf) ) |
| 2111 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 2112 | 2095 | |
| 2113 | 2096 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples - 8-bit signed PCM */ |
| 2114 | 2097 | ROM_LOAD( "mr96004-10.22", 0x000000, 0x400000, CRC(83f4303a) SHA1(90ee010591afe1d35744925ef0e8d9a7e2ef3378) ) |
| r243658 | r243659 | |
| 2179 | 2162 | ROM_REGION( 0x080000, "gfx4", 0 ) /* tx tiles */ |
| 2180 | 2163 | ROM_LOAD( "32", 0x000000, 0x080000, CRC(becc25c2) SHA1(4ae7665cd45ebd9586068e99327145194ba216fc) ) |
| 2181 | 2164 | |
| 2182 | | ROM_REGION( 0x50000, "audiocpu", 0 ) /* z80 program */ |
| 2165 | ROM_REGION( 0x40000, "audiocpu", 0 ) /* z80 program */ |
| 2183 | 2166 | ROM_LOAD( "ws-21", 0x000000, 0x040000, CRC(bdeff5d6) SHA1(920a6fc983d53f09510887e4e81ee89ccd5079e6) ) |
| 2184 | | ROM_RELOAD( 0x010000, 0x40000 ) |
| 2185 | 2167 | |
| 2186 | 2168 | ROM_REGION( 0x400000, "ymf", 0 ) /* samples */ |
| 2187 | 2169 | ROM_LOAD( "mr92042-01.22", 0x000000, 0x200000, CRC(0fa26f65) SHA1(e92b14862fbce33ea4ab4567ec48199bfcbbdd84) ) |
| r243658 | r243659 | |
| 2195 | 2177 | void ms32_state::configure_banks() |
| 2196 | 2178 | { |
| 2197 | 2179 | save_item(NAME(m_to_main)); |
| 2198 | | membank("bank4")->configure_entries(0, 16, memregion("audiocpu")->base() + 0x14000, 0x4000); |
| 2199 | | membank("bank5")->configure_entries(0, 16, memregion("audiocpu")->base() + 0x14000, 0x4000); |
| 2180 | membank("bank4")->configure_entries(0, 16, memregion("audiocpu")->base() + 0x4000, 0x4000); |
| 2181 | membank("bank5")->configure_entries(0, 16, memregion("audiocpu")->base() + 0x4000, 0x4000); |
| 2200 | 2182 | } |
| 2201 | 2183 | |
| 2202 | 2184 | DRIVER_INIT_MEMBER(ms32_state,ms32_common) |