Previous 199869 Revisions Next

r33567 Thursday 27th November, 2014 at 20:37:31 UTC by hap
Merge pull request #57 from ZoeB/master

Fix typo in ROM name
[src/emu/cpu/unsp]unsp.c unspdasm.c
[src/mame/drivers]dreamwld.c
[src/mess/drivers]vii.c

trunk/src/emu/cpu/unsp/unsp.c
r242078r242079
1616
1717unsp_device::unsp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
1818   : cpu_device(mconfig, UNSP, "u'nSP", tag, owner, clock, "unsp", __FILE__)
19   , m_program_config("program", ENDIANNESS_BIG, 16, 23, 0)
19   , m_program_config("program", ENDIANNESS_BIG, 16, 23, -1)
2020{
2121}
2222
r242078r242079
100100
101101void unsp_device::unimplemented_opcode(UINT16 op)
102102{
103   fatalerror("UNSP: unknown opcode %04x at %04x\n", op, UNSP_LPC << 1);
103   fatalerror("UNSP: unknown opcode %04x at %04x\n", op, UNSP_LPC);
104104}
105105
106106/*****************************************************************************/
107107
108108UINT16 unsp_device::READ16(UINT32 address)
109109{
110   return m_program->read_word(address << 1);
110   return m_program->read_word(address<<1);
111111}
112112
113113void unsp_device::WRITE16(UINT32 address, UINT16 data)
114114{
115   m_program->write_word(address << 1, data);
115   m_program->write_word(address<<1, data);
116116}
117117
118118/*****************************************************************************/
r242078r242079
152152   switch (entry.index())
153153   {
154154      case UNSP_PC:
155         m_debugger_temp = UNSP_LPC << 1;
155         m_debugger_temp = UNSP_LPC;
156156         break;
157157
158158      case STATE_GENPC:
159         m_debugger_temp = UNSP_LPC << 1;
159         m_debugger_temp = UNSP_LPC;
160160         break;
161161   }
162162}
r242078r242079
166166   switch (entry.index())
167167   {
168168      case UNSP_PC:
169         UNSP_REG(PC) = (m_debugger_temp & 0x0001fffe) >> 1;
170         UNSP_REG(SR) = (UNSP_REG(SR) & 0xffc0) | ((m_debugger_temp & 0x007e0000) >> 17);
169         UNSP_REG(PC) = m_debugger_temp & 0x0000ffff;
170         UNSP_REG(SR) = (UNSP_REG(SR) & 0xffc0) | ((m_debugger_temp & 0x003f0000) >> 16);
171171         break;
172172   }
173173}
r242078r242079
230230
231231   while (m_icount > 0)
232232   {
233      debugger_instruction_hook(this, UNSP_LPC<<1);
234
233      debugger_instruction_hook(this, UNSP_LPC);
235234      op = READ16(UNSP_LPC);
236235
237236      UNSP_REG(PC)++;
trunk/src/emu/cpu/unsp/unspdasm.c
r242078r242079
5353
5454/*****************************************************************************/
5555
56#define UNSP_DASM_OK ((2 * (OP2X ? 2 : 1)) | DASMFLAG_SUPPORTED)
56#define UNSP_DASM_OK ((OP2X ? 2 : 1) | DASMFLAG_SUPPORTED)
5757
5858CPU_DISASSEMBLE( unsp )
5959{
r242078r242079
6868
6969   if(OP0 < 0xf && OPA == 0x7 && OP1 < 2)
7070   {
71      print("%s %04x", jmp[OP0], OP1 ? (pc - OPIMM*2) : (pc + OPIMM*2));
71      print("%s %04x", jmp[OP0], OP1 ? (pc - OPIMM + 1) : (pc + OPIMM + 1));
7272      return UNSP_DASM_OK;
7373   }
7474
trunk/src/mame/drivers/dreamwld.c
r242078r242079
1/*  Semicom Baryon / Dream World hardware
1/*
22
3    SemiCom 68020 based hardware
4    Driver by David Haywood
5
6Baryon - Future Assault   (c) 1997 SemiCom
7Cute Fighter              (c) 1998 SemiCom
8Rolling Crush             (c) 1999 Trust / SemiCom
9Dream World               (c) 2000 SemiCom
10
11Note: There is a SemiCom game known as Lode Quest 1998(?). This game is very similar to Dream World.
12      It's not known if Lode Quest is a alternate title or a prequel of Dream World.
13
314Note: this hardware is a copy of Psikyo's 68020 based hardware,
415      the Strikers 1945 bootleg has the same unknown rom!
516
r242078r242079
601612   PORT_BIT( 0xffff0000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, driver_device,custom_port_read, "DSW")
602613
603614   PORT_START("DSW")
604   PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
605   PORT_DIPSETTING(      0x0001, DEF_STR( Off ) )
606   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
607   PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
608   PORT_DIPSETTING(      0x0002, DEF_STR( Off ) )
609   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
610   PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
611   PORT_DIPSETTING(      0x0004, DEF_STR( Off ) )
612   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
613   PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
614   PORT_DIPSETTING(      0x0008, DEF_STR( Off ) )
615   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
616   PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
617   PORT_DIPSETTING(      0x0010, DEF_STR( Off ) )
618   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
619   PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
620   PORT_DIPSETTING(      0x0020, DEF_STR( Off ) )
621   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
622   PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
623   PORT_DIPSETTING(      0x0040, DEF_STR( Off ) )
624   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
625   PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
626   PORT_DIPSETTING(      0x0080, DEF_STR( Off ) )
627   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
628   PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
629   PORT_DIPSETTING(      0x0100, DEF_STR( Off ) )
630   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
631   PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
632   PORT_DIPSETTING(      0x0200, DEF_STR( Off ) )
633   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
634   PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
635   PORT_DIPSETTING(      0x0400, DEF_STR( Off ) )
636   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
637   PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
638   PORT_DIPSETTING(      0x0800, DEF_STR( Off ) )
639   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
640   PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
641   PORT_DIPSETTING(      0x1000, DEF_STR( Off ) )
642   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
643   PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
644   PORT_DIPSETTING(      0x2000, DEF_STR( Off ) )
645   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
646   PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
647   PORT_DIPSETTING(      0x4000, DEF_STR( Off ) )
648   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
649   PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_LOW, "SW1:8" )
615   PORT_DIPUNUSED_DIPLOC( 0x0001, IP_ACTIVE_LOW, "SW2:1" ) /* As listed in service mode, but tested */
616   PORT_DIPUNUSED_DIPLOC( 0x0002, IP_ACTIVE_LOW, "SW2:2" ) /* These might have some use, requires investigation of code */
617    PORT_DIPUNUSED_DIPLOC( 0x0004, IP_ACTIVE_LOW, "SW2:3" )
618    PORT_DIPUNUSED_DIPLOC( 0x0008, IP_ACTIVE_LOW, "SW2:4" )
619    PORT_DIPUNUSED_DIPLOC( 0x0010, IP_ACTIVE_LOW, "SW2:5" )
620    PORT_DIPNAME( 0x0060, 0x0060, "Ticket Payout" )         PORT_DIPLOCATION("SW2:6,7")
621    PORT_DIPSETTING(      0x0000, DEF_STR( No ) )
622    PORT_DIPSETTING(      0x0020, "Little" )
623    PORT_DIPSETTING(      0x0060, DEF_STR( Normal ) )
624    PORT_DIPSETTING(      0x0040, "Much" )
625    PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Free_Play ) )    PORT_DIPLOCATION("SW2:8")
626    PORT_DIPSETTING(      0x0080, DEF_STR( Off ) )
627    PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
628    PORT_DIPNAME( 0x0100, 0x0000, DEF_STR( Demo_Sounds ) )  PORT_DIPLOCATION("SW1:1") /* Has no effect?? */
629    PORT_DIPSETTING(      0x0100, DEF_STR( Off ) )
630    PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
631    PORT_DIPNAME( 0x0e00, 0x0e00, DEF_STR( Coinage ) )      PORT_DIPLOCATION("SW1:2,3,4")
632    PORT_DIPSETTING(      0x0000, DEF_STR( 5C_1C ) )
633    PORT_DIPSETTING(      0x0200, DEF_STR( 4C_1C ) )
634    PORT_DIPSETTING(      0x0400, DEF_STR( 3C_1C ) )
635    PORT_DIPSETTING(      0x0600, DEF_STR( 2C_1C ) )
636    PORT_DIPSETTING(      0x0e00, DEF_STR( 1C_1C ) )
637    PORT_DIPSETTING(      0x0a00, DEF_STR( 2C_3C ) )
638    PORT_DIPSETTING(      0x0c00, DEF_STR( 1C_2C ) )
639    PORT_DIPSETTING(      0x0800, DEF_STR( 1C_3C ) )
640    PORT_DIPNAME( 0x7000, 0x7000, DEF_STR( Difficulty ) )   PORT_DIPLOCATION("SW1:5,6,7")
641    PORT_DIPSETTING(      0x2000, "Level 1" )
642    PORT_DIPSETTING(      0x1000, "Level 2" )
643    PORT_DIPSETTING(      0x0000, "Level 3" )
644    PORT_DIPSETTING(      0x7000, "Level 4" )
645    PORT_DIPSETTING(      0x6000, "Level 5" )
646    PORT_DIPSETTING(      0x5000, "Level 6" )
647    PORT_DIPSETTING(      0x4000, "Level 7" )
648    PORT_DIPSETTING(      0x3000, "Level 8" )
649    PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_LOW, "SW1:8" )
650650INPUT_PORTS_END
651651
652652
r242078r242079
703703   MCFG_CPU_PROGRAM_MAP(baryon_map)
704704   MCFG_CPU_VBLANK_INT_DRIVER("screen", dreamwld_state,  irq4_line_hold)
705705
706
707706   /* video hardware */
708707   MCFG_SCREEN_ADD("screen", RASTER)
709708   MCFG_SCREEN_REFRESH_RATE(57.793)
r242078r242079
719718
720719   MCFG_GFXDECODE_ADD("gfxdecode", "palette", dreamwld)
721720
722
723721   MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
724722
725723   MCFG_OKIM6295_ADD("oki1", XTAL_32MHz/32, OKIM6295_PIN7_LOW) /* 1MHz verified */
r242078r242079
746744
747745/*
748746
749Dream World
750SemiCom, 2000
747Baryon
748SemiCom, 1997
751749
752750PCB Layout
753751----------
754752
755753|-------------------------------------------------|
756|    M6295  ROM5    62256   ACTEL           ROM10 |
757|VOL M6295  ROM6    62256   A40MX04               |
758|    PAL  PAL       32MHz                         |
759| 62256  62256              PAL                   |
760| ROM1 ROM3       68EC020   PAL    PAL            |
761| ROM2 ROM4                 PAL    PAL            |
762|J 62256 62256              PAL                   |
763|A                          PAL    27MHz          |
754|           ROM1   62256   ACTEL            ROM2  |
755|VOL        M6295  62256   A1020B                 |
756|    PAL  PAL              32MHz                  |
757| 62256  62256                PAL                 |
758| ROM3 ROM4         68EC020   PAL    PAL          |
759| ROM5 ROM6                   PAL    PAL          |
760|J 62256 62256                PAL                 |
761|A                            PAL    27MHz        |
764762|M                                 PAL            |
765763|M                         ACTEL    M5M44260      |
766|A             6116        A40MX04  M5M44260      |
764|A             6116        A1020B   M5M44260      |
767765|              6116                               |
768766|                          PAL                    |
769767|              6264        PAL                    |
770|              6264                               |
771| DSW1                      ROM11                 |
772|        8752        ROM7   ROM9    27C160*       |
773| DSW2               ROM8   27C160* 27C160*       |
768| DSW1         6264                               |
769| DSW2  P87C52              ROM7                  |
770|                    ROM8   ROM9    27C160*       |
771|3* 4*               ROM10  ROM11   27C160*       |
774772|-------------------------------------------------|
775773
774The PCB used for Baryon is an earlier version with a single OKI sound chip
775
776776* denotes unpopulated components
777  3 & 4 are 10 pin headers
777778
778Notes:
779      68020 @ 16.0MHz [32/2]
780      M6295 (both) @ 1.0MHz [32/32]. pin 7 LOW
781      8752 @ 16.0MHz [32/2]
782      HSync @ 15.2kHz
783      VSync @ 58Hz
784779*/
785780
786ROM_START( dreamwld )
781ROM_START( baryon ) // replacment labels? no SemiCom logo
787782   ROM_REGION( 0x200000, "maincpu", 0 )
788   ROM_LOAD32_BYTE( "3.bin", 0x000000, 0x040000, CRC(e8f7ae78) SHA1(cfd393cec6dec967c82e1131547b7e7fdc5d814f) )
789   ROM_LOAD32_BYTE( "4.bin", 0x000001, 0x040000, CRC(3ef5d51b) SHA1(82a00b4ff7155f6d5553870dfd510fed9469d9b5) )
790   ROM_LOAD32_BYTE( "1.bin", 0x000002, 0x040000, CRC(35c94ee5) SHA1(3440a65a807622b619c97bc2a88fd7d875c26f66) )
791   ROM_LOAD32_BYTE( "2.bin", 0x000003, 0x040000, CRC(5409e7fc) SHA1(2f94a6a8e4c94b36b43f0b94d58525f594339a9d) )
783   ROM_LOAD32_BYTE( "4.bin", 0x000000, 0x040000, CRC(59e0df20) SHA1(ff12f4adcf731f6984db7d0fbdd7fcc71ce66aa4) )
784   ROM_LOAD32_BYTE( "6.bin", 0x000001, 0x040000, CRC(abccbb3d) SHA1(01524f094543d872d775306024f51258a11e9240) )
785   ROM_LOAD32_BYTE( "3.bin", 0x000002, 0x040000, CRC(046d4231) SHA1(05056efe5fec7f43c400f05278de516b01be0fdf) )
786   ROM_LOAD32_BYTE( "5.bin", 0x000003, 0x040000, CRC(63d5e7cb) SHA1(269bf5ffe10f2464f823c4d377921e19cfb8bc46) )
792787
793788   ROM_REGION( 0x10000, "cpu1", 0 ) /* 87C52 MCU Code */
794789   ROM_LOAD( "87c52.mcu", 0x00000, 0x10000 , NO_DUMP ) /* can't be dumped. */
795790
796   ROM_REGION( 0x6c9, "user1", 0 ) /* Protection data  */
797   /* The MCU supplies this data.
798     The 68k reads it through a port, taking the size and destination write address from the level 1
799     and level 2 irq positions in the 68k vector table (there is code to check that they haven't been
800     modified!)  It then decodes the data using the rom checksum previously calculated and puts it in
801     ram.  The interrupt vectors point at the code placed in RAM. */
802   ROM_LOAD( "protdata.bin", 0x000, 0x6c9 ,  CRC(f284b2fd) SHA1(9e8096c8aa8a288683f002311b38787b120748d1) ) /* extracted */
791   ROM_REGION( 0x6bd, "user1", 0 ) /* Protection data  */
792   ROM_LOAD( "protdata.bin", 0x000, 0x6bd, CRC(117f32a8) SHA1(837bea09d3e59ab9e13bd1103b1fc988edb361c0) ) /* extracted */
803793
804   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples - 1st chip */
805   ROM_LOAD( "5.bin", 0x000000, 0x80000, CRC(9689570a) SHA1(4414233da8f46214ca7e9022df70953922a63aa4) )
794   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples */
795   ROM_LOAD( "1.bin", 0x000000, 0x80000, CRC(e0349074) SHA1(f3d53d96dff586a0ad1632f52e5559cdce5ed0d8) )
806796
807   ROM_REGION( 0x80000, "oki2", 0 ) /* OKI Samples - 2nd chip */
808   ROM_LOAD( "6.bin", 0x000000, 0x80000, CRC(c8b91f30) SHA1(706004ca56d0a74bc7a3dfd73a21cdc09eb90f05) )
797   ROM_REGION( 0x400000, "gfx1", 0 ) /* Sprite Tiles - decoded */
798   ROM_LOAD16_WORD_SWAP( "9.bin",  0x000000, 0x200000, CRC(28bf828f) SHA1(271390cc4f4015a3b69976f0d0527947f13c971b) )
799   ROM_LOAD16_WORD_SWAP( "11.bin", 0x200000, 0x200000, CRC(d0ff1bc6) SHA1(4aeb795222eedeeba770cf725122e989f97119b2) )
809800
801   ROM_REGION( 0x200000, "gfx2", 0 ) /* BG Tiles - decoded */
802   ROM_LOAD16_WORD_SWAP( "2.bin",0x000000, 0x200000, CRC(684012e6) SHA1(4cb60907184b67be130b8385e4336320c0f6e4a7) )
803
804   ROM_REGION( 0x040000, "spritelut", 0 ) /* Sprite Code Lookup ... */
805   ROM_LOAD16_BYTE( "8.bin", 0x000000, 0x020000, CRC(fdbb08b0) SHA1(4b3ac56c4c8370b1434fb6a481fce0d9c52313e0) )
806   ROM_LOAD16_BYTE( "10.bin",0x000001, 0x020000, CRC(c9d20480) SHA1(3f6170e8e08fb7508bd13c23f243ec6888a91f5e) )
807
808   ROM_REGION( 0x10000, "unknown", 0 )
809   ROM_LOAD( "7.bin", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
810ROM_END
811
812ROM_START( baryona ) // this set had original SemiCom labels
813   ROM_REGION( 0x200000, "maincpu", 0 )
814   ROM_LOAD32_BYTE( "rom_4_27c020.bin", 0x000000, 0x040000, CRC(6c1cdad0) SHA1(40c437507076ce52ec2240049d6b4bef180b104a) )
815   ROM_LOAD32_BYTE( "rom_5_27c020.bin", 0x000001, 0x040000, CRC(15917c9d) SHA1(6444be93e6a997070820e3c5a2e2e703e22883d9) )
816   ROM_LOAD32_BYTE( "rom_2_27c020.bin", 0x000002, 0x040000, CRC(42b14a6c) SHA1(37e772a673732ef16767c14ad77a4faaa06d675a) )
817   ROM_LOAD32_BYTE( "rom_3_27c020.bin", 0x000003, 0x040000, CRC(0ae6d86e) SHA1(410ad161688ec8516fe5ac7160a4a228dbb01936) )
818
819   ROM_REGION( 0x10000, "cpu1", 0 ) /* 87C52 MCU Code */
820   ROM_LOAD( "87c52.mcu", 0x00000, 0x10000 , NO_DUMP ) /* can't be dumped. */
821
822   ROM_REGION( 0x6bd, "user1", 0 ) /* Protection data - from baryon set, assumed to be the same */
823   ROM_LOAD( "protdata.bin", 0x000, 0x6bd, CRC(117f32a8) SHA1(837bea09d3e59ab9e13bd1103b1fc988edb361c0) ) /* extracted */
824
825   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples */
826   ROM_LOAD( "rom_1_27c040.bin", 0x000000, 0x80000, CRC(e0349074) SHA1(f3d53d96dff586a0ad1632f52e5559cdce5ed0d8) )
827
810828   ROM_REGION( 0x400000, "gfx1", 0 ) /* Sprite Tiles - decoded */
811   ROM_LOAD16_WORD_SWAP( "9.bin", 0x000000, 0x200000, CRC(fa84e3af) SHA1(5978737d348fd382f4ec004d29870656c864d137) )
829   ROM_LOAD16_WORD_SWAP( "rom_10_27c160.bin", 0x000000, 0x200000, CRC(28bf828f) SHA1(271390cc4f4015a3b69976f0d0527947f13c971b) )
830   ROM_LOAD16_WORD_SWAP( "rom_11_27c160.bom", 0x200000, 0x200000, CRC(d0ff1bc6) SHA1(4aeb795222eedeeba770cf725122e989f97119b2) )
812831
813832   ROM_REGION( 0x200000, "gfx2", 0 ) /* BG Tiles - decoded */
814   ROM_LOAD16_WORD_SWAP( "10.bin",0x000000, 0x200000, CRC(3553e4f5) SHA1(c335494f4a12a01a88e7cd578cae922954303cfd) )
833   ROM_LOAD16_WORD_SWAP( "rom_8_27c160.bin",0x000000, 0x200000, CRC(684012e6) SHA1(4cb60907184b67be130b8385e4336320c0f6e4a7) )
815834
816835   ROM_REGION( 0x040000, "spritelut", 0 ) /* Sprite Code Lookup ... */
817   ROM_LOAD16_BYTE( "8.bin", 0x000000, 0x020000, CRC(8d570df6) SHA1(e53e4b099c64eca11d027e0083caa101fcd99959) )
818   ROM_LOAD16_BYTE( "7.bin", 0x000001, 0x020000, CRC(a68bf35f) SHA1(f48540a5415a7d9723ca6e7e03cab039751dce17) )
836   ROM_LOAD16_BYTE( "rom6", 0x000000, 0x020000, CRC(fdbb08b0) SHA1(4b3ac56c4c8370b1434fb6a481fce0d9c52313e0) )
837   ROM_LOAD16_BYTE( "rom7", 0x000001, 0x020000, CRC(c9d20480) SHA1(3f6170e8e08fb7508bd13c23f243ec6888a91f5e) )
819838
820   ROM_REGION( 0x10000, "unknown", 0 ) /* ???? - not decoded seems to be in blocks of 0x41 bytes.. */
821   ROM_LOAD( "11.bin", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
839   ROM_REGION( 0x10000, "unknown", 0 )
840   ROM_LOAD( "rom_9_27c512.bin", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
822841ROM_END
823842
843/*
824844
845Cute Fighter
846SemiCom, 1998
847
848PCB Layout
849----------
850
851|-------------------------------------------------|
852|    M6295  SEMICOM1 62256    ACTEL     SEMICOM12 |
853|VOL M6295  SEMICOM2 62256    A1020B              |
854|    PAL  PAL        32MHz                        |
855| 62256  62256              PAL                   |
856| SEMICOM3 SEMICOM5 68EC020 PAL    PAL            |
857| SEMICOM4 SEMICOM6         PAL    PAL            |
858|J 62256 62256              PAL                   |
859|A                          PAL    27MHz          |
860|M                                 PAL            |
861|M                         ACTEL    M5M44260      |
862|A             6116        A40MX04  M5M44260      |
863|              6116                               |
864|                          PAL                    |
865|              6264        PAL                    |
866| DSW1             6264                           |
867| DSW2   8752                  SEMICOM9           |
868|                    SEMICOM7 SEMICOM10 SEMICOM13 |
869|3* 4*               SEMICOM8 SEMICOM11 SEMICOM14 |
870|-------------------------------------------------|
871
872A later version of the SemiCom 68020 hardware added a second OKI sound chip and sample rom
873
874Main CPU 68EC020FG16           @ 16MHz
875AD-65 (OKI MSM6295 rebadged)   @ 1MHz
876Atmel AT89C52 MCU (secured)    @ 16MHZ
877
878* 3 & 4 are 10 pin headers for unknown use. One might be used to drive the ticket dispenser
879
880*/
881
825882ROM_START( cutefght )
826883   ROM_REGION( 0x200000, "maincpu", 0 )
827   ROM_LOAD32_BYTE( "cf.5", 0x000000, 0x080000, CRC(c14fd5dc) SHA1(f332105f5f249d693e792e7115f9e6cffb6db19f) )
828   ROM_LOAD32_BYTE( "cf.6", 0x000001, 0x080000, CRC(47440088) SHA1(c45503c4b5f271b430263ca079edeaaeadf5d9f6) )
829   ROM_LOAD32_BYTE( "cf.3", 0x000002, 0x080000, CRC(e7e7a866) SHA1(a31751f4164a427de59f0c76c9a8cb34370d8183) )
830   ROM_LOAD32_BYTE( "cf.4", 0x000003, 0x080000, CRC(476a3bf5) SHA1(5be1c70bbf4fcfc534b7f20bfceaa8da2e961330) )
884   ROM_LOAD32_BYTE( "5_semicom", 0x000000, 0x080000, CRC(c14fd5dc) SHA1(f332105f5f249d693e792e7115f9e6cffb6db19f) )
885   ROM_LOAD32_BYTE( "6_semicom", 0x000001, 0x080000, CRC(47440088) SHA1(c45503c4b5f271b430263ca079edeaaeadf5d9f6) )
886   ROM_LOAD32_BYTE( "3_semicom", 0x000002, 0x080000, CRC(e7e7a866) SHA1(a31751f4164a427de59f0c76c9a8cb34370d8183) )
887   ROM_LOAD32_BYTE( "4_semicom", 0x000003, 0x080000, CRC(476a3bf5) SHA1(5be1c70bbf4fcfc534b7f20bfceaa8da2e961330) )
831888
832889   ROM_REGION( 0x10000, "cpu1", 0 ) /* 87C52 MCU Code */
833890   ROM_LOAD( "87c52.mcu", 0x00000, 0x10000 , NO_DUMP ) /* can't be dumped. */
r242078r242079
836893   ROM_LOAD( "protdata.bin", 0x000, 0x701 , CRC(764c3c0e) SHA1(ae044d016850b730b2d97ccb7845b6b438c1e074) )
837894
838895   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples - 1st chip */
839   ROM_LOAD( "cf.2", 0x000000, 0x80000, CRC(694ddaf9) SHA1(f9138e7e1d8f771c4e69c17f27fb2b70fbee076a) )
896   ROM_LOAD( "2_semicom", 0x000000, 0x80000, CRC(694ddaf9) SHA1(f9138e7e1d8f771c4e69c17f27fb2b70fbee076a) )
840897
841898   ROM_REGION( 0x80000, "oki2", 0 ) /* OKI Samples - 2nd chip */
842   ROM_LOAD( "cf.1", 0x000000, 0x80000, CRC(fa3b6890) SHA1(7534931c96d6fa05fee840a7ea07b87e2e2acc50) )
899   ROM_LOAD( "1_semicom", 0x000000, 0x80000, CRC(fa3b6890) SHA1(7534931c96d6fa05fee840a7ea07b87e2e2acc50) )
843900
844901   ROM_REGION( 0x800000, "gfx1", 0 ) /* Sprite Tiles - decoded */
845   ROM_LOAD16_WORD_SWAP( "cf.10",  0x000000, 0x200000, CRC(62bf1e6e) SHA1(fb4b0db313e26687f0ebc6a8505a02e5348776da) )
846   ROM_LOAD16_WORD_SWAP( "cf.11",  0x200000, 0x200000, CRC(796f23a7) SHA1(adaa4c8525de428599f4489ecc8e966fed0d514d) )
847   ROM_LOAD16_WORD_SWAP( "cf.13",  0x400000, 0x200000, CRC(24222b3c) SHA1(08163863890c01728db89b8f4447841ecb4f4f62) )
848   ROM_LOAD16_WORD_SWAP( "cf.14",  0x600000, 0x200000, CRC(385b69d7) SHA1(8e7cae5589e354bea0b77b061af1d0c81d796f7c) )
902   ROM_LOAD16_WORD_SWAP( "10_semicom",  0x000000, 0x200000, CRC(62bf1e6e) SHA1(fb4b0db313e26687f0ebc6a8505a02e5348776da) )
903   ROM_LOAD16_WORD_SWAP( "11_semicom",  0x200000, 0x200000, CRC(796f23a7) SHA1(adaa4c8525de428599f4489ecc8e966fed0d514d) )
904   ROM_LOAD16_WORD_SWAP( "13_semicom",  0x400000, 0x200000, CRC(24222b3c) SHA1(08163863890c01728db89b8f4447841ecb4f4f62) )
905   ROM_LOAD16_WORD_SWAP( "14_semicom",  0x600000, 0x200000, CRC(385b69d7) SHA1(8e7cae5589e354bea0b77b061af1d0c81d796f7c) )
849906
850907   ROM_REGION( 0x200000, "gfx2", 0 ) /* BG Tiles - decoded */
851   ROM_LOAD16_WORD_SWAP( "cf.12",0x000000, 0x200000, CRC(45d29c22) SHA1(df719a061dcd14fb4388fb45dfee2054e56a1299) )
908   ROM_LOAD16_WORD_SWAP( "12_semicom",0x000000, 0x200000, CRC(45d29c22) SHA1(df719a061dcd14fb4388fb45dfee2054e56a1299) )
852909
853910   ROM_REGION( 0x040000, "spritelut", 0 ) /* Sprite Code Lookup ... */
854   ROM_LOAD16_BYTE( "cf.7", 0x000000, 0x020000, CRC(39454102) SHA1(347e9242fd7e2092cfaacdce92691cf6024471ac) )
855   ROM_LOAD16_BYTE( "cf.8", 0x000001, 0x020000, CRC(fccb1b13) SHA1(fd4aec4a660f9913651fcc084e3f13eb0adbddd6) )
911   ROM_LOAD16_BYTE( "7_semicom", 0x000000, 0x020000, CRC(39454102) SHA1(347e9242fd7e2092cfaacdce92691cf6024471ac) )
912   ROM_LOAD16_BYTE( "8_semicom", 0x000001, 0x020000, CRC(fccb1b13) SHA1(fd4aec4a660f9913651fcc084e3f13eb0adbddd6) )
856913
857914   ROM_REGION( 0x10000, "unknown", 0 ) /* ???? - not decoded seems to be in blocks of 0x41 bytes.. */
858   ROM_LOAD( "cf.9", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
915   ROM_LOAD( "9_semicom", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
859916ROM_END
860917
861918/*
r242078r242079
881938|              6116                               |
882939|                          PAL                    |
883940|              6264        PAL                    |
884|              6264                               |
885| DSW1                      ROM9                  |
886|        8752        ROM7   ROM8    27C160*       |
887| DSW2               ROM6   27C160* 27C160*       |
941| DSW2         6264                               |
942| DSW2   8752               ROM9                  |
943|                    ROM7   ROM8    27C160*       |
944|3* 4*               ROM6   27C160* 27C160*       |
888945|-------------------------------------------------|
889946
890Same PCB as Dream World except one OKI M6295 and it's sample rom are unpopulated
947Same PCB as Cute Fighter / Dream World PCB except one OKI M6295 and it's sample rom are unpopulated
891948
892949* denotes unpopulated components
950  3 & 4 are 10 pin headers
893951
894952Main CPU 68EC020FG16           @ 16MHz
895953AD-65 (OKI MSM6295 rebadged)   @ 1MHz
896954Atmel AT89C52 MCU (secured)    @ 16MHZ
897955
898956V-SYNC                         @57.793 Hz
899H-SYNC                         @ (floating) 15.19 - 15.27KHz
957H-SYNC                         @15.19 - 15.27KHz (floating)
900958
901959*/
902960
r242078r242079
935993
936994/*
937995
938Baryon
939SemiCom, 1997
996Dream World
997SemiCom, 2000
940998
941999PCB Layout
9421000----------
9431001
9441002|-------------------------------------------------|
945|           ROM1   62256   ACTEL            ROM2  |
946|VOL        M6295  62256   A40MX04                |
947|    PAL  PAL              32MHz                  |
948| 62256  62256                PAL                 |
949| ROM3 ROM4         68EC020   PAL    PAL          |
950| ROM5 ROM6                   PAL    PAL          |
951|J 62256 62256                PAL                 |
952|A                            PAL    27MHz        |
1003|    M6295  ROM5    62256   ACTEL           ROM10 |
1004|VOL M6295  ROM6    62256   A40MX04               |
1005|    PAL  PAL       32MHz                         |
1006| 62256  62256              PAL                   |
1007| ROM1 ROM3       68EC020   PAL    PAL            |
1008| ROM2 ROM4                 PAL    PAL            |
1009|J 62256 62256              PAL                   |
1010|A                          PAL    27MHz          |
9531011|M                                 PAL            |
9541012|M                         ACTEL    M5M44260      |
9551013|A             6116        A40MX04  M5M44260      |
9561014|              6116                               |
9571015|                          PAL                    |
9581016|              6264        PAL                    |
959|              6264                               |
960| DSW1                      ROM7                  |
961|       P87C52       ROM8   ROM9    27C160*       |
962| DSW2               ROM10  ROM11   27C160*       |
1017| DSW1         6264                               |
1018| DSW2   8752               ROM11                 |
1019|                    ROM7   ROM9    27C160*       |
1020|3* 4*               ROM8   27C160* 27C160*       |
9631021|-------------------------------------------------|
9641022
965Baryon is a slightly different PCB, doesn't have a position for a 2nd OKI
966
9671023* denotes unpopulated components
1024  3 & 4 are 10 pin headers
9681025
1026Notes:
1027      68020 @ 16.0MHz [32/2]
1028      M6295 (both) @ 1.0MHz [32/32]. pin 7 LOW
1029      8752 @ 16.0MHz [32/2]
1030      HSync @ 15.2kHz
1031      VSync @ 58Hz
9691032*/
9701033
971// replacment labels? no SemiCom logo
972ROM_START( baryon )
1034ROM_START( dreamwld )
9731035   ROM_REGION( 0x200000, "maincpu", 0 )
974   ROM_LOAD32_BYTE( "4.bin", 0x000000, 0x040000, CRC(59e0df20) SHA1(ff12f4adcf731f6984db7d0fbdd7fcc71ce66aa4) )
975   ROM_LOAD32_BYTE( "6.bin", 0x000001, 0x040000, CRC(abccbb3d) SHA1(01524f094543d872d775306024f51258a11e9240) )
976   ROM_LOAD32_BYTE( "3.bin", 0x000002, 0x040000, CRC(046d4231) SHA1(05056efe5fec7f43c400f05278de516b01be0fdf) )
977   ROM_LOAD32_BYTE( "5.bin", 0x000003, 0x040000, CRC(63d5e7cb) SHA1(269bf5ffe10f2464f823c4d377921e19cfb8bc46) )
1036   ROM_LOAD32_BYTE( "3.bin", 0x000000, 0x040000, CRC(e8f7ae78) SHA1(cfd393cec6dec967c82e1131547b7e7fdc5d814f) )
1037   ROM_LOAD32_BYTE( "4.bin", 0x000001, 0x040000, CRC(3ef5d51b) SHA1(82a00b4ff7155f6d5553870dfd510fed9469d9b5) )
1038   ROM_LOAD32_BYTE( "1.bin", 0x000002, 0x040000, CRC(35c94ee5) SHA1(3440a65a807622b619c97bc2a88fd7d875c26f66) )
1039   ROM_LOAD32_BYTE( "2.bin", 0x000003, 0x040000, CRC(5409e7fc) SHA1(2f94a6a8e4c94b36b43f0b94d58525f594339a9d) )
9781040
9791041   ROM_REGION( 0x10000, "cpu1", 0 ) /* 87C52 MCU Code */
9801042   ROM_LOAD( "87c52.mcu", 0x00000, 0x10000 , NO_DUMP ) /* can't be dumped. */
9811043
982   ROM_REGION( 0x6bd, "user1", 0 ) /* Protection data  */
983   ROM_LOAD( "protdata.bin", 0x000, 0x6bd, CRC(117f32a8) SHA1(837bea09d3e59ab9e13bd1103b1fc988edb361c0) ) /* extracted */
1044   ROM_REGION( 0x6c9, "user1", 0 ) /* Protection data  */
1045   /* The MCU supplies this data.
1046     The 68k reads it through a port, taking the size and destination write address from the level 1
1047     and level 2 irq positions in the 68k vector table (there is code to check that they haven't been
1048     modified!)  It then decodes the data using the rom checksum previously calculated and puts it in
1049     ram.  The interrupt vectors point at the code placed in RAM. */
1050   ROM_LOAD( "protdata.bin", 0x000, 0x6c9 ,  CRC(f284b2fd) SHA1(9e8096c8aa8a288683f002311b38787b120748d1) ) /* extracted */
9841051
985   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples */
986   ROM_LOAD( "1.bin", 0x000000, 0x80000, CRC(e0349074) SHA1(f3d53d96dff586a0ad1632f52e5559cdce5ed0d8) )
1052   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples - 1st chip */
1053   ROM_LOAD( "5.bin", 0x000000, 0x80000, CRC(9689570a) SHA1(4414233da8f46214ca7e9022df70953922a63aa4) )
9871054
988   ROM_REGION( 0x400000, "gfx1", 0 ) /* Sprite Tiles - decoded */
989   ROM_LOAD16_WORD_SWAP( "9.bin",  0x000000, 0x200000, CRC(28bf828f) SHA1(271390cc4f4015a3b69976f0d0527947f13c971b) )
990   ROM_LOAD16_WORD_SWAP( "11.bin", 0x200000, 0x200000, CRC(d0ff1bc6) SHA1(4aeb795222eedeeba770cf725122e989f97119b2) )
1055   ROM_REGION( 0x80000, "oki2", 0 ) /* OKI Samples - 2nd chip */
1056   ROM_LOAD( "6.bin", 0x000000, 0x80000, CRC(c8b91f30) SHA1(706004ca56d0a74bc7a3dfd73a21cdc09eb90f05) )
9911057
992   ROM_REGION( 0x200000, "gfx2", 0 ) /* BG Tiles - decoded */
993   ROM_LOAD16_WORD_SWAP( "2.bin",0x000000, 0x200000, CRC(684012e6) SHA1(4cb60907184b67be130b8385e4336320c0f6e4a7) )
994
995   ROM_REGION( 0x040000, "spritelut", 0 ) /* Sprite Code Lookup ... */
996   ROM_LOAD16_BYTE( "8.bin", 0x000000, 0x020000, CRC(fdbb08b0) SHA1(4b3ac56c4c8370b1434fb6a481fce0d9c52313e0) )
997   ROM_LOAD16_BYTE( "10.bin",0x000001, 0x020000, CRC(c9d20480) SHA1(3f6170e8e08fb7508bd13c23f243ec6888a91f5e) )
998
999   ROM_REGION( 0x10000, "unknown", 0 )
1000   ROM_LOAD( "7.bin", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
1001ROM_END
1002
1003// this set had original SemiCom labels
1004ROM_START( baryona )
1005   ROM_REGION( 0x200000, "maincpu", 0 )
1006   ROM_LOAD32_BYTE( "rom_4_27c020.bin", 0x000000, 0x040000, CRC(6c1cdad0) SHA1(40c437507076ce52ec2240049d6b4bef180b104a) )
1007   ROM_LOAD32_BYTE( "rom_5_27c020.bin", 0x000001, 0x040000, CRC(15917c9d) SHA1(6444be93e6a997070820e3c5a2e2e703e22883d9) )
1008   ROM_LOAD32_BYTE( "rom_2_27c020.bin", 0x000002, 0x040000, CRC(42b14a6c) SHA1(37e772a673732ef16767c14ad77a4faaa06d675a) )
1009   ROM_LOAD32_BYTE( "rom_3_27c020.bin", 0x000003, 0x040000, CRC(0ae6d86e) SHA1(410ad161688ec8516fe5ac7160a4a228dbb01936) )
1010
1011   ROM_REGION( 0x10000, "cpu1", 0 ) /* 87C52 MCU Code */
1012   ROM_LOAD( "87c52.mcu", 0x00000, 0x10000 , NO_DUMP ) /* can't be dumped. */
1013
1014   ROM_REGION( 0x6bd, "user1", 0 ) /* Protection data - from baryon set, assumed to be the same */
1015   ROM_LOAD( "protdata.bin", 0x000, 0x6bd, CRC(117f32a8) SHA1(837bea09d3e59ab9e13bd1103b1fc988edb361c0) ) /* extracted */
1016
1017   ROM_REGION( 0x80000, "oki1", 0 ) /* OKI Samples */
1018   ROM_LOAD( "rom_1_27c040.bin", 0x000000, 0x80000, CRC(e0349074) SHA1(f3d53d96dff586a0ad1632f52e5559cdce5ed0d8) )
1019
10201058   ROM_REGION( 0x400000, "gfx1", 0 ) /* Sprite Tiles - decoded */
1021   ROM_LOAD16_WORD_SWAP( "rom_10_27c160.bin", 0x000000, 0x200000, CRC(28bf828f) SHA1(271390cc4f4015a3b69976f0d0527947f13c971b) )
1022   ROM_LOAD16_WORD_SWAP( "rom_11_27c160.bom", 0x200000, 0x200000, CRC(d0ff1bc6) SHA1(4aeb795222eedeeba770cf725122e989f97119b2) )
1059   ROM_LOAD16_WORD_SWAP( "9.bin", 0x000000, 0x200000, CRC(fa84e3af) SHA1(5978737d348fd382f4ec004d29870656c864d137) )
10231060
10241061   ROM_REGION( 0x200000, "gfx2", 0 ) /* BG Tiles - decoded */
1025   ROM_LOAD16_WORD_SWAP( "rom_8_27c160.bin",0x000000, 0x200000, CRC(684012e6) SHA1(4cb60907184b67be130b8385e4336320c0f6e4a7) )
1062   ROM_LOAD16_WORD_SWAP( "10.bin",0x000000, 0x200000, CRC(3553e4f5) SHA1(c335494f4a12a01a88e7cd578cae922954303cfd) )
10261063
10271064   ROM_REGION( 0x040000, "spritelut", 0 ) /* Sprite Code Lookup ... */
1028   ROM_LOAD16_BYTE( "rom6", 0x000000, 0x020000, CRC(fdbb08b0) SHA1(4b3ac56c4c8370b1434fb6a481fce0d9c52313e0) )
1029   ROM_LOAD16_BYTE( "rom7", 0x000001, 0x020000, CRC(c9d20480) SHA1(3f6170e8e08fb7508bd13c23f243ec6888a91f5e) )
1065   ROM_LOAD16_BYTE( "8.bin", 0x000000, 0x020000, CRC(8d570df6) SHA1(e53e4b099c64eca11d027e0083caa101fcd99959) )
1066   ROM_LOAD16_BYTE( "7.bin", 0x000001, 0x020000, CRC(a68bf35f) SHA1(f48540a5415a7d9723ca6e7e03cab039751dce17) )
10301067
1031   ROM_REGION( 0x10000, "unknown", 0 )
1032   ROM_LOAD( "rom_9_27c512.bin", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
1068   ROM_REGION( 0x10000, "unknown", 0 ) /* ???? - not decoded seems to be in blocks of 0x41 bytes.. */
1069   ROM_LOAD( "11.bin", 0x000000, 0x10000, CRC(0da8db45) SHA1(7d5bd71c5b0b28ff74c732edd7c662f46f2ab25b) )
10331070ROM_END
10341071
10351072
1036
10371073GAME( 1997, baryon,   0,      baryon,   baryon,   driver_device, 0, ROT270, "SemiCom",         "Baryon - Future Assault (set 1)", GAME_SUPPORTS_SAVE )
10381074GAME( 1997, baryona,  baryon, baryon,   baryon,   driver_device, 0, ROT270, "SemiCom",         "Baryon - Future Assault (set 2)", GAME_SUPPORTS_SAVE )
1039
1040GAME( 2000, dreamwld, 0, dreamwld, dreamwld, driver_device, 0, ROT0,   "SemiCom",         "Dream World", GAME_SUPPORTS_SAVE )
1041
1042GAME( 1998, cutefght, 0, dreamwld, cutefght, driver_device, 0, ROT0,   "SemiCom",         "Cute Fighter", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS ) // wrong linescroll?
1043
1044GAME( 1999, rolcrush, 0, baryon,   rolcrush, driver_device, 0, ROT0,   "Trust / SemiCom", "Rolling Crush (version 1.07.E - 1999/02/11)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS ) // wrong linescroll
1075GAME( 1998, cutefght, 0,      dreamwld, cutefght, driver_device, 0, ROT0,   "SemiCom",         "Cute Fighter", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS ) // wrong linescroll?
1076GAME( 1999, rolcrush, 0,      baryon,   rolcrush, driver_device, 0, ROT0,   "Trust / SemiCom", "Rolling Crush (version 1.07.E - 1999/02/11)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS ) // wrong
1077GAME( 2000, dreamwld, 0,      dreamwld, dreamwld, driver_device, 0, ROT0,   "SemiCom",         "Dream World", GAME_SUPPORTS_SAVE )
trunk/src/mess/drivers/vii.c
r242078r242079
663663   static const char *const gpioregs[] = { "GPIO Data Port", "GPIO Buffer Port", "GPIO Direction Port", "GPIO Attribute Port", "GPIO IRQ/Latch Port" };
664664   static const char gpioports[] = { 'A', 'B', 'C' };
665665
666   offset -= 0x500;
667
668666   UINT16 val = m_io_regs[offset];
669667
670668   switch(offset)
r242078r242079
738736
739737   UINT16 temp = 0;
740738
741   offset -= 0x500;
742
743739   switch(offset)
744740   {
745741      case 0x00: // GPIO special function select
r242078r242079
901897}
902898
903899static ADDRESS_MAP_START( vii_mem, AS_PROGRAM, 16, vii_state )
904   AM_RANGE( 0x000000, 0x004fff ) AM_RAM AM_SHARE("p_ram")
905   AM_RANGE( 0x005000, 0x0051ff ) AM_READWRITE(video_r, video_w)
906   AM_RANGE( 0x005200, 0x0055ff ) AM_RAM AM_SHARE("p_rowscroll")
907   AM_RANGE( 0x005600, 0x0057ff ) AM_RAM AM_SHARE("p_palette")
908   AM_RANGE( 0x005800, 0x005fff ) AM_RAM AM_SHARE("p_spriteram")
909   AM_RANGE( 0x006000, 0x006fff ) AM_READWRITE(audio_r, audio_w)
910   AM_RANGE( 0x007000, 0x007fff ) AM_READWRITE(io_r,    io_w)
911   AM_RANGE( 0x008000, 0x7fffff ) AM_READ(rom_r)
900   AM_RANGE( 0x000000, 0x0027ff ) AM_RAM AM_SHARE("p_ram")
901   AM_RANGE( 0x002800, 0x0028ff ) AM_READWRITE(video_r, video_w)
902   AM_RANGE( 0x002900, 0x002aff ) AM_RAM AM_SHARE("p_rowscroll")
903   AM_RANGE( 0x002b00, 0x002bff ) AM_RAM AM_SHARE("p_palette")
904   AM_RANGE( 0x002c00, 0x002fff ) AM_RAM AM_SHARE("p_spriteram")
905   AM_RANGE( 0x003000, 0x0037ff ) AM_READWRITE(audio_r, audio_w)
906   AM_RANGE( 0x003d00, 0x003eff ) AM_READWRITE(io_r,    io_w)
907   AM_RANGE( 0x004000, 0x3fffff ) AM_READ(rom_r)
912908ADDRESS_MAP_END
913909
914910static INPUT_PORTS_START( vii )


Previous 199869 Revisions Next


© 1997-2024 The MAME Team