root/platform/ixus115_elph100hs/sub/101b/lib.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. hook_raw_image_addr
  2. hook_alt_raw_image_addr
  3. vid_get_bitmap_fb
  4. vid_get_viewport_fb_d
  5. camera_jpeg_count_str
  6. vid_get_bitmap_active_buffer

   1 #include "platform.h"
   2 
   3 char *hook_raw_image_addr()
   4 {
   5         // Appears to be two raw buffers (this returns active buffer)
   6         // Addresses below found in table at 0xFFB9AE28 used in sub_FF883610
   7         // checks [0x2E30 + 0xc] --> defines which buffer is active
   8 
   9         if (*((int*)0x2E3C) != 0)               // [0x2E30+0xC] look at routine starting at FF883610
  10                 return (char*) 0x46000000;      // these two addresses found in table FFB9AE28 (used in FF883610)
  11         else
  12                 return (char*) 0x413391A0;      //
  13 
  14 }
  15 
  16 char *hook_alt_raw_image_addr()
  17 {
  18 
  19         if (*((int*)0x2E3C) == 0)               //0x3F04 - unknown
  20                 return (char*) 0x46000000;
  21         else
  22                 return (char*) 0x413391A0;
  23 
  24 }
  25 
  26 // OSD buffer
  27 void *vid_get_bitmap_fb()
  28 {
  29         //elph100
  30         //FF92668C                 LDR     R0, =0x40471000
  31         return (void*)0x40471000;
  32 }
  33 
  34 void *vid_get_viewport_fb_d()
  35 {
  36         //FF876518 dword_FF876518  DCD 0x3C70
  37         //FF877298                 STR     R12, [R5,#0x58]
  38         return (void*)(*(int*)(0x2BA0+0x58));
  39 
  40 }
  41 
  42 char *camera_jpeg_count_str()
  43 {
  44         //FFA2629C         LDR     R0, =0xBB3A8 (near to "9999")
  45         return (void*)0xBB3A8;
  46 
  47 }
  48 
  49 void *vid_get_bitmap_active_buffer()
  50 {
  51     return (void*)(*(int*)(0x5AC4+0x18)); //found @ loc_ff9267ac ixus115 101b
  52 }
  53 

/* [<][>][^][v][top][bottom][index][help] */