ELPH300HS aka IXUS220HS - Porting Thread - page 2 - DryOS Development - CHDK Forum  

ELPH300HS aka IXUS220HS - Porting Thread

  • 899 Replies
  • 399367 Views
Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #10 on: 30 / April / 2011, 06:22:04 »
Advertisements
It seems, that the text is written in black on the black "no picture" screen!

So only fragments in the white display frame are visible.

I have to look into the basic stuff to see check if it is possible to control the text attributes...


...have fun...

Michi


Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #11 on: 30 / April / 2011, 06:35:19 »
It works also with a DCIM Folder containing pictures.

In this case the "Done" message appears visible, when the background contrasts.

That are good news:
I well keep with the IXUS220HS because there is a good chance to get control as I need it for my microcopter ;)

Meanwhile the battery is exhausted and I have to charge it...which is also a good signal to do some outdoor activities...

c'ya l8a

Michi


Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #12 on: 30 / April / 2011, 18:29:16 »
Hi,

pretty simple patch:

According to http://chdk.wikia.com/wiki/Canon_Basic/Reference I added color control to the dumper script.
Adding "LCDMsg_ChangeColor(a,3)" before printing gives readable messages in the dumper script. (2 is orange).

private sub Initialize()
   UI.CreatePublic()
   a=LCDMsg_Create()
       LCDMsg_ChangeColorEdit(a, 2)
   LCDMsg_SetStr(a,"Running")
   System.Create()


Now the progress can be observed, start address is prompted as expected and done is prompted after finishing.
The script can now be executed anytime, with or without pictures on the card, no deletion or copying of DCIM is required.

...have fun...

Michi
« Last Edit: 30 / April / 2011, 19:14:06 by michi1911 »

*

Offline reyalp

  • ******
  • 14082
Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #13 on: 30 / April / 2011, 18:37:10 »
The reason I have not incorporated this in the dumper is that the colors are not consistent across cameras. Since we can never guarantee the messages are visible, it makes more sense just to write the information to the log file. A/CBDUMPER.LOG is used for this purpose.

I have updated the description of the script to be more clear on this point.
Don't forget what the H stands for.


Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #14 on: 30 / April / 2011, 19:16:57 »
Yes, I agree!

The console output is not deterministically.

Sometimes the color is not adapted before printing, so this method is not reliable, file output is hopefully more stable.

I just wanted to figure out under which conditions the script is started and direct prompting is much easier than change the card permanently.

I use a dumper without output redirection...where is the offical version located?

...have fun...

Michi
« Last Edit: 30 / April / 2011, 19:27:26 by michi1911 »

*

Offline reyalp

  • ******
  • 14082
Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #15 on: 30 / April / 2011, 19:34:19 »
I use a dumper without output redirection...where is the offical version located?
http://chdk.wikia.com/wiki/Canon_Basic/Scripts/Dumper
Don't forget what the H stands for.

Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #16 on: 30 / April / 2011, 19:39:34 »
Cool!

Looks good, will try it immediately!

Thx

Michi


Added: Works great! I like the style! May be useful to me as template for own scripts too!
« Last Edit: 30 / April / 2011, 19:45:32 by michi1911 »

Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #17 on: 30 / April / 2011, 19:45:45 »
The console output is not deterministically.

Sometimes the color is not adapted before printing, so this method is not reliable, file output is hopefully more stable.

Sorry if the following info is out of date - its been a while but I thought I'd post as it might be useful. As I only really needed to use the ROM dumper script once,  I played with getting visible color.  In the original dumper, this went right afer the LCDMsg_Create() like this :
Code: [Select]
   a=LCDMsg_Create()
    LCDMsg_SetStr(a,"SD940 Memory Dump")
    LCDMsg_Move(a,100,100)
    LCDMsg_ChangeColor(a,5)

Seems like something similar would work for the new script.  I believe I found the color value of 5 using a simple Canon basic script that cycled through all the options :

Code: [Select]
private sub Initialize()

    System.Create()
    Driver.Create()
    UI.CreatePublic()

    a=LCDMsg_Create()
    LCDMsg_SetStr(a,"SD940 Colour Dumper")
    LCDMsg_Move(a,100,100)
    LCDMsg_ChangeColor(a,2)

    b=LCDMsg_Create()
    c=LCDMsg_Create()

    for d=0 to 16
    Wait(2000)
    LCDMsg_SetNum(b,d)
    LCDMsg_Move(b,100,200)
    LCDMsg_ChangeColor(b,2)
    LCDMsg_SetStr(c,"TEST")
    LCDMsg_Move(c,200,200)
    LCDMsg_ChangeColor(c,d)
    next

'    for c=0 to 5
' Wait(2000)
'        LCDMsg_SetNum(b,c)
'        LCDMsg_Move(b,40,50)
'        LCDMsg_ChangeColor(b,2)
'    next

end sub
private sub terminate( )
' Ending code
end sub

Something like that could be made to work for all cameras I think ?
Ported :   A1200    SD940   G10    Powershot N    G16


*

Offline reyalp

  • ******
  • 14082
Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #18 on: 30 / April / 2011, 20:02:53 »
I guess we could make the message function alternate colors for a while, but really, the user of the dumper needs to look at the card anyway. We just need to make it clear they may not see anything displayed when the script runs. No point in piling on more complexity for cosmetic stuff. Compared to the old blinkers and udumper this is already ridiculously user friendly...
Don't forget what the H stands for.

Re: ELPH300HS aka IXUS220HS - Porting Thread
« Reply #19 on: 30 / April / 2011, 20:13:12 »
I agree completely!

My problem was in the very beginning to figure out if the script is started or not!
Know it's pretty clear to me, that garbage in the "no picture" frame is an indicator.
The solution is to support people in understanding the first steps.

Unfortunately I was mislead by a lot informations, which are obsolete, resp. not correct for my IXUS220HS.

1. Pressing Func.Set and Display simultaneously -> wrong for IXUS220HS
2. Pressing Func.Set and hold                                     -> wrong for IXUS220HS, only short click is correct
3. DCIM folder has to be empty or removed                -> wrong for IXUS220HS
4. Some posts requested max. 2GB and FAT16           -> wrong for IXUS220HS
5. Some posts requested lock switch action                -> wrong for IXUS220HS

I hope that the next newbie discovers this description of my faults to be faster at the point of using the improved dumper with log file ;)

...have fun...

Michi
« Last Edit: 30 / April / 2011, 20:16:40 by michi1911 »

 

Related Topics