[Guide] [Root] Change your boot ***SPLASH*** screen (Sbkv2) - Eee Pad Transformer General

Since going on a little adventure with this, and successfully changing my boot Splash screen, (The ASUS + Nvidia logo before the standard boot animation) I decided to post a guide on how I accomplished this myself.
Thanks: This would not have been possible without the wonderful work of rayman86 for his blobtools, whirleyes for his splash patcher, and gee one for putting up with my total noob questions while I stumbled through this :3
The usual Disclaimer applies here, I'm not responsible for bricks, and if you're trying this with Sbkv2 (Like I did) and mess up, quite frankly you are FOUBAR SOL OCSA!! Be.. Careful. May the force be with you.
This guide was run on a Windows 7 (x64) machine, I was going to use linux, but I couldn't get Blobtools source to compile into something working (since I'm functionally retarted), the commands are pretty much exactly the same though, if you can get blobtools working.
Required files:
1. The latest ASUS update firmware from their site for your region: (I used US .24 firmware) link
2. Rayman84's (Give him thanks!) Blobtools (don't need boottools for just a splash screen change) [Attached] Original thread: link
3. A hex editor, I used xvi32 (you just need to be able to read and compare blobs) link
4. Three Images that you want to patch the splash screen with, the sizes need to be exactly 300x100 (asus logo) 300x90 (below) and 300x30 (Nvidia logo)
Note: Due to the nature of how the image is stored (In the freaking bootloader I might add -_-) these sizes need to be Correct, the bootsplash patcher should help you with this.
5. whirleye's (Give him thanks!) Boot Splash Patcher windows app. (Complete with shiny GUI) link
6. 3 pinches of ground unicorn horn, eye of newt, and hog's blood (extremely important ! ) Link
7. ???
8. Profit
*Make yourself a mental note of the disorganized location of these files as you scatter them throughout your documents/desktop/downloads folders.*
The Process:
1. Unzip the asus update, inside it is another zip, which you unzip. (Okay ASUS, you likes your zips) Inside there is a blob file, don't be alarmed, it will not attempt to absorb you into it's blobbiness, it stands for a Binary Large OBject file.
2. Put blobunpack into the same directory as the blob. (for easy cmd command)
3. MOD4+R (Windows key+R) to open run box, type 'cmd' This doesn't stand for central machine decimator.
4. Navigate to the directory with your blob, it was getting pretty lonely without you anyway. Ex: cd C:/users/username/downloads/blob
5. type blobunpack blob, your blob will now split itself into a multitude of blobs each with its own suffix. You now have to say Blob sr. and blob jr. when addressing them, it's only proper.
5a. You will (should) get:
blob.header (Oddly, I didn't actually get this, but we don't need it so don't worry about it.)
blob.app (huge file, the actual update system.img) [Don't Need]
blob.ebt (bootloader) [Need this blob]
blob.lnx (boot.img) [Don't Need]
blob.sos (recovery) [Avoid like the plague, unless you like losing cwm :3]
Note: The file extentions are 'false', they're just a way of separating the blob into manageable sections, they're all just blobs topped with a fancy-schmancy file extension.
6. Now that the blob has lost some extra poundage, it's time to patch it, Backup the blob.ebt and open the blob.ebt with whirleye's patcher!
7. Use your keyboard (This be old school) to load the images into the blob.ebt, shortcuts are at bottom and the tool is easy to use.
8. Save as patched_bl.bin, this should enable save as blob. (I had to do this for whatever reason, just don't question the gods)
At this point, you *Should* have a ready to patch bootloader with your new fancy image! If you like having a device that doesn't double as a very fancy paperweight, you'll keep going and check with a Hex editor.
9. Open your blob with the hex editor, the first line should be MSM-Radio-Update, followed by some 0s, then it should say EBT at the beginning. This marks which partitions are contained in the blob and will be flashed. Make sure none of the other (.SOS.LNX..etc) are in the blob, as then it would overwrite you. (shouldn't be there if you unpacked properly, and the filesize should be around 1.4KB)
9a. Search for whirleye's watermark, this shows the patcher worked, says "splash patcher by whirleyes"
9b. 9b is a terrorist and was deported by the TSA, move on to 9c. (bad hex joke)
9c. Open the backed up Asus blob.ebt you unblobbed, and compare the two files a tad, they should be nearly identical in length and code, except for the patched image section. If everything checks out you should be ready to flash your shiny new boot splash!
10. Now take your blob.ebt and De-knight it, stripping it of it's file extension. It is now just a 'blob' again.
11. Connect your tf and put it somewhere on your internal or external SD using adb or mass storage or whichever (I used /Removable/MicroSD/blob9000/blob)
12. --
gee one said:
to flash using the staging partition- you need either terminal or adb access.
the commands are:
su
dd if=/your/blob/here of=/dev/block/mmcblk0p4 # the last chars are zero pee four
reboot
Use adb or file manager or magic to save your blob somewhere on your transformer.
As it reboots, you should see a blue progress bar to indicate that it is flashing. It will reboot again and hopefully you will see your new splash screen.
Click to expand...
Click to collapse
13. ???
14. Profit!
Attached files:
Blobunpack.exe (zipped)
The Blob.ebt (zipped) finished product I made. For the US .24 update ONLY RAHHHHHH!!!!(Portal gun, aperture logo, mizore-kun. LD)
The blob.ebt.asus (zipped) original unblobbed .ebt part From the US .24 update (For all dem 'muricans)
Chuck Morris.png (A picture of a trollface, yes.) [Zipped]
Any questions? Let me know if this works out for you, worked wonderfully for me!
Link to my Q&A thread, may help with a little understanding, also has pic of my patched screen: link
If I helped, hit yo' self some thanks button. :3

Looks like you're fully explained how to do it and where to get the tools (which can often be harder than finding the how to info) but I've got to ask. Isn't that tons of work just to change something that shows for like a minute once a month whenever you reboot your tablet? I guess I don't understand why to do this but am trying to.
Sent from my PG41200 using Xparent Purple Tapatalk 2

Well, it's more of a, BAHAHAHAHAHAH I DID IT IN YO FACE! Sort of thing, and a neat challenge if you want to mod your tab a bit more. I did it more for the challenge of doing it than anything else. I also hated having everything EXCEPT splash completely customized. Just a proof of concept, and like a 30-40 min thing, not terrible. Let me know if you give it a shot

This is the complete open source evolution- ask some questions, do some research, flash something cool, and then write the guide. All you need now is the t-shirt. Congrats! We need more people willing to explore and ask questions.
sent while running with scissors

It's been a while since I made the discoveries.
Back then, I even made an android app to change the splash easily, but I never upload it to public.
Bump this thread if anyone interested.
I think I still have the source code buried deep inside my pc.

That'd be neat, the current method works but may be a tad confusing for some. I'll test out if you'd like

Has anyone done this successfully?

Flawless!
Works perfectly for me on:
TF101-A1 (16GB) B70
Android 4.0.4
Megatron ROM 1.1.6 (ricardopvz)
I don't think those last two matter, since this is a bootloader, but I thought I'd include it just in case.
I cannot express my thanks enough. If I had any skill, I'd create a CWM flashable template for this mod to make the flashing process a little easier.

I could do that, but that would encourage laziness, and noone would learn the Process behind it all. Which is the real whole point of this experiment :]

Related

[STICKY][ROM] nvflash FULL restore, using bekit's original image (Instructions)

MANY THANKS TO REV FOR RE-WRITING THIS FOR ME!
(Post was updated on 3/23/2011)
=======================================
This post is to provide a template for using NVFlash to restore/recover your G-Tablet after suffering some kind of malfunction. Specifically, this document tries to provide ALL the information you need to use the NVFlash tool to recover the bekit 1105 software version, which has been found to be safe as a starting point for rebuilding your tablet after having a problem. This post does not include other methods of setting up NVFlash (such as installing the SDK, etc.) because this method is proven and can be easily supported.
I use Ubuntu Linux and know that the Linux instructions below are correct. Others have written Windows instructions and those too have been checked carefully and have been used before successfully.
A WARNING IN ADVANCE: NVFlash makes changes to the partition structure of your device. You should tread carefully and understand the risks. (MOD EDIT Note: It also has been noted a bunch of times that even NVFlashing your G-Tablet will not completely overwrite everything on it.)
The NVFlash setup process begins with a visit to:
http://db.tt/Wm25t7U
(Note: Sometime this DropBox is cranky. If you have trouble with it, check back later.)
Linux users: You want to get "nvflash_linux_2010110500.tar.gz" and "nvflash_gtablet_2010110500.zip "
Windows users: You want to get "nvflash_windows_20100500.zip" and ""nvflash_gtablet_2010110500.zip"
Note: The above "nvflash_gtablet_2010110500" is commonly referred to as bekit version 1105 in many posts relating to nvflashing (especially my posts).
-------------------------------------------
Installation
First, create a folder named "NVFlash" on your PC to put the needed files into and to work from. (Note: You can call it something else if you want to; we're just using "NVFlash" to keep all of us on the same page.)
Next, extract the files you downloaded from the DropBox above into the "NVFlash" directory. The files with linux and windows in the middle of then are the files for setting up NVFlash. (The are taken from the SDK and do not install the whole SDK -- just a simple, operable NVFlash for us to use here.) The files with gTablet in the middle contains the .img files with the software to go on your G-Tablet.
Third, for Windows users, you'll need to have an APX-specific USB driver for the next steps. (The Windows package bekit supplied has an .inf file in it, but the actual drivers are not there). For Linux users, you don't need an extra driver.
One source for the Windows drivers is at
http://www.myadventvega.co.uk/
Find the "Downloads" tab in the middle of the page and click on "USB System Driver" to get the files. Extract them and go down two levels to the "USB" folder -- and move that into your "NVFlash" directory. The USB folder has the .inf file for installation in it along with two other directories with drivers for the various operating systems. (Note: These drivers, which are the same as the drivers in the SDK, are proven to work with Win 7 64-bit and have the setup include to load into other versions of Windows.) Follow this narrative for actual installation of the drivers.
CHECKPOINT: At this point, you should have the nvflash files, .img files, and USB directory (and files) in you "NVFlash" directory and are ready to begin the recovery process.
Now, you will need to boot into G-Tablet APX mode: hold down the power and volume - button simultaneousl until your G-Tab comes up and the goes back to a black screen. The black screen means it is in APX mode and it is waiting to display the flashing process. In Linux, type "lsusb" in a terminal and you should see this "0955:7820 NVidia Corp.". 7820 means the device is in APX mode.
Connect your G-Tablet to your PC using your miniUSB to USB cable that came with your tablet.
Linux users: At this point, open up a command window to the folder you created, and run this script:
./nvflash_gtablet.sh
This will wipe the device back to bekit's original TnT stock image, except for user data which is retained. Should take about a minute to run and the device will reboot itself automatically. If the script does not work, make sure that the shell script and nvflash binary are set as executables.
Windows users: When you connect to the PC, the PC immediately tries to load a driver -- but since it doesn't know where the USB driver files are it will fail. Click through Start/Control Panel/Device Manager and find "APX" listed in the devices with a yellow "!" (exclamation point) on the icon. Select the APX item and find the "Update Driver" button and click it. When it asks where to search, choose the local computer manual selection choice and tell it to Browse.
Point the Browse (and the USB install) at the "USB" directory under the "NVFlash" folder. When pointed at the "USB" directory, the driver installed and I was ready to nvflash. If you go back to Device Manager after the Windows install has completed, it will show the nVidia USB drivers near the top of the USB device list.
Again, for Windows: Run this script which is in the "NVFlash" folder:
nvflash_gtablet.bat
This will wipe the device back to bekit's original TnT stock image except for user data, which is retained. Should take about a minute to run and the device will reboot itself automatically all the way to the main screen.
POST NVFlash:
When your G-Tablet has booted back to the main screen, you will have to check and make sure everything is set up. Particularly, get the wifi on and connected to the Internet. Almost immediately, you should get a notice about an OTA (over the air) update. This is the OTA Update to software version 3588. If it does, go ahead and have it do the update. From there, you can begin using your "stock 3588" G-Tablet.
If you don't get an automatic OTA notification, you can go the to manual "Update" icon on your tablet and have it check for updates -- and hopefully it will find OTA 3588.
Or, if neither of the above happen, you can download 3588 at the following link and install it manually:
http://tapntap.http.internapcdn.net/tapntap/viewsonic/update-smb_a1002-3588-user.zip
Note: Following is a STICKY from General Forum on the stock recovery process:
http://forum.xda-developers.com/showthread.php?t=892090
NOTICE: There are many threads out there with tell how to do this process. Others tell individuals' problem solving experiences. A few of them may not be right! The above process is not the only way to do this -- but it is fairly straightforward and it is proven. It is recommended for anyone who does not have experience with nvflashing.
***************************************************
Further references (since I'm not a Windows user): http://forum.xda-developers.com/show...0&postcount=28
and http://forum.tegratab.com/viewtopic....bbde76184e550a and http://wiki.tegratab.com/index.php/Nvflash_FAQ
An additional suggestion if you also want to tack on bekit's clockworkmod recovery versus standard recovery: http://forum.xda-developers.com/show...3&postcount=17
Hope this helps!
03/2011 update -- I've been told that this tool has been useful to erase ALL partitions, including user data. I believe you need to re-flash with the bekit 1105 above, AFTER you use this: http://forum.xda-developers.com/showthread.php?t=974422
04/22/2011 update -- I've built out both 1.1-3588-based and 1.2-4349-based versions that have effectively replaced bekit's 1105 image ("nvflash_gtablet_2010110500.zip"), at least on my own device - I'm also addding a clockworkmod recovery option. It is being hosted in the same location as my 1.2-based mods - I will be making updates there, from this point on (as I might update them from time to time).
(you'd still need bekit's Windows or Linux tools, keep in mind) I've been able to bring back my device back from a soft-brick several times, so I feel they are usable.
05/09/2011 update -- A reminder that these images are not being updated, here. I have a newer nvflash post over in the same site where I have my 1.2-based mods. The 1105 bekit image mentioned here is still relevant for 1.1-based ROM users, or you can use my 3588 ot 4349 solution at the other site.
05/10/2011 update -- I have PM'd the moderator to either unsticky this post and / or assign it to someone else, as I do not plan on updating it, here. I believe that there is a 3588 image in the TegraTab IRC that someone created, for example.
Looks good Roebeet. I wrote a little how to a while back on tegratab. I know you are aware but for the benefit of others I wanted to add the following.
One little thing is sometimes when you are done you will get a boot loop. I think it only may happen once as I never saw it again. The fix is to go into Clockwork and partition the internal sd card again. The old settings said 512 for memory, and 256 swap. Bekit updated Clockwork and now you can format all the way to 4gb if you like, and swap should be 0 as it is not used.
Edit: New wisdom says not to partition the internal sdcard to anything but 2048. Folks have had issues with memory errors in the market with anything bigger. 0 for a swap is also the recommendation as Android apparently does not make use of the swap.
roebeet said:
Wanted to expand on what was already here, since there seems to be a lot of questions that pop up. I use Ubuntu so I know that the Linux instructions are correct.
A warning in advance: nvflash makes changes to the partition structure of your device. You should tread carefully and understand the risks.
Pre-req: http://db.tt/Wm25t7U
Linux users: You want to get "nvflash_linux_2010110500.tar.gz" and "nvflash_gtablet_2010110500.zip "
Windows users: You want to get "nvflash_windows_20100500.zip" and ""nvflash_gtablet_2010110500.zip"
Other references (since I'm not a Windows user): http://forum.xda-developers.com/showpost.php?p=9564270&postcount=28
and http://forum.tegratab.com/viewtopic.php?f=6&t=8&sid=4e6bd75cda9e24e04fbbde76184e550a
http://wiki.tegratab.com/index.php/Nvflash_FAQ
-------------------------------------------
Installation
Create a folder on your PC which you use as your restore base, and then extract the platform-specific ZIP into that location.
Then, download the "nvflash_gtablet_2010110500.zip" package and unzip the /nvflash_gtablet/ folder inside into the same folder as where you dropped nvflash.
For Windows users, you'll need to have an APX-specific USB driver for the next steps (I believe that the Windows package bekit supplied has that .inf file, but again I don't know for sure). For Linux users, you don't need an extra driver.
Once ready, boot the device into APX mode (power up and volume down, at the same time - you'll see the boot screen pop up, and then go blank.). In Linux, type "lsusb" in a terminal and you should see this "0955:7820 NVidia Corp.". 7820 means the device is in APX mode.
Linux users: At this point, open up a command window to the folder you created, and run this script:
nvflash_gtablet.sh
This will wipe the device back to bekit's original TnT stock image, except for user data which is retained. Should take about a minute to run and the device will reboot itself automatically.
Windows users: (again, I did not test this myself). Run this script, in the folder you created:
nvflash_gtablet.bat
Hope this helps!
Click to expand...
Click to collapse
I need help. I finally got Windows 7 to recognize the device in APX mode but how do I flash from this point. It only shows up in my Device list with all the subfolders in it.
What is this for? Restoring to factory Rom?
Thanks,
Scott
cscotty said:
What is this for? Restoring to factory Rom?
Thanks,
Scott
Click to expand...
Click to collapse
Yes, you can use it for exactly that. I believe bekit added Launcher Pro and superuser, but other than that it's a way to completely wipe the device. Moreso than a standard recovery would do.
The pre-req link doesnt work. Can you update the link?
Thanks
roebeet said:
Wanted to expand on what was already here, since there seems to be a lot of questions that pop up. I use Ubuntu so I know that the Linux instructions are correct.
A warning in advance: nvflash makes changes to the partition structure of your device. You should tread carefully and understand the risks.
Pre-req: http://db.tt/Wm25t7U
Linux users: You want to get "nvflash_linux_2010110500.tar.gz" and "nvflash_gtablet_2010110500.zip "
Windows users: You want to get "nvflash_windows_20100500.zip" and ""nvflash_gtablet_2010110500.zip"
Other references (since I'm not a Windows user): http://forum.xda-developers.com/showpost.php?p=9564270&postcount=28
and http://forum.tegratab.com/viewtopic.php?f=6&t=8&sid=4e6bd75cda9e24e04fbbde76184e550a
http://wiki.tegratab.com/index.php/Nvflash_FAQ
-------------------------------------------
Installation
Create a folder on your PC which you use as your restore base, and then extract the platform-specific ZIP into that location.
Then, download the "nvflash_gtablet_2010110500.zip" package and unzip the /nvflash_gtablet/ folder inside into the same folder as where you dropped nvflash.
For Windows users, you'll need to have an APX-specific USB driver for the next steps (I believe that the Windows package bekit supplied has that .inf file, but again I don't know for sure). For Linux users, you don't need an extra driver.
Once ready, boot the device into APX mode (power up and volume down, at the same time - you'll see the boot screen pop up, and then go blank.). In Linux, type "lsusb" in a terminal and you should see this "0955:7820 NVidia Corp.". 7820 means the device is in APX mode.
Linux users: At this point, open up a command window to the folder you created, and run this script:
nvflash_gtablet.sh
This will wipe the device back to bekit's original TnT stock image, except for user data which is retained. Should take about a minute to run and the device will reboot itself automatically.
Windows users: (again, I did not test this myself). Run this script, in the folder you created:
nvflash_gtablet.bat
Hope this helps!
Click to expand...
Click to collapse
stanglx said:
The pre-req link doesnt work. Can you update the link?
Thanks
Click to expand...
Click to collapse
It seems to go up and down (it's bekit's dropbox). Try this:
https://www.dropbox.com/s/wrcd87u1iy31u4e
roebeet said:
Wanted to expand on what was already here, since there seems to be a lot of questions that pop up. I use Ubuntu so I know that the Linux instructions are correct.
A warning in advance: nvflash makes changes to the partition structure of your device. You should tread carefully and understand the risks.
Pre-req: http://db.tt/Wm25t7U
Linux users: You want to get "nvflash_linux_2010110500.tar.gz" and "nvflash_gtablet_2010110500.zip "
Windows users: You want to get "nvflash_windows_20100500.zip" and ""nvflash_gtablet_2010110500.zip"
Other references (since I'm not a Windows user): http://forum.xda-developers.com/showpost.php?p=9564270&postcount=28
and http://forum.tegratab.com/viewtopic.php?f=6&t=8&sid=4e6bd75cda9e24e04fbbde76184e550a
http://wiki.tegratab.com/index.php/Nvflash_FAQ
-------------------------------------------
Installation
Create a folder on your PC which you use as your restore base, and then extract the platform-specific ZIP into that location.
Then, download the "nvflash_gtablet_2010110500.zip" package and unzip the /nvflash_gtablet/ folder inside into the same folder as where you dropped nvflash.
For Windows users, you'll need to have an APX-specific USB driver for the next steps (I believe that the Windows package bekit supplied has that .inf file, but again I don't know for sure). For Linux users, you don't need an extra driver.
Once ready, boot the device into APX mode (power up and volume down, at the same time - you'll see the boot screen pop up, and then go blank.). In Linux, type "lsusb" in a terminal and you should see this "0955:7820 NVidia Corp.". 7820 means the device is in APX mode.
Linux users: At this point, open up a command window to the folder you created, and run this script:
nvflash_gtablet.sh
This will wipe the device back to bekit's original TnT stock image, except for user data which is retained. Should take about a minute to run and the device will reboot itself automatically.
Windows users: (again, I did not test this myself). Run this script, in the folder you created:
nvflash_gtablet.bat
Hope this helps!
Click to expand...
Click to collapse
Roebeet sorry but I just noticed for noobs that the linux command needs to be
. nvflash_gtablet.sh
Also if you unzip those files into a premade directory such as "gtablet" when you unzip them each have their own directories and if you ls you can see that the bash script isn't executable from there. So you need to copy either the gtablet files into the platform folders or copy all the files inside both into your "gtablet" folder. Then you can run the ". nvflash_gtablet.sh" command and voila. Sorry I am on Ubuntu and don't know if it is different, but that is the way I run them.
No worries - all replies are welcome! the more info we have, the better.
This should be stickied. Nvflash has saved my gtab many times and I think its the reason why my gtab doesn't really encounter too many Force closes. Its the perfect method to ensure your gtab is clean.
I tried this tonight to try to get my gTablet back to stock so that I could show people how to install CWM on a video but I could get neither of my Windows 7 64-bit computers to recognize the APX .inf that was included in the pack.
I have a linux machine around here somewhere I may have to use...
ehunyadi said:
I tried this tonight to try to get my gTablet back to stock so that I could show people how to install CWM on a video but I could get neither of my Windows 7 64-bit computers to recognize the APX .inf that was included in the pack.
I have a linux machine around here somewhere I may have to use...
Click to expand...
Click to collapse
My limited experience with 64-bit Win7 -- the drivers have to be signed, or else they won't work. There's a way to disable that on boot, but you can't permanently disable it. I'm wondering if the APX USB driver is signed?
Open a command prompt as an admin and type
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
This is the only way.. dont worry if the test watermark shows up.. it wont affect anything.
Also... They have a x64 driver - read this
http://tegradeveloper.nvidia.com/tegra/forum/adb-usb-driver
Hi there,
I exchanged for a new Gtab yesterday from sears (as it had some power issues).
Today, I tried TnT 2.2 on my rooted tab (Z4 for rooting). Also have ClockworkMod .8.
I partitioned my internal SDCard. But after vanilla restore, I could find my tab space reduced to 4 gigs. What should I do to restore to full 16 gigs(14+ gigs actually).
============================================================================================================================
2. I followed your instrction and partitioned again in clockworkMod and did 4 gigs and 0 in the second one. Now it shows 11 gigs for data and 4 gigs for system.
Now I inserted an external micro SD card (16 gigs) but my storage is not seeing it. What should i do? Ignore my first part please.
Your gonna have problems later if you don't repartition to 2048 and 0
satishraman said:
Hi there,
I exchanged for a new Gtab yesterday from sears (as it had some power issues).
Today, I tried TnT 2.2 on my rooted tab (Z4 for rooting). Also have ClockworkMod .8.
I partitioned my internal SDCard. But after vanilla restore, I could find my tab space reduced to 4 gigs. What should I do to restore to full 16 gigs(14+ gigs actually).
============================================================================================================================
2. I followed your instrction and partitioned again in clockworkMod and did 4 gigs and 0 in the second one. Now it shows 11 gigs for data and 4 gigs for system.
Now I inserted an external micro SD card (16 gigs) but my storage is not seeing it. What should i do? Ignore my first part please.
Click to expand...
Click to collapse
You only have 16gb to start. Partitioning you internal to 4gb uses part of that. I would go back and only use 2gb, and 0 for swap. There are things, like the new market that break with anything but 2gb.
If you mean the settings menu is not showing your external sd card that's normal. Look in a file explorer program in the / directory. Look for SDcard2. That is your external. Same deal, look for usbdisk if you plug in a usb drive.
Roebeet
also this could be helpful to Ubuntu/linux users.
in the same directory where your flash script is there is a file that is called "gtablet.cfg" if you download the clockwork.img recovery and put it in this directory you can open up the "gtablet.cfg" with a text editor
scroll down to where you see "filename=part9.img" and replace "part9" with "clockwork" and it should now read "filename=clockwork.img" this will flash clockwork and save you a step. To change it back so you flash complete stock just edit the file again and reverse it.
romanrish said:
Roebeet
also this could be helpful to Ubuntu/linux users.
in the same directory where your flash script is there is a file that is called "gtablet.cfg" if you download the clockwork.img recovery and put it in this directory you can open up the "gtablet.cfg" with a text editor
scroll down to where you see "filename=part9.img" and replace "part9" with "clockwork" and it should now read "filename=clockwork.img" this will flash clockwork and save you a step. To change it back so you flash complete stock just edit the file again and reverse it.
Click to expand...
Click to collapse
You don't even have to do that - you can just rename part9.img to something else, and clockworkmod.img to "part9.img". That's actually what I do.
roebeet said:
You don't even have to do that - you can just rename part9.img to something else, and clockworkmod.img to "part9.img". That's actually what I do.
Click to expand...
Click to collapse
Yeah I thought about that, but figured some people might get confused and forget which one was which. Either way works as well just as long as you keep both files. You should edit your original post and add that in as an option to do at the end. It will keep some from having to look through and creating a new post cause they can't find it, and keep our forums clean.
This should definitely be stickied. Mods please?
P.S. I cannot believe how awesome this forum is(Viewsonic G Tablet). I have gone to other forums and the other devs and users are not as friendly and awesome as the ones we have here. Almost brings a tear to my eye. Great job Roebeet, this should help us noobs out a lot. LOL!

[GUIDE] All you need to know about the ramdisk of the kernel

WHAT'S IN THE RAMDISK
So anyone who has compiled a kernel (for the X8) or is about to step into the world of developing android awesomeness through kernel building, should know that there are 2 (two) parts to the kernel:
The kernel image compiled from source code, and
The ramdisk
Both are equally important and are inter-dependent; without the kernel, the ramdisk is nothing (unless of course the devs come up with any other use) and without the ramdisk, the kernel is incomplete (again, this may change in the near future).
You (XDA-ians as I like to call you guys), especially those in the X8 sub-forums must have read viper001's kernel building guide. If you haven't, and do not want to read just 4 posts because of your laziness, it tells you how to compile your kernel image. Hah, now you are almost dying to read it. Well go ahead, read it.
Done reading. Well if you followed that guide to the letter (which I am sure many of you haven't), you'll have compiled your kernel with the FXP ramdisk. Now you want to build it from another source. It's pretty much the same process. However the FXP ramdisk won't work with this kernel. Not a chance (maybe a little). You need the ramdisk so you unpack the kernel using DooMLorD's tool (and forget to thank him; go thank him right now) and see a folder named kernel.sin-unpacked. You open it and see a bunch of files that you've never even heard of. You drop the kernel-building project.
This guide will hopefully eradicate that fear, or ignorance (maybe), and cover up what's in the ramdisk.
The parent (or root) directory of the ramdisk folder itself contains a bunch of files and folsers, which also contain more files.
Let's look at the contents in the root directory:
1 “modules” folder – This one is pretty easy. It contains the kernel specific modules that are loaded up at boot.
2 “res” folder – This folder contains another folder named “images” which contains images to be used in the recovery (more on that later).
3 “sbin” folder – Inside this folder are about 200 files (may vary), most of which are responsible for basic functioning of the phone.
4 default.prop – This file contains only a few lines of code that allow adb to run (line 4) and also makes the kernel insecure to give us permanent root.
5 init – This program initializes elements of the android OS and looks at the two following files:
6 init.rc – This file contains generic initialization code
7 init.<machine_name>.rc – This file contains device-specific initialization code.
8 initlogo.rle – This is the bootlogo (not the bootanimation which comes with the ROM).
9 pre_hw_config.sh – This file is executed at boot to get settings like cpu freq and governors just right.
10 recovery.fstab – This file specifies how the different partitions and file systems are to be mounted.
11 ueventd.rc – This file sets user or group (or root?) permissions on /dev nodes. (I got this line from the Internet and have no idea myself what the hell this means o_0).
12 ueventd.goldfish.rc – This file is empty in our kernels. Dunno why, though.
Now for the files in the /res/images directory:
1 icon_clockwork.png – This is the background seen in CWM.
2 icon_error.png and icon_firmware_error.png – These images are displayed on the screen when there is an error. Not sure though as I have never encountered any such error before in my life.
3 icon_firmware_install.png and icon_installing.png – These images are displayed when installing anything via CWM.
4 indeterminateX.png (where X is a number from 1 to 6, both inclusive) – This is basically the animation of the progress bar (the grey stripes moving forwards, or backwards, or both).
5 progress_empty.png – This is the progress bar during the initial stages of flashing anything in CWM.
6 progress_fill.png – This is the progress bar fill.
These are the files in the /modules folder:
1 sdio.ko – This is a file related to WiFi.
2 tiwlan_drv.ko – This is the tiwlan WiFi driver module.
3 tiap_drv.ko – This is the tiap WiFi driver module.
4 x8uv.ko – This is the undervolting module.
5 synaptics_i2c_rmi4_no_dt.ko – This disables dual touch in Synaptics.
6 synaptics_i2c_rmi4_dt.ko – This enables dual touch in Synaptics.
NOTE: I am not an expert.
More to come soon. See you and I hope sincerely that I do not get banned for this.
THE DREADED SBIN DIRECTORY
Going into the /sbin directory, we see a lot of files, the names of each sending shivers down your spine. But fear not, for sgt. meow will help you understand the functions of some important ones:
1. adbd – The file that allows you to use the adb shell. “adbd” stands for “Android Debugging Bridge Daemon”.
2. bootlogo – This file starts the kernel bootlogo (according to some user on the androidcentral forum; just saw a snippet on google search, opened the page and there was no thread).
3. bootrec – This file basically tells a kernel how to boot up a recovery
4. busybox – It lets you run LINUX / UNIX based commands (ls, gzip, uname etc.) that are required for root-level tasks.
5. dmesg – It is the Linux kernel's own logging system and is similar to logcat.
6. fix_permissions – This file applies and fixes permissions on the Android data folders.
7. insmod – This file is basically what is executed when you type insmod /..../../../../ xxx.ko (or similar) to load up the modules. An alternative way to do this is to write the line in hw_config.sh of /system folder (I guess) to load up modules at every boot. Or you could place the modules in the /modules directory of the kernel.
8. killrecovery.sh – This file, as the name suggests, kills the recovery when you exit it and boots into Android.
9. nandroid – The file responsible for nandroid backups.
10. nandroid-md5.sh – This file generates MD5 checksums for nandroid backups to verify its integrity.
11. reboot – This file reboots the phone when prompted to.
12. recovery – This is the recovery binary. For our devices, it is CWM recovery. This file can be changed easily (what I did with oxydo ICS) to other recoveries for this device for that version of Android.
Most of the other files are LINUX / UNIX based commands and some are files the functions of which cannot be explained by me.
More to come soon. Hope you enjoyed it so far.
FILES YOU CAN EASILY EDIT IN THE RAMDISK
There are some files in the ramdisk that can be edited pretty easily. There are also other files editing which means you gotta be RD or gotta have similar talent. Let's not go into that for now. The easy ones are:
1. initlogo.rle - The file that is easiest to edit. Basically you can convert any image to .rle format and replace it. make sure it is the right resolution.
2. /sbin/recovery - You can use recovery from another kernel (for the same Android version)and replace it in yours. You can also compile your own recovery binary by issuing the make recovery command after a successful CM build.
3./sbin/bootrec - You may have to change this when you change the recovery. Just a simple copy paste, that's all.
4. /sbin/rec_input - This file may need changing too when you change recovery.
5. /res/images/.. - Every .png file in this directory can be easily changed to any other .png file. Just make sure the resolutions are right, or else you will not be able to navigate properly in recovery.
6. init.rc - This file is easily changeable but you need to know what you are doing, otherwise you may mess up the boot sequence.
You can have a shot at changing other files, too. Lemme know how it goes.
CREDITS:
1. Allah Almighty (yes I'm a Muslim)
2. All XDA-ians, especially those in the X8 sub-forum for help (and for pressing thanks)
3. The Internet (Google, Wikipedia and Github mostly) for info
4. Me, for spending hours behind this guide.
5. My family, for not disturbing me while I was doing this. LOL
thank you
that is what i'm trying to understand :good:
This is for sure a valuable thread. Thanks for this!!
Sent With My Brains To Yours. Duh.
Nice thread , Captain Meow Meow
Sent from my X8 using xda app-developers app
sbin will take some time to cover but i will try my best.
sgt. meow said:
sbin will take some time to cover but i will try my best.
Click to expand...
Click to collapse
Its good to see that you are working hard...
Keep it up
great thread.thanks
sent from my x8™ using gingerzaraki®
THREAD UPDATED WITH SBIN CONTENTS. OMG. :wink:
Dude, you should make an *updated* Kernel Building Guide with new sources (i.e. alfs kernel or nAa kernel). Old one still uses FXP kernel source and outdated toolchain instead of Linaro.
RohinZaraki said:
Dude, you should make an *updated* Kernel Building Guide with new sources (i.e. alfs kernel or nAa kernel). Old one still uses FXP kernel source and outdated toolchain instead of Linaro.
Click to expand...
Click to collapse
And link to your sources as an example for others..
Banned? And why? This is usefull =))
Sent from my E15i using xda premium
@Rohin
yeah I might
@Elmir
that was a joke
@all
THREAD UPDATED WITH FILES THAT CAN BE EDITED AND CREDITS. :BIG GRIN:

[Without PC] Unpack, Edit, Repack Boot.img

I have already typed up this thread so I do not see the need to duplicate it again. Instead, I have supplied the link below to the original thread.​
-- In lamen terms, I have compiled three binaries to work on ARM devices. They are mkbootimg, mkbootfs, and unmkbootimg. These binaries will allow a user to unpack their boot.img, edit, and then repack their newly modded boot.img straight from their device without the need of using a PC.
-- To see what I am talking about then CLICK HERE AND LEARN MORE ABOUT IT!
-- Take it, use it, modify it. It is free to everyone. I do not care to be given recognition for these files, but if it is given then that is fine as well. Enjoy and as always...
-- Happy Hunting!!
Screenshot photos

[TOOL][WIN]DroidShell - Windows Shell Integration for Android Development[02/02/16]

Greetings, and welcome to the home of a little set of utilities I'm calling "DroidShell".
What it is:
DroidShell is my attempt at bridging the gap between the various android utilities used for ROM modification and the Windows explorer system. It is a series of scripts that are automatically associated with .apk, .jar, and .iso files so that they are automatically decompiled on double-click or enter. Additionally, when a file is decompiled, a corresponding .dcp, dcf, or dci (decompiled package, decompiled framework, decompiled image) file is created, which allows for automatic recompiling, as well as optional cleanup, or resigning.
The goal of this project is pretty simple...to have all the tools needed for ROM work in one place, and have them easily accessible without having to have eighty command windows open or to have to go through a chain of commands to create a usable apk/jarfile.
Features:
One-shot setup. Extract the files, run install/installer.bat, and all of the necessary file associations and paths are created.
Batch terminal integration - provides integration for adb, fastboot, apktool, 7zip, zipalign, oat2dex, unpackbootimg, repackbootimg, baksmali and smali in windows command-line interface from path.
Automagic association with common android filetypes for decompilation.
Custom placeholder files - dcp, dcf, and dci - for packages, framework, and image files. Allows for automatic recompiling, and optional signing and cleanup of decompiled files.
Recompiled apks and jars are automatically repacked with modified files while excluding androidmanifest.xml, meaning signatures are unaffected.
For modifications requiring androidmanifest be changed, you can right-click a .dcp file to recompile with signature.
Auto-detection of framework-res file with prompting to install.
Popup dialogue boxes for errors and alerts.
(NEW) Right-click to decompile to java code. This cannot be recompiled, but is great for researching more complex mods. (Can also be invoked by using the command dj filename.apk)
(NEW) Support for sparse image system -> .img conversion.
(NEW) za command for zipaligning apk's.
(NEW)
Download:
https://github.com/d8ahazard/DroidShell/archive/master.zip
Source:
https://github.com/d8ahazard/DroidShell
Instructions...
You need the Java Runtime Environment (RE). Get it here.
Extract to a folder somewhere. Spaces in the path are probably not good. I put it in C:\DroidShell
Browse to the folder. Go into the install folder. Run installer.bat. (Installer needs admin priveleges. It will prompt for them, but in some cases, you may have to automatically run as admin)
Reboot.
You should now have shell integration. APKs, Jars, and .img files will automagically decompile.
It's late, I've been working on this all weekend...but it should be good to go. Please let me know if you have any thoughts.
CHANGELOG:
Code:
02.02.16 - v2.0
Update smali, baksmal to v. 2.1.1.
Add shell script for oat2dex (not implemented in context menus, just avaialable for now)
Update APKTool to latest version
Add dx.jar - for converting java classfiles to .dex (just available for now)
Add ext4 and ext2 tools - For manually unpacking images if needed. These are GUI based, not my work.
Add rimg2sdat - For converting .img to sparse (Not implemented yet)
Update sdat2img to latest version by xspirit, added python to installer as required.
Add zipalign function (Not implemented, can be called via "za filename.apk"
Add decompile to pure Java:
This utilizes a few tools to take apk's and jarfiles and decompile them to as close of an android package as we can get without having the actual source code. While we cannot at this time recompile these into apk's, it is very useful for analysis when trying to implement other mods. Like...really helpful. This one can be accessed by right-clicking a decompileable package and picking "decompile to java".
01.31.15 - v1.8
Added windows progress bar for file copies in system.img extraction.
Fixed some script errors.
01.29.15 - v1.7
Cleaned up installer, added more verbosity.
Better error checking in image extractor.
Add support for .list files, allowing double-click extraction of system.transfer.list and cm12-style image files.
Added custom language files for notepad++, allows syntax highlighting of .smali and logcat files.
01.27.15 -v1.6
Added support for system images. Requires installation of included OSFMount.
Added file associations for common plaintext android files to notepad++ if installed.
Converted several .bat files to .exe, allows for icons, inclusion of required files, and UAC prompting when needed.
01.26.15 - v1.5
Fixed fatfinger in APKtool detection causing error.
01.26.15 - v1.4
Added zipaligning
Added check to make sure apktool is present
Updated test-keys to latest AOSP version
Compiled batches to .exe with required files for AIO-packages
Fixed: Installer not always associating with files correctly.
Thanks a million
Version 1.5 uploaded.
Added Zipaligning
Check to make sure apktool.jar is found in %DROIDROOT% directory.
Updated signing keys.
Switch from .bat to .exe, allows modularization of functions, cleaner.
Modifications to installer to try and fix some issues with file associations.
Fixed issue between 1.4 and v 1.5 where I fatfingered a check.
Hell yes!
digitalhigh said:
Greetings, and welcome to the home of a little set of utilities I'm calling "DroidShell".
What it is:...
Click to expand...
Click to collapse
So many thanks for this! I'm going to use it like hell!
Excellent Job!
I'm bookmarking this, gona read it thuroughly at breakfas
So I'm curious - has anybody had a chance to give this a try yet?
Testing file association stuff is tricky, because Windows likes to keep track of the "user selected" association too. So, I had to add some extra commands to the installer script to clean up everything appropriately first.
Either way, I've ran it on like three different computers "clean" and had it work like a charm on all of them. I'd like to know how it works with WIndows 7 or XP.
I could be doing something wrong (windows is not my OS of choice, I use kubuntu 14.10 as my daily driver, and as such am mostly illiterate in dos/batch, I'm a sh/bash guy), but the installer bombed out (hung up without confirmation of success) on my windows 7 pro install (on a dell latitude e6400, with a dual core core2 @2.8ghz, quattro 160m graphics, 4gb of ddr2 @800mhz, booting off a 120gb Samsung evo ssd. Wouldn't think its relevant, but just in case).
Steps:
First I decompressed the .zip in the root of my C:\ drive, with 7zip (did not change file name, kept as "DroidShell_1.5").
Next I ran the installer script.
I then granted it admin privileges.
It killed my desktop, explorer.exe. I assume this is normal due to the terminal output:
Code:
SUCCESS: The process "explorer.exe" with PID 3260 has been terminated
Then I got:
Code:
file type 'apk_auto_file' not found or no open command associated with it.
Followed by 4 more identical errors, just replace "apk" with dfc, dcp, dci, img.
A bunch of successful operations.
Then:
Code:
ERROR: Invalid syntax.
Type "REG ADD /?" for usage
A bunch of successful operations.
Then:
Code:
ERROR: The system was unable to find the specified registry key or value.
The above output repeats 17 times.
Then 4 more operation success messages and it hangs, with my desktop killed.
Ctrl+alt+del, logout, log in, and I'm back in business. No noticeable increase in disk space, no newly installed programs (as expected).
I read the op, and from my understanding it doesn't require any dependencies? (Apktool, android SDK, android studio, etc). All the necessary dependencies are built in, right? It's a fresh install of windows 7 pro, with all available updates taken.
EDIT:
It worked perfectly regardless of the errors, see my post on page 2.
thisguysayswht said:
I could be doing something wrong (windows is not my OS of choice, I use kubuntu 14.10 as my daily driver, and as such am mostly illiterate in dos/batch, I'm a sh/bash guy), but the installer bombed out on my windows 7 pro install (on a dell latitude e6400, with a dual core core2 @2.8ghz, quattro 160m graphics, 4gb of ddr2 @800mhz, booting off a 120gb Samsung evo ssd. Wouldn't think its relevant, but just in case).
Steps:
First I decompressed the .zip in the root of my C:\ drive, with 7zip (did not change file name, kept as "DroidShell_1.5").
Next I ran the installer script.
I then granted it admin privileges.
It killed my desktop, explorer.exe. I assume this is normal due to the terminal output:
Code:
SUCCESS: The process "explorer.exe" with PID 3260 has been terminated
Then I got:
Code:
file type 'apk_auto_file' not found or no open command associated with it.
Followed by 4 more identical errors, just replace "apk" with dfc, dcp, dci, img.
A bunch of successful operations.
Then:
Code:
ERROR: Invalid syntax.
Type "REG ADD /?" for usage
A bunch of successful operations.
Then:
Code:
ERROR: The system was unable to find the specified registry key or value.
The above output repeats 17 times.
Then 4 more operation success messages and it hangs, with my desktop killed.
Ctrl+alt+del, logout, log in, and I'm back in business. No noticeable increase in disk space, no newly installed programs (as expected).
I read the op, and from my understanding it doesn't require any dependencies? (Apktool, android SDK, android studio, etc). All the necessary dependencies are built in, right? It's a fresh install of windows 7 pro, with all available updates taken.
Click to expand...
Click to collapse
Bombed out is a rough term. The installer is just writing a bunch of registry keys, and deleting some other ones to make sure other associations don't mess it up. So, some registry operations don't always work - there just there to be sure. I've actually worked on cleaning that up in the next iteration I'm cooking.
And yes, there shouldn't be any more size increase past extracting the original zip. All the files used are enclosed. "Installer" is just telling Windows that "droid shell is at location %CD%" and "use app xxx in %CD% to open file XX". A few extras for the right-click context menus and icons...so forth.
So, to know if it is working is really just a matter of finding an apk or .jar and double-clicking it. You should get a terminal window showing the process and a box confirming success or failure, plus a reason why if failure.
The only dependency is the Java Runtime environment, which is the same common necessity as for any other Apktool environment. You can get it here, and I'll throw that link in the OP in a second.
The next iteration of the installer is going to be a lot cleaner, plus be more verbose so you actually know what it's doing. My first thought in putting it out was just to see how well the decompile/recompile stuff worked.
Bombed out is a rough term. The installer is just writing a bunch of registry keys, and deleting some other ones to make sure other associations don't mess it up. So, some registry operations don't always work - there just there to be sure. I've actually worked on cleaning that up in the next iteration I'm cooking.
And yes, there shouldn't be any more size increase past extracting the original zip. All the files used are enclosed. "Installer" is just telling Windows that "droid shell is at location %CD%" and "use app xxx in %CD% to open file XX". A few extras for the right-click context menus and icons...so forth.
So, to know if it is working is really just a matter of finding an apk or .jar and double-clicking it. You should get a terminal window showing the process and a box confirming success or failure, plus a reason why if failure.
The only dependency is the Java Runtime environment, which is the same common necessity as for any other Apktool environment. You can get it here, and I'll throw that link in the OP in a second.
The next iteration of the installer is going to be a lot cleaner, plus be more verbose so you actually know what it's doing. My first thought in putting it out was just to see how well the decompile/recompile stuff worked.
Click to expand...
Click to collapse
I didn't mean to offend with the term "bombed out", it may have been a bit of a rough term. I just meant the script terminated my desktop and hung up.
It actually succeed regardless of the errors, and is working like a charm. I apologize, I should have actually tested it before posting. I shouldn't have assumed that it didn't work based off of the terminal output/behavior.
Also, I would like to say that I greatly appreciate the work that you put into this, and all your other projects here on xda. I'm running your 4.4.4 gpe port for the verizon m8 as my primary rom, and it is by far the most stable port I have ever had the pleasure of flashing.
Attached are screenshots of DroidShell successfully decompiling and recompiling an apk with a simple right click selection on windows 7 pro. Good stuff.
Thanks! tons
Thanks for the work. very useful.
The compiling and decompiling of apk is perfect on Win 7 pro.
From the OP, i also got the impression it would unpack / pack images, so i tried it with a system.img copied to the droidshell directory.
With the command c:\droidshell\unpackimg system.img, I got the error as shown in screenshot
Am I doing something wrong, or is this not supported yet?
arbit12 said:
Thanks for the work. very useful.
The compiling and decompiling of apk is perfect on Win 7 pro.
From the OP, i also got the impression it would unpack / pack images, so i tried it with a system.img copied to the droidshell directory.
With the command c:\droidshell\unpackimg system.img, I got the error as shown in screenshot
Am I doing something wrong, or is this not supported yet?
Click to expand...
Click to collapse
It only works for boot images at the moment. System images are a different beast.
Sent from my HTC6525LVW using XDA Free mobile app
digitalhigh said:
It only works for boot images at the moment. System images are a different beast.
Sent from my HTC6525LVW using XDA Free mobile app
Click to expand...
Click to collapse
Okay. Thanks for the info.
thisguysayswht said:
I didn't mean to offend with the term "bombed out", it may have been a bit of a rough term. I just meant the script terminated my desktop and hung up.
It actually succeed regardless of the errors, and is working like a charm. I apologize, I should have actually tested it before posting. I shouldn't have assumed that it didn't work based off of the terminal output/behavior.
Also, I would like to say that I greatly appreciate the work that you put into this, and all your other projects here on xda. I'm running your 4.4.4 gpe port for the verizon m8 as my primary rom, and it is by far the most stable port I have ever had the pleasure of flashing.
Attached are screenshots of DroidShell successfully decompiling and recompiling an apk with a simple right click selection on windows 7 pro. Good stuff.
Click to expand...
Click to collapse
Oh, no offense taken.
I came at this project, as I do with most, with the mindset of "OOOH, SHINY THING. I MUST SHOW EVERYONE." So, first thought was putting out the app, despite some of the install stuff being a bit dirty.
However, the next iteration is shaping up to be quite lovely. See below.
arbit12 said:
Okay. Thanks for the info.
Click to expand...
Click to collapse
So, it appears that this question has motivated me to try making that function a reality sooner than later.
However, as far as I can see, the *ONLY* application for windows that currently deals with system images right now is Ext2Explore, which is a bit old and doesn't have command-line support.
Fortunately, there's source code for it, so I'm currently downloading Visual Studio and will see if I can add command line functionality, as well as make it launch with UAC prompting.
If I can make this work, my plan is to make one handler for .img files that works like so:
1. Look at the file passed to it and see if it's a boot image. If it is, extract and exit.
2. If it's not a boot image, try to extract it as a system image. If it is, extract and exit.
3. If it's not a boot or system image - pass it to explorer and mount as usual.
I can do # 1 and #3 already...it's just getting #2 to go.
Also, I've added a check in the installer that looks for the installation of notepad++. If it finds it, it will create additional associations for .xml, .prop, conf, config, .smali, and whatever else I can think of that I could possibly need to edit in a ROM.
Then, lastly, with all these additions, I'd like to make the installer a bit more verbose. Give some options so it's not just an all or nothing install, make it prettier, etc.
digitalhigh said:
Oh, no offense taken.
I came at this project, as I do with most, with the mindset of "OOOH, SHINY THING. I MUST SHOW EVERYONE." So, first thought was putting out the app, despite some of the install stuff being a bit dirty.
However, the next iteration is shaping up to be quite lovely. See below.
So, it appears that this question has motivated me to try making that function a reality sooner than later.
However, as far as I can see, the *ONLY* application for windows that currently deals with system images right now is Ext2Explore, which is a bit old and doesn't have command-line support.
Fortunately, there's source code for it, so I'm currently downloading Visual Studio and will see if I can add command line functionality, as well as make it launch with UAC prompting.
If I can make this work, my plan is to make one handler for .img files that works like so:
1. Look at the file passed to it and see if it's a boot image. If it is, extract and exit.
2. If it's not a boot image, try to extract it as a system image. If it is, extract and exit.
3. If it's not a boot or system image - pass it to explorer and mount as usual.
I can do # 1 and #3 already...it's just getting #2 to go.
Also, I've added a check in the installer that looks for the installation of notepad++. If it finds it, it will create additional associations for .xml, .prop, conf, config, .smali, and whatever else I can think of that I could possibly need to edit in a ROM.
Then, lastly, with all these additions, I'd like to make the installer a bit more verbose. Give some options so it's not just an all or nothing install, make it prettier, etc.
Click to expand...
Click to collapse
Captain_Throwback said:
Click to expand...
Click to collapse
Don't get too excited. I've never touched C++ before, and ext2Explore was done in VisualStudio.net and a WYSIWYG editor called QT. I found updated source for the program from 2012 and have gotten it to import into QT, however, it needs MingW and some other dependencies. I'll be lucky if I can even get it to compile again, let alone work, let alone work with added command-line stuff.
However, that's still the goal.
Also, I want to add wget (windows equivalent) stuff to auto grab and install java and notepad++ while we're at it.
So, I think Ext2Explore is more work than it's worth.
OSFMount, on the other hand, just let me mount a system.img as a removable disk with read-write access. I'm going to go down this road...
Good to hear that. Extracting system.img on windows can be a real pain at times - this would be great.

How to dump your own image

First, to clarify, the last time I rooted anything was a Galaxy S3 back in the day. I'm by no means an expert, I just figured I'd help out folks like me that haven't touched all these new tools, well, ever.
Just did this myself earlier today attempted to get Magisk root, but alas, I got stuck in a boot loop. Luckily I had muddled through getting the image first, otherwise I'd still be stuck in said boot loop. I figured I'd post this for anyone else trying to root these things just to make sure you have a backup you can trust (I generally don't trust rando images that folks post online). All of the instructions below are assuming you're on Windows 10 and using PowerShell just because that's the default these days. Without further adieu.
Download ADB/fastboot (on your Windows machine)
I downloaded adb/fastboot from google directly: https://developer.android.com/studio/releases/platform-tools
Just extract and browse to the platform-tools directory in Windows Explorer until you can see adb.exe and a bunch of other tools
Download the latest SP Flash Tool
I just grabbed it from here: https://spflashtools.com/
Please let me know if there's an "official" place to find SP Flash Tool, cause everything surrounding all the download sites seems a bit sus...
Enable USB Debugging (on the tablet)
Go to settings -> About tablet
Tap the Build number 10 times (until debugging mode unlocks)
Hit back and go to System
Click Advanced and then Developer Options
Enable USB Debugger
I also enabled OEM unlocking because the whole point of this is for me to run either AOSP or Lineage someday. I honestly don't know if unlocking the bootloader is needed for dumping your own images, but I highly suspect it's not.
Plug the tablet into your computer
You'll likely see a prompt on your tablet about allowing your computer to debug your tablet. I just checked the box and hit accept so I wouldn't see it again.
Get your scatter file (on your Windows machine)
I tried several things to get the scatter file (I guess this is like a partition table based on the contents I saw) but in the end, by far the easiest way was to just download the scatter file from the file system.
In the Windows Explorer window from before (platform-tools), hold down shift while left clicking and click on Open PowerShell window here
Now type the following to get a shell on your:
.\adb.exe shell
This will get you into the shell environment. Now type the following to verify your scatter file is there:
ls -al /system/data/misc/
In here you should see something like:
-rw-r--r-- 1 root root 13893 2008-12-31 19:00 MT8168_Android_scatter.txt
Now that we have the name, just type exit to get out of the shell
Download the scatter file
.\adb.exe pull /system/data/misc/MT8168_Android_scatter.txt
Open up the scatter file in your favorite text editor (for me, Notepad++)
Now you can see the partition layout, offsets, etc, etc
Dump your image(s) (on your Windows machine)
Now open SP Flash Tool (flash_tool.exe)
On the Download tab, make sure the Download-Agent is MTK_AllInOne_DA.bin
Now click Choose for the Scatter-loading file and browse to the scatter file you just downloaded
This should be in your platform-tools folder unless you moved it
Once the scatter file is loaded, the partition table should fill up with a bunch of partitions
Click on the Readback tab
Click Add
Double-click on the new entry
Navigate to where you want to save your image, and give it a name (in this case I'm starting with boot.img)
Remember how you opened the scatter file in a text editor? Search in the scatter file for boot.img
Make sure the region matches (should be EMMC_USER) between the scatter file and SP Flash Tool
Copy/paste the value for start_addr in the scatter file to Start Address in SP Flash Tool
Copy/paste the value for partition_size in the scatter file to Length in SP Flash Tool
Now do the same thing for recovery.img and any other images you'd like
If you want a full ROM backup, name the file something like ROM_0, then use Start Address of 0x0 and length as the start_addr for the second-to-last entry in the scatter file (in my case, it was 0xc1a80000, just make sure it doesn't start with f's)
Note: I don't know for sure if this is accurate or not, I'm still playing with it, but so far it appears to be. Probably?
Poking around in WwR MTK 2.51, it looks like for this particular device (100011885) I wanted a total dump of 0x73A000000. It looks like this number is derived from the first 8Mb of the EMMC_USER dump, so I'm not sure of an easier way than throwing WwR MTK at it for the moment.
Once you've got all the entries for what you'd like to dump, make sure to disconnect the tablet from your computer and power it off
Now click on Download in SP Flash tool
Once things grey out, then plug the tablet in. After a few seconds, you'll see the images start dumping.
Congrats, you have a boot.img (and whatever other images you wanted). Like I said, from here I tried using Magisk to patch the boot file, but when I flashed it in fastboot, after enabling OEM unlocking in Developer Options, it just kept popping up the initial Onn graphic along with the Orange State warning without getting to the "fancy" Onn graphic and the rest of the boot process. I was able to flash the original boot.img back and it once again booted properly again.
Also, for anyone interested, I've posted my dumped files for the 100011885 in my google drive: https://drive.google.com/drive/folders/17LtLtjKg4JJU9EJdIXPsyNjen0H-ilMX?usp=sharing
Maybe someone will have pity on me and figure out why Magisk isn't working?
Whenever I get a moment, I'll dump my 100003562 as well.
First, thanks a ton for this. I have been trying to pull a full system dump since I bought the tablet and had resorted to single pulls by name(very long and involved) I don't know if this will work for you, but on both of my 7 inch Gen 2 tablets, I just sideloaded Magisk Manager and then opened it (this was after unlocking the tablet) When I first opened MM it just said it needed to download some additional files for my environment. I clicked okay, it downloaded and installed the additional files. Once it rebooted, I open MM again and clicked install Magisk. On the next screen, I clicked direct install and let it do it's thing. After rebooting, root checker showed I had root, but I still can't get it to pass safetyNet. Root access does work as I have installed a few modules and busy box.

Categories

Resources