CHIMP - Canon Hack Installation and Management Platform - page 2 - General Discussion and Assistance - CHDK Forum

CHIMP - Canon Hack Installation and Management Platform

  • 127 Replies
  • 30518 Views
*

Offline zeno

  • *****
  • 885
Re: CHDK for non-hackers
« Reply #10 on: 13 / April / 2017, 06:20:50 »
Advertisements
The code for partitioning is (mostly) in CHDK too. I think it actually originates from Canon - certainly not written by me.


I've given the code for STICK to several people - the main reason for not making it public is its messy nature, lack of useful comments and general untidiness. Send me an email and I'll send you the 32-bit and 64-bit DLL code.


daveATzenoshrdluDOTcom
A570, S100, Ixus 127
Author of ASSIST, STICK, WASP, ACID, SDMInst, LICKS, WICKS, MacBoot, UBDB, CFGEdit

Re: CHDK for non-hackers
« Reply #11 on: 13 / April / 2017, 06:26:35 »
I've given the code for STICK to several people - the main reason for not making it public is its messy nature, lack of useful comments and general untidiness.
That's precisely why I haven't yet published any of the CHDK utility code - hopefully I'll find the time and energy to clean it up.
« Last Edit: 13 / April / 2017, 06:29:21 by dmitrys »
Author of CHIMP, Canon Hack Installation and Management Platform

*

Offline reyalp

  • ******
  • 11976
Re: CHDK for non-hackers
« Reply #12 on: 13 / April / 2017, 13:46:26 »
I guess that would work, but I'm hoping for a (supposedly) more reliable method of deducing it from the CHDK repo.
There is not, I would say using the PID as zeno describes would be the best option. The ability to boot from FAT32 is purely a product of the Canon firmware, so isn't explicitly defined in the CHDK source. CHDK usually supports multi-partition on cameras that don't support FAT32 booting, but there could be exceptions in either direction.

Quote
I'm hoping checking drive sizes could be avoided. I believe that if someone really wants to format or corrupt their hard drive, they will find a way.
You can't make it totally foolproof, but IIRC there have been cases of this involving CHDK tools in the past, so I would suggest a cautious approach.

Quote
2. the ALT button. I found CAM_ALT_BUTTON_NAMES and CAM_ALT_BUTTON_OPTIONS in platform_camera.h, but what if CAM_ADJUSTABLE_ALT_BUTTON is undefined (as in ixus870_sd880)?
Then it's KEY_PRINT, but this may or may not be an actual "print" button. For example, on cameras without a print button, the play button might defined as print for CHDK purposes. In some cases there might be another key defined with the same bits (e.g. KEY_PRINT and KEY_PLAYBACK defined with the same bit values kbd.c) and others might not. Unfortunately this isn't defined in any coherent way, and is very hard to fix without having all the cameras.

Quote
Is the SD Card tool a module? I'm hoping to remove it whenever possible (i.e., for a bootable single partition).
Are you asking about the "SD Card" section of the CHDK menu? It's not, but in any case I would strongly urge you to install the full, unmodified CHDK package no matter what.

Quote
3. the autoboot flag. N and N Facebook use the microSD door, which is indicated by KBD_SKIP_READONLY_BIT and SD_DOOR_OVERRIDE in platform_kbd.h. Any other models/flags?
I'm not aware of any. Canon made a few other microSD cameras, but I remember any being ported.
Don't forget what the H stands for.

Re: CHDK for non-hackers
« Reply #13 on: 14 / April / 2017, 10:00:30 »
There is not, I would say using the PID as zeno describes would be the best option. The ability to boot from FAT32 is purely a product of the Canon firmware, so isn't explicitly defined in the CHDK source. CHDK usually supports multi-partition on cameras that don't support FAT32 booting, but there could be exceptions in either direction.

Yes, I found CAM_MULTIPART. Its use does indeed look pretty incoherent.

Quote
Then it's KEY_PRINT, but this may or may not be an actual "print" button. For example, on cameras without a print button, the play button might defined as print for CHDK purposes. In some cases there might be another key defined with the same bits (e.g. KEY_PRINT and KEY_PLAYBACK defined with the same bit values kbd.c) and others might not. Unfortunately this isn't defined in any coherent way, and is very hard to fix without having all the cameras.

I suppose maintaining code for 134 cameras with 290 distinct revisions is just as easy as it sounds ;)
Author of CHIMP, Canon Hack Installation and Management Platform


Re: CHDK for non-hackers
« Reply #14 on: 14 / April / 2017, 10:28:52 »
in any case I would strongly urge you to install the full, unmodified CHDK package no matter what.
I believe this deserves special attention, hence the separate reply.

First of all, there are two "full" CHDK packages, which will appear as Installation Type options. However, I was thinking about adding at least one other option - a "Minimal" install, which would exclude all the extras, i.e. games and Eye-Fi. I believe CHDK could do just fine without those (I wish the Games menu item could be removable as well). And how about Module Explorer, CPU info, Benchmark etc.?

There is also the issue of (more or less) useless files, i.e.:

PS.FI2 - can be removed unless absolutely necessary (or convenient, as could be the case with the N model)
vers.req - no use if installed via GUI
changelog.txt - outdated
readme.txt - little use if installed via GUI

Some subdirectories have readme.txt files with the following content:

Quote
nothing in here yet.

Maybe it's just my OCD, but I suggest removing those.
Author of CHIMP, Canon Hack Installation and Management Platform

*

Offline reyalp

  • ******
  • 11976
Re: CHDK for non-hackers
« Reply #15 on: 14 / April / 2017, 13:51:38 »
First of all, there are two "full" CHDK packages, which will appear as Installation Type options. However, I was thinking about adding at least one other option - a "Minimal" install, which would exclude all the extras, i.e. games and Eye-Fi. I believe CHDK could do just fine without those (I wish the Games menu item could be removable as well). And how about Module Explorer, CPU info, Benchmark etc.?
Note the minimal package is not intended an option for new installs. It's a leftover to allow people who already had an install to update only the binary files. These days the difference between a 300k and 700k download isn't significant, but changing the autobuild is complicated and potentially breaks things that scrape the page, so we've left them.


Quote
PS.FI2 - can be removed unless absolutely necessary (or convenient, as could be the case with the N model)
vers.req - no use if installed via GUI
changelog.txt - outdated
readme.txt - little use if installed via GUI
Please don't do this. Just install all the files. 4 GB cards cost couple bucks, and the whole CHDK install uses less than a single raw from a modern cam.

If you start leaving things out, the wiki pages etc will refer to stuff that isn't there and cause headaches.

Quote
Quote
nothing in here yet./quote]
Maybe it's just my OCD, but I suggest removing those.
Yeah, they aren't helping much and should either have content or be removed.
Don't forget what the H stands for.

Re: CHDK for non-hackers
« Reply #16 on: 17 / April / 2017, 11:29:09 »
I should report that there has been some progress with CHDK Utility.

I'm posting two new screenshots (the maximum allowed per post >:() from the (mostly completed) Introduction and Summary steps.

I was sorely missing some of the instructions included in the latter during my first encounter with CHDK.

As you may have guessed, the notes and other metadata are scraped from the repository.
Author of CHIMP, Canon Hack Installation and Management Platform

Re: CHDK for non-hackers
« Reply #17 on: 17 / April / 2017, 12:21:17 »
There goes the Installation Type step. The less the merrier I suppose 8)

Note the minimal package is not intended an option for new installs. It's a leftover to allow people who already had an install to update only the binary files. These days the difference between a 300k and 700k download isn't significant, but changing the autobuild is complicated and potentially breaks things that scrape the page, so we've left them.

Agreed, although I believe I did see something in the vein of "don't overload our server, use only the minimal build for updates".

Speaking of updates, is there any reliable way of gleaning the build number from the binaries?

Quote
If you start leaving things out, the wiki pages etc will refer to stuff that isn't there and cause headaches.

Well, the whole point of this utility is for people to not need the wiki. Seriously, have you seen the size of this page? ;)
« Last Edit: 17 / April / 2017, 12:23:03 by dmitrys »
Author of CHIMP, Canon Hack Installation and Management Platform


*

Offline reyalp

  • ******
  • 11976
Re: CHDK for non-hackers
« Reply #18 on: 17 / April / 2017, 13:17:29 »
There goes the Installation Type step. The less the merrier I suppose 8)
Speaking of updates, is there any reliable way of gleaning the build number from the binaries?
Once they are installed? Not that I can think of. For all modern cameras, binaries are encoded (see dancingbits and packfi2 in the source tools directory) so you can't trivially read the version from the executable.

Having the version identified on the SD card seems like it could be useful, suggestions are welcome.
Quote
Well, the whole point of this utility is for people to not need the wiki.
Yes, but my worry is that they go back later and try to do something described on the wiki, and it mysterious doesn't work. e.g. long after they installed they decide they want to run benchmarks, but original didn't install the benchmark module, and then they come on the forum asking why the benchmark item doesn't appear.
Don't forget what the H stands for.

Re: CHDK for non-hackers
« Reply #19 on: 17 / April / 2017, 15:20:04 »
Once they are installed? Not that I can think of. For all modern cameras, binaries are encoded (see dancingbits and packfi2 in the source tools directory) so you can't trivially read the version from the executable.

If I were looking for trivial, I would have given up on the entire CHDK Utility project :)

Quote
Having the version identified on the SD card seems like it could be useful, suggestions are welcome.

Software metadata proposal

Edit: Made source an optional property.
Edit 2017-04-18: Moved to GitHub wiki.
« Last Edit: 18 / April / 2017, 05:36:56 by dmitrys »
Author of CHIMP, Canon Hack Installation and Management Platform

 

Related Topics