[hatari-devel] Bug: Hextracker freezes on startup with Falcon emulation?

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Hi,

Paolo's Hextracker freezes on startup with Falcon emulation.

When I debugged it and asked on atari-forum, I found that it
waits for next VBL on startup by checking for video refresh
address high byte change (ffff8205).  

That works fine under ST/STE/TT emulation, which uses
following implementation for this register in video.c:
-----------------
void Video_ScreenCounter_ReadByte(void)
{
        Uint32 addr;

        addr = Video_CalculateAddress();                /* get current video 
address */
        IoMem[0xff8205] = ( addr >> 16 ) & 0xff;
        IoMem[0xff8207] = ( addr >> 8 ) & 0xff;
        IoMem[0xff8209] = addr & 0xff;
}
-----------------


However, under Falcon emulation, register read implemention
in videl.c never changes the register value unless some
program specifically writes into it:
-----------------
void VIDEL_ScreenCounter_ReadByte(void)
{
//      Uint32 addr;    // To be used
        Uint32 addr = 0; // To be removed

        // addr = Videl_CalculateAddress();             /* TODO: get current 
video address */
        IoMem[0xff8205] = ( addr >> 16 ) & 0xff;
        IoMem[0xff8207] = ( addr >> 8 ) & 0xff;
        IoMem[0xff8209] = addr & 0xff;

        LOG_TRACE(TRACE_VIDEL, "Videl : $ff8205/07/09 Sync Mode read: 
0x%08x\n", addr);
}
-----------------

Laurent, why it doesn't use the implementation from video.c?


	- Eero



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/