SX420 IS port - page 9 - DryOS Development - CHDK Forum

SX420 IS port

  • 97 Replies
  • 40273 Views
*

Offline reyalp

  • ******
  • 14118
Re: SX420 IS port
« Reply #80 on: 04 / November / 2020, 13:20:52 »
Advertisements
Furthermore, I enabled AF-point zoom in order to focus better, but it only appears outside of alt mode because it must recognize the shutter as half pressed and about to take a picture. In alt mode, the shutter halfway enables the shortcuts and fully pressed just executes the scripts.
That's normal behavior. To shoot, exit alt. Your overrides will still be applied. You just have to toggle in/out of alt to adjust the setting.

Unfortunately, this probably does make it inconvenient to use point zoom with CHDK SD override, but that won't be fixed by changing the script key. You could perhaps write a script that allows you to adjust the focus position while in half press (if it doesn't crash)
Don't forget what the H stands for.

*

Offline Pedro

  • *
  • 16
Re: SX420 IS port
« Reply #81 on: 05 / November / 2020, 07:56:13 »
Yeah, well, I´m not sure which function calls AF-Point zoom, but it would be interesting to be able to activate it only when focusing manually. I have an FZ20, which has MF and this function but not when halfpressing the shutter, but when moving the focus ring. It comes in handy since the screen ain´t really large and high def. Same with the sx420. What I did notice is that the camera activates it because, when half pressed, it assumes it is focusing. Apply to it focusing manually with sd override...
Hey, tiny question. I tried searching for the chdk firmware editor but didn´t really find anything. Most of the files had been removed or were missing. Any idea on where I can download it? Don´t know the FW language, but have a wide experience with arduino, and I´m quite fast doing collages of code functions and learning things like that

*

Offline blackhole

  • *****
  • 942
  • A590IS 101b
    • Planetary astrophotography
Re: SX420 IS port
« Reply #82 on: 05 / November / 2020, 08:44:28 »
Yeah, well, I´m not sure which function calls AF-Point zoom, but it would be interesting to be able to activate it only when focusing manually. I have an FZ20, which has MF and this function but not when halfpressing the shutter, but when moving the focus ring. It comes in handy since the screen ain´t really large and high def. Same with the sx420. What I did notice is that the camera activates it because, when half pressed, it assumes it is focusing. Apply to it focusing manually with sd override...
Hey, tiny question. I tried searching for the chdk firmware editor but didn´t really find anything. Most of the files had been removed or were missing. Any idea on where I can download it? Don´t know the FW language, but have a wide experience with arduino, and I´m quite fast doing collages of code functions and learning things like that
The cameras are powered by an ARM processor.
To add new features to chdk, you need a lot of knowledge about ARM assembler and C, and of course the skill of reverse engineering.

Here you can find the complete toolchain for compiling chdk if you are using Windows OS: https://chdk.setepontos.com/index.php?topic=12752.0
The source code will be automatically downloaded for all supported cameras.
The source code is also available here: https://subversion.assembla.com/svn/chdk/trunk

A few more useful links:
https://chdk.fandom.com/wiki/Firmware_analysis_with_Ghidra
https://chdk.fandom.com/wiki/Adding_support_for_a_new_camera
https://chdk.fandom.com/wiki/Modifying_the_CHDK_Sources
https://chdk.fandom.com/wiki/DryOS_Porting
https://chdk.fandom.com/wiki/Adding_Firmware_Features

Re: SX420 IS port
« Reply #83 on: 07 / March / 2024, 12:55:30 »
Hello I am new to CHDK and I did a lua script for my SX420is for the eclipse and it was working prety well, but I updated the firmware from 1.0.0.0 to 1.1.0.0 with the firmware found on the Canon web site.
Now I cannot install the SX420is 100a on my camera. I am trying to create a port for the new firmware. I installed GCC and the release-1_4 with the sx420is-100a-src.zip. I replaced the stubs_min.S file and tried to compile the SX420is 100a but propset8.h is missing and I don't know where to find it. When I will be able to compile that port, I will try for a port for the 1.1.0.0 firmware... Can somebody more familiar can help me ? Thanks


Re: SX420 IS port
« Reply #84 on: 07 / March / 2024, 14:29:33 »
I found release 1_6 and all the propset*.h files are there, but I have a new problem:

C:\CHDK\src>gmake PLATFORM=sx420is PLATFORMSUB=100a  fir
process_begin: CreateProcess((null), arm-none-eabi-gcc -dumpversion, ...) failed.
gmake: *** expand_function: unable to launch process (e=2)
.  Stop.

I don't realy understand this error. I found arm-elf-gcc.exe in the gcc440/bin but no arm-none-eabi-gcc

Maybe I need an other compiler package...

*

Offline reyalp

  • ******
  • 14118
Re: SX420 IS port
« Reply #85 on: 07 / March / 2024, 21:06:44 »
Maybe I need an other compiler package...
Probably, CHDK requires arm-none-eabi since 1.6. The one here https://chdk.setepontos.com/index.php?topic=12752.0 should work.

If you can can post a firmware dump from your updated cam, I can help you get the port working (or just do it, it should be very quick). In any case, we a published dump to add port.
Don't forget what the H stands for.

sx420is port for new firmware version 1.1.0.0
« Reply #86 on: 08 / March / 2024, 14:28:04 »
Hello
I am new to CHDK and I intalled it on my Powershot SX420IS and created a lua script for the eclipse.
It was almost finished, but I decided to update the firmware from Canon. It passed from 1.0.0.0 to 1.1.0.0
Every thing went fine until I tried to reinstall CHDK. Now when I do the update firmwae to load CHDK it is asking if I want to update from 1.1.0.0 to 1.1.0.0 and if I say yes the green led start blinking for ever and I cannot do anything except take the battery out.
So I decided to try to do a new port. I installed GCC, arm-none-eabi, CHDK Release-1_6 and was able to compile SX420si 100a.
So I decided to try to create sub 110a. I copied the files from the 100a sub to the 110a sub, I extracted PRIMAY.BIN with a extend.m script ad copied it in the new 110a. I rangmake PLATFORM=sx420is PLATFORMSUB=110a rebuild-stubs with success and gmake PLATFORM=sx420is PLATFORMSUB=100a fir also ran OK.
So I have a new DISKBOOT.BIN file but it cannot run. I tried with EOScard to make my card bootable but nothing happen. Do I need other file than DISKBOOT.INI on the card to make it boot? Did I missed somthing in compilation???? I am a little lost...

*

Offline reyalp

  • ******
  • 14118
Re: sx420is port for new firmware version 1.1.0.0
« Reply #87 on: 08 / March / 2024, 18:52:01 »
Hi @JacquesTalbot,
I merged this with the porting thread, it's easier to follow if everything related to the port is in the same thread.
Now when I do the update firmwae to load CHDK it is asking if I want to update from 1.1.0.0 to 1.1.0.0 and if I say yes the green led start blinking for ever and I cannot do anything except take the battery out.
This is the expected / intended behavior when you try to load CHDK on a firmware version that isn't known to be compatible.
Quote
So I decided to try to do a new port. I installed GCC, arm-none-eabi, CHDK Release-1_6 and was able to compile SX420si 100a.
So I decided to try to create sub 110a. I copied the files from the 100a sub to the 110a sub, I extracted PRIMAY.BIN with a extend.m script ad copied it in the new 110a. I rangmake PLATFORM=sx420is PLATFORMSUB=110a rebuild-stubs with success and gmake PLATFORM=sx420is PLATFORMSUB=100a fir also ran OK.
So I have a new DISKBOOT.BIN file but it cannot run.
 I tried with EOScard to make my card bootable but nothing happen.
What specifically happens when you try to run your build? The camera starts normally without CHDK, or doesn't appear to power on at all, or something else?
Quote
Do I need other file than DISKBOOT.INI on the card to make it boot?
You should have a full installation of CHDK on the card (for example, from the sx420 1.6 build from the autobuild), but it should boot without.
Quote
Did I missed somthing in compilation???? I am a little lost...
Depending on what has changed in the new Canon firmware version, you might need to update quite a lot more in the source. If you post the PRIMARY.BIN  (you can use a file sharing site like dropbox. box.com etc) dump, I can quickly check.

Otherwise https://chdk.fandom.com/wiki/Adding_support_of_a_new_firmware_version explains generally what's needed. The sx420 port was made using code-gen (see code_gen.txt in the 100a port) so you can regenerate most of the C files just using make run-code-gen, but depending on the changes, you might need to update the code_gen.txt itself or find stubs for stubs_min.S and/or stubs_entry_2.s manually.

You can quickly get an idea how much as changed between the firmware versions by comparing the stubs_entry.S and funcs_by_adddress.csv for the two firmwares generated by rebuild-stubs. If they are identical (except for comments directly related to the version string), then the firmware can almost certainly use the same CHDK build. Otherwise, a more detailed examination is required.
Don't forget what the H stands for.


Re: SX420 IS port
« Reply #88 on: 08 / March / 2024, 23:17:23 »
Thanks for your answer I will read your link and try run-code-gen. I checked the difference between the  stubs_entry.S and funcs_by_adddress.csv and there are a lot of difference.
Here is a link to PRIMARY.BIN https://1drv.ms/u/s!AjFXpwJgNuqR438VRDI_pQSH1wS3?e=yD05Gf
I will keep you inform of my progresses

Re: SX420 IS port
« Reply #89 on: 09 / March / 2024, 11:22:49 »
I tried run-gen-code without problem and remake fir.
I tried the DISKBOOT.BIN but it didn't work.

I am not sure how to run DISKBOOT.BIN, I just make the card bootable with EOSCard and copy the DISKBOOT.INI on the card. Do I need other file to boot from the card?

Thanks

 

Related Topics


SimplePortal 2.3.6 © 2008-2014, SimplePortal