Turn around CHDK menu - Feature Requests - CHDK Forum  

Turn around CHDK menu

  • 10 Replies
  • 5951 Views
*

Offline frank

  • *
  • 23
Turn around CHDK menu
« on: 23 / July / 2008, 10:46:08 »
Advertisements
It's annoying that if you rotate your camera a little bit, the CHDK menu disappears.
It should be redrawn or even turned around like in SDM-CHDK.
Of course, you can turn off auto-rotate in Canon menu but then you have to turn the pictures manually around.
Camera: A570IS      Firmware: 1.01a

*

Offline fe50

  • ******
  • 3131
  • IXUS50 & 860, SX10 Star WARs-Star RAWs
    • fe50
Re: Turn around CHDK menu
« Reply #1 on: 23 / July / 2008, 15:55:53 »
Hello frank,

It's annoying that if you rotate your camera a little bit, the CHDK menu disappears.
It should be redrawn or even turned around like in SDM-CHDK.
Of course, you can turn off auto-rotate in Canon menu but then you have to turn the pictures manually around.

Normally the CHDK menu do NOT disappear...

Please post us (and also add this information to your signature) the camera model, firmware version & the CHDK version you've got this issue, then someone here can try to reproduce this...

*

Offline Jucifer

  • *****
  • 251
  • [A710IS]
Re: Turn around CHDK menu
« Reply #2 on: 23 / July / 2008, 16:20:18 »
The menu disappears also on A710 when rotating cam in play mode.

*

Offline ewavr

  • ****
  • 1057
  • A710IS
Re: Turn around CHDK menu
« Reply #3 on: 23 / July / 2008, 16:40:23 »
The menu disappears also on A710 when rotating cam in play mode.

Only if auto-rotate function is on.
Here is simple patch to test continuos redrawing of menu:
Code: (diff) [Select]
Index: core/gui_menu.c
===================================================================
--- core/gui_menu.c (revision 456)
+++ core/gui_menu.c (working copy)
@@ -397,8 +397,8 @@
     color cl;
     const char *ch = "";
 
-    if (gui_menu_redraw) {
-        if (gui_menu_redraw==2)
+    if (/*gui_menu_redraw*/ 1) {
+        if (/*gui_menu_redraw==2*/ 1)
             gui_menu_draw_initial();
 
         gui_menu_redraw=0;


But if menu has scrollbar, it blinks....


Edit: or disable all camera OSD output in <alt> mode:

Code: (diff) [Select]
Index: core/gui_draw.c
===================================================================
--- core/gui_draw.c (revision 456)
+++ core/gui_draw.c (working copy)
@@ -257,7 +257,9 @@
 
 //-------------------------------------------------------------------
 void draw_restore() {
+   if (gui_get_mode()!=GUI_MODE_NONE) EnableRefreshPhysicalScreen();
     vid_bitmap_refresh();;
+   if (gui_get_mode()!=GUI_MODE_NONE) DisableRefreshPhysicalScreen();
 }
 
 //-------------------------------------------------------------------
Index: core/gui.c
===================================================================
--- core/gui.c (revision 456)
+++ core/gui.c (working copy)
@@ -1738,7 +1738,7 @@
         disable_shutdown();
     }
     gui_mode = GUI_MODE_ALT;
-
+    DisableRefreshPhysicalScreen();
  gui_user_menu_flag = 0;
  if (conf.user_menu_enable == 2) {
  gui_menu_init(&user_submenu);
@@ -1762,6 +1762,7 @@
         rbf_load_from_8x16(current_font);
     rbf_set_codepage(FONT_CP_WIN);
     enable_shutdown();
+    EnableRefreshPhysicalScreen();
     gui_mode = GUI_MODE_NONE;
 }
 //-------------------------------------------------------------------


So,  even book reader or palette browser never can be corrupted at camera rotation.
« Last Edit: 23 / July / 2008, 17:24:48 by ewavr »


*

Offline frank

  • *
  • 23
Re: Turn around CHDK menu
« Reply #4 on: 27 / July / 2008, 14:58:47 »
Stupid question: How can I add the patch to the source code?
(I'm a Newbie, I began "programming" a year ago)
Camera: A570IS      Firmware: 1.01a

*

Offline jetzt

  • ****
  • 316
  • [A710IS,(SD200)]
Re: Turn around CHDK menu
« Reply #5 on: 28 / July / 2008, 12:48:17 »
The simplest way should be with an svn client, but downloading the chdk source from assembla as a zip, like it is described in
the wiki and adding it manually should also be possible for this small changes.

*

Offline fe50

  • ******
  • 3131
  • IXUS50 & 860, SX10 Star WARs-Star RAWs
    • fe50
Re: Turn around CHDK menu
« Reply #6 on: 28 / July / 2008, 15:52:03 »
frank,
under Windows (2000/XP/2003, NOT Vista) there's a great tool:

CHDK Shell - a Windows GUI for trunk building [currently v. 1.36] by whim,

with this tool you can do all (download the development environment, download the source, compile it, install it to a SD card...) with a few mouse clicks !

THX to wim, i use this every day  :)

*

Offline dzsemx

  • ****
  • 302
  • [SX40HS][A650][A630]
Re: Turn around CHDK menu
« Reply #7 on: 28 / July / 2008, 17:09:28 »
:D fine... it's really annoing the  disappearing menu
but your source isn't complete.... where is the EnableRefreshPhysicalScreen() DisableRefreshPhysicalScreen() functions defined
?
« Last Edit: 28 / July / 2008, 17:35:49 by dzsemx »


*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
Re: Turn around CHDK menu
« Reply #8 on: 07 / January / 2009, 20:02:20 »
megabump!

i too would like to know where EnableRefreshPhysicalScreen and the other routine is?
i only found references to it in the ixus60 and ixus65 platform stubs_entry_ida.S

this sounds like a nice feature...!?

*

Offline ewavr

  • ****
  • 1057
  • A710IS
Re: Turn around CHDK menu
« Reply #9 on: 07 / January / 2009, 21:35:35 »
i too would like to know where EnableRefreshPhysicalScreen and the other routine is?
???

As usually - search pairs: references to string and function (or use IDA scripts) 

S3IS:

ROM:FF99F854 DCD aEnablerefreshphysicalscre   ; "EnableRefreshPhysicalScreen"
ROM:FF99F858 DCD sub_FF9A7BE4       
ROM:FF99F85C DCD aDisablerefreshphysicalscr    ; "DisableRefreshPhysicalScreen"
ROM:FF99F860 DCD sub_FF9A7BF8       

These functions simply writes 1/0 to  some variable (at 0x7180 for s3is).

 

Related Topics