This is free software for many Canon digital cameras:
chdk.wikia.com
[http://chdk.wikia.com/wiki/CHDK_for_Dummies]
It only installs till the batteries are removed, so it's safe to play with.
This is my experiences with installing it under Ubuntu Linux 7.1. Most, but not all, this info is from the CHDK website.
The docs say you need to check the firmware rev of the factory firmware in order to choose the correct download. I was able to get my original firmware rev by putting an empty file called "vers.req" in the root dir of the SD memory card. I had also to delete all photos/movies on the card, as otherwise when you put it in the camera it just shows you the media when you press FUNC SET. Press and hold FUNC SET, and press DISP. The first time, it shows you the version for a few seconds. If you immediately press FUNC SET again once, it shows something else. If you press it again, it shows the picture count, although for me it displayed only 223 - way too low.
Then I formatted the memory card in the camera. (I'm not sure that's really necessary but the web info told me to do it.) Then the general guide info to CHDK suggests using a special Windows utility to make the memory card bootable. The following guide includes Linux info so you can use hexedit to set a bootable flag:
chdk.wikia.com
[http://chdk.wikia.com/wiki/A560]
as part of the setup info for an A560 (but it seems to be valid for my A630 and presumably others).
Then I plugged in the SD card using a USB adapter. Ubuntu, and presumably all other modern Linux distributions, will mount a USB SD adapter automagically, but you don't want the SD card to be mounted while you're setting the bootable flag. The web info suggests using umount /dev/sdb1 (you can check if that device name is the same on your box by running dmesg), but this did not work for me: umount complained that /dev/sdb1 was not in /etc/fstab. The same thing happened for /media/drive. However, r-clicking on the drive icon and selecting unmount worked.
I was then able to run hexedit (at least after doing apt-get – it went fast). Unfortunately hexedit expects to use various keys like F1 which are grabbed by Gnome Terminal. I was able to turn them off with gterm Edit - Current profile. Then I was able to use F1 to get help on hexedit commands like Tab (to swap hex and text entry modes).
Then I downloaded the zip file containing the new firmware (two files). The CHDK site:
chdk.wikia.com
[http://chdk.wikia.com/wiki/Downloads]
has links to various different "builds" with different features. The download I actually got was the "allbest". It turned out there was only one version for the A630, ie the original firmware version is irrelevant. The download location is grandag.nm.ru
[http://grandag.nm.ru/hdk/autobuild/download.htm]
(this is the latest, somewhat experimental version; you may prefer a more conservative one).
The main setup page does not specify where to put the two files, but I presumed the root dir. I unplugged the SD adapter and plugged it back in (so that Ubuntu would automagically remount it), and copied the files over.
I unmounted the adapter and unplugged it, pulled out the SD card, set the write switch to protected (write disabled) per the notes, and put it back in the camera. Then you enable the software just by turning on the camera. It starts up with a splash screen: it then shows a little rectangular area at the bottom left. You can then access most of the setups by pressing what the docs call the "Alt" key, ie the one at the top R of the "Func Set" button with a picture of a printer next to it, and then the MENU button.
Result: it works! There are indeed a bazillion features. However, I'm not sure how useful it is. The menu access is a little clumsy, it interferes in some ways with access to normal features, and it caused at least one lockup in a few minutes playing. However, it does provide one feature I desperately wanted: a battery status display. Apparently the camera has an actual voltage sensor: all you need to do is specify the voltage levels you consider as 0% and 100% (if you aren't happy with the default). I had no idea the camera had the hardware to do this. (OTOH, I just noticed that the battery level seems to go up as well as down... hmm.)
Another handy feature is to enable optical zoom during video recording. When you do so, it mutes (if you want) the microphone to avoid picking up the whir of the zoom mechanism. It refocuses after the zoom.
You can also download and run scripts, although I haven't tried that yet.
Other builds have extra features like remote control via the usb port.
Fundamentals of game design
I've been interested for a long time in why games work – in the sense
of being fun to play – at all.
For instance, why do I enjoy crossword puzzles? I've certainly noticed
that I enjoy the puzzles in certain newspapers more than others. What seems to
be unrewarding is puzzles where you can guess all but two or three clues
immediately, but the remainder are impossible. What seems to be "fun" is
when I only get 5 or 10 clues quickly, but can slowly figure out the remaining
answers at a relatively constant rate. Ie, I don't enjoy *either* just looking
up answers, or beating my head against a brick wall: it's the process of
converting what looks like a very difficult task into a series of steps of
definable progress which seems to be the pleasurable part. (Incidentally the
very best – most enjoyable – clue is hard to guess but as soon as you think
of the answer you know it's right. I hate the kind which is "14th C. Persian
unguent hamper – var.")
Here's a Slashdot discussion of the necessity/merit of *logic* in the
universe of a computer game:
games.slashdot.org
[http://games.slashdot.org/article.pl?sid=04/02/02/0634256]
It includes one particularly relevant posting:
games.slashdot.org
[http://games.slashdot.org/comments.pl?sid=95168&cid=8159214]
That thing about "verifiable progress" reminds me of how surprised I was
that the Rainbow Six games don't allow you to save a game in the middle of
a level. At first I thought this made them almost unplayable, but when I
continued playing (irritated with my expensive purchase) I found the
lack made it a *different kind of game* and not necessarily worse.
The melancholy reality of fps games
Having played several fps games through to the end, I have realized
that one thing keeps disappointing me: in order to win the game,
it's necessary to analyze it outside of the context of the simulated
environment.
In other words, Return to Castle Wolfenstein may provide a great
simulation of running around Nazi lairs, but you will never complete
the game by relying on your knowledge of the period, and you cannot
win by building up operating skills which correspond to the player
character's potential skills. Instead, you have to keenly examine the
gmae for its *limitations* and ruthelessly exploit them.
In essence then the game experience is one of progressively stripping
away the sense of reality that the game seems to be selling.
An example: in one level you start off inside a large elevator, and
as soon as you exit the elevator you will be approached by a Nazi
cyborg which is more powerful and less vulnerable than you. The only
way I have discovered to survive is to hide behind a pillar at the
side of the elevator. But this is just a "hack". The apparent
dimensions of the elevator would not allow you to hide there: you can
easily see all of the cyborg, and he could easily kill you by aiming
at the parts of your virtual body he can "see". There is just a flaw
in the programming; apparently this typer of opponent can only
detect you if he has a clear view of you, and if his view is even
slightly impeded, under some circumstances he cannot target you and
has no algorithm to reacquire you.
What *should* the game experience be?
Perosnally, I love a rich environment, with period styling, equipment
etc. As well as all the items clearly copied verbatim from
historical records (the weaponry, the jets etc) there is a strong
sense of attention to detail in color schemes, bulkheads, control
consoles, light fixtures and so forth which constitutes a remarkable
artistic achievement.
In addition to that, I would like the objects to have sensible
behaviors which correspond to reality. Wolfenstein falls short here,
but forgivably. In many cases vehicles which should be drivable are
not. Worse, many doors and windows which appear from a distance to
be threats and opportunities turn out to be nonfunctional facades.
Still, this is clearly a formidable challenge for the designers.
What is more of a problem is that I get no real sense that I have built up
skills in playing the game. Ie, I don't learn something real about
how Nazi paratroopers attack (for instance) that could be used later
in the game – perhaps they always throw grenades before they assault,
so you know you'll have warning of an attack – or something. Instead,
you build up a catalog of little tricks about the shortcomings of the
opponents *in the game*, not in the simulated world.
So there's no feeling of achievement. Instead you've demolished the
appeal of the game. Writing this, I almost wonder if this is a
deliberate move by the publishers to minimize the replay value of
their games, but I doubt they've analyzed things that far.
I think a basic problem with all these games is that *noone* has
devised a tactics algorithm for the opponent characters which makes
any real sense. Basically everything is based on the same algorithm
I remember from the original Wolfenstein 3D from around 1992: if the
character is in the same area as you, or can see you, he approaches in
a straight line until halted by a wall, where he stops. This is
of course surprisingly effective, but after a while it's not very
interesting. As you play Return... you'll encounter situations
which are surprisingly difficult where maybe one single opponent
has been apparently hand-programmed to do a very effective thing
as soon as you show up... but they never learn, and you don't have to
worry about that trick showing up again.
In order to overcome this tactical weakness (imbecility) the game
designers have had to give the opponents some superpowers. For one
thing, they can spot you from a surprising range, at an angle,
with no warning. Real soldiers go into a trance within minutes of
strarting a routine patrol, and wouldn't see a stationary intruder
unless they tripped over him (that practically happened to me on an
exercise once). On the other hand, when there is an alert they
respond to it: they don't stand with their back to the only door.
This weakness also greatly restricts the choice of scenarios. We
are somewhat used to the idea that Nazis area eager to die for the
fatherland so it doesn't destroy the illusion that they charge into
your gun instead of cornering you and waiting till their buddies
show up. But you wouldn't expect Western troops to charge into
certain death, and it would destroy the illusion if the game showed
that. (Wouldn't it be fun if you had some sort of option for
playing the Nazi team against Bill Blaskowicz?)
Half-Life opponent tactics are somewhat more complex but not much
more clever. Mainly, a large amount of dither has been added. The
characters pause or wander around instead of attacking directly.
This gives a surface appearance of realistic complexity, but is
actually not much more effective, and just makes responding to
it more difficult without necessarily more interesting. (On the
other hand, of course, the set design and plot of Half-Life are
wonderful, with more sardonic humor than I've ever seen, even in
games intended specifically to be funny.)
By the way, I'm certainly not an expert on a wide range of games,
but I often flip through cheat lists and strategy guides, and
I can't remember ever seeing a reference to needing a
non-arbitrary "skill" instead of applying a trick or hack.
I hope this information was useful. There may be a great deal more
information on this site that is relevant to what you need.
Take
a look at the "site map" display at left; you
can click on a topic to see many recent items on that topic.
Debug: hittotal: 23 startban: 0
dancookie: endbandate:
banned: 0 tempdate:
tert: jse: jsno jsh: 23