Previous 199869 Revisions Next

r17623 Monday 3rd September, 2012 at 21:00:28 UTC by hap
relocated scanline timer start at the first active pixel instead of left border, this makes vdp interrupt timing accurate
[src/emu/video]tms9928a.c

trunk/src/emu/video/tms9928a.c
r17622r17623
300300      for ( int i = 0; i < TMS9928A_TOTAL_HORZ; i++ )
301301         p[i] = BackColour;
302302
303      /* vblank is set 1 line after end of active display */
303      /* vblank is set at the last cycle of the first inactive line */
304304      if ( y == 193 )
305305      {
306306         m_StatusReg |= 0x80;
r17622r17623
581581   }
582582
583583   /* Schedule next callback */
584   m_line_timer->adjust( m_screen->time_until_pos( ( raw_vpos + 1 ) % m_screen->height() , 0 ) );
584   m_line_timer->adjust( m_screen->time_until_pos( ( raw_vpos + 1 ) % m_screen->height() , TMS9928A_HORZ_DISPLAY_START ) );
585585}
586586
587587
r17622r17623
672672   m_latch = 0;
673673   m_mode = 0;
674674
675   m_line_timer->adjust( m_screen->time_until_pos( 0, 0 ) );
675   m_line_timer->adjust( m_screen->time_until_pos( 0, TMS9928A_HORZ_DISPLAY_START ) );
676676}
677677

Previous 199869 Revisions Next


© 1997-2024 The MAME Team