- Timestamp:
- 02/20/11 22:57:13 (2 years ago)
- Location:
- trunk/platform/ixus120_sd940
- Files:
-
- 8 edited
-
lib.c (modified) (1 diff)
-
notes.txt (modified) (1 diff)
-
sub/102c/lib.c (modified) (1 diff)
-
sub/102c/stubs_entry_2.S (modified) (1 diff)
-
sub/102c/stubs_min.S (modified) (1 diff)
-
sub/103c/lib.c (modified) (1 diff)
-
sub/103c/stubs_entry_2.S (modified) (1 diff)
-
sub/103c/stubs_min.S (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/platform/ixus120_sd940/lib.c
r1057 r1067 8 8 extern int enabled_refresh_physical_screen; 9 9 10 extern unsigned int screen_width, screen_height, screen_size;11 extern void draw_filled_rect( int, int, int, int, int );12 13 10 void vid_bitmap_refresh() 14 11 { 15 // this erase should not be needed but it is16 draw_filled_rect(0, 0, screen_width, screen_height, 0x00) ;17 /*18 _ScreenLock();19 12 enabled_refresh_physical_screen=1; 13 14 *(int*)0x8BB0=3; // apparently not firmware specific (checked in 1.02c,1.03b,1.03c) 15 // set in three function called by RefreshPhysicalScreen 16 20 17 _RefreshPhysicalScreen(1); 21 */ 18 22 19 } 23 20 -
trunk/platform/ixus120_sd940/notes.txt
r1058 r1067 1 Alt button for this camera is DISP, hold down to access original function.1 Alt button for this camera is DISP, hold longer for original functions (brightness and/or review mode). 2 2 Camera does not have an adjustable aperture, only ND filter. 3 Fast MD i s not currently implemented.3 Fast MD implemented as of 2011/02/20. 4 4 Extra long exposure (>64 seconds) is implemented. -
trunk/platform/ixus120_sd940/sub/102c/lib.c
r1056 r1067 14 14 15 15 void *vid_get_viewport_live_fb() 16 { 17 // TODO - implement 18 return (void*) 0; 19 20 21 void **fb=(void **)0x1043; 22 23 unsigned char buff = *((unsigned char*)0x497C); // __LiveImage.c__ ok 16 { // Matched IXUS100-SD780 100c code at 0xFF8B02F4 with IXUS120-SD940 at address 0xFF8D9014 17 // Matched IXUS200-SD980 101c code at 0xFF8E0788 with IXUS120-SD940 at address 0xFF8D9014 18 // return (void*) 0; // __LiveImage.c__ ok 19 void **fb=(void **)0x4B34; // SD940 102C @ 0xFF8D9280 20 unsigned char buff = *((unsigned char*)0x497C); // SD940 103C @ 0xFF8D9018 24 21 if (buff == 0) { 25 22 buff = 2; -
trunk/platform/ixus120_sd940/sub/102c/stubs_entry_2.S
r1061 r1067 74 74 NHSTUB(UnsetZoomForMovie,0xFF9712e4) 75 75 NHSTUB(ScreenLock,0xFF9D1C7C) 76 NHSTUB(RefreshPhysicalScreen, 0xFF9D1 CBC)76 NHSTUB(RefreshPhysicalScreen, 0xFF9D1EA4) // per SD940-1.03c SD90 101a & SD980 1.01c 77 77 NHSTUB(ScreenUnlock, 0xFF9D1CBC) 78 78 NHSTUB(PutInNdFilter, 0xFFA67C08) -
trunk/platform/ixus120_sd940/sub/102c/stubs_min.S
r1056 r1067 14 14 DEF(levent_table, 0xFFB41F38) 15 15 DEF(playrec_mode, 0x2A7C) // @FF877AE4 0x2A78 + 0x04 16 DEF(enabled_refresh_physical_screen, 0x8 BB0) // @FF9CF9C016 DEF(enabled_refresh_physical_screen, 0x8C20+0x20) // SD940 102C routine @ FF9D1EA8 per IXUS200-SD980 @ FF9F8298 RefreshPhysicalScreen 17 17 18 18 // will need to fix these if we care about dng support -
trunk/platform/ixus120_sd940/sub/103c/lib.c
r1056 r1067 53 53 } 54 54 55 void *vid_get_viewport_live_fb() 56 { 57 return (void*)0; 58 /* ------- 59 void **fb=(void **)0x1043; // SD940 103C @ FF8D8014 60 unsigned char buff = *((unsigned char*)0x497C); 61 if (buff == 0) buff = 2; else buff-- ; 62 return fb[buff]; 63 ----- */ 64 } 55 void *vid_get_viewport_live_fb() 56 { // Matched IXUS100-SD780 100c code at 0xFF8B02F4 with IXUS120-SD940 at address 0xFF8D9014 57 // Matched IXUS200-SD980 101c code at 0xFF8E0788 with IXUS120-SD940 at address 0xFF8D9014 58 // return (void*) 0; // __LiveImage.c__ ok 59 void **fb=(void **)0x4B34; // SD940 102C @ 0xFF8D9280 60 unsigned char buff = *((unsigned char*)0x497C); // SD940 103C @ 0xFF8D9018 61 if (buff == 0) { 62 buff = 2; 63 } 64 else { 65 buff--; 66 } 67 return fb[buff]; 68 } 65 69 66 70 void *vid_get_viewport_fb() -
trunk/platform/ixus120_sd940/sub/103c/stubs_entry_2.S
r1061 r1067 21 21 NHSTUB(readfastdir , 0xFFA4D2C0) // SD940 103c matched with SD90 101a 22 22 23 NHSTUB(RefreshPhysicalScreen , 0xFF9D206C) // SD940 103c matched with SD90 101a 23 NHSTUB(RefreshPhysicalScreen , 0xFF9D206C) // SD940 103c matched with SD90 101a & SD980 1.01c 24 24 NHSTUB(ScreenLock, 0xFF9D1E44) // SD940 103c close to SD90 101a (extra code in SD940 sub) 25 25 NHSTUB(ScreenUnlock,0xFF9D1E84) // SD940 103c matched with SD90 101a -
trunk/platform/ixus120_sd940/sub/103c/stubs_min.S
r1056 r1067 14 14 DEF(levent_table,0xFFB42100) // SD940 103c routine @ FF966F20 15 15 DEF(playrec_mode, 0x2A78+0x4) // SD940 103c routine @ FF877E9 16 DEF(enabled_refresh_physical_screen, 0x8 BB0) // SD940 103C routine @ FF9CFB8816 DEF(enabled_refresh_physical_screen, 0x8C20+0x20) // SD940 103C routine @ FF9D2070 per IXUS200-SD980 @ FF9F8298 RefreshPhysicalScreen 17 17 18 18 19 19 20
Note: See TracChangeset
for help on using the changeset viewer.