Previous 199869 Revisions Next

r20966 Tuesday 12th February, 2013 at 00:18:28 UTC by Angelo Salese
Experimental fixes for Bug!
[src/emu/video]stvvdp2.c
[src/mame/drivers]saturn.c
[src/mame/includes]stv.h

trunk/src/mame/includes/stv.h
r20965r20966
272272   DECLARE_WRITE32_MEMBER ( saturn_vdp2_cram_w );
273273   DECLARE_WRITE16_MEMBER ( saturn_vdp2_regs_w );
274274
275   DECLARE_READ32_MEMBER( abus_dummy_r );
275276
276277   /* VDP1 */
277278   void stv_set_framebuffer_config( void );
trunk/src/mame/drivers/saturn.c
r20965r20966
301301         res = m_scu.ism;
302302         break;
303303      case 0xa4/4:
304         if(LOG_SCU && !space.debugger_access()) logerror("(PC=%08x) IRQ status reg read %08x MASK=%08x\n",space.device().safe_pc(),mem_mask,m_scu_regs[0xa0/4]);
305         res = m_scu.ist;
304         if(LOG_SCU && !space.debugger_access()) logerror("(PC=%08x) IRQ status reg read MASK=%08x IST=%08x | ISM=%08x\n",space.device().safe_pc(),mem_mask,m_scu.ist,m_scu.ism);
305         /* TODO: Bug! trips an HW fault. Basically, it tries to read the IST bit 1 with that irq enabled. */
306         res = m_scu.ist | ~m_scu.ism;
307//         res = m_scu.ist;
306308         break;
307309      case 0xc8/4:
308310         if(LOG_SCU && !space.debugger_access()) logerror("(PC=%08x) SCU version reg read\n",space.device().safe_pc());
r20965r20966
769771   return cart_ram_header[m_cart_type];
770772}
771773
774/* TODO: Bug! accesses this one, if returning 0 the SH-2 hard-crashes. Might be an actual bug with the CD block. */
775READ32_HANDLER( saturn_state::abus_dummy_r )
776{
777   return -1;
778}
779
772780static ADDRESS_MAP_START( saturn_mem, AS_PROGRAM, 32, saturn_state )
773781   AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_SHARE("share6")  // bios
774782   AM_RANGE(0x00100000, 0x0010007f) AM_READWRITE8(saturn_SMPC_r, saturn_SMPC_w,0xffffffff)
r20965r20966
780788//  AM_RANGE(0x02400000, 0x027fffff) AM_RAM //cart RAM area, dynamically allocated
781789//  AM_RANGE(0x04000000, 0x047fffff) AM_RAM //backup RAM area, dynamically allocated
782790   AM_RANGE(0x04fffffc, 0x04ffffff) AM_READ8(saturn_cart_type_r,0x000000ff)
791   AM_RANGE(0x05000000, 0x057fffff) AM_READ(abus_dummy_r)
783792   AM_RANGE(0x05800000, 0x0589ffff) AM_READWRITE(stvcd_r, stvcd_w)
784793   /* Sound */
785794   AM_RANGE(0x05a00000, 0x05a7ffff) AM_READWRITE16(saturn_soundram_r, saturn_soundram_w,0xffffffff)
trunk/src/emu/video/stvvdp2.c
r20965r20966
45764576
45774577      /* Langrisser III bit 3 normal, bit 1 during battle field */
45784578      /* Metal Slug bit 0 during gameplay */
4579      if(STV_VDP2_SFSEL & ~0xb)
4579      /* Bug! Sega Away Logo onward 0x470 */
4580      if(STV_VDP2_SFSEL & ~0x47b)
45804581         popmessage("Special Function Code Select enable %04x %04x, contact MAMEdev",STV_VDP2_SFSEL,STV_VDP2_SFCODE);
45814582
45824583      /* Albert Odyssey Gaiden 0x0001 */
r20965r20966
46074608      /* Find Love  0x4400 */
46084609      /* Dragon Ball Z 0x3800 - 0x2c00 */
46094610      /* Assault Suit Leynos 2 0x0200*/
4610      if(STV_VDP2_SFPRMD & ~0x7f75)
4611      /* Bug! 0x8800 */
4612      if(STV_VDP2_SFPRMD & ~0xff75)
46114613         popmessage("Special Priority Mode enabled %04x, contact MAMEdev",STV_VDP2_SFPRMD);
46124614   }
46134615}

Previous 199869 Revisions Next


© 1997-2024 The MAME Team