Porting G3X - DryOS Development - CHDK Forum

Porting G3X

  • 3 Replies
  • 903 Views
Porting G3X
« on: 08 / September / 2023, 06:30:31 »
Advertisements
I recently acquired a G3X due to the focusing/zoom ring failure on my G1X2 (which leaves me no other ways to use M/Av/Tv, it was water ingression and the hall sensor cable is no where to be found on flea market).

I think if I were to use CHDK I could write some custom scripts to remap buttons and dials to be able to resume working state of that camera, but before I could look into it, I got a G3X, so now I have both cameras.

I have just dumped the firmware for the G3X, will take a look of what's next...

Re: Porting G3X
« Reply #1 on: 08 / September / 2023, 08:32:30 »
got some errors, copied files from G5X

Code: [Select]
$ make rebuild-stubs
make[1]: Entering directory '/home/yiming/Documents/sync/tools/chdk_related/chdk/tools'
finsig_thumb2.c -> finsig_thumb2.o
stubs_load.c -> stubs_load.o
firmware_load_ng.c -> firmware_load_ng.o
firmware_load_ng.c: In function 'firmware_load':
firmware_load_ng.c:2331:5: warning: ignoring return value of 'fread' declared with attribute 'warn_unused_result' [-Wunused-result]
 2331 |     fread(fw->buf8, 1, fw->size8, f);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ptp_op_names.c -> ptp_op_names.o
finsig_thumb2.o stubs_load.o firmware_load_ng.o ptp_op_names.o -> finsig_thumb2
make[1]: Leaving directory '/home/yiming/Documents/sync/tools/chdk_related/chdk/tools'
rebuild stubs for g3x-100c
make[1]: Entering directory '/home/yiming/Documents/sync/tools/chdk_related/chdk/platform/g3x/sub/100c'
-> stubs_entry.S
failed to get CreateTask args at 0xfc06b430
add_func_name: duplicate name task_LensController existing 0xfc0ab219 != new 0xfc0ab3d1
add_func_name: duplicate name task_LensController existing 0xfc0ab219 != new 0xfc0ab3d1
failed to get CreateTask args at 0xfc0fb4ae
failed to get CreateTask args at 0xfc12ad66
task name name not string at 0xfc2b4e9c
task name name not string at 0xfc2b5f76
failed to get *EventProcTable r0 at 0xfc37daec
failed to get *EventProcTable r0 at 0xfc37daf0
failed to get CreateTask args at 0xfc4823ea
failed to get CreateTask args at 0xfc48d2be
failed to get *EventProcTable r0 at 0xfc5ff56e
add_func_name: duplicate name j_GetZoomLensMechaEdgePosition_FW existing 0xfc5ffbe3 != new 0xfc5fffcf
add_func_name: duplicate name j_GetZoomLensMechaEdgePosition_FW existing 0xfc5ffbe3 != new 0xfc5fffcf
add_func_name: duplicate name GetLoopGainCalcData_FW existing 0xfc601149 != new 0xfc616481
add_func_name: duplicate name GetLoopGainCalcData_FW existing 0xfc601149 != new 0xfc616481
add_func_name: duplicate name SetVcmParamPLF_FW existing 0xfc605745 != new 0xfc60575b
add_func_name: duplicate name SetVcmParamLPF2_FW existing 0xfc605771 != new 0xfc605787
add_func_name: duplicate name GetVcmParamPLF_FW existing 0xfc60579d != new 0xfc6057b9
add_func_name: duplicate name GetVcmParamLPF2_FW existing 0xfc6057d5 != new 0xfc6057f1
add_func_name: duplicate name SetVcmParamPLF_FW existing 0xfc605745 != new 0xfc60575b
add_func_name: duplicate name SetVcmParamLPF2_FW existing 0xfc605771 != new 0xfc605787
add_func_name: duplicate name GetVcmParamPLF_FW existing 0xfc60579d != new 0xfc6057b9
add_func_name: duplicate name GetVcmParamLPF2_FW existing 0xfc6057d5 != new 0xfc6057f1
Time to generate stubs 2.14 seconds
ERROR! There are unresolved addresses in 'stubs_entry.S' (g3x-100c) for the following names:
SetParameterData
Please, add them into 'stubs_entry_2.S' manually!
make[1]: *** [../../../makefile_sub.inc:134: stubs_entry.S] Error 1

Re: Porting G3X
« Reply #2 on: 08 / September / 2023, 08:48:33 »
Got a bin now, let's see how to run this thing:

Code: [Select]
dance -> DISKBOOT.BIN ver 15
copy modules
**** Firmware creation completed successfully

Re: Porting G3X
« Reply #3 on: 08 / September / 2023, 09:26:59 »
Managed to create a bootable card and put the DISKBOOT.BIN in it, but not booting apparently.

Time to do some digging


 

Related Topics