SD 4000 IS / IXUS 300 HS / IXY 30S porting thread - page 6 - DryOS Development - CHDK Forum
supplierdeeply

SD 4000 IS / IXUS 300 HS / IXY 30S porting thread

  • 322 Replies
  • 181141 Views
*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #50 on: 10 / September / 2010, 19:32:36 »
Advertisements
Keyboard does work now with a little workaround because SD4000 has no Print Key. I need to find a way to use Key combination to enter ALT mode like (SET+UP).

I changed kbd.c like SX110, because camera did shutdown when overwrite physw_status (kbd_fetch_data() did return wrong values).

Now Camera does shutdown if you enter CHDK menu.  >:(

Regular CHDK Logo works again.

CHDK Display is still in Greyscale.

http://github.com/pixeldoc2000/chdk/commit/22374639e6e380863ae57b2be6d1a0022aef6359
« Last Edit: 10 / September / 2010, 19:47:44 by pixeldoc2000 »

*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #51 on: 10 / September / 2010, 23:23:16 »
Finally, CHDK Menu does work!!  :D

Fixed some wrong stubs while compare to SX210 beta in my code and SX210 code  ;)

Tested:
  • Keyboard
  • Textreader
  • some Scripts
  • Calendar
  • Games (but with wrong color)
  • Debug Stuff and Memory Browser

Using KEY_LEFT as ALT Button is a bit annoying...

http://github.com/pixeldoc2000/chdk/commit/05b1ae26fd722b19f69160fbab1700074bff9d38

*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #52 on: 11 / September / 2010, 14:22:42 »
Fixed ALT mode key by using BIT mask for two Keys: KEY_UP +  KEY_LEFT. This means user has to press both buttons to enter CHDK.

kbd.c
Code: (c) [Select]
// Base values in Play Mode
// physw_status[0] = 0x800C91F      // 1
// physw_status[1] = 0xFFE          // 2 (Mode Switch: Auto)
// physw_status[2] = 0x400000       // 3
// Mode Switch:
// physw_status[1] 0x1 Auto
// physw_status[1] 0x0 Photo
// physw_status[1] 0x2 Video
// physw_status[2] 0x20000 SD-Card READONLY
static KeyMap keymap[] = {
    { 0, KEY_UP         , 0x00000004 },
    { 0, KEY_DOWN       , 0x00000001 },
    { 0, KEY_LEFT       , 0x00000008 },
    { 0, KEY_RIGHT      , 0x00000002 },
    { 1, KEY_SET        , 0x00000040 },
    { 0, KEY_SHOOT_FULL , 0x00000800 },
    { 0, KEY_SHOOT_HALF , 0x00000100 },
    { 1, KEY_ZOOM_IN    , 0x00000010 },
    { 1, KEY_ZOOM_OUT   , 0x00000020 },
    { 1, KEY_MENU       , 0x00000080 },
    { 0, KEY_PRINT      , 0x0000000C },   // ALT Key workaround: KEY_UP +  KEY_LEFT (camera has no print key)
    { 0, 0, 0 }
};

This also means theres no need for alt_mode_key_mask.

Still canon firmware has redraw issus sometimes before and after ALT mode (redraw recovers after some seconds most of the time).
« Last Edit: 11 / September / 2010, 14:31:39 by pixeldoc2000 »

*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #53 on: 11 / September / 2010, 15:20:38 »
For people following this thread.
There is some discussion about SD4000 <---> SX210 here: http://chdk.setepontos.com/index.php/topic,5045.0.html .


*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #54 on: 11 / September / 2010, 18:38:33 »
Beta v1 is available

Here is Beta v1 if somebody want to test it...

http://drop.io/chdk_ixus300_sd4000

Please write you feedback here.

Edit: Only "Firmware Update" chdk start does work yet. ALT-Keys are UP+LEFT (press them together).
« Last Edit: 11 / September / 2010, 19:04:59 by pixeldoc2000 »

*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #55 on: 11 / September / 2010, 19:35:02 »
Any idea how to "fix" the different color palette?

CHDK does actually can display colors, but default chdk color does not "fit"...

Code: [Select]
http://pixeldoc.kicks-a ss.net/projects/chdk/ixus300_sd4000/canon_ixus300_sd4000_color_palette.jpg
Weird thing is, chdk does even use different color pallette in play and rec mode on this camera...

Code: [Select]
http://pixeldoc.kicks-a ss.net/projects/chdk/ixus300_sd4000/chdk_ixus300_sd4000_01_play_mode.jpg
http://pixeldoc.kicks-a ss.net/projects/chdk/ixus300_sd4000/chdk_ixus300_sd4000_02_rec_mode.jpg

*

Offline reyalp

  • ******
  • 14080
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #56 on: 11 / September / 2010, 19:43:36 »
Any idea how to "fix" the different color palette?

CHDK does actually can display colors, but default chdk color does not "fit"...

Code: [Select]
http://pixeldoc.kicks-a ss.net/projects/chdk/ixus300_sd4000/canon_ixus300_sd4000_color_palette.jpg
Weird thing is, chdk does even use different color pallette in play and rec mode on this camera...

Code: [Select]
http://pixeldoc.kicks-a ss.net/projects/chdk/ixus300_sd4000/chdk_ixus300_sd4000_01_play_mode.jpg
http://pixeldoc.kicks-a ss.net/projects/chdk/ixus300_sd4000/chdk_ixus300_sd4000_02_rec_mode.jpg
Not CHDK using a different palette, the canon firmware does this. It's quite common.

To "fix" the palette for CHDK, look at gui_draw.h and pick values that make the displays usable. Try the already defined palettes first to see if one works.
Don't forget what the H stands for.

*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #57 on: 12 / September / 2010, 04:17:30 »
pixeldoc,
try changing the diferente palette numbers is camera.h

Code: [Select]
#define CAM_BITMAP_PALETTE    5

Some questions about your status:
-Do the overrides in taking pictures work?
-The pictures are blurry?  -> If so check this: http://chdk.setepontos.com/index.php/topic,5045.msg54835.html#msg54835
-Raw?

« Last Edit: 12 / September / 2010, 09:48:24 by asm1989 »


*

Offline pixeldoc2000

  • ****
  • 356
  • IXUS900Ti 1.00C, IXUS300HS 1.00D
    • pixel::doc homebase
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #58 on: 12 / September / 2010, 15:10:14 »
Not CHDK using a different palette, the canon firmware does this. It's quite common.
I already though it depents on canon firmware

To "fix" the palette for CHDK, look at gui_draw.h and pick values that make the displays usable. Try the already defined palettes first to see if one works.
Looks like no CAM_BITMAP_PALETTE match perfectly... I'll have to do more testing.

try changing the diferente palette numbers is camera.h

Code: [Select]
#define CAM_BITMAP_PALETTE    5
I've tested them, no one seems to fit...

Some questions about your status:
-Do the overrides in taking pictures work?
-The pictures are blurry?  -> If so check this: http://chdk.setepontos.com/index.php/topic,5045.msg54835.html#msg54835
-Raw?
capt_seq_task() and movie_record_task() are not done yet, so no overrides yet.
Pictures are not blurry.
Raw not tested yet.

*

Offline asm1989

  • *****
  • 527
  • SX720, SX260, SX210 & SX200
Re: SD 4000 IS / IXUS 300 HS / IXY 30S porting thread
« Reply #59 on: 12 / September / 2010, 15:51:54 »
Hi pixeldoc,
The resfresh issue can be solved, check this
http://chdk.setepontos.com/index.php/topic,5045.msg54841.html#msg54841

 

Related Topics