Problems with RefreshPhysicalScreen (sd980) - General Discussion and Assistance - CHDK Forum

Problems with RefreshPhysicalScreen (sd980)

  • 5 Replies
  • 4891 Views
*

Offline RaduP

  • *****
  • 926
Problems with RefreshPhysicalScreen (sd980)
« on: 07 / October / 2009, 18:21:26 »
Advertisements
I have RefreshPhysicalScreen correctly detected, and so is enabled_refresh_physical_screen.
The problem is, the screen is not properly refreshed. The new stuff that needs to be drawn is there, but so is the old stuff, or parts of it. So for example exiting the chdk menu mode will in many cases still keep the menu on screen, which is very annoying. This happens both in the play and record mode.

Any idea why it is doing that, and does it happen on other cameras? It doesn't happen on my A570..

Re: Problems with RefreshPhysicalScreen (sd980)
« Reply #1 on: 08 / October / 2009, 12:09:05 »
Well, I can confirm that the same behavior is visible on my SX120 port. I thought that it's normal but your post indicates that something must have changed in the firmware and it does not work as it used to be...
"Trying is the first step towards failure." (Homer Simpson)

*

Offline RaduP

  • *****
  • 926
Re: Problems with RefreshPhysicalScreen (sd980)
« Reply #2 on: 08 / October / 2009, 13:40:42 »
I guess we need more feedback from people using other cameras.

*

Offline reyalp

  • ******
  • 14080
Re: Problems with RefreshPhysicalScreen (sd980)
« Reply #3 on: 08 / October / 2009, 19:47:14 »
On the CHDK cameras that i've used (a540, sd990) canon updates erasing the CHDK screen is normal. Seeing leftover bits of old CHDK displays is not.
Don't forget what the H stands for.


*

Offline RaduP

  • *****
  • 926
Re: Problems with RefreshPhysicalScreen (sd980)
« Reply #4 on: 08 / October / 2009, 22:32:42 »
Yeah, I guess it's not normal..
Maybe Canon changed the way the screen is refreshed, to only update portions that did not change or something.

*

Offline RaduP

  • *****
  • 926
Re: Problems with RefreshPhysicalScreen (sd980)
« Reply #5 on: 24 / October / 2009, 01:39:22 »
I finally got that mofo to work.

Code: [Select]
void vid_bitmap_refresh()
{
enabled_refresh_physical_screen=1;
*(int*)0x1B2DC=3;//this is set somewhere in a function called by RefreshPhysicalScreen, should be easy to find

_RefreshPhysicalScreen(1);
}

The magic variable, 0x1B2DC, is set to 3 when going into the camera menu. When going there, the screen was always refreshed. So I set it as 3 before refreshing the screen, and now it works perfectly!

 

Related Topics