diff --git a/src/mame/drivers/saturn.c b/src/mame/drivers/saturn.c index 7a203e8c2b5..fc5212d3432 100644 --- a/src/mame/drivers/saturn.c +++ b/src/mame/drivers/saturn.c @@ -600,9 +600,9 @@ static WRITE32_HANDLER( saturn_scu_w ) dsp_ram_addr_w(data); if(LOG_SCU) logerror("SCU DSP: Data RAM Data Port Access %08x\n",data); break; - case 0x90/4: if(LOG_SCU) logerror("timer 0 compare data = %03x\n",state->m_scu_regs[36]);break; - case 0x94/4: if(LOG_SCU) logerror("timer 1 set data = %08x\n",state->m_scu_regs[37]); break; - case 0x98/4: if(LOG_SCU) logerror("timer 1 mode data = %08x\n",state->m_scu_regs[38]); break; + case 0x90/4: /*if(LOG_SCU) logerror("timer 0 compare data = %03x\n",state->m_scu_regs[36]);*/ break; + case 0x94/4: /*if(LOG_SCU) logerror("timer 1 set data = %08x\n",state->m_scu_regs[37]);*/ break; + case 0x98/4: /*if(LOG_SCU) logerror("timer 1 mode data = %08x\n",state->m_scu_regs[38]);*/ break; case 0xa0/4: /* IRQ mask */ state->m_scu.ism = state->m_scu_regs[0xa0/4]; scu_test_pending_irq(space->machine()); diff --git a/src/mame/machine/stvcd.c b/src/mame/machine/stvcd.c index c35f4dec7d9..dbea4e95d67 100644 --- a/src/mame/machine/stvcd.c +++ b/src/mame/machine/stvcd.c @@ -589,10 +589,6 @@ static void cd_writeWord(running_machine &machine, UINT32 addr, UINT16 data) case 0x0018: case 0x001a: // CDROM_LOG(("WW CR1: %04x\n", data)) - /* these are ERRORS from our core and mustn't happen! */ - if(data == 0x2100 || data == 0x2300) - debugger_break(machine); - cr1 = data; cd_stat &= ~CD_STAT_PERI; break; @@ -931,6 +927,12 @@ static void cd_writeWord(running_machine &machine, UINT32 addr, UINT16 data) hirqreg |= CMOK|DRDY; break; + case 0x2100: + case 0x2300: + popmessage("%08x %08x",cd_curfad,fadstoplay); + hirqreg |= (CMOK); + break; + case 0x3000: // Set CD Device connection { UINT8 parm; @@ -2062,9 +2064,6 @@ static void cd_playdata(void) if(cdrom_get_track_type(cdrom, cdrom_get_track(cdrom, cd_curfad)) != CD_TRACK_AUDIO) cd_read_filtered_sector(cd_curfad); - if(cdrom_get_track_type(cdrom, cdrom_get_track(cdrom, cd_curfad)) != CD_TRACK_AUDIO && 0) - popmessage("%08x %08x",cd_curfad,fadstoplay); - cd_curfad++; fadstoplay--; diff --git a/src/mame/video/stvvdp1.c b/src/mame/video/stvvdp1.c index c05716c77ba..19b1d00e5ba 100644 --- a/src/mame/video/stvvdp1.c +++ b/src/mame/video/stvvdp1.c @@ -176,9 +176,23 @@ READ16_HANDLER( saturn_vdp1_regs_r ) break; case 0x12/2: return state->m_vdp1.lopr; case 0x14/2: return state->m_vdp1.copr; + /* MODR register, read register for the other VDP1 regs + (Shienryu SS version abuses of this during intro, otherwise you get vertical oriented VDP1 sprites on horizontal display) */ case 0x16/2: - printf ("cpu %s (PC=%08X) VDP1: Read from Registers, Offset %04x\n", space->device().tag(), cpu_get_pc(&space->device()), offset*2); + UINT16 modr; + modr = 0x1000; //vdp1 VER + modr |= (STV_VDP1_PTM >> 1) << 8; // PTM1 + modr |= STV_VDP1_EOS << 7; // EOS + modr |= STV_VDP1_DIE << 6; // DIE + modr |= STV_VDP1_DIL << 5; // DIL + modr |= STV_VDP1_FCM << 4; //FCM + modr |= STV_VDP1_VBE << 3; //VBE + modr |= STV_VDP1_TVM & 7; //TVM + + return modr; + default: + printf ("cpu %s (PC=%08X) VDP1: Read from Registers, Offset %04x\n", space->device().tag(), cpu_get_pc(&space->device()), offset*2); break; } diff --git a/src/mame/video/stvvdp2.c b/src/mame/video/stvvdp2.c index d7cde54231f..4d27ac5cdb1 100644 --- a/src/mame/video/stvvdp2.c +++ b/src/mame/video/stvvdp2.c @@ -4173,8 +4173,8 @@ static void stv_vdp2_check_tilemap(running_machine &machine, bitmap_t *bitmap, c if (stv2_current_tilemap.bitmap_enable) // this layer is a bitmap { /*elandore doesn't like current cliprect code,will be worked on...*/ - if ( window_applied && stv2_current_tilemap.colour_depth != 0) - stv2_current_tilemap.window_control = 0; + //if ( window_applied && stv2_current_tilemap.colour_depth != 4) + // stv2_current_tilemap.window_control = 0; stv_vdp2_draw_basic_bitmap(machine, bitmap, &mycliprect); }