IXUS 1000 HS Porting Thread - DryOS Development - CHDK Forum

IXUS 1000 HS Porting Thread

  • 440 Replies
  • 178979 Views
IXUS 1000 HS Porting Thread
« on: 09 / October / 2010, 09:07:51 »
Advertisements
In the wiki you can download the 100d Version

http://chdk.wikia.com/wiki/SD4500

http://www.zshare.net/download/81226197c6540114/

Canon Model ID : Unknown (0x2890000)  in Version Field stand 100

Canon Firmware Version : Firmware Version 1.00
Firmware Revision : 1.00 rev 4.00

what infos more need to port ?

I see this text in the IXUS 300 HS porting thread, so i add it here too


THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Software or Author are not affiliated in any way with Canon INC.
Product and Company names mentioned herein may be the trademarks of their respective owners.
« Last Edit: 29 / June / 2011, 06:35:41 by Bernd R »
Ixus 1000 HS

*

Offline reyalp

  • ******
  • 14121
Re: IXUS 1000 HS Porting Thread
« Reply #1 on: 09 / October / 2010, 14:59:51 »
Here is the Dump

http://www.zshare.net/download/81226197c6540114/

in Exif Data of a image stand

Firmware 1.00

what infos more need to port ?
All that is required is a developer who has the camera, and the skill, time and inclination to complete the port.
« Last Edit: 10 / October / 2010, 16:50:30 by reyalp »
Don't forget what the H stands for.

*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: IXUS 1000 HS Porting Thread
« Reply #2 on: 10 / October / 2010, 14:11:35 »
First look its a DRYOS version 2.3, release #0045, so maybe sx210 or later could help

Dont have the cam, but may help if I can

Bernd, please post all the info about the firmware you get, doing this:
"Q. How can I get the original firmware version number of my camera?"
info here http://chdk.wikia.com/wiki/FAQ

I need the PLATFORMID,  for the makefile.inc file
Code: [Select]
#PLATFORMID=0x31F8
PLATFORMID=12792

PLATFORMOS=dryos
MEMBASEADDR=0x1900
RESTARTSTART=0x50000
MEMISOSTART=0x172BF8
ROMBASEADDR=0xFF810000
PLFLAGS=-DMEMBASEADDR=$(MEMBASEADDR) -DMEMISOSTART=$(MEMISOSTART) -DMEMISOSIZE=$(MEMISOSIZE)
PLFLAGS+=-DRESTARTSTART=$(RESTARTSTART)
NEED_ENCODED_DISKBOOT=4
KEYSYS=d4b

Found this: MEMISOSTART=0x172BF8  at FF810190
Confirmed  encoding is d4b
« Last Edit: 16 / October / 2010, 10:28:45 by asm1989 »

*

Offline reyalp

  • ******
  • 14121
Re: IXUS 1000 HS Porting Thread
« Reply #3 on: 10 / October / 2010, 16:02:33 »
Haven't looked at the dump, but I would guess d4b / dancing bits 5, like S95
Don't forget what the H stands for.


*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: IXUS 1000 HS Porting Thread
« Reply #4 on: 10 / October / 2010, 16:37:36 »
yes  reyalp confirmed is d4b like S95.


full file stubs_min.S

Code: [Select]
//#include "stubs_asm.h"
// -> ASM1989 10.10.2010
DEF(physw_status, 0x34414)                 // found at FF8347CC   -> SX210: FF834360  
DEF(physw_run, 0x1C34 + 0x0C)             // found at FF834758    ->SX210: FF8342C4  and FF8342E0
DEF(focus_busy, 0x738C + 8)               // found at FF972B34     -> SX210: FF9639D4 -> looks like 8 at FF963A30 , same as sx20 FF94FED4
DEF(zoom_busy, 0x75FC + 0x1C)             // found at FF97B1B4 ->  -> SX210 FF969464  ### pixeldoc: ROM:FF9693D0 0x7124 + 0x1C ### and FF96A0BC like in sx20
DEF(canon_menu_active, 0x383C + 4)        //  found at FF896954  -> SX210: StarRecModeMenu @FF891C4C -> ASM1989 08.21.2010 ?guesswork found at FF891B4C  -> ASM1989 08.21.2010 ?guesswork, and FF892194 like in sx20
DEF(canon_shoot_menu_active, 0x8AE4 + 1)  //  found at FF9C63E0   -> SX210: sub_FF9B57E4 -> ASM1989 08.21.2010 ?guesswork  why +1 ??   -> OK 09.19.10 FF9B59B0  Like in sx20
DEF(recreview_hold, 0x86F4 + 0xEC)        // found at FF9B60A8 -> SX210:  FF9A0B38  , FF9A1684 like in sx20
DEF(zoom_status, 0xE2A0)                 // found at FFAF7DF8  -> sx210:  FFAD4E40  Like in sx20 at FFAAF3EC search for "TerminateDeliverToZoomController"
DEF(movie_status, 0x7898 + 0x44)          // found at  FF9859E8 -> Diferent call than the sx210 or others   !!!!! MEYBE OF HELP TO FUTURE CAMS !!!!
DEF(playrec_mode, 0x3570+0x4)              // found at FF888A38   -> SX210: FF883E64
DEF(levent_table,0xFFBCDB64)               // found at FF9AE93C -> SX210: FF99A818
DEF(FlashParamsTable,0xFFC28F2C)          // found at FFAF48F8  -> SX210:  FFAD195C
DEF(led_table, 0x2538 + 0x04)              // found at FF862574  sx210: FF860EF0 & FF860EEC  

DEF(some_flag_for_af_scan, 0x7CAC)   //found at  FF98A0A0 needs check  -> SX210:  FF971750  & FF970D5C
DEF(full_screen_refresh, 0xA338) // found  at FFA2BDC8 Looks like needs confirm -> SX210:  FFA1CF40  in sx20: FFA02598, based on work found in the sd980 port
DEF(enabled_refresh_physical_screen, 0x48C0 ) //found at FF8B4F24 not sure at all needs confirm , sx210: at FFA1EE18 and FFA1EFB4 and FFA1EE5C -> FFA1EDDC  -> `0x20  , but maybe 24???
« Last Edit: 12 / October / 2010, 14:13:02 by asm1989 »

Re: IXUS 1000 HS Porting Thread
« Reply #5 on: 11 / October / 2010, 11:04:50 »
>Bernd, please post all the info about the firmware you get, doing this:
>"Q. How can I get the original firmware version number of my camera?"
>info here http://chdk.wikia.com/wiki/FAQ

The ixus 1000 seem have same problem as the Ixus 300 that ver.req not work.See here

http://chdk.wikia.com/wiki/SD4000

I try to download Cameraversion but upto now i cant download it

http://drop.io/chdkshellbeta

but as far i see this program read only the exif data in a jpg file.and this is also show in a jpg file when look with a file monitor.this stand as text in.

  IMG:IXUS 1000HS JPEG            Firmware Version 1.00                         

maybe that the Version is exact 1.00 with no letter extension is a good sign that the Ixus 1000 firmware is very simular to ixus 300
Ixus 1000 HS

*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: IXUS 1000 HS Porting Thread
« Reply #6 on: 11 / October / 2010, 11:57:19 »
Thank Bernd,

Here you have the: Cameraversion file
http://www.zshare.net/download/814055540bdb1e95/

please post the platformid when you get it.

« Last Edit: 12 / October / 2010, 16:21:44 by asm1989 »

*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: IXUS 1000 HS Porting Thread
« Reply #7 on: 12 / October / 2010, 16:21:51 »
All the stubs to start here

Code: [Select]
NHSTUB(AllocateMemory, 0xFFAE5698)  
NHSTUB(malloc,0xFF8141E8)  
NHSTUB(free, 0xFF814244)
NHSTUB(GetSystemTime, 0xFFAE56F0)  
NHSTUB(strcpy, 0xFF8206F4)
NHSTUB(strcmp, 0xFF82070C)                    
NHSTUB(strlen, 0xFF814100)
NHSTUB(Strlen, 0xFF814100)
NHSTUB(strrchr, 0xFF8140D8)
NHSTUB(strchr, 0xFF8140B4)
NHSTUB(strncpy, 0xFF81402C)
NHSTUB(Open, 0xFF837FF4)
NHSTUB(Close, 0xFF838060)
NHSTUB(close, 0xFF81AB8C)
NHSTUB(open, 0xFF81AADC)
NHSTUB(Read, 0xFF8380EC)
NHSTUB(read, 0xFF8380EC)
NHSTUB(write, 0xFF8380F0)
NHSTUB(Write, 0xFF8380F0)
NHSTUB(Lseek, 0xFF83817C)
NHSTUB(lseek, 0xFF83817C)
NHSTUB(stat, 0xFF8381C4)  // -> ASM1989,Nov-10 remember to include "#define CAM_DRYOS_2_3_R39 1"  in camera.h
NHSTUB(SetFileTimeStamp, 0xFF8382FC)
NHSTUB(mkdir, 0xFF8384FC)    
NHSTUB(fopen, 0xFF837B14)
NHSTUB(fclose, 0xFF837B54)
NHSTUB(fread, 0xFF837C00)
NHSTUB(fwrite, 0xFF837C54)
NHSTUB(eventproc_export_SleepTask, 0xFF83B574)
NHSTUB(eventproc_export_ExitTask, 0xFF81EB30)
NHSTUB(EnterToCompensationEVF, 0xFF839770)
NHSTUB(ExitFromCompensationEVF, 0xFF8397B4)
NHSTUB(TurnOffBackLight, 0xFF8AC590)  
NHSTUB(TurnOnBackLight, 0xFF8AC578)
NHSTUB(PostLogicalEventForNotPowerType, 0xFF89A418)
NHSTUB(UnlockAF, 0xFF8396A8)
NHSTUB(DoAFLock, 0xFF839670)
NHSTUB(ExpCtrlTool_StartContiAE, 0xFF847D34)
NHSTUB(ExpCtrlTool_StopContiAE, 0xFF847EC0)
NHSTUB(GiveSemaphore, 0xFF83B30C)
NHSTUB(eventproc_export_PostLogicalEventToUI, 0xFF89A464)
NHSTUB(UnlockAndRefresh, 0xFF8B4F24)   //Looks like but diferent than sx210
NHSTUB(LockAndRefresh, 0xFF8B4EC0)    // Looks like but diferent than sx210
NHSTUB(SetScriptMode, 0xFF89C444)            
NHSTUB(kbd_p1_f, 0xFF834C04)
NHSTUB(kbd_read_keys_r2, 0xFF862BE4)
NHSTUB(GetZoomLensCurrentPosition, 0xFFACD184)
NHSTUB(GetFocusLensSubjectDistance, 0xFF973818) // -> search for "\nSubjectDistance=%d" function right above
NHSTUB(GetKbdState, 0xFF863398)
NHSTUB(closedir, 0xFFAB8F84)
NHSTUB(closefastdir, 0xFFAB8F84)
NHSTUB(FreeUncacheableMemory, 0xFF83B930)  //ufree
NHSTUB(ufree,0xFF83B930)
NHSTUB(AllocateUncacheableMemory, 0xFF83B8F0)  //umalloc In sx200 was: FF82780C
NHSTUB(umalloc,0xFF83B8F0)
NHSTUB(opendir, 0xFFAB8FD4)                    
NHSTUB(openfastdir, 0xFFAB8FD4)
NHSTUB(ReadFastDir, 0xFFAB9128)
NHSTUB(readfastdir, 0xFFAB9128)
NHSTUB(SleepTask, 0xFF83B574)
NHSTUB(strtol,0xFF8413EC)
NHSTUB(memcmp, 0xFF820750)
NHSTUB(vsprintf, 0xFF8206B8)
NHSTUB(GetOpticalTemperature, 0xFF8683E4) // just above aThermometer  
NHSTUB(GetBatteryTemperature, 0xFF868370)
NHSTUB(GetCCDTemperature, 0xFF8682FC)
NHSTUB(UIFS_WriteFirmInfoToFile, 0xFF9A12D8)
NHSTUB(PT_PlaySound, 0xFF88A804)  // confirm with newer cams
NHSTUB(GetDrive_FreeClusters, 0xFF87581C)   // search for "filesem.c" func above calls it
NHSTUB(GetDrive_TotalClusters, 0xFF8757F0)  
NHSTUB(GetDrive_ClusterSize, 0xFF8757BC)  
NHSTUB(UpdateMBROnFlash, 0xFF87563C)
NHSTUB(qsort, 0xFFB2E204)
NHSTUB(WriteSDCard, 0xFF962F28)
NHSTUB(ReadSDCard, 0xFF962D44)
//extern int _ReadSDCard(unsigned int drive, unsigned int start_sect, unsigned int num_sect, void *buf);
NHSTUB(MakeAFScan, 0xFF98989C)
NHSTUB(PostLEDMessage, 0xFF86267C)
NHSTUB(platformsub_kbd_fetch_data, 0xFF863398) // -> same as GetKbdState  ?
NHSTUB(RefreshPhysicalScreen, 0xFF8B3CFC)
NHSTUB(kbd_read_keys, 0xFF834B8C)
NHSTUB(LEDDrive, 0xFF987384)
NHSTUB(VbattGet, 0xFF987380)
NHSTUB(GetPropertyCase, 0xFF895DBC)
NHSTUB(SetPropertyCase, 0xFF895C94)
NHSTUB(GetCurrentTargetDistance, 0xFF973818) // it is the same as GetFocusLensSubjectDistance  ?
NHSTUB(rename, 0xFF837944)
NHSTUB(RenameFile_Fut, 0xFF837944)
NHSTUB(kbd_p2_f, 0xFF834424)
NHSTUB(Remove, 0xFF838094)
NHSTUB(GetLogToFile, 0xFF98F738)
NHSTUB(GetCurrentAvValue, 0xFF975264) //Like S95
NHSTUB(GetZoomLensCurrentPoint, 0xFF97AE10) // Like S95
NHSTUB(apex2us, 0xFFA34EBC)

NHSTUB(GetParameterData, 0xFF9B1C70)   // like S95
NHSTUB(SetParameterData, 0xFF9B1BDC)   // like S95
NHSTUB(rand, 0xFFA33FF8) // New format just up of sscanf check the xrefs
NHSTUB(srand, 0xFFA33FEC) // just up of rand


updated wrog stat stub
« Last Edit: 02 / November / 2010, 14:44:32 by asm1989 »


Re: IXUS 1000 HS Porting Thread
« Reply #8 on: 13 / October / 2010, 08:25:19 »
>Here you have the: Cameraversion file
>http://www.zshare.net/download/814055540bdb1e95/

thanks, this file i can download and work.

Canon Model ID : Unknown (0x2890000)  in Version Field stand 100

Canon Firmware Version : Firmware Version 1.00
Firmware Revision : 1.00 rev 4.00

Do you need other data ?
Ixus 1000 HS

*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: IXUS 1000 HS Porting Thread
« Reply #9 on: 14 / October / 2010, 13:41:56 »
Thanks Bernd, but this number does not match PLATFORMID

realyp, how can we get PLATFORMID in a cam that does not allow the ver.req  to print out this stuff?

 

Related Topics


SimplePortal 2.3.6 © 2008-2014, SimplePortal