Author Topic: G10 Porting Process  (Read 32242 times)

Offline Shinigami

  • Rookie
  • *
  • Posts: 12
Re: G10 Porting Process
« Reply #60 on: 19 / March / 2010, 01:28:06 »
well, I have to commit for you to work on it too, but I don't know yet if I can just commit the source or have to ask someone first... as soon as I find this out I'll commit, but if you want I can send the modified source to your email right away, it's only 2.3MB zipped

Offline simonbh

  • Newbie
  • *
  • Posts: 2
Re: G10 Porting Process
« Reply #61 on: 19 / March / 2010, 01:30:32 »
No, I'm not Brazilian.

I would like to see your modified source.  Please email it to me.

Thanks!

Offline fe50

  • Guru Member
  • ******
  • Posts: 2608
  • IXUS50 & 860, SX10 Star WARs-Star RAWs
    • fe50
Re: G10 Porting Process
« Reply #62 on: 19 / March / 2010, 10:51:36 »
well, I have to commit for you to work on it too, but I don't know yet if I can just commit the source or have to ask someone first...
You do not have write access to the SVN server.
Typically a CHDK developer commits a port when a stable beta version is available.
To get code into the CHDK trunk, post a diff file here in the forum when the time has come...

Offline reyalp

  • Guru Member
  • ******
  • Posts: 4490
Re: G10 Porting Process
« Reply #63 on: 19 / March / 2010, 11:57:26 »
If several people want to collaborate, you can always sset up your own svn or git somewhere (a space on assembla where CHDK is hosted, for example)

Or you can exchange patches against the current source.
Don't forget what the H stands for.

Offline Shinigami

  • Rookie
  • *
  • Posts: 12
Re: G10 Porting Process
« Reply #64 on: 19 / March / 2010, 17:31:01 »
I think I'll revive my deceased linux server... As currently I'm the only developer active, it won't be much of a problem if this takes some days.

Offline Shinigami

  • Rookie
  • *
  • Posts: 12
Re: G10 Porting Process
« Reply #65 on: 20 / March / 2010, 19:17:13 »
Well, people... As I didn't had my G10 at hand yesterday, I just worked on stubs_entry_2.S, so there's some addresses in it. Today I tried and retried to make the leds blink in loader/g10/main.c without success. The camera hangs up before anything happens and only cames back after the battery is removed. So I'll go back to start and check everything again.

Offline rocket187um

  • Rookie
  • *
  • Posts: 19
Re: G10 Porting Process
« Reply #66 on: 22 / March / 2010, 09:03:55 »
Good work so far!

Offline Shinigami

  • Rookie
  • *
  • Posts: 12
Stubs !!!
« Reply #67 on: 22 / March / 2010, 22:30:02 »
Here I am again. Now I'll post the stubs for your enjoyment ! Anyone who wants to work on it just send me the package name you'll be working on. Go on, guys, grab yours while it's hot ! IT'S FREE !!! (not pain free, of course)
Let's not put too much messages in this thread, all messages shall be sent privately to me (requests and results) and I'll update this post accordingly.

Code: [Select]
/*! @file stubs_entry_2.S
 * This file has corrected firmware function addresses
 * In this file you have to put all the firmware function addresses
 * that the build system can't get just right.
 * @author Shinigami
 *
 * @note
 * Using pointer to BX LR (just look for nullsub in IDA's function names list) as reyalp suggested
 * I've separated unknown stubs in packages as Microfunguy suggested
 *
 * @warning all these addresses have to be checked
 */

#include "stubs_asm.h"


//! Confirmed stubs (based on G11 adresses)
NHSTUB(WriteSDCard, 0xFF92A5D8)
NHSTUB(DoAFLock, 0xFF825E48)
NHSTUB(UnlockAF, 0xFF825E9C)
NHSTUB(MakeAFScan, 0xFF966130)
NHSTUB(EnterToCompensationEVF, 0xFF826110)
NHSTUB(ExitFromCompensationEVF, 0xFF826154)


//! Unknown stubs
//! Unknown stubs package A
NHSTUB(kbd_pwr_on, 0xFF810B04)
NHSTUB(kbd_pwr_off, 0xFF810B04)
NHSTUB(GetKbdState, 0xFF810B04)
NHSTUB(UnsetZoomForMovie, 0xFF810B04)
NHSTUB(set_zoom_speed, 0xFF810B04)
NHSTUB(SetZoomActuatorSpeedPercent, 0xFF810B04)

//! Unknown stubs package B
NHSTUB(strchr, 0xFF810B04)
NHSTUB(RefreshPhysicalScreen, 0xFF810B04)
NHSTUB(TurnOffBackLight, 0xFF810B04)
NHSTUB(bitmap_refresh, 0xFF810B04)
NHSTUB(ScreenLock, 0xFF810B04) //Shinigami: 0xFF9DA088?
NHSTUB(ScreenUnlock, 0xFF810B04) //Shinigami: FF9DA0C8?

//! Unknown stubs package C
NHSTUB(set_led, 0xFF810B04)
NHSTUB(LEDDrive, 0xFF810B04)
NHSTUB(SetScriptMode, 0xFF810B04)
NHSTUB(apex2us, 0xFF810B04)
NHSTUB(ExpCtrlTool_StartContiAE, 0xFF810B04)
NHSTUB(optical_zoom, 0xFF810B04)

//! Unknown stub package D
NHSTUB(partitions, 0xFF810B04)
NHSTUB(rewinddir, 0xFF810B04)
NHSTUB(filesystem, 0xFF810B04)
NHSTUB(Mount_FileSystem, 0xFF810B04)
NHSTUB(Unmount_FileSystem, 0xFF810B04)


//! Dubious stubs
//! Dubious stubs package E
NSTUB(ExitTask, 0xff81b184) // Best match: 57%
NSTUB(FreeUncacheableMemory, 0xff828840) // Best match: 91%
NSTUB(GetCurrentAvValue, 0xff93b378) // Best match: 88%
NSTUB(GetDrive_FreeClusters, 0xff859f90) // Best match: 62%
NSTUB(GetFocusLensSubjectDistance, 0xff939848) // Best match: 64%
NSTUB(GetFocusLensSubjectDistanceFromLens, 0xff939c30) // Best match: 83%

//! Dubious stubs package F
NSTUB(GetOpticalTemperature, 0xff84dd00) // Best match: 96%
NSTUB(GetParameterData, 0xff971c10) // Best match: 66%
NSTUB(GetPropertyCase, 0xff8777cc) // Best match: 72%
NSTUB(GetSystemTime, 0xffa688c0) // Best match: 96%
NSTUB(GetZoomLensCurrentPoint, 0xff93e7c8) // Best match: 74%
NSTUB(IsStrobeChargeCompleted, 0xff8b4794) // Best match: 58%

//! Dubious stubs package G
NSTUB(LockMainPower, 0xff87ef28) // Best match: 93%
NSTUB(MakeDirectory_Fut, 0xff8239a8) // Best match: 92%
NSTUB(MoveFocusLensToDistance, 0xffad17b4) // Best match: 69%
NSTUB(MoveZoomLensWithPoint, 0xffa659a4) // Best match: 58%
NSTUB(NewTaskShell, 0xff877274) // Best match: 62%
NSTUB(PT_PlaySound, 0xff863c98) // Best match: 81%

//! Dubious stubs package H
NSTUB(PostLogicalEventForNotPowerType, 0xff87ccec) // Best match: 86%
NSTUB(PostLogicalEventToUI, 0xff87cd38) // Best match: 92%
NSTUB(RenameFile_Fut, 0xff8238e0) // Best match: 93%
NSTUB(SetAutoShutdownTime, 0xff87ef9c) // Best match: 93%
NSTUB(SetCurrentCaptureModeType, 0xff885d94) // Best match: 81%
NSTUB(SetLogicalEventActive, 0xff87ec78) // Best match: 64%

//! Dubious stubs package I
NSTUB(SetParameterData, 0xff971aec) // Best match: 68%
NSTUB(SetPropertyCase, 0xff8776c4) // Best match: 72%
NSTUB(SleepTask, 0xff828484) // Best match: 92%
NSTUB(TakeSemaphore, 0xff82814c) // Best match: 60%
NSTUB(TurnOnBackLight, 0xff88c564) // Best match: 54%
NSTUB(UIFS_WriteFirmInfoToFile, 0xff95fddc) // Best match: 72%

//! Dubious stubs package J
NSTUB(UnlockMainPower, 0xff87ee7c) // Best match: 93%
NSTUB(UpdateMBROnFlash, 0xff859dd0) // Best match: 92%
NSTUB(VbattGet, 0xff820574) // Best match: 85%
NSTUB(kbd_p1_f, 0xff821d24) // Best match: 86%
NSTUB(kbd_p1_f_cont, 0xff821d30) // Best match: 86%
NSTUB(kbd_p2_f, 0xff82153c) // Best match: 89%

//! Dubious stubs package K
NSTUB(kbd_read_keys, 0xff821c28) // Best match: 76%
NSTUB(qsort, 0xff9db6b0) // Best match: 95%
NSTUB(rand, 0xff81ccb8) // Best match: 95%
NSTUB(srand, 0xff81ccac) // Best match: 95%
NSTUB(strncmp, 0xff899194) // Best match: 85%
NSTUB(strrchr, 0xff8991dc) // Best match: 80%

//! Dubious stubs package L
NSTUB(time, 0xff871860) // Best match: 83%
NSTUB(GetDrive_TotalClusters, 0xff859f90) // Best match: 55%
// ALT: NSTUB(GetDrive_TotalClusters, 0xff859fc4) // 15/12
// ALT: NSTUB(GetDrive_TotalClusters, 0xff859ff8) // 15/12
NSTUB(kbd_read_keys_r2, 0xff84a9b8) // Best match: 78%
// ALT: NSTUB(kbd_read_keys_r2, 0xff84a99c) // 17/5
NSTUB(GetDrive_ClusterSize, 0xff859f90) // Best match: 55%
// ALT: NSTUB(GetDrive_ClusterSize, 0xff859fc4) // 15/12
// ALT: NSTUB(GetDrive_ClusterSize, 0xff859ff8) // 15/12
// ALT: NSTUB(GetDrive_ClusterSize, 0xff859f90) // 14/12
// ALT: NSTUB(GetDrive_ClusterSize, 0xff85a02c) // 14/12

Now the list of the packages and the users working on them:
PackageUser Name
Unknown stubs package A
---
Unknown stubs package B
---
Unknown stubs package C
---
Unknown stubs package D
---
Dubious stubs package E
---
Dubious stubs package F
---
Dubious stubs package G
---
Dubious stubs package H
---
Dubious stubs package I
---
Dubious stubs package J
---
Dubious stubs package K
---
Dubious stubs package L
---
« Last Edit: 22 / March / 2010, 23:12:16 by Shinigami »

Offline brycehebert

  • Newbie
  • *
  • Posts: 1
Re: G10 Porting Process
« Reply #68 on: 26 / March / 2010, 00:08:07 »
Just wanted to say that I'm really excited that someone has committed to porting the G10. Shinigami, I'm useless when it comes to programming, etc., but If there's anything I can do to help, I'll try.

CHDK Forum

Re: G10 Porting Process
« Reply #68 on: 26 / March / 2010, 00:08:07 »

Offline Boobo-oobo

  • Newbie
  • *
  • Posts: 2
Re: G10 Porting Process
« Reply #69 on: 04 / April / 2010, 04:15:07 »
Hello, another G10 user that needs this "mod" should I say. Shinigami, how close are you to finishing this? I found about this today, and I'm very interested in this. Please contact me, I'm willing to help in any way i can.

Offline Shinigami

  • Rookie
  • *
  • Posts: 12
Re: G10 Porting Process
« Reply #70 on: 06 / April / 2010, 21:08:53 »
Ok, people, here we go. Sorry for the delay, I had some personal problems. Anyway, the SVN server is ready, you may anonymously access it at svn://shinigami.sytes.net/svn/repos/chdk_g10_103b . It's the complete CHDK source revision 885 with the G10 support added. If you want to help the develop process, please send me a private message. Make sure you know how to work with SVN (http://svnbook.red-bean.com) and that you've read all the CHDK developing and porting docs and followed all instructions before messaging me.

Oh, and take it easy on the server, it's only an old notebook using my home's bandwidth, don't expect much out of it.

About the progress, still locked trying to boot. I still have some things to do before I can go back to development.

Offline Shinigami

  • Rookie
  • *
  • Posts: 12
Re: G10 Porting Process
« Reply #71 on: 07 / April / 2010, 05:53:05 »
Now the G10 has it's own trac ! Here you can see it. No login or registration yet, so no tickets. I'll do that latter.

Offline lightfusegetaway

  • Rookie
  • *
  • Posts: 7
Re: G10 Porting Process
« Reply #72 on: 16 / April / 2010, 06:15:55 »
Thank you for your work! I think some of us G10 owners were starting to feel neglected.

I don't have any programming experience but will beta test the heck out of it.

Offline testicon

  • Newbie
  • *
  • Posts: 3
Re: G10 Porting Process
« Reply #73 on: 24 / April / 2010, 02:31:15 »
Hi everyone. I would love to help out with G10 development as much as I can. Heres what I can offer:
obviously i own a g10 and love it to pieces.
I currently have a linux server that while not amazing, is hooked up to a 20mbit fiber optic connection, and honestly, ive been trying to find something worthwile to do with it besides having a super easy/fast way to access my files from work.
I am currently studying computer engineering, so this should be right up my alley.

Offline penguinischicken

  • Newbie
  • *
  • Posts: 1
Re: G10 Porting Process
« Reply #74 on: 24 / April / 2010, 18:42:10 »
Thank you for your work! I think some of us G10 owners were starting to feel neglected.

I don't have any programming experience but will beta test the heck out of it.

I can't code either but will participate in testing.

 


SimplePortal 2.3.3 © 2008-2010, SimplePortal