PDA

View Full Version : Initial boot screen?



neillmchi
03-29-2012, 09:20 PM
I've been looking into how to replace the initial boot screen on my Arnova 10 G2 Philly Inq. To clarify, I'm not talking about replacing the boot logo (i.e. initlogo.rle), the boot animation (i.e. system/media/bootanimation.zip), or even the default wallpaper (i.e. framework-res/res/drawable/default_wallpaper.jpg)

When I first power on the device, it still says "ARNOVA", just like the "ARNOVA_welcome_screen.png" from framework-res/assets/images, but I can't find where it's loading that one from. I'm assuming at this point it's stuffed in a binary, but also can't find which one.

Anyone figured this out? Sorry if it's been answered here already, I ran some searches, but couldn't find what I was looking for.

thanks,
-Neill.

Finless
03-30-2012, 06:43 AM
I have not figured it out myself! I thought it was in the kernel somehow because when I would flash other tablet ROMs for testing it would change.

However Miklaus did find out how. I have not asked him yet how he did it.

Maybe he will explain. I will ping him.

Bob

neillmchi
03-30-2012, 02:11 PM
I have not figured it out myself! I thought it was in the kernel somehow because when I would flash other tablet ROMs for testing it would change.

However Miklaus did find out how. I have not asked him yet how he did it.

Maybe he will explain. I will ping him.

Bob

Ah, ok, good to know! I think the kernel is definitely a possibility. Please let me know what Miklaus has found when you know!

thanks,
-Neill.

Finless
03-30-2012, 02:15 PM
Actually I lied. He did not find that initial boot screen. I thought he did but I see it's still there.

Anyway I think it is in the kernel and the reason why is when I flash other ROMs like the Polaroid for testing, the Arnova gets replaced. Playing around shows ONLY when kernel.img is flashed does it change. So I think it is burried in the kernel.

Bob

neillmchi
03-30-2012, 02:48 PM
Actually I lied. He did not find that initial boot screen. I thought he did but I see it's still there.

Anyway I think it is in the kernel and the reason why is when I flash other ROMs like the Polaroid for testing, the Arnova gets replaced. Playing around shows ONLY when kernel.img is flashed does it change. So I think it is burried in the kernel.

Bob

Oh no, so it's looking hopeless for the moment ... Guessing no more kernel progress? :-)

-Neill.

Miklaus
03-30-2012, 03:36 PM
Bob you can know if the bootlogo is in the kernel, if as you say when you flashed the rom of Polaroid, the bootlogo has changed, to know for sure if it is in the kernel, you have to re-flash this rom, but this time with your kernel.

neillmchi
03-30-2012, 08:41 PM
Bob you can know if the bootlogo is in the kernel, if as you say when you flashed the rom of Polaroid, the bootlogo has changed, to know for sure if it is in the kernel, you have to re-flash this rom, but this time with your kernel.

True, would be good to know. BTW, does anyone have information on the bootloader on this device? Something's obviously loading the bootloader, which loads the other pieces on power on, and I'm curious about that process as well.

Also, I know the kernel is more or less a binary blob in terms of usability at the moment (w/o source), but is there an archive of other kernels that are bootable on this hardware (Arnova 10 G2)? Of course I don't mean with everything supported, just something that technically boots that I could play with?

thanks,
-Neill.

neillmchi
04-12-2012, 07:37 PM
Anyway I think it is in the kernel and the reason why is when I flash other ROMs like the Polaroid for testing, the Arnova gets replaced. Playing around shows ONLY when kernel.img is flashed does it change. So I think it is burried in the kernel.

Bob

In case you still weren't sure, it's 100% stored in the kernel. I've compiled a few other kernels and booted them and none of them have the stock arnova logo ... they also didn't support the hardware of the arnova, but hey ;-)

And while I haven't found a way to replace that initial boot screen (since we'd need a kernel that operates properly first, or some ninja hex edits), I've found that you can remove the logo by adding the following to the parameter file: "logo.nologo"

So for example, if your parameter file has "CMDLINE: console=ttyS1,115200n8n androidboot.console=ttyS1 init=..." or whatever, you can simply add that in there so that it's something like "CMDLINE: console=ttyS1,115200n8n logo.nologo androidboot.console=ttyS1 init=..." instead.

Only downside is that it appears that it also removes your custom bootscreen if you've made one, and it skips right to the bootanimation (if available). Will have to look into that a bit more ...

Finless
04-13-2012, 06:44 AM
You can actually kind of find the image in the kernel. When looking at the kernel in a HEX editor images always look like a common "pattern" of data skewd sideways each row. It's pretty easy to see where the image is in the kernel. Hard part is finding the exect start and stop bytes! So it would be messing around with a hex editor and trial and error.

bob

Damo
04-13-2012, 06:45 AM
You can actually kind of find the image in the kernel. When looking at the kernel in a HEX editor images always look like a common "pattern" of data skewd sideways each row. It's pretty easy to see where the image is in the kernel. Hard part is finding the exect start and stop bytes! So it would be messing around with a hex editor and trial and error.

bob

Wow Bob I bet you could read the Matrix!! :p

Sent from my SK17i using Tapatalk 2

Gargoyle
04-13-2012, 08:13 AM
Wow Bob I bet you could read the Matrix!! :p

It was Bob that wrote it! :D

Damo
04-13-2012, 09:52 AM
It was Bob that wrote it! :D

Bob is our very own morpheus , hehe

Sent from my SK17i using Tapatalk 2

Miklaus
04-13-2012, 01:05 PM
Has anyone tried to change this line in the file init.rc?
# setup the global environment
export ANDROID_BOOTLOGO 1

Do you think that changing the 1 to 0 removes the initial boot logo?Or the system will look for the ANDROID_BOOTLOGO 0 in the kernel and create a boot loop? :confused:

Finless
04-13-2012, 01:20 PM
Has anyone tried to change this line in the file init.rc?
# setup the global environment
export ANDROID_BOOTLOGO 1

Do you think that changing the 1 to 0 removes the initial boot logo?Or the system will look for the ANDROID_BOOTLOGO 0 in the kernel and create a boot loop? :confused:

I have seen that but not tried to change that yet myself.

Bob

neillmchi
04-13-2012, 02:03 PM
You can actually kind of find the image in the kernel. When looking at the kernel in a HEX editor images always look like a common "pattern" of data skewd sideways each row. It's pretty easy to see where the image is in the kernel. Hard part is finding the exect start and stop bytes! So it would be messing around with a hex editor and trial and error.

bob

Yep, like I said, ninja hex edits ;-)

It was easy enough to change some apps in system/bin, or file path locations here and there, but a compressed image inside of a compressed kernel? Not my priority for now anyway ...

It also kind of defeats the purpose of being a Linux kernel -- it's unfortunate that it resorts to binary modification, but I guess that's the way it goes for now ...

neillmchi
04-13-2012, 02:05 PM
Has anyone tried to change this line in the file init.rc?
# setup the global environment
export ANDROID_BOOTLOGO 1

Do you think that changing the 1 to 0 removes the initial boot logo?Or the system will look for the ANDROID_BOOTLOGO 0 in the kernel and create a boot loop? :confused:

Yes, of course I've tried that :-)

It doesn't work for removing the kernel's boot image, just a custom one that you may have made from the boot image.

These are options to remove the boot animation too:

setprop ro.kernel.android.bootanim 0
setprop debug.sf.nobootanimation 1

neillmchi
04-13-2012, 02:14 PM
Has anyone tried to change this line in the file init.rc?
# setup the global environment
export ANDROID_BOOTLOGO 1

Do you think that changing the 1 to 0 removes the initial boot logo?Or the system will look for the ANDROID_BOOTLOGO 0 in the kernel and create a boot loop? :confused:

Oh, and the reason it can't work is because the kernel splash logo is called way before the boot image is loaded. Just like a standard desktop linux system, it is built into the kernel and shown on boot before it even detects hard drives and things like that. It's normally easy to replace in the kernel when you compile it, but since that's not an easy option here ...