Related
Now that I figured out the BigStorage, I wanted to build a rom with Bigger Storage and a Smaller Ext_ROM.
I need about 12.5 Megs for my Ext_rom, so I decided to make it D00000h (=13 MB)
This leaves E00000h for the Storage-folder, thus I changed 80 00 into E0 00 at locations 7E32h & 211E32Eh
Next I had to make my own 13MB Ext-rom.
For this I copied the location 2BC019Ch till 3EC019Ch (the location of the 19 MB ext-rom) from the dump of my original rom into a file.
Next I cut off 6MB from that file, so the size of the resulting file was exactly D00000h.
After that I changed the "Sectors on Drive" in the bootsector of that file.
Sectors on Drive = total size of drive / Bytes per sector, i.e. D00000h/200h = 6800h, so I had to change it from 9800h to 6800h
"Sectors on Drive" is located at 14h in that file. At that location change 00 98 into 00 68. (the values are least significant byte first)
To wipe it clean, I filled the location 210h till D00000h with zero's
Finally I mounted the file as a virtual harddisk, using totalcommander, and copied the Ext-rom files to it.
After unmounting, the file is ready to be copied into the rom.
The Storage-folder starts at 23C019Ch. 23C019Ch + E00000h = 31C019Ch so I copied the file into the rom, so that it occupied location 31C019C till 3EC019C
After flashing this custom-rom back into my phone, the Storage folder had increased to 14 MB (like expected), but the Ext_Rom was nowhere to be found.
After changing the following registry-keys and running LoadVdisk.exe, my 13 MB Ext_Rom appeared (and I could execute autorun.exe)
HKLM\Drivers\Vdisk\size had to be changed from 1300000h to D00000h (thus E00000h smaller)
HKLM\Drivers\Vdisk\windowbase had to be changed from A2C00000h to A3200000h (thus E00000h bigger)
So the "only" thing I still need to figure out to make this thing work, is at what location in the ROM those 2 registry-keys are stored.
Suggestions anyone?
Hello DrChair
Nice that you have found the way to make it Is it possible to do the same with external rom on sd card? I mean to change rom registry to execute autorun and all stuff from sd card after hard reset, I really like 27MB storage and don't want to make it smaller What do you think about it?
Hi Doc,
really interesting stuff!!!
That's something similar to what i'm doing now on XDA2...
I'd like to join ExtROM+Storage into single partition.
Could you please tell me, how do you mount with TotalCommander?
I mean do you use any plugins?
What exactly do you mount?
buzz
shamus said:
Nice that you have found the way to make it Is it possible to do the same with external rom on sd card? I mean to
change rom registry to execute autorun and all stuff from sd card after hard reset, I really like 27MB storage and
don't want to make it smaller What do you think about it?
Click to expand...
Click to collapse
The changes in the registry are not done to execute autorun, but are done to be able to access the smaller ext-rom.
What u could do to have bigstorage + (semi)-autorun, is the following:
Place the extended_rom folder on your SD-card.
Edit config.txt and replace all occurances of "\Extended_ROM" with "\Storage Card\Extended_ROM"
Make sure that the contents of that folder are read-only (otherwise the cabs are deleted after installing).
Now, if you ever need to hard-reset your device, all you need to do afterwards, is browse to that extended_rom folder, and tap on autorun.
buzz_lightyear
Mounting ExtROM in TotalCommander is simple you just need to cut out ExtROM from device ROM and after that using this plugin http://ghisler.fileburst.com/plugins/azeimg.zip you can open files with *.img extension
DrChair
I did exactly what you are telling few days ago but autorun didn't want to execute and I don't know why... is the name of folder "Extended_ROM" important?
buzz_lightyear said:
Hi Doc,
really interesting stuff!!!
That's something similar to what i'm doing now on XDA2...
I'd like to join ExtROM+Storage into single partition.
Could you please tell me, how do you mount with TotalCommander?
I mean do you use any plugins?
What exactly do you mount?
buzz
Click to expand...
Click to collapse
I might be wrong, cause I don't know anything about the XDA2, but if you just want to join ExtROM+storage into on big storage folder, you don't need to mount anything.
The way it's done in the magician is by patching the rom at 2 locations (check my posting about Bigstorage explained). I think those locations are in (or related to) PSMFSD.dll, which seems to be the driver for the storage folder.
Another tip: according to the wiki, the storage folder in a XDA2 is 14.5 MB, which is 00E80000h. So you could try a search for 00 00 e8 00 and try to change it into 00 00 20 00 (00200000h = 32 MB).
The mounting is only needed for the ExtROM, which has the format of a FAT16 partition. That partition can be copied into a file, and that file can be mounted using totalcommander's VirtualDisk-plugin.
shamus said:
buzz_lightyear
Mounting ExtROM in TotalCommander is simple you just need to cut out ExtROM from device ROM and after that using this plugin http://ghisler.fileburst.com/plugins/azeimg.zip you can open files with *.img extension
Click to expand...
Click to collapse
Oh, thanx... )
how do you obtain the ROM dump?
Standard SD way?
THANX
buzz
shamus said:
I did exactly what you are telling few days ago but autorun didn't want to execute and I don't know why... is the name of folder "Extended_ROM" importand?
Click to expand...
Click to collapse
just tried it myself and indeed it doesn't work...
I'll look in to it tonight..
buzz, yes standard old fashion sd card method
shamus said:
I did exactly what you are telling few days ago but autorun didn't want to execute and I don't know why... is the name of folder "Extended_ROM" important?
Click to expand...
Click to collapse
Just had a look at autorun.exe. Unfortunatly it has \Extended_ROM\Config.txt hardcoded. I tried changing it, but then it doen't work anymore.
So the only way this autorun can be used, is when you have Extended_ROM folder.
Hi!
Is it possible to run the autorun.exe, if the storage card´s name is Ext_Rom?
this is possible with Pocket Mechanic.
What do you think?
Pam
i read this post and very interest too i knows he need to put cab install into EXT rom but few Cab only
can u make your Rom and sent to me i need to Try useing your Rom
NTRW Error "Could not lock xxxx.nb1 -- access denied&qu
Hi,
Wanted to save original Qtek s100 ROM 1.11 before upgrading to 1.12
followed steps: Romupdate OK, D2S OK but
when after inserting my SD into the integrated card reader and running
NTRW, I get the error "could not lock...."
I tried a different a different (non NTFS drive),
I tried a smaller (256Mo instead of 1Go) SD.
I am logged in as admin, disabled antivirus
Any Ideas ?
Thanks
Pamela said:
Hi!
Is it possible to run the autorun.exe, if the storage card´s name is Ext_Rom?
this is possible with Pocket Mechanic.
What do you think?
Pam
Click to expand...
Click to collapse
doesn't matter what's the name of storage card.
Once you have a folder named 2577 in the root of it, you can place autorun.exe into that folder. It will be executed on insert....
buzz
Can you tell me how to mount the Ext_ROM from my O2 mini ?
Jackie
[email protected]
DrChair said:
buzz_lightyear said:
Hi Doc,
really interesting stuff!!!
That's something similar to what i'm doing now on XDA2...
I'd like to join ExtROM+Storage into single partition.
Could you please tell me, how do you mount with TotalCommander?
I mean do you use any plugins?
What exactly do you mount?
buzz
Click to expand...
Click to collapse
I might be wrong, cause I don't know anything about the XDA2, but if you just want to join ExtROM+storage into on big storage folder, you don't need to mount anything.
The way it's done in the magician is by patching the rom at 2 locations (check my posting about Bigstorage explained). I think those locations are in (or related to) PSMFSD.dll, which seems to be the driver for the storage folder.
Another tip: according to the wiki, the storage folder in a XDA2 is 14.5 MB, which is 00E80000h. So you could try a search for 00 00 e8 00 and try to change it into 00 00 20 00 (00200000h = 32 MB).
The mounting is only needed for the ExtROM, which has the format of a FAT16 partition. That partition can be copied into a file, and that file can be mounted using totalcommander's VirtualDisk-plugin.
Click to expand...
Click to collapse
shamus wrote:
I did exactly what you are telling few days ago but autorun didn't want to execute and I don't know why... is the name of folder "Extended_ROM" important?
Just had a look at autorun.exe. Unfortunatly it has \Extended_ROM\Config.txt hardcoded. I tried changing it, but then it doen't work anymore.
So the only way this autorun can be used, is when you have Extended_ROM folder.
Click to expand...
Click to collapse
A small Howto how I fixed this problem you can find here:
http://forum.xda-developers.com/viewtopic.php?p=138064#138064
Hope its needfull...
Enjoy the day
Greetings everybody,
I am new here and I have been following all your posts with great interests, especially on the Big Storage. I have an Xda 2 Mini and I have successfully apply Big Storage using the method suggested by Dr Chain. Thank you very much.
I have one question. Is it possible to merge the Main Memory with the Storage memory to create ONE BIGger STORAGE (57MB usable + 26 Big Storage = 83MB) ? If that's possible then can you point me in the right direction on how to achieve this ?
Thanks a million.
dewnay said:
I have one question. Is it possible to merge the Main Memory with the Storage memory to create ONE BIGger STORAGE (57MB usable + 26 Big Storage = 83MB) ? If that's possible then can you point me in the right direction on how to achieve this ?
Click to expand...
Click to collapse
No!! Storage is on ROM and Main Mémory is on RAM... And ROM & RAM chips are physically separated.
MKS said:
dewnay said:
I have one question. Is it possible to merge the Main Memory with the Storage memory to create ONE BIGger STORAGE (57MB usable + 26 Big Storage = 83MB) ? If that's possible then can you point me in the right direction on how to achieve this ?
Click to expand...
Click to collapse
No!! Storage is on ROM and Main Mémory is on RAM... And ROM & RAM chips are physically separated.
Click to expand...
Click to collapse
Thanks for the fast reply. As I am not technically knowledgable, sorry for asking such a dumb question. Anyway, you guys here are the greatest. Since following all your posts, I have been learning something new everyday. Keep up all the good work.
I have an XDA Mini S with no additional space (didn't buy a mini-sd card for it). In System->Memory->Storage it says I have 47.46 MB total. Is that OK for flashing WM6 on it. Btw, it should have 64MB, I'm not sure why it says 47.46 MB (probably because it doesn't add the space occupied by the ROM?).
Thanky you
You don't need additional space, as the ROM is flashed to your Flash ROM directly.
The missing space is due to Extension ROM (10MB), some files and database copied during first cold start, and the applications installed from Extension ROM on first cold start.
and you´ll loose everything stored on your wizard during flashing process! so backup your contacts ...
Is there a way, say at the time of flashing the ROM (I flashed back to a stock i9000) or from Recovery console, that the /system mount can be be repartitioned with more space?
Reason being that I need to move a new font in to replace the Fallback font that google includes since all the Chinese characters in it are simplified (annoying if you read mostly Japanese). Problem is my font is like 9mb and theres only 5mb free on system.
Thanks
i was gonna ask about this one, it would be awesome if some space from SD card can be partitioned to the internal memory.
Ok, so I found a way around reparitioning although I think I real need to repartition now or I might run into trougble.
I rolled an update.zip containing the font I wanted to swap in and simply replaced the old one. It took, but now my /system has 0.0mb free. So now I'm thinking I may have to roll my own system.img and reflash my droid with the new font already included in; assuming it is Odin3 that predetermines the partition size and sizes accordingly. This is ROM development question I know, but Where/How are the partition sizes for /system and /data determined? Is there a config file in each flash IMG that states the size it should be or is it like I already mentioned, does Odin3 determine it?
Thanks
I'm a noob. I have 1 phone that can't go down. I have searched XDA, Google, Bing, and YouTube but can't find an answer.
What happens to all the files, folders, and data on a phone when you flash it?
I know there are files on the phone that ID it to the provider. I think it's in the EFS folder, but in all the guides I've read and YouTubes I've watch, not one of them mentions copying anything first nor does it say anything about putting a file back.
Some of the guides I've read make it sound like you wipe everything down to basic hardware before flashing a ROM and kernel back onto the phone.
Does anybody know of a really, really basic guide to what happens?
Most of the time I learn by trial and error. I take it apart and see how it works. I have 4 laptops in varies stages of repair to prove it. But like I said, I only have one phone and I can't spend another $300 just to have another phone to tear down.
On another note...is there a way to set up a sig on this forum?
Firstly, know your hardware as most phones now are using NAND chips for (as it would be) your HDD (Hard Disc Drive) writing files/data/folders/etc is not done the same as a standard HDD.
The NAND chip when being written to copies out (in a size dictated by the chip manufacturer) the Original data, erases the data once copied then writes in your data, verifies it's written correctly, erases the Copied data, moves onto next block/page/sector/etc of data and repeats the process.
If verification fails, the original block/etc of data is written back from the copied location.
Bashing away at my HTC Desire C
---------- Post added at 11:33 PM ---------- Previous post was at 11:26 PM ----------
I don't think there is a 'basic' guide that could cover all the intricacies of how different manufacturers work around the hardware and software also allowing for the proprietary software Dev's are trying to figure out how it works just to make (sometimes) the simplest things work.
Bashing away at my HTC Desire C
RackMonkey said:
What happens to all the files, folders, and data on a phone when you flash it?
Click to expand...
Click to collapse
If you wanna see what would happen when you flash CM11 you can read our upgrader.sh script that tells the phone the steps needed to back up or wipe certain partitions.
https://github.com/teamacid/android_device_samsung_galaxys4gmtd/blob/cm-11.0/updater.sh
If you're flashing from Gingerbread (BML), your EFS partition gets backed up to the SD card, the kernel/bootimage gets overwritten, then the phone reboots.
After it reboots it will copy the modem file into the /radio partition, then the system partition gets wiped, then it will flash the bootimage again with using a new method.
After this the cache and data partitions get wiped, and your EFS backup that was restored to the sd card gets put on the newly created /efs partition.
After all this is done, the script ends and the recovery will continue instlaling the CM11 files to the /system partition
Any other data doesn't get wiped/erased, only what I mentioned.
Thanks FB. That's the first explanation that I could really understand.
I'm asking friends if they have an old phone I can destroy. Then the fun really begins.
FBis251 said:
If you wanna see what would happen when you flash CM11 you can read our upgrader.sh script that tells the phone the steps needed to back up or wipe certain partitions.
https://github.com/teamacid/android_device_samsung_galaxys4gmtd/blob/cm-11.0/updater.sh
If you're flashing from Gingerbread (BML), your EFS partition gets backed up to the SD card, the kernel/bootimage gets overwritten, then the phone reboots....
Click to expand...
Click to collapse
Thanks for posting that file, it was interesting to see. I would also like to know, how the 1 GB ROM of the phone is partitioned.
llinkll said:
Thanks for posting that file, it was interesting to see. I would also like to know, how the 1 GB ROM of the phone is partitioned.
Click to expand...
Click to collapse
Here's the file that defines the partition layout for CM11:
https://github.com/teamacid/niltmt_kernel/blob/cm-11.0/drivers/mtd/onenand/samsung_galaxys4g.h
It starts at around line 31, as an example:
Code:
.name = "boot",
.offset = (72*SZ_256K),
.size = (40*SZ_256K), //101
The offset will tell you how many bytes into the flash chip the particular partition is, this one is at 72 * 256kB blocks which is at 18432kB.
The size of it is 40 256kB blocks. 40 * 256kB = 10,240kB. So the boot partition is starts around 18mB after the first block, and is a size of 10mB.
Once you scroll to the bottom we find the reservoir partition, you can read the description in the comment on that file (line 67).
It ends at (4012 + 84) * 256kB = 1,048,576 kB
FBis251 said:
Here's the file that defines the partition layout for CM11:
https://github.com/teamacid/niltmt_kernel/blob/cm-11.0/drivers/mtd/onenand/samsung_galaxys4g.h
It starts at around line 31, ....
Click to expand...
Click to collapse
Thanks a lot for the help, it's really appreciated.
Hello guys, for the previous year I would say, I have read about repartitioning MTK phones, starting with my old Cubot MTK6572 (Rest In Peace) to my current Doogee MTK6582.
I have tried countless times to repartition using the EBRTweak utility, or changing the EBR1 & EBR2 files myself but it never, ever works.. I always manage to get in the first initial boot and have a false victory where I see that I have re partitioned successfully, but after I reboot after, I always get a boot loop after that initial boot.
For editing the EBR files, I have tried:
-Using EBRTweak
-Editing myself by changing the values from scratch by making calculations with sectors, bytes and addresses
-Editing myself by
First adding a value in the /data partition length, adding that value
Second adding that same value to the start address of the FAT partition
Third removing that same value to the length of the FAT partition
For flashing the EBR files, I have tried:
-Flashing all the patitions with SP flash tools with the new EBR files (without changing the Scatter file)
-Flashing all the patitions with SP flash tools with the new EBR files (changing the Scatter file)
-Flashing only the EBR partitionsa on a working ROM
-Flashing the EBR files using an updater-script via a custom recovery
With each of these methods, all my calculations were exact when I verified everything (to the byte), including using "disktype" command in Linux.
So after one year of failure, I finally decided to post on XDA to ask for help... please, please, does anyone know why the first boot works but the second boot always ends up in a boot loop? :silly:
I emailed Doogee engineers and they told me that u cant re-partition it
NaturalBornCamper said:
Hello guys, for the previous year I would say, I have read about repartitioning MTK phones, starting with my old Cubot MTK6572 (Rest In Peace) to my current Doogee MTK6582.
I have tried countless times to repartition using the EBRTweak utility, or changing the EBR1 & EBR2 files myself but it never, ever works.. I always manage to get in the first initial boot and have a false victory where I see that I have re partitioned successfully, but after I reboot after, I always get a boot loop after that initial boot.
For editing the EBR files, I have tried:
-Using EBRTweak
-Editing myself by changing the values from scratch by making calculations with sectors, bytes and addresses
-Editing myself by
First adding a value in the /data partition length, adding that value
Second adding that same value to the start address of the FAT partition
Third removing that same value to the length of the FAT partition
For flashing the EBR files, I have tried:
-Flashing all the patitions with SP flash tools with the new EBR files (without changing the Scatter file)
-Flashing all the patitions with SP flash tools with the new EBR files (changing the Scatter file)
-Flashing only the EBR partitionsa on a working ROM
-Flashing the EBR files using an updater-script via a custom recovery
With each of these methods, all my calculations were exact when I verified everything (to the byte), including using "disktype" command in Linux.
So after one year of failure, I finally decided to post on XDA to ask for help... please, please, does anyone know why the first boot works but the second boot always ends up in a boot loop? :silly:
Click to expand...
Click to collapse
I dont know whats the purpose of the repartition...
bestmedever said:
I dont know whats the purpose of the repartition...
Click to expand...
Click to collapse
Some phones (Notably the Mediatek "MTK" phones) are known to have a very small internal storage for your applications.
This is because the storage usually attributed to applications 6GB on the MTK6582 is split in two parts:
1- 1.3gb for applications
2- 4.7gb for an internal sd-card to put music and movies
But nobody uses internal sd-card much, because we all have external sd cards of 32gb or more. This means that you have a 4.7GB that is completely unused and an internal storage for applications of 1.3gb that gets full as soon as you install a few applications like Facebook, Youtube (that use a LOT of space nowadays), or update your system apps.
All this is completely ridiculous so a few people and I are trying to make repartition and have more space for application, while getting rid of that useless "internal sd-card"
exactly
NaturalBornCamper said:
Some phones (Notably the Mediatek "MTK" phones) are known to have a very small internal storage for your applications.
This is because the storage usually attributed to applications 6GB on the MTK6582 is split in two parts:
1- 1.3gb for applications
2- 4.7gb for an internal sd-card to put music and movies
But nobody uses internal sd-card much, because we all have external sd cards of 32gb or more. This means that you have a 4.7GB that is completely unused and an internal storage for applications of 1.3gb that gets full as soon as you install a few applications like Facebook, Youtube (that use a LOT of space nowadays), or update your system apps.
All this is completely ridiculous so a few people and I are trying to make repartition and have more space for application, while getting rid of that useless "internal sd-card"
Click to expand...
Click to collapse
yeah that's what I'm saying, I talked with MTK engineers but they just replay with "if you re-partition your phone, it will brick" over and over, I told them to just give me a solution, like changing EBR files or something, and I know how to unbrick MTK phones, but they didn't care at all, the problem is: why they just put all the storage as an internal storage instead of phone storage and internal storage, it's pathetic to put phone storage and SD card storage at same time...
WOW! You actually managed to talk to them? That is awesome, we could have a lead here, don't let that go, friend!
I'm happy that you agree with me however and all the thousands of people with the same problem. Maybe if you tell them that you don't care about bricking your phone and the warranty, that you just like to play around and you have a backup phone anyways (to convince them to answer).
You could tell them that the repartitioning works on the first initial boot, but ends up in a boot loop after you reboot a second time. If they don't want to tell us how to fix it, they could at least tell us why this is happening so we could research on the subject.
Thanks for your help, I'll hit "thanks" on your post!