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

« back to all changes in this revision

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

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

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

Show diffs side-by-side

added added

removed removed

Lines of Context:
467
467
/*************************************************************/
468
468
/* 68000/6809/63705 Shared memory area - DUAL PORT Memory    */
469
469
/*************************************************************/
 
470
class namcos2_state : public driver_device
 
471
{
 
472
public:
 
473
        namcos2_state(const machine_config &mconfig, device_type type, const char *tag)
 
474
                : driver_device(mconfig, type, tag)
 
475
        { }
 
476
        DECLARE_READ16_MEMBER(namcos2_68k_dpram_word_r);
 
477
        DECLARE_WRITE16_MEMBER(namcos2_68k_dpram_word_w);
 
478
        DECLARE_READ8_MEMBER(namcos2_dpram_byte_r);
 
479
        DECLARE_WRITE8_MEMBER(namcos2_dpram_byte_w);
 
480
};
470
481
 
471
482
static UINT8 *namcos2_dpram;    /* 2Kx8 */
472
483
 
529
540
        }
530
541
}
531
542
 
532
 
static READ16_HANDLER( namcos2_68k_dpram_word_r )
 
543
READ16_MEMBER(namcos2_state::namcos2_68k_dpram_word_r)
533
544
{
534
545
        return namcos2_dpram[offset];
535
546
}
536
547
 
537
 
static WRITE16_HANDLER( namcos2_68k_dpram_word_w )
 
548
WRITE16_MEMBER(namcos2_state::namcos2_68k_dpram_word_w)
538
549
{
539
550
        if( ACCESSING_BITS_0_7 )
540
551
        {
563
574
}
564
575
 
565
576
 
566
 
static READ8_HANDLER( namcos2_dpram_byte_r )
 
577
READ8_MEMBER(namcos2_state::namcos2_dpram_byte_r)
567
578
{
568
579
        return namcos2_dpram[offset];
569
580
}
570
581
 
571
 
static WRITE8_HANDLER( namcos2_dpram_byte_w )
 
582
WRITE8_MEMBER(namcos2_state::namcos2_dpram_byte_w)
572
583
{
573
584
        namcos2_dpram[offset] = data;
574
585
}
589
600
    0xc00000 ONWARDS are unverified memory locations on the video board
590
601
*/
591
602
 
592
 
static ADDRESS_MAP_START( namcos2_68k_default_cpu_board_am, AS_PROGRAM, 16 )
593
 
        AM_RANGE(0x200000, 0x3fffff) AM_READ(namcos2_68k_data_rom_r)
594
 
        AM_RANGE(0x400000, 0x41ffff) AM_READWRITE(namco_tilemapvideoram16_r,namco_tilemapvideoram16_w)
595
 
        AM_RANGE(0x420000, 0x42003f) AM_READWRITE(namco_tilemapcontrol16_r,namco_tilemapcontrol16_w)
596
 
        AM_RANGE(0x440000, 0x44ffff) AM_READWRITE(namcos2_68k_video_palette_r,namcos2_68k_video_palette_w) AM_BASE(&namcos2_68k_palette_ram) AM_SIZE(&namcos2_68k_palette_size)
 
603
static ADDRESS_MAP_START( namcos2_68k_default_cpu_board_am, AS_PROGRAM, 16, namcos2_state )
 
604
        AM_RANGE(0x200000, 0x3fffff) AM_READ_LEGACY(namcos2_68k_data_rom_r)
 
605
        AM_RANGE(0x400000, 0x41ffff) AM_READWRITE_LEGACY(namco_tilemapvideoram16_r,namco_tilemapvideoram16_w)
 
606
        AM_RANGE(0x420000, 0x42003f) AM_READWRITE_LEGACY(namco_tilemapcontrol16_r,namco_tilemapcontrol16_w)
 
607
        AM_RANGE(0x440000, 0x44ffff) AM_READWRITE_LEGACY(namcos2_68k_video_palette_r,namcos2_68k_video_palette_w) AM_BASE_LEGACY(&namcos2_68k_palette_ram) AM_SIZE_LEGACY(&namcos2_68k_palette_size)
597
608
        AM_RANGE(0x460000, 0x460fff) AM_READWRITE(namcos2_68k_dpram_word_r,namcos2_68k_dpram_word_w)
598
609
        AM_RANGE(0x468000, 0x468fff) AM_READWRITE(namcos2_68k_dpram_word_r,namcos2_68k_dpram_word_w) /* mirror */
599
 
        AM_RANGE(0x480000, 0x483fff) AM_READWRITE(namcos2_68k_serial_comms_ram_r,namcos2_68k_serial_comms_ram_w) AM_BASE(&namcos2_68k_serial_comms_ram)
600
 
        AM_RANGE(0x4a0000, 0x4a000f) AM_READWRITE(namcos2_68k_serial_comms_ctrl_r,namcos2_68k_serial_comms_ctrl_w)
 
610
        AM_RANGE(0x480000, 0x483fff) AM_READWRITE_LEGACY(namcos2_68k_serial_comms_ram_r,namcos2_68k_serial_comms_ram_w) AM_BASE_LEGACY(&namcos2_68k_serial_comms_ram)
 
611
        AM_RANGE(0x4a0000, 0x4a000f) AM_READWRITE_LEGACY(namcos2_68k_serial_comms_ctrl_r,namcos2_68k_serial_comms_ctrl_w)
601
612
ADDRESS_MAP_END
602
613
 
603
614
/*************************************************************/
604
615
 
605
 
static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16 )
606
 
        AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE(namcos2_sprite_ram_r,namcos2_sprite_ram_w) AM_BASE(&namcos2_sprite_ram)
607
 
        AM_RANGE(0xc40000, 0xc40001) AM_READWRITE(namcos2_gfx_ctrl_r,namcos2_gfx_ctrl_w)
608
 
        AM_RANGE(0xc80000, 0xc9ffff) AM_READWRITE(namcos2_68k_roz_ram_r,namcos2_68k_roz_ram_w) AM_BASE(&namcos2_68k_roz_ram)
609
 
        AM_RANGE(0xcc0000, 0xcc000f) AM_READWRITE(namcos2_68k_roz_ctrl_r,namcos2_68k_roz_ctrl_w)
610
 
        AM_RANGE(0xd00000, 0xd0000f) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w)
 
616
static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16, namcos2_state )
 
617
        AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE_LEGACY(namcos2_sprite_ram_r,namcos2_sprite_ram_w) AM_BASE_LEGACY(&namcos2_sprite_ram)
 
618
        AM_RANGE(0xc40000, 0xc40001) AM_READWRITE_LEGACY(namcos2_gfx_ctrl_r,namcos2_gfx_ctrl_w)
 
619
        AM_RANGE(0xc80000, 0xc9ffff) AM_READWRITE_LEGACY(namcos2_68k_roz_ram_r,namcos2_68k_roz_ram_w) AM_BASE_LEGACY(&namcos2_68k_roz_ram)
 
620
        AM_RANGE(0xcc0000, 0xcc000f) AM_READWRITE_LEGACY(namcos2_68k_roz_ctrl_r,namcos2_68k_roz_ctrl_w)
 
621
        AM_RANGE(0xd00000, 0xd0000f) AM_READWRITE_LEGACY(namcos2_68k_key_r,namcos2_68k_key_w)
611
622
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
612
623
ADDRESS_MAP_END
613
624
 
614
 
static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16 )
 
625
static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16, namcos2_state )
615
626
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
616
627
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
617
 
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
618
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
 
628
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE_LEGACY(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
 
629
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
619
630
        AM_IMPORT_FROM( common_default_am )
620
631
ADDRESS_MAP_END
621
632
 
622
 
static ADDRESS_MAP_START( slave_default_am, AS_PROGRAM, 16 )
 
633
static ADDRESS_MAP_START( slave_default_am, AS_PROGRAM, 16, namcos2_state )
623
634
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
624
635
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
625
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
 
636
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
626
637
        AM_IMPORT_FROM( common_default_am )
627
638
ADDRESS_MAP_END
628
639
 
629
640
 
630
641
/*************************************************************/
631
642
 
632
 
static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16 )
633
 
        AM_RANGE(0x300000, 0x33ffff) AM_READ(namcos2_flap_prot_r)
634
 
        AM_RANGE(0x800000, 0x80ffff) AM_READ(namcos2_sprite_ram_r) AM_WRITE(namcos2_sprite_ram_w) AM_BASE(&namcos2_sprite_ram)
635
 
        AM_RANGE(0x840000, 0x840001) AM_READ(namcos2_gfx_ctrl_r) AM_WRITE(namcos2_gfx_ctrl_w)
636
 
        AM_RANGE(0x880000, 0x89ffff) AM_READ(namco_road16_r) AM_WRITE(namco_road16_w)
 
643
static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16, namcos2_state )
 
644
        AM_RANGE(0x300000, 0x33ffff) AM_READ_LEGACY(namcos2_flap_prot_r)
 
645
        AM_RANGE(0x800000, 0x80ffff) AM_READ_LEGACY(namcos2_sprite_ram_r) AM_WRITE_LEGACY(namcos2_sprite_ram_w) AM_BASE_LEGACY(&namcos2_sprite_ram)
 
646
        AM_RANGE(0x840000, 0x840001) AM_READ_LEGACY(namcos2_gfx_ctrl_r) AM_WRITE_LEGACY(namcos2_gfx_ctrl_w)
 
647
        AM_RANGE(0x880000, 0x89ffff) AM_READ_LEGACY(namco_road16_r) AM_WRITE_LEGACY(namco_road16_w)
637
648
        AM_RANGE(0x8c0000, 0x8c0001) AM_WRITENOP
638
649
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
639
650
ADDRESS_MAP_END
640
651
 
641
 
static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16 )
 
652
static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16, namcos2_state )
642
653
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
643
654
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
644
 
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
645
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
 
655
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE_LEGACY(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
 
656
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
646
657
        AM_IMPORT_FROM( common_finallap_am )
647
658
ADDRESS_MAP_END
648
659
 
649
 
static ADDRESS_MAP_START( slave_finallap_am, AS_PROGRAM, 16 )
 
660
static ADDRESS_MAP_START( slave_finallap_am, AS_PROGRAM, 16, namcos2_state )
650
661
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
651
662
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
652
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
 
663
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
653
664
        AM_IMPORT_FROM( common_finallap_am )
654
665
ADDRESS_MAP_END
655
666
 
656
667
/*************************************************************/
657
668
 
658
 
static ADDRESS_MAP_START( common_sgunner_am, AS_PROGRAM, 16 )
659
 
        AM_RANGE(0x800000, 0x8141ff) AM_READWRITE(namco_obj16_r,namco_obj16_w)
 
669
static ADDRESS_MAP_START( common_sgunner_am, AS_PROGRAM, 16, namcos2_state )
 
670
        AM_RANGE(0x800000, 0x8141ff) AM_READWRITE_LEGACY(namco_obj16_r,namco_obj16_w)
660
671
        AM_RANGE(0x818000, 0x818001) AM_WRITENOP
661
 
        AM_RANGE(0xa00000, 0xa0000f) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w)
662
 
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
663
 
ADDRESS_MAP_END
664
 
 
665
 
static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16 )
666
 
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
667
 
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
668
 
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
669
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
670
 
        AM_IMPORT_FROM( common_sgunner_am )
671
 
ADDRESS_MAP_END
672
 
 
673
 
static ADDRESS_MAP_START( slave_sgunner_am, AS_PROGRAM, 16 )
674
 
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
675
 
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
676
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
677
 
        AM_IMPORT_FROM( common_sgunner_am )
678
 
ADDRESS_MAP_END
679
 
 
680
 
/*************************************************************/
681
 
 
682
 
static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16 )
683
 
        AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE(namcos2_sprite_ram_r,namcos2_sprite_ram_w) AM_BASE(&namcos2_sprite_ram) \
684
 
        AM_RANGE(0xc40000, 0xc4ffff) AM_READWRITE(namco_rozvideoram16_r,namco_rozvideoram16_w) \
685
 
        AM_RANGE(0xd00000, 0xd0001f) AM_READWRITE(namco_rozcontrol16_r,namco_rozcontrol16_w) \
686
 
        AM_RANGE(0xe00000, 0xe00001) AM_READWRITE(namcos2_gfx_ctrl_r,namcos2_gfx_ctrl_w) /* ??? */ \
687
 
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
688
 
ADDRESS_MAP_END
689
 
 
690
 
static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16 )
691
 
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
692
 
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
693
 
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
694
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
695
 
        AM_IMPORT_FROM( common_metlhawk_am )
696
 
ADDRESS_MAP_END
697
 
 
698
 
static ADDRESS_MAP_START( slave_metlhawk_am, AS_PROGRAM, 16 )
699
 
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
700
 
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
701
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
702
 
        AM_IMPORT_FROM( common_metlhawk_am )
703
 
ADDRESS_MAP_END
704
 
 
705
 
/*************************************************************/
706
 
 
707
 
static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16 )
708
 
        AM_RANGE(0x800000, 0x8141ff) AM_READWRITE(namco_obj16_r,namco_obj16_w)
 
672
        AM_RANGE(0xa00000, 0xa0000f) AM_READWRITE_LEGACY(namcos2_68k_key_r,namcos2_68k_key_w)
 
673
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
 
674
ADDRESS_MAP_END
 
675
 
 
676
static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16, namcos2_state )
 
677
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
 
678
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
 
679
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE_LEGACY(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
 
680
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
 
681
        AM_IMPORT_FROM( common_sgunner_am )
 
682
ADDRESS_MAP_END
 
683
 
 
684
static ADDRESS_MAP_START( slave_sgunner_am, AS_PROGRAM, 16, namcos2_state )
 
685
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
 
686
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
 
687
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
 
688
        AM_IMPORT_FROM( common_sgunner_am )
 
689
ADDRESS_MAP_END
 
690
 
 
691
/*************************************************************/
 
692
 
 
693
static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
 
694
        AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE_LEGACY(namcos2_sprite_ram_r,namcos2_sprite_ram_w) AM_BASE_LEGACY(&namcos2_sprite_ram) \
 
695
        AM_RANGE(0xc40000, 0xc4ffff) AM_READWRITE_LEGACY(namco_rozvideoram16_r,namco_rozvideoram16_w) \
 
696
        AM_RANGE(0xd00000, 0xd0001f) AM_READWRITE_LEGACY(namco_rozcontrol16_r,namco_rozcontrol16_w) \
 
697
        AM_RANGE(0xe00000, 0xe00001) AM_READWRITE_LEGACY(namcos2_gfx_ctrl_r,namcos2_gfx_ctrl_w) /* ??? */ \
 
698
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
 
699
ADDRESS_MAP_END
 
700
 
 
701
static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
 
702
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
 
703
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
 
704
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE_LEGACY(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
 
705
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
 
706
        AM_IMPORT_FROM( common_metlhawk_am )
 
707
ADDRESS_MAP_END
 
708
 
 
709
static ADDRESS_MAP_START( slave_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
 
710
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
 
711
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
 
712
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
 
713
        AM_IMPORT_FROM( common_metlhawk_am )
 
714
ADDRESS_MAP_END
 
715
 
 
716
/*************************************************************/
 
717
 
 
718
static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16, namcos2_state )
 
719
        AM_RANGE(0x800000, 0x8141ff) AM_READWRITE_LEGACY(namco_obj16_r,namco_obj16_w)
709
720
        AM_RANGE(0x818000, 0x818001) AM_NOP /* enable? */
710
721
        AM_RANGE(0x81a000, 0x81a001) AM_WRITENOP /* enable? */
711
722
        AM_RANGE(0x840000, 0x840001) AM_READNOP
712
 
        AM_RANGE(0x900000, 0x900007) AM_READWRITE(namco_spritepos16_r,namco_spritepos16_w)
713
 
        AM_RANGE(0xa00000, 0xa1ffff) AM_READWRITE(namco_road16_r,namco_road16_w)
714
 
        AM_RANGE(0xc00000, 0xc0ffff) AM_READWRITE(namco_rozvideoram16_r,namco_rozvideoram16_w)
715
 
        AM_RANGE(0xd00000, 0xd0001f) AM_READWRITE(namco_rozcontrol16_r,namco_rozcontrol16_w)
716
 
        AM_RANGE(0xf00000, 0xf00007) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w)
 
723
        AM_RANGE(0x900000, 0x900007) AM_READWRITE_LEGACY(namco_spritepos16_r,namco_spritepos16_w)
 
724
        AM_RANGE(0xa00000, 0xa1ffff) AM_READWRITE_LEGACY(namco_road16_r,namco_road16_w)
 
725
        AM_RANGE(0xc00000, 0xc0ffff) AM_READWRITE_LEGACY(namco_rozvideoram16_r,namco_rozvideoram16_w)
 
726
        AM_RANGE(0xd00000, 0xd0001f) AM_READWRITE_LEGACY(namco_rozcontrol16_r,namco_rozcontrol16_w)
 
727
        AM_RANGE(0xf00000, 0xf00007) AM_READWRITE_LEGACY(namcos2_68k_key_r,namcos2_68k_key_w)
717
728
        AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
718
729
ADDRESS_MAP_END
719
730
 
720
 
static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16 )
 
731
static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16, namcos2_state )
721
732
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
722
733
        AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
723
 
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
724
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
 
734
        AM_RANGE(0x180000, 0x183fff) AM_READWRITE_LEGACY(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)
 
735
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_master_C148_r,namcos2_68k_master_C148_w)
725
736
        AM_IMPORT_FROM( common_luckywld_am )
726
737
ADDRESS_MAP_END
727
738
 
728
 
static ADDRESS_MAP_START( slave_luckywld_am, AS_PROGRAM, 16 )
 
739
static ADDRESS_MAP_START( slave_luckywld_am, AS_PROGRAM, 16, namcos2_state )
729
740
        AM_RANGE(0x000000, 0x03ffff) AM_ROM
730
741
        AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
731
 
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
 
742
        AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE_LEGACY(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w)
732
743
        AM_IMPORT_FROM( common_luckywld_am )
733
744
ADDRESS_MAP_END
734
745
 
736
747
/* 6809 SOUND CPU Memory declarations                        */
737
748
/*************************************************************/
738
749
 
739
 
static ADDRESS_MAP_START( sound_default_am, AS_PROGRAM, 8 )
 
750
static ADDRESS_MAP_START( sound_default_am, AS_PROGRAM, 8, namcos2_state )
740
751
        AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank6") /* banked */
741
 
        AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w)
742
 
        AM_RANGE(0x5000, 0x6fff) AM_DEVREADWRITE("c140", c140_r,c140_w)
743
 
        AM_RANGE(0x7000, 0x77ff) AM_READWRITE(namcos2_dpram_byte_r,namcos2_dpram_byte_w) AM_BASE(&namcos2_dpram)
 
752
        AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE_LEGACY("ymsnd", ym2151_r,ym2151_w)
 
753
        AM_RANGE(0x5000, 0x6fff) AM_DEVREADWRITE_LEGACY("c140", c140_r,c140_w)
 
754
        AM_RANGE(0x7000, 0x77ff) AM_READWRITE(namcos2_dpram_byte_r,namcos2_dpram_byte_w) AM_BASE_LEGACY(&namcos2_dpram)
744
755
        AM_RANGE(0x7800, 0x7fff) AM_READWRITE(namcos2_dpram_byte_r,namcos2_dpram_byte_w) /* mirror */
745
756
        AM_RANGE(0x8000, 0x9fff) AM_RAM
746
757
        AM_RANGE(0xa000, 0xbfff) AM_WRITENOP /* Amplifier enable on 1st write */
747
 
        AM_RANGE(0xc000, 0xc001) AM_WRITE(namcos2_sound_bankselect_w)
 
758
        AM_RANGE(0xc000, 0xc001) AM_WRITE_LEGACY(namcos2_sound_bankselect_w)
748
759
        AM_RANGE(0xd001, 0xd001) AM_WRITENOP /* Watchdog */
749
760
        AM_RANGE(0xe000, 0xe000) AM_WRITENOP
750
761
        AM_RANGE(0xd000, 0xffff) AM_ROM
755
766
/* 68705 IO CPU Memory declarations                          */
756
767
/*************************************************************/
757
768
 
758
 
static ADDRESS_MAP_START( mcu_default_am, AS_PROGRAM, 8 )
 
769
static ADDRESS_MAP_START( mcu_default_am, AS_PROGRAM, 8, namcos2_state )
759
770
        /* input ports and dips are mapped here */
760
771
        AM_RANGE(0x0000, 0x0000) AM_READNOP /* Keep logging quiet */
761
 
        AM_RANGE(0x0001, 0x0001) AM_READ(namcos2_input_port_0_r)
 
772
        AM_RANGE(0x0001, 0x0001) AM_READ_LEGACY(namcos2_input_port_0_r)
762
773
        AM_RANGE(0x0002, 0x0002) AM_READ_PORT("MCUC")
763
 
        AM_RANGE(0x0003, 0x0003) AM_READWRITE(namcos2_mcu_port_d_r,namcos2_mcu_port_d_w)
764
 
        AM_RANGE(0x0007, 0x0007) AM_READ(namcos2_input_port_10_r)
765
 
        AM_RANGE(0x0010, 0x0010) AM_READWRITE(namcos2_mcu_analog_ctrl_r,namcos2_mcu_analog_ctrl_w)
766
 
        AM_RANGE(0x0011, 0x0011) AM_READWRITE(namcos2_mcu_analog_port_r,namcos2_mcu_analog_port_w)
 
774
        AM_RANGE(0x0003, 0x0003) AM_READWRITE_LEGACY(namcos2_mcu_port_d_r,namcos2_mcu_port_d_w)
 
775
        AM_RANGE(0x0007, 0x0007) AM_READ_LEGACY(namcos2_input_port_10_r)
 
776
        AM_RANGE(0x0010, 0x0010) AM_READWRITE_LEGACY(namcos2_mcu_analog_ctrl_r,namcos2_mcu_analog_ctrl_w)
 
777
        AM_RANGE(0x0011, 0x0011) AM_READWRITE_LEGACY(namcos2_mcu_analog_port_r,namcos2_mcu_analog_port_w)
767
778
        AM_RANGE(0x0000, 0x003f) AM_RAM /* Fill in register to stop logging */
768
779
        AM_RANGE(0x0040, 0x01bf) AM_RAM
769
780
        AM_RANGE(0x01c0, 0x1fff) AM_ROM
770
781
        AM_RANGE(0x2000, 0x2000) AM_READ_PORT("DSW")
771
 
        AM_RANGE(0x3000, 0x3000) AM_READ(namcos2_input_port_12_r)
 
782
        AM_RANGE(0x3000, 0x3000) AM_READ_LEGACY(namcos2_input_port_12_r)
772
783
        AM_RANGE(0x3001, 0x3001) AM_READ_PORT("MCUDI1")
773
784
        AM_RANGE(0x3002, 0x3002) AM_READ_PORT("MCUDI2")
774
785
        AM_RANGE(0x3003, 0x3003) AM_READ_PORT("MCUDI3")
775
 
        AM_RANGE(0x5000, 0x57ff) AM_READWRITE(namcos2_dpram_byte_r,namcos2_dpram_byte_w) AM_BASE(&namcos2_dpram)
 
786
        AM_RANGE(0x5000, 0x57ff) AM_READWRITE(namcos2_dpram_byte_r,namcos2_dpram_byte_w) AM_BASE_LEGACY(&namcos2_dpram)
776
787
        AM_RANGE(0x6000, 0x6fff) AM_READNOP /* watchdog */
777
788
        AM_RANGE(0x8000, 0xffff) AM_ROM
778
789
ADDRESS_MAP_END
1605
1616
/*                                                           */
1606
1617
/*************************************************************/
1607
1618
 
1608
 
static MACHINE_CONFIG_START( default, driver_device )
 
1619
static MACHINE_CONFIG_START( default, namcos2_state )
1609
1620
        MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
1610
1621
        MCFG_CPU_PROGRAM_MAP(master_default_am)
1611
1622
        MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
1681
1692
        MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
1682
1693
MACHINE_CONFIG_END
1683
1694
 
1684
 
static MACHINE_CONFIG_START( gollygho, driver_device )
 
1695
static MACHINE_CONFIG_START( gollygho, namcos2_state )
1685
1696
        MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
1686
1697
        MCFG_CPU_PROGRAM_MAP(master_default_am)
1687
1698
        MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
1730
1741
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.80)
1731
1742
MACHINE_CONFIG_END
1732
1743
 
1733
 
static MACHINE_CONFIG_START( finallap, driver_device )
 
1744
static MACHINE_CONFIG_START( finallap, namcos2_state )
1734
1745
        MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
1735
1746
        MCFG_CPU_PROGRAM_MAP(master_finallap_am)
1736
1747
        MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
1779
1790
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.80)
1780
1791
MACHINE_CONFIG_END
1781
1792
 
1782
 
static MACHINE_CONFIG_START( sgunner, driver_device )
 
1793
static MACHINE_CONFIG_START( sgunner, namcos2_state )
1783
1794
        MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
1784
1795
        MCFG_CPU_PROGRAM_MAP(master_sgunner_am)
1785
1796
        MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
1828
1839
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.80)
1829
1840
MACHINE_CONFIG_END
1830
1841
 
1831
 
static MACHINE_CONFIG_START( luckywld, driver_device )
 
1842
static MACHINE_CONFIG_START( luckywld, namcos2_state )
1832
1843
        MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
1833
1844
        MCFG_CPU_PROGRAM_MAP(master_luckywld_am)
1834
1845
        MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
1877
1888
        MCFG_SOUND_ROUTE(1, "rspeaker", 0.80)
1878
1889
MACHINE_CONFIG_END
1879
1890
 
1880
 
static MACHINE_CONFIG_START( metlhawk, driver_device )
 
1891
static MACHINE_CONFIG_START( metlhawk, namcos2_state )
1881
1892
        MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
1882
1893
        MCFG_CPU_PROGRAM_MAP(master_metlhawk_am)
1883
1894
        MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
5089
5100
{
5090
5101
        /* unscramble sprites */
5091
5102
        int i, j, k, l;
5092
 
        UINT8 *data = machine.region("gfx1")->base();
 
5103
        UINT8 *data = machine.root_device().memregion("gfx1")->base();
5093
5104
        for(i=0; i<0x200000; i+=32*32)
5094
5105
        {
5095
5106
                for(j=0; j<32*32; j+=32*4)
5206
5217
 
5207
5218
 
5208
5219
static DRIVER_INIT( luckywld ){
5209
 
        UINT8 *pData = (UINT8 *)machine.region( "gfx5" )->base();
 
5220
        UINT8 *pData = (UINT8 *)machine.root_device().memregion( "gfx5" )->base();
5210
5221
        int i;
5211
5222
        for( i=0; i<32*0x4000; i++ )
5212
5223
        { /* unscramble gfx mask */