| 1 | // !!! THIS FILE IS GENERATED. DO NOT EDIT. !!! |
|---|
| 2 | #include "stubs_asm.h" |
|---|
| 3 | |
|---|
| 4 | // Camera info: |
|---|
| 5 | // DRYOS R23 (DRYOS version 2.3, release #0023) |
|---|
| 6 | // Firmware Ver GM1.00D |
|---|
| 7 | // Canon PowerShot G9 |
|---|
| 8 | |
|---|
| 9 | // Values for makefile.inc |
|---|
| 10 | // PLATFORMID = 12634 (0x315a) // Found @ 0xfffe0130 |
|---|
| 11 | // MAXRAMADDR = 0x03ffffff |
|---|
| 12 | // KEYSYS = d3 // Found @ 0xffff31f0 |
|---|
| 13 | // NEED_ENCODED_DISKBOOT = 1 // Found @ 0xffff31d0 |
|---|
| 14 | |
|---|
| 15 | // Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S' |
|---|
| 16 | // Name Address Rule % Comp to stubs_entry_2.S |
|---|
| 17 | //NSTUB(PutInNdFilter ,0xff938468) //102 *** != 0xffa0c4e0 |
|---|
| 18 | //NSTUB(PutOutNdFilter ,0xff93848c) //102 *** != 0xffa0c518 |
|---|
| 19 | //NSTUB(kbd_pwr_off ,0xff84944c) // 2 67% *** != 0xff810958 |
|---|
| 20 | // ERROR: kbd_pwr_on is not found. //--- --- *** != 0xff810958 |
|---|
| 21 | //NSTUB(rename ,0xff824d40) // 1 *** != 0xff825600 |
|---|
| 22 | //NSTUB(strcmp ,0xff81e7cc) //101 *** != 0xff81e7f4 |
|---|
| 23 | //NSTUB(write ,0xff8255d8) //101 *** != 0xff81a3d8 |
|---|
| 24 | |
|---|
| 25 | // Check of modemap from 'platform/CAMERA/shooting.c': |
|---|
| 26 | // Firmware modemap table found @ff8773f8 -> ff8735c4 -> ff95532c -> ffa4c6c8 -> ffb0807c |
|---|
| 27 | // No problems found with modemap table. |
|---|
| 28 | |
|---|
| 29 | // Values below go in 'stubs_min.S': |
|---|
| 30 | //DEF(physw_status ,0x0001563c) // Found @0xff8230cc, stubs_min = 0x0001563c (0x01563C) |
|---|
| 31 | //DEF(physw_run ,0x00001ca4) // Found @0xff822d78, stubs_min = 0x00001ca4 (0x1ca4) |
|---|
| 32 | //DEF(levent_table ,0xffae013c) // Found @0xffae013c, stubs_min = 0xffae013c (0xFFAE013C) |
|---|
| 33 | //DEF(FlashParamsTable ,0xffb08248) // Found @0xffb08248, stubs_min = 0xffb08248 (0xFFB08248) |
|---|
| 34 | //DEF(movie_status ,0x00005714) // Found @0xff85d220, stubs_min = 0x00005714 (0x5714) |
|---|
| 35 | //DEF(canon_menu_active ,0x0000fdc8) // Found @0xff99b4d4, stubs_min = 0x0000fdc8 (0xFDC8) |
|---|
| 36 | //DEF(canon_shoot_menu_active ,0x0000f33d) // Found @0xff96aba8, stubs_min = 0x0000f33d (0xF33D) |
|---|
| 37 | //DEF(playrec_mode ,0x000058cc) // Found @0xff864a60, stubs_min = 0x000058cc (0x58cc) |
|---|
| 38 | //DEF(zoom_status ,0x0001264c) // Found @0xffa4e38c, stubs_min = 0x0001264c (0x1264C) |
|---|
| 39 | //DEF(some_flag_for_af_scan ,0x0001253c) // Found @0xffa44730, stubs_min = 0x0001253c (0x1253C) |
|---|
| 40 | |
|---|
| 41 | // Values below go in 'lib.c': |
|---|
| 42 | //void *vid_get_bitmap_fb() { return (void*)0x10361000; } // Found @0xff8451d0 |
|---|
| 43 | //void *vid_get_viewport_fb() { return (void*)0x1067b540; } // Found @0xffa1126c |
|---|
| 44 | //char *camera_jpeg_count_str() { return (char*)0x00060354; } // Found @0xff9afae4 |
|---|
| 45 | //long hook_raw_size() { return 0x00ee9710; } // Found @0xffa13130 |
|---|
| 46 | //int get_flash_params_count(void) { return 0x72; } // Found @0xff95692c |
|---|
| 47 | |
|---|
| 48 | // Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c). |
|---|
| 49 | //#define SD_READONLY_FLAG 0x00020000 // Found @0xffac62e0, levent 0x90a |
|---|
| 50 | //#define SD_READONLY_IDX 2 |
|---|
| 51 | //#define USB_MASK 0x00040000 // Found @0xffac62e8, levent 0x902 |
|---|
| 52 | //#define USB_IDX 2 |
|---|
| 53 | |
|---|
| 54 | // Keymap values for kbd.c. Additional keys may be present, only common values included here. |
|---|
| 55 | //static KeyMap keymap[] = { |
|---|
| 56 | // { 0, KEY_SHOOT_FULL ,0xc0000000 }, // Found @0xffac6218, levent 0x01 |
|---|
| 57 | // { 0, KEY_SHOOT_FULL_ONLY ,0x80000000 }, // Found @0xffac6218, levent 0x01 |
|---|
| 58 | // { 0, KEY_SHOOT_HALF ,0x40000000 }, // Found @0xffac6210, levent 0x00 |
|---|
| 59 | // { 1, KEY_ZOOM_OUT ,0x00000008 }, // Found @0xffac6238, levent 0x03 |
|---|
| 60 | // { 1, KEY_ZOOM_IN ,0x00000010 }, // Found @0xffac6240, levent 0x02 |
|---|
| 61 | // { 1, KEY_LEFT ,0x00010000 }, // Found @0xffac6270, levent 0x06 |
|---|
| 62 | // { 1, KEY_SET ,0x00020000 }, // Found @0xffac6278, levent 0x08 |
|---|
| 63 | // { 1, KEY_RIGHT ,0x00040000 }, // Found @0xffac6280, levent 0x07 |
|---|
| 64 | // { 1, KEY_DOWN ,0x00080000 }, // Found @0xffac6288, levent 0x05 |
|---|
| 65 | // { 1, KEY_UP ,0x00100000 }, // Found @0xffac6290, levent 0x04 |
|---|
| 66 | // { 1, KEY_DISPLAY ,0x04000000 }, // Found @0xffac62a8, levent 0x0a |
|---|
| 67 | // { 1, KEY_MENU ,0x08000000 }, // Found @0xffac62b0, levent 0x09 |
|---|
| 68 | // { 0, 0, 0 } |
|---|
| 69 | //}; |
|---|
| 70 | |
|---|
| 71 | // Values below go in 'platform_camera.h': |
|---|
| 72 | //#define CAM_DRYOS 1 |
|---|
| 73 | //#define CAM_RAW_ROWPIX 4104 // Found @0xffa0b1f8 |
|---|
| 74 | //#define CAM_RAW_ROWS 3048 // Found @0xffa0b200 |
|---|
| 75 | //#undef CAM_UNCACHED_BIT |
|---|
| 76 | //#define CAM_UNCACHED_BIT 0x10000000 // Found @0xff82a7c4 |
|---|
| 77 | |
|---|
| 78 | // Stubs below matched 100%. |
|---|
| 79 | // Name Address Comp to stubs_entry_2.S |
|---|
| 80 | //NSTUB(AllocateMemory ,0xffa47c58) //103 == 0xffa47c58 |
|---|
| 81 | //NSTUB(AllocateUncacheableMemory ,0xff82a788) //112 == 0xff82a788 |
|---|
| 82 | //NSTUB(Close ,0xff82552c) //101 == 0xff82552c |
|---|
| 83 | //NSTUB(CreateTask ,0xff81baf0) //101 == 0xff81baf0 |
|---|
| 84 | NSTUB(DebugAssert ,0xff81bfc8) //111 |
|---|
| 85 | NSTUB(DeleteFile_Fut ,0xff824d94) //112 |
|---|
| 86 | //NSTUB(DoAFLock ,0xff8275cc) //103 == 0xff8275cc |
|---|
| 87 | //NSTUB(EnterToCompensationEVF ,0xff8279a8) //104 == 0xff8279a8 |
|---|
| 88 | //NSTUB(ExecuteEventProcedure ,0xff81c1a8) // 1 == 0xff81c1a8 |
|---|
| 89 | //NSTUB(ExitFromCompensationEVF ,0xff8279f8) //104 == 0xff8279f8 |
|---|
| 90 | //NSTUB(ExitTask ,0xff81bd80) //101 == 0xff81bd80 |
|---|
| 91 | //NSTUB(ExpCtrlTool_StartContiAE ,0xff835600) //104 == 0xff835600 |
|---|
| 92 | //NSTUB(ExpCtrlTool_StopContiAE ,0xff8357c0) //104 == 0xff8357c0 |
|---|
| 93 | //NSTUB(Fclose_Fut ,0xff824f10) //101 == 0xff824f10 |
|---|
| 94 | NSTUB(Feof_Fut ,0xff8250fc) // 1 |
|---|
| 95 | NSTUB(Fflush_Fut ,0xff825138) // 1 |
|---|
| 96 | NSTUB(Fgets_Fut ,0xff825064) // 1 |
|---|
| 97 | //NSTUB(Fopen_Fut ,0xff824ed0) //101 == 0xff824ed0 |
|---|
| 98 | //NSTUB(Fread_Fut ,0xff824fbc) //101 == 0xff824fbc |
|---|
| 99 | //NSTUB(FreeMemory ,0xffa47c44) //103 == 0xffa47c44 |
|---|
| 100 | //NSTUB(FreeUncacheableMemory ,0xff82a7bc) //112 == 0xff82a7bc |
|---|
| 101 | //NSTUB(Fseek_Fut ,0xff8250b0) //101 == 0xff8250b0 |
|---|
| 102 | //NSTUB(Fwrite_Fut ,0xff825010) //101 == 0xff825010 |
|---|
| 103 | //NSTUB(GetBatteryTemperature ,0xff84bee8) //102 == 0xff84bee8 |
|---|
| 104 | //NSTUB(GetCCDTemperature ,0xff84be78) //102 == 0xff84be78 |
|---|
| 105 | //NSTUB(GetCurrentAvValue ,0xff936d58) //102 == 0xff936d58 |
|---|
| 106 | //NSTUB(GetDrive_ClusterSize ,0xff852754) // 1 == 0xff852754 |
|---|
| 107 | //NSTUB(GetDrive_FreeClusters ,0xff8527f4) // 1 == 0xff8527f4 |
|---|
| 108 | //NSTUB(GetDrive_TotalClusters ,0xff852788) // 1 == 0xff852788 |
|---|
| 109 | NSTUB(GetFocusLensSubjectDistance ,0xff934bec) //102 |
|---|
| 110 | NSTUB(GetFocusLensSubjectDistanceFromLens ,0xff934ef8) // 1 |
|---|
| 111 | //NSTUB(GetKbdState ,0xff849300) //109 == 0xff849300 |
|---|
| 112 | NSTUB(GetMemInfo ,0xff813c58) // 1 |
|---|
| 113 | //NSTUB(GetOpticalTemperature ,0xff84bf58) //102 == 0xff84bf58 |
|---|
| 114 | //NSTUB(GetParameterData ,0xff9568ec) // 1 == 0xff9568ec |
|---|
| 115 | //NSTUB(GetPropertyCase ,0xff86f768) //101 == 0xff86f768 |
|---|
| 116 | //NSTUB(GetSystemTime ,0xffa47d60) // 1 == 0xffa47d60 |
|---|
| 117 | //NSTUB(GetZoomLensCurrentPoint ,0xff93a220) //102 == 0xff93a220 |
|---|
| 118 | //NSTUB(GetZoomLensCurrentPosition ,0xffa3e5e8) //102 == 0xffa3e5e8 |
|---|
| 119 | //NSTUB(GiveSemaphore ,0xff81ba5c) //112 == 0xff81ba5c |
|---|
| 120 | //NSTUB(IsStrobeChargeCompleted ,0xff8c1344) //102 == 0xff8c1344 |
|---|
| 121 | NSTUB(LEDDrive ,0xff848890) //103 |
|---|
| 122 | //NSTUB(LocalTime ,0xff86b538) // 1 == 0xff86b538 |
|---|
| 123 | //NSTUB(LockMainPower ,0xff8731f0) //103 == 0xff8731f0 |
|---|
| 124 | //NSTUB(Lseek ,0xff82566c) //101 == 0xff82566c |
|---|
| 125 | NSTUB(MakeDirectory_Fut ,0xff824e08) // 1 |
|---|
| 126 | //NSTUB(MoveFocusLensToDistance ,0xffa0e0c4) //102 == 0xffa0e0c4 |
|---|
| 127 | NSTUB(MoveIrisWithAv ,0xff937138) //102 |
|---|
| 128 | //NSTUB(MoveZoomLensWithPoint ,0xff93accc) //102 == 0xff93accc |
|---|
| 129 | //NSTUB(NewTaskShell ,0xff86f1ec) //103 == 0xff86f1ec |
|---|
| 130 | //NSTUB(Open ,0xff825504) //101 == 0xff825504 |
|---|
| 131 | //NSTUB(PB2Rec ,0xff876664) //104 == 0xff876664 |
|---|
| 132 | NSTUB(PT_MoveDigitalZoomToWide ,0xff8668e0) //103 |
|---|
| 133 | NSTUB(PT_MoveOpticalZoomAt ,0xff8668a8) //103 |
|---|
| 134 | //NSTUB(PT_PlaySound ,0xff866454) //103 == 0xff866454 |
|---|
| 135 | NSTUB(PostLogicalEventForNotPowerType ,0xff87118c) //103 |
|---|
| 136 | NSTUB(PostLogicalEventToUI ,0xff8711d8) //103 |
|---|
| 137 | //NSTUB(Read ,0xff81a378) //101 == 0xff81a378 |
|---|
| 138 | //NSTUB(ReadFastDir ,0xffa2cb3c) // 1 == 0xffa2cb3c |
|---|
| 139 | //NSTUB(Rec2PB ,0xff875024) //104 == 0xff875024 |
|---|
| 140 | //NSTUB(RefreshPhysicalScreen ,0xff9bdb74) //104 == 0xff9bdb74 |
|---|
| 141 | //NSTUB(Remove ,0xff825574) // 1 == 0xff825574 |
|---|
| 142 | NSTUB(RenameFile_Fut ,0xff824d40) // 1 |
|---|
| 143 | NSTUB(Restart ,0xff82c7e4) //106 |
|---|
| 144 | //NSTUB(SetAE_ShutterSpeed ,0xffa10420) //102 == 0xffa10420 |
|---|
| 145 | NSTUB(SetAutoShutdownTime ,0xff873264) //103 |
|---|
| 146 | NSTUB(SetCurrentCaptureModeType ,0xff879f7c) //101 |
|---|
| 147 | //NSTUB(SetFileTimeStamp ,0xff825808) // 1 == 0xff825808 |
|---|
| 148 | NSTUB(SetLogicalEventActive ,0xff872f28) // 1 |
|---|
| 149 | //NSTUB(SetParameterData ,0xff9567c8) //101 == 0xff9567c8 |
|---|
| 150 | NSTUB(SetPropertyCase ,0xff86f660) //103 |
|---|
| 151 | //NSTUB(SetScriptMode ,0xff872f78) //101 == 0xff872f78 |
|---|
| 152 | //NSTUB(SleepTask ,0xff82a610) //101 == 0xff82a610 |
|---|
| 153 | //NSTUB(TakeSemaphore ,0xff81b98c) //101 == 0xff81b98c |
|---|
| 154 | NSTUB(TurnOffBackLight ,0xff87ff88) //104 |
|---|
| 155 | NSTUB(TurnOnBackLight ,0xff87ff70) //104 |
|---|
| 156 | //NSTUB(UIFS_WriteFirmInfoToFile ,0xff99c320) //103 == 0xff99c320 |
|---|
| 157 | //NSTUB(UnlockAF ,0xff827638) //103 == 0xff827638 |
|---|
| 158 | //NSTUB(UnlockMainPower ,0xff873144) //103 == 0xff873144 |
|---|
| 159 | //NSTUB(UnsetZoomForMovie ,0xff95cfcc) //104 == 0xff95cfcc |
|---|
| 160 | //NSTUB(UpdateMBROnFlash ,0xff85251c) //105 == 0xff85251c |
|---|
| 161 | //NSTUB(VbattGet ,0xff82199c) //101 == 0xff82199c |
|---|
| 162 | //NSTUB(Write ,0xff8255d8) //101 == 0xff8255d8 |
|---|
| 163 | //NSTUB(WriteSDCard ,0xff928c84) //108 == 0xff928c84 |
|---|
| 164 | //NSTUB(_log ,0xffabe644) //111 == 0xffabe644 |
|---|
| 165 | //NSTUB(_log10 ,0xffabd588) //112 == 0xffabd588 |
|---|
| 166 | //NSTUB(_pow ,0xffabd6f8) //114 == 0xffabd6f8 |
|---|
| 167 | //NSTUB(_sqrt ,0xffabf9ac) // 1 == 0xffabf9ac |
|---|
| 168 | NSTUB(add_ptp_handler ,0xff8d897c) // 1 |
|---|
| 169 | //NSTUB(apex2us ,0xff9bf02c) // 4 == 0xff9bf02c |
|---|
| 170 | //NSTUB(close ,0xff81a190) // 1 == 0xff81a190 |
|---|
| 171 | //NSTUB(closedir ,0xffa2cc0c) // 1 == 0xffa2cc0c |
|---|
| 172 | NSTUB(err_init_task ,0xff814eb0) // 4 |
|---|
| 173 | NSTUB(exmem_alloc ,0xff86c680) // 1 |
|---|
| 174 | //NSTUB(free ,0xff813ab0) //112 == 0xff813ab0 |
|---|
| 175 | //NSTUB(kbd_p1_f ,0xff8231c8) //109 == 0xff8231c8 |
|---|
| 176 | //NSTUB(kbd_p1_f_cont ,0xff8231d4) //109 == 0xff8231d4 |
|---|
| 177 | //NSTUB(kbd_p2_f ,0xff822a18) //109 == 0xff822a18 |
|---|
| 178 | NSTUB(kbd_read_keys ,0xff8230cc) //109 |
|---|
| 179 | //NSTUB(kbd_read_keys_r2 ,0xff848dc8) //109 == 0xff848dc8 |
|---|
| 180 | //NSTUB(lseek ,0xff82566c) //101 == 0xff82566c |
|---|
| 181 | //NSTUB(malloc ,0xff8139dc) //112 == 0xff8139dc |
|---|
| 182 | //NSTUB(memcmp ,0xff81e834) //101 == 0xff81e834 |
|---|
| 183 | //NSTUB(memcpy ,0xff895cf0) //101 == 0xff895cf0 |
|---|
| 184 | //NSTUB(memset ,0xffa8d394) //101 == 0xffa8d394 |
|---|
| 185 | //NSTUB(mkdir ,0xff8258d0) // 1 == 0xff8258d0 |
|---|
| 186 | // ALT: NSTUB(mkdir, 0xff825970) // 1 32/0 |
|---|
| 187 | NSTUB(mktime_ext ,0xff89655c) // 1 |
|---|
| 188 | //NSTUB(open ,0xff81a0e0) // 1 == 0xff81a0e0 |
|---|
| 189 | //NSTUB(opendir ,0xffa2caa8) // 1 == 0xffa2caa8 |
|---|
| 190 | //NSTUB(openfastdir ,0xffa2caa8) // 1 == 0xffa2caa8 |
|---|
| 191 | //NSTUB(qsort ,0xff9be404) // 1 == 0xff9be404 |
|---|
| 192 | //NSTUB(rand ,0xff81e93c) // 1 == 0xff81e93c |
|---|
| 193 | //NSTUB(read ,0xff81a378) //101 == 0xff81a378 |
|---|
| 194 | //NSTUB(readfastdir ,0xffa2cb3c) // 1 == 0xffa2cb3c |
|---|
| 195 | NSTUB(reboot_fw_update ,0xffa34500) // 1 |
|---|
| 196 | NSTUB(set_control_event ,0xff872c2c) // 1 |
|---|
| 197 | //NSTUB(srand ,0xff81e930) // 1 == 0xff81e930 |
|---|
| 198 | //NSTUB(stat ,0xff825738) // 1 == 0xff825738 |
|---|
| 199 | //NSTUB(strcat ,0xff895c1c) // 1 == 0xff895c1c |
|---|
| 200 | //NSTUB(strchr ,0xff895ca4) // 1 == 0xff895ca4 |
|---|
| 201 | //NSTUB(strcpy ,0xff81e778) //101 == 0xff81e778 |
|---|
| 202 | NSTUB(strftime ,0xff895f64) // 1 |
|---|
| 203 | //NSTUB(strlen ,0xff81e810) //101 == 0xff81e810 |
|---|
| 204 | //NSTUB(strncmp ,0xff895c58) // 1 == 0xff895c58 |
|---|
| 205 | //NSTUB(strncpy ,0xff81e790) // 1 == 0xff81e790 |
|---|
| 206 | //NSTUB(strrchr ,0xff895cc8) // 1 == 0xff895cc8 |
|---|
| 207 | //NSTUB(strtol ,0xff830d90) //101 == 0xff830d90 |
|---|
| 208 | NSTUB(strtolx ,0xff830b94) //109 |
|---|
| 209 | DEF(task_CaptSeq ,0xff861210) //107 |
|---|
| 210 | DEF(task_ExpDrv ,0xff8b8b90) //110 |
|---|
| 211 | DEF(task_InitFileModules ,0xff877284) //107 |
|---|
| 212 | DEF(task_MovieRecord ,0xff85d4c0) //107 |
|---|
| 213 | DEF(task_PhySw ,0xff822d74) //107 |
|---|
| 214 | NSTUB(time ,0xff86ba3c) // 2 |
|---|
| 215 | //NSTUB(vsprintf ,0xff81e6f8) // 1 == 0xff81e6f8 |
|---|