Adding Multipartition Support for Ixus70 (SD-1000) - page 2 - CHDK Releases - CHDK Forum

Adding Multipartition Support for Ixus70 (SD-1000)

  • 43 Replies
  • 23380 Views
*

Offline quietschi

  • ***
  • 116
  • Ixus70 102a
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #10 on: 12 / December / 2008, 06:17:55 »
Advertisements
Hi

here diff file against r631

cheers quietschi

*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #11 on: 12 / December / 2008, 06:28:02 »
checked in in #632

*

Offline whim

  • ******
  • 2046
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #12 on: 12 / December / 2008, 08:01:52 »
OK, i was just gonna post my experience with quietschi's beta on my i70-100B when i saw trunk 632 pop up  :D

i will of course test 632, but here for the moment my experience with the beta:

following quietschi's steps, everything went OK up to step 7.
when checking the card, explorer saw it as not formatted, and this was confirmed by inspection with sdminste.exe:
parttition creation had worked, but both partitions needed to be formatted, which i did (still in sdminste.exe)

i then formatted the 2M partition with CT, made it bootable and loaded it with a self compiled vanilla 628, and overwrote the BIN and FIR with with the beta versions; after setting the write protect the cam booted OK, but:

- the file browser shows the FAT32 partition (that's logical, i guess)
- in visual settings i can't change font, etc. because all operations that require browsing for a file are also
   pointed to the the FAT32 partition (which is not very practical, and not how it's supposed to be, i guess)

well, that's my findings so far ... hope i didn't miss anything, but i assumed from quietschi's points plan that
the cam, when told to 'create card with 2 partitions' would also format them - which the 100B beta does not do.

OK, off to test 632 now,

wim
 

*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #13 on: 12 / December / 2008, 08:30:11 »
well, everything is pointed to the fat32 partition, so the cfg etc is also written onto that.


*

Offline quietschi

  • ***
  • 116
  • Ixus70 102a
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #14 on: 12 / December / 2008, 08:44:31 »
hi

the fat16 partition should only contain the diskboot.bin
all other files and folders include the *.fir for the firm update function should be in the fat32 partition

as i said before i dont know why we had to format the partitions (in my cam the fat32 partition is ok - it also contains all dirs and files)
but the fat16 partition is corrupt and the diskboot.bin needs to be replaced.

maybe ewavr can explain why

cheers quietschi

*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #15 on: 12 / December / 2008, 08:45:46 »
my s3is wouldnt start from a 2mb partition, so i made it 16 MB. if i remember correctly.

*

Offline quietschi

  • ***
  • 116
  • Ixus70 102a
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #16 on: 12 / December / 2008, 09:01:40 »
@whim i dont know whats sdminste.exe?

the 2mb partition is created by platform/generic/wrappers.c

void create_partitions(void){
 unsigned long start, length;
 char type;

 _memset(mbr_buf,0,SECTOR_SIZE);
 
 start=1; length=2*1024*1024/SECTOR_SIZE; //2 Mb
 type=1; // FAT primary
 mbr_buf[0x1BE + 4]=type;
 mbr_buf[0x1BE + 8]=start;   mbr_buf[0x1BE + 9]=start>>8;   mbr_buf[0x1BE + 10]=start>>16;  mbr_buf[0x1BE + 11]=start>>24;
 mbr_buf[0x1BE + 12]=length; mbr_buf[0x1BE + 13]=length>>8; mbr_buf[0x1BE + 14]=length>>16; mbr_buf[0x1BE + 15]=length>>24;

 start=start+length; length=drive_sectors-start-1;
 type=0x0B;  //FAT32 primary;
 mbr_buf[0x1CE + 4]=type;
 mbr_buf[0x1CE + 8]=start;   mbr_buf[0x1CE + 9]=start>>8;   mbr_buf[0x1CE + 10]=start>>16;  mbr_buf[0x1CE + 11]=start>>24;
 mbr_buf[0x1CE + 12]=length; mbr_buf[0x1CE + 13]=length>>8; mbr_buf[0x1CE + 14]=length>>16; mbr_buf[0x1CE + 15]=length>>24;

 mbr_buf[0x1FE]=0x55; mbr_buf[0x1FF]=0xAA; // signature;

 _WriteSDCard(0,0,1,mbr_buf);
}

maybe somethings wrong in this function

*

Offline whim

  • ******
  • 2046
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #17 on: 12 / December / 2008, 09:10:36 »
I retried with both in cam method & SDM inst : no luck.

The cam copies the CHDK folder + subdir, but seems to forget anything below it.
Meaning, i can access the FONTS folder, but there's nothing in it ...
Likewise for all other folders under CHDK; no CCHDK.CFG is saved either ...

My main Q is, though, if 'Create Card with 2 partitions' should format the parttitions as well
sorry for the noob Q, but hey -- i've only had an 8 G card for 2 weeks (and it will prob take me a year to fill one  :D)

wim

edit: just saw quietschi's last post - that solved it ! everything but the above Q about the formatting, was that step
missing from your Gebrauchsanleitung or ?

edit2: i stand corrected - quietschi's 1 before last post  :lol
         the code doesn't seem to be firmware version dependant, so it's probably just my large-card-noobness
         thanks guys (i'll probably never become a real fan of large cards though ...  :D )
         And, @phox, great idea, i agree 2M is too small, why not 16, or maybe even configurable ?
         edit3: complete BS, since it will only contain diskboot.bin ...  ::)
         @quietschi: SDMINSTE.exe is the multi part format tool delivered with Microfunguy's SDM branch.
                           just DL any SDM build and you'll find it in the archive... it works but is pretty basic.
 
« Last Edit: 12 / December / 2008, 09:25:15 by whim »


*

Offline quietschi

  • ***
  • 116
  • Ixus70 102a
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #18 on: 12 / December / 2008, 09:48:46 »
new Gebrauchsanweisung User Guide

1. format card in camera (you get a 1 partition fat16 card)
2. shutdown camera put only *.fir file on the card
3. start camera in play mode select firm update
4. in debug create card with 2 partition (you get 1. partition fat16 2mb, 2. partition fat32 rest of the card)
5. in misc swap partiton
6. shutdown camera put your custom chdk folder and the *.fir on the card
7. start camera in play mode select firm update
8. in misc swap partiton
9. shutdown camera put diskboot.bin on the card
10. lock sd card and start camera

no need to reformat - this workd for me


see next post
« Last Edit: 12 / December / 2008, 10:32:02 by quietschi »

*

Offline ewavr

  • ****
  • 1057
  • A710IS
Re: Adding Multipartition Support for Ixus70 (SD-1000)
« Reply #19 on: 12 / December / 2008, 09:50:31 »
After "create card with two partitions" you must format both partitions in computer (as FAT/FAT32. 2MB is not fat16, but fat12) - my very old instructions.

edit: step #0:  Make low lever format card in camera to remove old partitons, filesystems, files.
« Last Edit: 12 / December / 2008, 09:54:52 by ewavr »

 

Related Topics