some comments were updated in stubs_min.S:
Index: /platform/m3/sub/101a/stubs_min.S
===================================================================
--- /platform/m3/sub/101a/stubs_min.S (revision 4740)
+++ /platform/m3/sub/101a/stubs_min.S (working copy)
@@ -1,40 +1,40 @@
#include "stubs_asm.h"
//DEF(led_table,)
-DEF(jpeg_count_str, 0x0016CC64) //@ Found @0xfc0fc46c
+DEF(jpeg_count_str, 0x0016CC64) //@ Found @0xFC1A0A2C
DEF(file_counter_var, 0x00012460) //@ found by searching for "FileBackupProperty.c"
DEF(ctypes, 0xFC5E29F4) //@ me
// Camera has 2 RAW buffers @ 0x44000000 & 0x4adb54a0
-//DEF(raw_buffers ,0xFC607634) //@ FC6CB874 FC607634 ??? Found @0xfc16d43e
+//DEF(raw_buffers ,0xFC607634) //@ FC6CB874 ??? Found @0xFC158B60
DEF(raw_buffers_canon_raw ,0xFC6CB874) //@ FC607634
DEF(raw_buffers_jpeg ,0xFC6CB874) //@
-DEF(active_raw_buffer ,0x0000B3B4) //@ ??? Found @0xfc13fa6c, 0xffffffff when uninited...
+DEF(active_raw_buffer ,0x0000B3B4) //@ ??? , 0xffffffff when uninited...
DEF(fileio_semaphore ,0x000125AC) //@ Found @0xFC06E186
-DEF(physw_status ,0x0005209π //@ Found @0xfc0604ae
-DEF(physw_run ,0x000082CC) //@ Found @0xfc0601f6
-DEF(physw_sleep_delay ,0x000082D4) //@ Found @0xfc0601f6
+DEF(physw_status ,0x0005209π //@ Found @0xFC083E76
+DEF(physw_run ,0x000082CC) //@ Found @0xFC083BC6
+DEF(physw_sleep_delay ,0x000082D4) //@ Found @0xFC083BC6
-//DEF(error_table ,0xFC63812C) //@ Found @0xfc1abf24
+//DEF(error_table ,0xFC63812C) //@ Found @0xFC18E1A0
-DEF(levent_table ,0xFC63846C) //@ Found @0xfc0a4b40
-DEF(FlashParamsTable ,0xFC747DBπ //@ 0xFC0E15C4-> 0xfc7313a0
+DEF(levent_table ,0xFC63846C) //@ Found @0xFC113158
+DEF(FlashParamsTable ,0xFC747DBπ //@ 0xFC0E15C4-> 0xFC746944
DEF(movie_status ,0x00010b0π // or 0x10a88
FAKEDEF(video_compression_rate, 1)
DEF(full_screen_refresh ,0x00012a94) // Found @0xfc2b0f5c
-DEF(canon_menu_active ,0x0000C18C) //@ Found @0xfc27d0bc
+DEF(canon_menu_active ,0x0000C18C) //@ Found @0xFC32DD9C
FAKEDEF(canon_shoot_menu_active, 1) // ??? not found
-DEF(playrec_mode ,0x0000B454) //@ Found @0xfc27937e
+DEF(playrec_mode ,0x0000B454) //@ Found @0xFC325CA4
FAKEDEF(zoom_status ,1) // Found @0xfc30e61c
//DEF(zoom_status ,0x00018b04) // Found @0xfc30e61c
// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
// each entry contains 2 int value(s), the first is the zoom focus length.
// there are 102 entries in the table - set NUM_FL to 101
-DEF(focus_len_table ,0xfdf6ad20)
+//DEF(focus_len_table ,0xfdf6ad20)
//DEF(zoom_busy ,0x00010814) // Found @0xfc1a0998
//DEF(focus_busy ,0x00010694) // Found @0xfc28b964
-DEF(recreview_hold ,0x000097Bπ //@ Found @FC34B82A 0xfc2a2c22
+DEF(recreview_hold ,0x000097Bπ //@ Found @FC34B83A
FAKEDEF(zoom_busy ,1)
FAKEDEF(focus_busy ,1)
// sx280 c&p?
@@ -48,7 +48,7 @@
DEF(active_bitmap_buffer, 0xC14C) //@ xac10) // or 0xac14? just a guess
// FAKEDEF(viewport_buffers, 1) // ?
// FAKEDEF(active_viewport_buffer, 1) // ?
-DEF(current_viewport_buffer ,0x0000889C) //8878????????????????????????????????
+DEF(current_viewport_buffer ,0x0000889C) //8878? Found @FC133DE2
DEF(viewport_buffers ,0xFC5F8DEπ // from memory search, refs to FC5F8DD8
DEF(jog_position, 0xdb4π // 0xdb34 +0x14, +0x18
@@ -57,4 +57,4 @@
//FAKEDEF(enabled_refresh_physical_screen, 1)
-DEF(displaytype, 0x9974) //@ 0x8ea4 + 0x14, found @ fc135f2a (GetDisplayType)
+DEF(displaytype, 0x9974) //@ 0x9934 + 0x40, found @ 0xFC35DD56 (GetDisplayType)
and in /loader/m3 directory:
Index: entry.S
===================================================================
--- entry.S (revision 4740)
+++ entry.S (working copy)
@@ -4,5 +4,6 @@
.code 16
.align 2
.syntax unified
+ LDR SP, =MEMBASEADDR
B my_restart
.ascii "gaonisoy"
Index: main.c
===================================================================
--- main.c (revision 4740)
+++ main.c (working copy)
@@ -16,26 +16,10 @@
core_copy(src, dst, length);
- asm volatile ( // fc095c80 102b/102c
-/* "movs r0, #0x78\n"
- "mcr p15, 0, r0, c1, c0\n"
- "movs r0, #0\n"
- "mcr p15, 0, r0, c7, c10, 4\n"
- "mcr p15, 0, r0, c7, c5\n"
- "mcr p15, 0, r0, c7, c6\n"
- "movw r0, #0x4006\n"
- "mcr p15, 0, r0, c9, c1\n"
- "mcr p15, 0, r0, c9, c1, 1\n"
- "mrc p15, 0, r0, c1, c0\n"
- "orr.w r0, r0, #0x50000\n"
- "mcr p15, 0, r0, c1, c0\n"
- "movw r1, #0x4ffc\n"
- "ldr r0, =0x12345678\n"
- "str r0, [r1, #0]\n"
- //"ldr r0, =0xfc020000\n"*/
+ asm volatile (
"mov r1, %1\n"
"mov r0, %0\n"
- "ldr r2, =0xfc1300b3\n" // address is OK for 102b and 102c 0xfc12dd3b
+ "ldr r2, =0xfc1300b3\n" // address is OK for 101a
"blx r2\n" // caching related routine called at fw startup
"mov r0, %0\n"
"add r0, r0, #1\n"