Technology
 

CHDK-Shell

From CHDK Wiki

(Redirected from Chdk-shell)
CHDK-Shell for Windows
Dialog: Compile Options
Dialog: GUI Config
Dialog: GUI Config Camera Panel
Dialog: After Checking
CHDK-Shell is a nice GUI for developers to easily download, compile and manage the CHDK sources on a Windows platform.


The CHDK-Shell is written with AutoIt scripting language (easy to customise, the source code is included) by whim from the CHDK forum.


Contents

[edit] Getting Started

  • Download the FULL package (file CHDK-Shell-{version}-FULL-SFX.exe, approx. 17 Mb), it includes appropriate GCC compiler versions & all required files
  • Extract to an empty directory without spaces in name (example: D:\CHDK) - the installer will create one for you if you type a non-existing folder name;
  • When done, open the folder and start CHDK-Shell-{version}.exe
  • To install an update version, just choose your existing folder (that would be D:\CHDK in case of the example above) and allow the updater to overwrite files

[edit] Supported OS

  • Windows 2000 (tested)
  • Windows XP (tested)
  • Windows 2003 (tested, thanks hotvedt !)
  • Windows Vista (tested, thanks nmcconnell !)
  • Windows 2008 (needs testing, anyone ?)
  • Windows 7 (tested, thanks Darkness !)

please post feedback (questions, bug reports, suggestions) in the CHDK-Shell thread

[edit] Features

  • downloads gcc compiler / complete CHDK building environment, tools and current CHDK source (trunk or branches)
  • compiles CHDK for selected or all camera's with access to many compile time options
  • user configurable, flexible CHDK source updating with optional auto-compilation
  • includes CardTricks to install and manage CHDK on your SD-Cards
  • does not permanently change your enviroment, no conflicts with other compilers already installed on your machine
  • can extract, edit & modify the CHDK preferences
  • clones & manages multiple build trees, creates Diff, and applies Patch files
  • switchable gcc 3.4 / 4.x support
  • Windows Vista / Windows 2008 / Windows 7 support New ! (thanks to nmcconnell for the golden tip !)

[edit] Download

Image:Notice.png   CHDK-Shell dowload site: gcc_for_chdkshell drop

or use the direct file links below
thanks to fe50, alternative download locations are here: http://drop.io/chdksoft

Image:Saveas64.png   Note:
  • For a first install, use the version marked '(full)' (~ 17 MB)
  • Versions not marked 'full' are updates (no GCC compilers, ~ 1 MB)
  • Packaged as 7-zip self extracters, unpack to a path without spaces


added: Possibility to define a "Local branch", this is meant to allow
you to work on your mod or port safely while still checking & receiving
trunk updates.
fixed: program would crash if Diff'ing the current build with itself
  • CHDK-Shell Version 2.42 (2009-11-07)
fixed: 'arrow' icons in miniGUI & Card Menu are now functional
added: option to have the program update itself 'on the fly'
Please note: because hosting site (drop.io) does not support
deep linking you will - as in previous versions - still have
to click the download button in your browser, but if you set
the path to your download directory in the 'Updates' dialog,
the program will handle the rest (unpack without overwriting,
close current program, and start new version)
  • CHDK-Shell Version 2.41 (2009-11-05)
fixed: tooltips would not reappear after timing out on Win XP SP2&3;
this is a bug in AutoIt 3.3.1.4, using 3.3.1.1 now
changed: button to change SVN site now separate, next to group title
changed: main GUI is now 15 pixels smaller in width
fixed: Welcome screen showing multiple times
added: Screen Snap is back, finally found a clean way to trigger it ...
added: @Debug Array: added tooltip with window messages
  • CHDK-Shell Version 2.39 (full)] (2009-11-01)
  • CHDK-Shell Version 2.39 (2009-11-01)
added: tweaked multisite support some more; if German language OS detected
(Standard, Swiss, Austrian, Luxembourg, Liechtenstein) will show
welcome screen in German & default to CHDK-DE site
fixed: trunk/branch selection & settings are now fully separate per site
(before it only switched trunk<->trunk & branch<->branch)
fixed: when 'Switch to miniGUI' was activated, the miniGUI would pop over
the active window
removed: Screen Snap, due to an annoying bug (possibly in AutoIt 3.3.1.4):
maximised non-CHDK-Shell windows were moved a few pixels, and a
workaround solution caused too many side effects.

[edit] Archive (changelog)

  • CHDK-Shell Version 2.38 (2009-10-30)
fixed: Switching source site sometimes caused strange behaviour when a branch
was active: now keeps separate default branch for each site.
fixed: When branches with long names were selected, the dialog box appearing
after pressing 'Change' would not show properly
added: small 'DE' indicator in miniGUI when site = CHDKDE
  • CHDK-Shell Version 2.37 (2009-10-29)
fixed: Missing 'inistub' in CHDK-Shell subdirectory (for 2.36)
changed: Now compiled with latest AutoIt 3.3.1.4
added: Support for CHDKDE source site: you can now on the fly switch between
http://tools.assembla.com/chdk & http://my-trac.assembla.com/chdkde (thanks, fe50)
  • CHDK-Shell Version 2.36 (2009-10-22)
added: 'Screen Snap' option (keeps program window from going off screen)
changed: code cleanup/streamlining for program version check
fixed: small bug in miniGUI, other windows could end up 'between' the 'display' and the camera image
  • CHDK-Shell Version 2.35 (2009-10-17)
added: option to have the program check for a newer version at startup; reduces (optional) download to 1 click

fixed: while importing the ini file from a previous version, the program version on line 2 of the ini file was not updated

fixed: added the missing alternative AutoIt icon for Win2000 - somehow i'm not terribly surprised nobody noticed ;)

  • CHDK-Shell Version 2.34 (2009-10-17)
changed: main GUI dialog child windows no longer use the "on top" state, as this was reported to cause problems under Vista (and newer ?) Instead, the dialogs now monitor if they are covered by the main window, and then re-activate themselves if needed (thanks for reporting, Smartkiller)
  • CHDK-Shell Version 2.33 (2009-10-14)
fixed: under Vista (and newer) after excluding GCC 3 as a compiler the program would then complain about missing helper files ...
fixed: after selecting a new compiler, and clicking "Keep current", the compiler version strings would not be rolled back to original
changed: restyled "Set Path to DevKits" dialog - a bit less ugly now (i hope)
fixed: small bug when pivot was left top or bottom (x pos.'jumped' on resize)
changed: restyled status info boxes and mini GUI (now also shows disk space)
added: option to switch to miniGUI after adjustable idle time (default: OFF)
  • CHDK-Shell Version 2.31 (2009-10-04)
added: Patch (in 'Source tools') finally implemented, includes options 'test only'
and 'undo' to reverse the patch; patches will automatically be converted to *nix
line format before use
added: low disk space warning, background will turn red if space < 100 MB
  • CHDK-Shell Version 2.30 (2009-09-16)
tweaked: garbage collection routines to use less CPU time
tweaked: size of executable ( 10 kB smaller )
  • CHDK-Shell Version 2.29 (2009-09-06)
added: now all 4 corners of the GUI can be used as 'pivot point'
fixed: resizing the GUI now less 'jumpy' (tries to respect 'pivot point')
  • CHDK-Shell Version 2.28 (2009-09-06)
fixed: will now not let you plug in a GCC 4 in the GCC 3 'slot' anymore
fixed: will not let you use options that open a browser window anymore unless 'Allow internet' is checked
added: option ("GUI..." dialog) to choose the 'pivot point' - this used to be fixed at Top Right, now you can also set Top Left
  • CHDK-Shell Version 2.27 (2009-09-02)
fixed: major speed increase for 'Processing Cam Info' (about 3 times as fast)
  • CHDK-Shell Version 2.26 (full) (2009-09-01)
fixed: under Vista / 7 / 2008: disallow use of GCC 3 compiler (can't get it to work); also prevent installation of GCC 3 from 'full versions'
changed: full version: upgraded to GCC 4.4.0
changed: full review of ALL z-ordering of (sub)windows & dialogs
changed: increased precision of 'update check' timer (now 0.1 sec resolution)
  • CHDK-Shell Version 2.25 (2009-08-23)
fixed: z-ordering 'Source Tools' --> 'Create Diff' --> folder selection
changed: updated win32 GCC in the devkit from version 3.2.3 to 3.4.5
tested: now compiles fine on both XP and Vista, producing identical binaries
  • CHDK-Shell Version 2.24 (2009-08-19)
fixed: z-ordering 'Compile Options' --> 'Set Paths' --> folder selection
added: WIN_7 as supported OSVersion
  • CHDK-Shell Version 2.23 (2009-08-16)
fixed: z-ordering for 'Compile Options' and 'Set Paths' windows
changed: compiled with AutoIt 3.3.1.1 beta to allow optimising program memory footprint
  • CHDK-Shell Version 2.22 (2009-08-16)
added: Vista & Win 2008 support - there is only a 'full' version, because this one will DEFINITELY NOT COMPILE with previous devkits
  • CHDK-Shell Version 2.21 (2009-08-14)
added: first attempts at Vista & Win 2008 support - should be identical to 2.20 for 2000/XP/2003 users
  • CHDK-Shell Version 2.20 (2009-08-13)
fixed: bug in install routines - the devkit dialog would sometimes disappear behind existing windows ...
changed: program is now compiled with latest AutoIt release (3.3.0.0)
added: better garbage collection, program now uses 0.8 - 1.3 MB of memory instead of 2 - 8 MB
  • CHDK-Shell Version 2.19 (2009-07-22)
added: function to analyse DISKBOOT.BIN(s) - ATM recovers target cam/firmware, CHDK version and build date/time; it's in the Card Menu, button 'Analyse'. Note that IF YOU HAVE A CARD SELECTED, it will check for a BIN there and if found report on it directly; in all other cases it will prompt you to browse to a DISKBOOT.BIN
added: CHDK-Shell version now also shown in miniGUI
  • CHDK-Shell Version 2.18 (2009-07-03)
fixed: when starting in miniGUI mode the taskbar entry would not be available until the main GUI was used at least once (note: the program will start in miniGUI mode if you last exited by pressing 'Esc' while in miniGUI mode)
added: descriptive titles for Cmd windows
  • CHDK-Shell Version 2.17 (2009-05-29)
added: Win 2003 server compatibility (thanks, hotvedt !)
  • CHDK-Shell Version 2.16 (2009-05-12)
changed: cam panel makes better use of available space
changed: clicking current version in miniGUI now also opens changelog
changed: slimmed down tooltips
  • CHDK-Shell Version 2.15 (2009-04-25)
changed: status messages now also shown in miniGUI
  • CHDK-Shell Version 2.14 (2009-04-20)
changed: GCC 4.3.3 will now run on old machines just like GCC 3.4.6 (pentium mmx)
changed: added Accelerators aka 'keyboard shortcuts'
fixed: disabled taskbar icon popups when miniGUI or CardTricks menu is active
fixed: 'Last Check' time & duration now better synchronised between main and miniGUI, 'net dropout' background now also shown in miniGUI.
  • CHDK-Shell Version 2.13 (2009-04-12)
changed: now only main window has a taskbar button (all others have 'popup' style)
changed: in full version GCC 4.3.3 has now been compiled WITHOUT the '--with-cpu=arm9' flag; this stops the assembler from complaining about unsupported 'BLX <register>' commands, so now trunk 730 compiles without errors for SX10 / SX1 as well - thanks for reporting, fboesch !
  • CHDK-Shell Version 2.12 (2009-03-24)
changed: separate controls for window animation and shutdown message
changed in full version: improved GCC 4.3.3 compatibility for old processors
  • CHDK-Shell Version 2.11 (2009-03-18)
added: same animation effects to changing to/from CardTricks menu
  • CHDK-Shell Version 2.10 (2009-03-16)
fixed: more 'polishing' of the miniGUI windows z-ordering
added: animation effects to changing between main and mini GUI (use the existing 'GUI ...' menu to turn off and select speed for all animations)
  • CHDK-Shell Version 2.09 (2009-03-11)
fixed: program will now run on Windows 2000 without gdiplus.dll (with disabled GDI+ and a warning message)
added: recheck period shown in miniGUI
  • CHDK-Shell Version 2.08 (2009-03-08)
fixed: miniGUI windows Z-ordering error
note: versions 2.07/2.08 only run on Windows 2000 with gdiplus.dll in the program directory (provided as separate download)
note2: also released 2.08 full version (already contains gdiplus.dll)
  • CHDK-Shell Version 2.07 (2009-03-03)
added: (to GUI config dialog) option for bold font on/off in popup messages; also repositioned 100% / 83% preset buttons to more logical place.
added: option to put the GUI in a sort of minimal watchdog mode (232x152 pixels)
  • CHDK-Shell Version 2.06 (2009-02-24)
added: are-you-sure type warning after selecting "Compile All" (with checkbox to bypass)
fixed: clicking search when it is already open will now bring it's window to the front i.o. opening a second window
changed: (in the card menu) now uses arm-elf-strings (from the devkit) to extract strings from a firmware dump
fixed: 'Unzip Archive' should now actually work
changed: all popup messages (like 'Unzipping ....') now use a common subroutine that should take care of proper sizing and centering the message
  • CHDK-Shell Version 2.05 (2009-02-15)
fixed: number of firmwares (and size of cam panel) should now dynamically adapt, tested on random builds between 300 and 710 (i.e. interface will grow/shrink to size when changing build)
  • CHDK-Shell Version 2.04 (2009-02-14)
fixed: Apply/Edit CHDK preferences before Extract would cause an endless loop. Now refuses and reports "Nothing to Apply" or "Nothing to Edit"
full version updated to 2.04 too
  • CHDK-Shell Version 2.03 (2009-02-13)
new: extra check to prevent setting DevKit paths containing '='
changed: moved Diff and CHDK Prefs to "Source Tools" dialog
Camera panel is now ready for 5 firmwares/camera
re-tweaked GUI for classic theme on netbook: shortened strings, improved small button readability etc.
  • CHDK-Shell Version 2.02 (2009-02-06)
new: Diff option added (temporarily as a button above 'Change') - saves both a DOS cr/lf and a *nix style patch file.
new:exclusions for source tree files that are changed during compilation (stubs_auto.S, stubs_entry.S, *.a, *.exe, *.bin, *.BIN + everything in /bin), user editable in /CHDK-Shell/exc_diff.txt - program will create, but never change this file.
  • CHDK-Shell Version 2.01 (2009-02-01)
changed: moved and changed "Change log" icon, to make room for ...
added: ... icon for option to clone current build
added: new display option for Cmd windows (show + autoclose)
changed: GUI: icons quality improved; some more tooltips; restored source code button name
  • CHDK-Shell Version 2.00 (2009-01-28)
fixed: search introduced in 1.99 would block the GUI while open
added: command line interface for the current compiler
changed: improved/corrected readme.txt
note: FULL version also available, now only 19 Mb
  • CHDK-Shell Version 1.99 (2009-01-26)
fixed: setting compiler to GCC3 would not be remembered
added: FAST and small (assembly, 8kb) search & replace function
added: CHDK development statistics (click build number)
added: internal preparation for even higher compression of 'full' releases
  • CHDK-Shell Version 1.98 (2009-01-21)
changed: packaging, program no longer holds helper files internally.
added: old trunk to prevent crashes on first start when not used as update
added: time stamp and compiler version to log and dump files
added: better compatibility with old trunk versions
  • CHDK-Shell Version 1.97 (2009-01-19)
fixed: initial validation / sanity check
  • CHDK-Shell Version 1.96 (2009-01-19)
fixed: PRIMARY_ROOT would not save settings when reset to internal
fixed: PRIMARY_ROOT can now be on any disk
  • CHDK-Shell Version 1.95 (2009-01-18)
bugfixes: external PRIMARY_ROOT support (note that it's path must be within CHDK-Shell's folder tree)
fixed some incompatibility issues with 'old' versions; some GUI tweaks
+ both win32 and arm-elf compilers are 'validated' by asking them about their version
+ override built-in paths for devkits - only if validated of course
replaced 'Timeline' with 'Mantis' - use 'i' button for TimeLine (+ added tooltips for browse buttons)
fixed: show ONLY cam properties starting with 'CAM_' (older builds would cause a crash otherwise)
  • CHDK-Shell Version 1.94 (2009-01-17)
added support for external PRIMARY_ROOT
note: contains no install routines, expects devkits in 'gcc' and 'gcc4', install this preferably over v193 above
  • CHDK-Shell Version 1.93 (2009-01-17) FULL PACKAGE
new: now packed as self-extracting SFX file: just browse to install folder...
new: switchable support for GCC3 / GCC4; you can now switch between 2 different gcc versions (gcc 3.4.6 in \gcc and gcc 4.3.2 in \gcc4)
  • chdk-shell-v192.zip - 1.07MB
bugfix: parser stumbled over '639 camera.h changes/additions; now beefed up, should support arbitrary use of whitespace and uses dynamically sized arrays
  • chdk-shell-v191.zip - 1.07MB
now fetches changelog info straight from the net instead of from version.txt
  • chdk-shell-v190.zip - 1.07MB
improved the 'cam refresh' procedure, will now only run if really needed (e.g. not after GUI Config anymore)
  • chdk-shell-v189.zip - 1.07MB
bugfix: program aborted on trying to disable tooltips (+ minor tweaks to cam panel sizing)
updated CardTricks functions (to ~ CT 1.43) - mostly long overdue support for CCHDK.CFG
  • chdk-shell-v188.zip - 1.08MB
new option to force resizing on small screens
GUI config stuff to tweak readability of cam panel on small screens (font bolding, colors, etc)
optional shutdown animation and configurable message
  • chdk-shell-v186.zip - 1.07MB
bugfix: 184 and 185 would crash on conditional compile changes
  • chdk-shell-v183.zip - 1.06MB
small bugfixes related to reworking the cam properties + removed bold cam names
conditional compile dialog now follows sizing
source tools now set to 'visible' by default
  • chdk-shell-v182.zip - 1.06MB
reworked camera properties: now shown in a message box when the camera name is clicked
support for compile options in 'buildconf.inc' (new since trunk552, still supports them in makefile.inc too)
  • chdk-shell-v181.zip - 1.06MB
auto reduce size when first started on a desktop height < 690 (e.g. on Netbooks)
cam tooltips now only show 'cam properties' which start with "CAM_"
fixed: 1.80 refused to update trunk
  • chdk-shell-v179.zip - 1.06MB
compatibility for changeset #547
  • chdk-shell-v178.zip - 1.06MB
no code changes, only host & download link to devkit changed
  • chdk-shell-v177.zip - 1.06MB
removed ping before checking trunk & branch pages (tools.assembla.com seems to not accept pings anymore,at least not on the domain root)
moved GUI sizes/scaling info to 'GUI Config ...' tooltip; title bar now includes build info instead
  • chdk-shell-v176.zip - 1.06MB
bugfix: crash on writing log
  • chdk-shell-v175.zip - 1.06MB
Rapidshare download link due to zshare.net - problems, also uses RS link to dowload the dev kit
  • chdk-shell-v174.zip - 1.06MB
Download location changed from zshare.net to Rapidshare
bugfix: when using some of the setting dialogs (branch, GUI, etc.) directly after toggling checkboxes in the main GUI, settings would not be written to the .ini file, and on return from dialogs would go back to previous position(s)
bugfix: on first run, pressing 'After Checking' and then Cancel would cause a crash caused by a faulty default value
  • chdk-shell-v173.zip - 1.07MB
+ branch checking option 'none' ( now: none/default only/all )
+ runtime check on presence of unzip, wget and SSL dlls
bugfix: saved cam selections were not reloaded, so autocompile would not work
'Log Details Only' from 'after checking...' option removed (useless)
  • chdk-shell-v172.zip] - 1.09MB
+ Option to keep objdump (assembly) output on a per target base - will be stored as bin\logs\dump-[cam]-[firm].txt
+ GUI control for conditional compile options
+ Camera properties (from camera.h) as tooltips for camera checkboxes
+ latest Cardtricks included
  • chdk-shell-v166.zip - 1.06MB
  • chdk-shell-v163.zip - 1.04MB
  • chdk-shell-v155.zip - 1.02MB

[edit] Links