Where to find HW KB scancodes - XPERIA X1 Android Development

I'm trying to make proper keymaping for X1 HW keyboard, but i'm stuck at the beginning. How to get keys scancodes?
Is there any WM or Android app that can display scancode on key press?

I don't know anything about scancodes, but could this be useful?
http://msdn.microsoft.com/en-us/library/bb431750.aspx
I found this as well:
http://forum.xda-developers.com/showthread.php?t=326046

There is (i believe, according to the Kovsky Linux Wiki) a fully working keymap file here. i've had a quick look and it looks pretty complicated, but complete, just have to find a way to implement it in android i guess

We just need to replace /system/usr/keylayout/qwerty.kl with that I believe.

Apparently the filesystem is only in RO mode. Let me try to re-mount with rw.
Edit: Nope, doesn't allow me to go to rw mode... don't know how we can replace it.

you need to uncompress the squashfs or the zImage file systems, wherever the file is, overwrite the keyboard and recompress them
I tried messing around with the keyboard mapping as well but messing with the android files that haret is using is over my head

Edit: Read post below for information on how to mount and edit the 2 files (rootfs.img and system.sqsh)

I basically extracted and changed the file and recreated the sqsh, but it was 4.0 which the android kernel doesn't support. I'm going to install a lower kernel (2.6.29)- and install mksquashfs that does support making 3.1 sqfs'.
Edit: Got squash-tools 3.4.1 installed on CentOS 5.3. Changed qwerty.kl into the Xperia keymap. Remade squash file and booted up Haret. Kernel boots up squashfs fine. Time to try if the keys actually work like it should.
Edit2: Keys are even more messed up with this key layout than original qwerty. I looked at the both files and they look hugely different... the format is complete different as well. Also, its no point opening up and recompiling the sqsh, qwerty.kl is symlinked to /etc/keylayout/qwerty.kl, which is in /init.etc/keymaps in the rootfs.img.
How to uncompress/remake squashfs. You need squash-tools 3.4.1 to make a squashfs 3.1 filesystem needed for Fatsal's android kernel (assuming root access).
# unsquashfs system.sqsh; cd squashsh_root/
... do your changes to sqsh here ...
# makesquashfs ./ system.sqsh -le
Click to expand...
Click to collapse
Make sure you do not forget the -le flag, the -le flag was also used in the original file. Check the flags used in the compression of the original sqsh file for reference by going:
# unsqashfs -s system.sqsh
Here's how to mount rootfs.img and location of the keymap that's being called by a symlink in system.sqsh (qwerty.kl) (assuming root access):
# mkdir /mnt/rootfs
# mount -o loop rootfs.img /mnt/rootfs
# cd /mnt/rootfs/init.etc/keymaps
Click to expand...
Click to collapse
rootfs.img is writeable after mounting, so you can make changes and the unmount and copy the new img onto your sd card.
Here's the qwerty.kl included with fatsal's android build, if someone would be kind enough to look at this and modify this one according to it?
key 399 GRAVE
key 2 1
key 3 2
key 4 3
key 5 4
key 6 5
key 7 6
key 8 7
key 9 8
key 10 9
key 11 0
key 158 BACK WAKE_DROPPED
key 230 SOFT_RIGHT WAKE
key 60 SOFT_RIGHT WAKE
key 107 ENDCALL WAKE_DROPPED
key 62 ENDCALL WAKE_DROPPED
key 229 MENU WAKE_DROPPED
key 139 MENU WAKE_DROPPED
key 59 MENU WAKE_DROPPED
key 127 SEARCH WAKE_DROPPED
key 217 SEARCH WAKE_DROPPED
key 228 POUND
key 227 STAR
key 231 CALL WAKE_DROPPED
key 61 CALL WAKE_DROPPED
key 232 DPAD_CENTER WAKE_DROPPED
key 108 DPAD_DOWN WAKE_DROPPED
key 103 DPAD_UP WAKE_DROPPED
key 102 HOME WAKE
key 105 DPAD_LEFT WAKE_DROPPED
key 106 DPAD_RIGHT WAKE_DROPPED
key 114 VOLUME_DOWN
key 116 POWER WAKE
key 212 CAMERA
key 16 Q
key 17 W
key 18 E
key 19 R
key 20 T
key 21 Y
key 22 U
key 23 I
key 24 O
key 25 P
key 26 LEFT_BRACKET
key 27 RIGHT_BRACKET
key 43 BACKSLASH
key 30 A
key 31 S
key 32 D
key 33 F
key 34 G
key 35 H
key 36 J
key 37 K
key 38 L
key 39 SEMICOLON
key 40 APOSTROPHE
key 14 DEL
key 44 Z
key 45 X
key 46 C
key 47 V
key 48 B
key 49 N
key 50 M
key 51 COMMA
key 52 PERIOD
key 53 SLASH
key 28 ENTER
key 56 ALT_LEFT
key 100 ALT_RIGHT
key 42 SHIFT_LEFT
key 54 SHIFT_RIGHT
key 15 TAB
key 57 SPACE
key 150 EXPLORER
key 155 ENVELOPE
key 12 MINUS
key 13 EQUALS
key 215 AT
Click to expand...
Click to collapse
Hope this helps...

I try to relocate qwerty.kl
green code: Edit key code
orange code: Add key code (from other qwerty.kl file)
red: Add supposed key code
Edit: I try to edit system.sqsh but android stuck as boot animation.
key 41 GRAVE
key 79 1
key 80 2
key 81 3
key 75 4
key 76 5
key 77 6
key 71 7
key 72 8
key 73 9
key 82 0
key 158 BACK WAKE_DROPPED
key 230 SOFT_RIGHT WAKE
key 60 SOFT_RIGHT WAKE
key 107 ENDCALL WAKE_DROPPED
key 62 ENDCALL WAKE_DROPPED
key 229 MENU WAKE_DROPPED
key 139 MENU WAKE_DROPPED
key 59 MENU WAKE_DROPPED
key 127 SEARCH WAKE_DROPPED
key 217 SEARCH WAKE_DROPPED
key 228 POUND
key 227 STAR
key 231 CALL WAKE_DROPPED
key 61 CALL WAKE_DROPPED
key 232 DPAD_CENTER WAKE_DROPPED
key 108 DPAD_DOWN WAKE_DROPPED
key 103 DPAD_UP WAKE_DROPPED
key 102 HOME WAKE
key 105 DPAD_LEFT WAKE_DROPPED
key 106 DPAD_RIGHT WAKE_DROPPED
key 114 VOLUME_DOWN
key 115 VOLUME_UP
key 116 POWER WAKE
key 212 CAMERA
key 16 Q
key 17 W
key 18 E
key 19 R
key 20 T
key 21 Y
key 22 U
key 23 I
key 24 O
key 25 P
key 26 LEFT_BRACKET
key 27 RIGHT_BRACKET
key 43 BACKSLASH
key 30 A
key 31 S
key 32 D
key 33 F
key 34 G
key 35 H
key 36 J
key 37 K
key 38 L
key 39 SEMICOLON
key 40 APOSTROPHE
key 14 DEL
key 44 Z
key 45 X
key 46 C
key 47 V
key 48 B
key 49 N
key 50 M
key 51 COMMA
key 52 PERIOD
key 53 SLASH
key 28 ENTER
key 56 ALT_LEFT
key 100 ALT_RIGHT
key 42 SHIFT_LEFT
key 54 SHIFT_RIGHT
key 15 TAB
key 57 SPACE
key 150 EXPLORER
key 155 ENVELOPE
key 12 MINUS
key 13 EQUALS
key 3 AT
key 1 ESCAPE
key 55 MULTIPLY
key 58 CAPS_LOCK
key 118 PLUS
Click to expand...
Click to collapse
Hope this help

I won't have time to try it out X1iser, but I'll put this file into the rootfs.img, and upload it for you to try it yourself.
Edit: Here it is,
http://www.mediafire.com/?owzdrztko32
Replace that rootfs.img with your current one.

Thank, it seems the keyboard layout is like the same as fatsal rootfs.img
What command do you use for unmount /mnt/rootfs?
I use this, but nothing happenend on rootfs.img source file
Code:
umount /mnt/rootfs
I find this for keymaps of android

Make sure you're logged in as root.
When you mount the rootfs.img using:
Code:
mount -o loop rootfs.img /mnt/rootfs
You can edit the keymap file by going:
Code:
vi /mnt/rootfs/init.etc/keymaps/qwerty.kl
You can substitute vi with nano, gedit, or whatever texteditor you like.
When you're done, just go:
Code:
cd ~; umount /mnt/rootfs
OR
Code:
umount -l /mnt/rootfs
Changes should be persistent unlike the read-only squashfs where you have to extract and remake the image.
Then rootfs.img should be ready to be replaced on your SD card.

I use ubuntu and umount -l /mnt/rootfs (other command not work with me) not edit source rootfs.img file.
In propriety "Last modification" is 18 january 2010
Edit: I edit init file and finnaly we can certainly edit rootfs.img work
I try to copy tuttle2.kl into rootfs, qwerty.kl (and turtles2.kl) seems not be our keylayout file

Did you try remounting the image and looking at whether or not you have changed the file?

Yes and modifications are done
I added this in init
Code:
if /bin/grep -c 'keyboard-type=qwerty' /proc/cmdline >/dev/null ; then
echo "USING QWERTY KEYBOARD"
cp -f /init.etc/keymaps/tuttle2-qwerty.kcm.bin /etc/keymaps/tuttle2.kcm.bin
cp -f /init.etc/keymaps/tuttle2-qwerty.kl /etc/keymaps/tuttle2.kl
elif /bin/grep -c 'keyboard-type=azerty' /proc/cmdline >/dev/null ; then
echo "USING AZERTY KEYBOARD"
cp -f /init.etc/keymaps/tuttle2-qwerty.kcm.bin /etc/keymaps/tuttle2.kcm.bin
cp -f /init.etc/keymaps/tuttle2-qwerty.kl /etc/keymaps/tuttle2.kl
else
echo "USING QWERTY KEYBOARD"
cp -f /init.etc/keymaps/tuttle2-qwerty.kcm.bin /etc/keymaps/tuttle2.kcm.bin
cp -f /init.etc/keymaps/tuttle2-qwerty.kl /etc/keymaps/tuttle2.kl
fi
I try to find what keylayout is used and where he is stocked
In system.sqsh there are (with *.kcm):
-qwerty (link to /etc/keymaps)
-sapphire-keypad.kl
-trout-keypad.kl
-trout-keypad-qwertz.kl
-trout-keypad-v2.kl
-trout-keypad-v3.kl
-tuttle2.kl
And other *.kcm, but we don't care at this point

What is this init for? The init already copies /init.etc/ to /etc/ when Android starts, so if you want to replace tuttle2 for each selection, you should do an rm and then a mv.
Basically, assume that /etc/ already has the keymaps ready to go.
X1iser said:
Yes and modifications are done
I added this in init
Code:
if /bin/grep -c 'keyboard-type=qwerty' /proc/cmdline >/dev/null ; then
echo "USING QWERTY KEYBOARD"
cp -f /init.etc/keymaps/tuttle2-qwerty.kcm.bin /etc/keymaps/tuttle2.kcm.bin
cp -f /init.etc/keymaps/tuttle2-qwerty.kl /etc/keymaps/tuttle2.kl
elif /bin/grep -c 'keyboard-type=azerty' /proc/cmdline >/dev/null ; then
echo "USING AZERTY KEYBOARD"
cp -f /init.etc/keymaps/tuttle2-qwerty.kcm.bin /etc/keymaps/tuttle2.kcm.bin
cp -f /init.etc/keymaps/tuttle2-qwerty.kl /etc/keymaps/tuttle2.kl
else
echo "USING QWERTY KEYBOARD"
cp -f /init.etc/keymaps/tuttle2-qwerty.kcm.bin /etc/keymaps/tuttle2.kcm.bin
cp -f /init.etc/keymaps/tuttle2-qwerty.kl /etc/keymaps/tuttle2.kl
fi
I try to find what keylayout is used and where he is stocked
In system.sqsh there are (with *.kcm):
-qwerty (link to /etc/keymaps)
-sapphire-keypad.kl
-trout-keypad.kl
-trout-keypad-qwertz.kl
-trout-keypad-v2.kl
-trout-keypad-v3.kl
-tuttle2.kl
And other *.kcm, but we don't care at this point
Click to expand...
Click to collapse

Is for azerty key setting, in android we can't choose azerty keyboard, I just found what is the problem... it's me
I'm working on kovsky keylayout ^^

I'm done the keyboard layout in qwerty
It's an archive tar.gz, just delete .zip

Hello,
is there anyone, he porting the german layout into this file?
I try to change the Z to Y, but after i´ve done it, my right bracket don´t
work.
I only change the letters in the kovsky-qwerty.kl in the \init.etc\keymaps folder
I forgot anything to change?

Related

How to remap Win key to CTRL

Is there any possibility to remap Win key from keyboart to CTRL? I really don't need Win key in keyboard (I can still use one under display) but CTRL would be very usefull - at least for putty or for copy+paste...
I use the following codes in ae keyboard to get ctrl functionality on win-key and then it still works as win-key too. ctrl-click with stylus does not work however.
Code:
Key 0841 k0241; WIN+[a] --> ctrl+a
Key 0842 k0242; WIN+[b] --> ctrl+b
Key 0843 k0243; WIN+[c] --> ctrl+c
Key 0844 k0244; WIN+[d] --> ctrl+d
Key 0845 k0245; WIN+[e] --> ctrl+e
Key 0846 k0246; WIN+[f] --> ctrl+f
Key 0847 k0247; WIN+[g] --> ctrl+g
Key 0848 k0248; WIN+[h] --> ctrl+h
Key 0849 k0249; WIN+[i] --> ctrl+i
Key 084A k024A; WIN+[j] --> ctrl+j
Key 084B k024B; WIN+[k] --> ctrl+k
Key 084C k024C; WIN+[l] --> ctrl+l
Key 084D k024D; WIN+[m] --> ctrl+m
Key 084E k024E; WIN+[n] --> ctrl+n
Key 084F k024F; WIN+[o] --> ctrl+o
Key 0850 k0250; WIN+[p] --> ctrl+p
Key 0851 k0251; WIN+[q] --> ctrl+q
Key 0852 k0252; WIN+[r] --> ctrl+r
Key 0853 k0253; WIN+[s] --> ctrl+s
Key 0854 k0254; WIN+[t] --> ctrl+t
Key 0855 k0255; WIN+[u] --> ctrl+u
Key 0856 k0256; WIN+[v] --> ctrl+v
Key 0857 k0257; WIN+[w] --> ctrl+w
Key 0858 k0258; WIN+[x] --> ctrl+x
Key 0859 k0259; WIN+[y] --> ctrl+y
Key 086A k026A; WIN+[z] --> ctrl+z
Or you may just use PQzII (Keyboard Helper) from here. It extends the functionality of keyboard with hotkeys also.
stekern said:
I use the following codes in ae keyboard to get ctrl functionality on win-key and then it still works as win-key too. ctrl-click with stylus does not work however.
Code:
Key 0841 k0241; WIN+[a] --> ctrl+a
Key 0842 k0242; WIN+[b] --> ctrl+b
Key 0843 k0243; WIN+[c] --> ctrl+c
Key 0844 k0244; WIN+[d] --> ctrl+d
Key 0845 k0245; WIN+[e] --> ctrl+e
Key 0846 k0246; WIN+[f] --> ctrl+f
Key 0847 k0247; WIN+[g] --> ctrl+g
Key 0848 k0248; WIN+[h] --> ctrl+h
Key 0849 k0249; WIN+[i] --> ctrl+i
Key 084A k024A; WIN+[j] --> ctrl+j
Key 084B k024B; WIN+[k] --> ctrl+k
Key 084C k024C; WIN+[l] --> ctrl+l
Key 084D k024D; WIN+[m] --> ctrl+m
Key 084E k024E; WIN+[n] --> ctrl+n
Key 084F k024F; WIN+[o] --> ctrl+o
Key 0850 k0250; WIN+[p] --> ctrl+p
Key 0851 k0251; WIN+[q] --> ctrl+q
Key 0852 k0252; WIN+[r] --> ctrl+r
Key 0853 k0253; WIN+[s] --> ctrl+s
Key 0854 k0254; WIN+[t] --> ctrl+t
Key 0855 k0255; WIN+[u] --> ctrl+u
Key 0856 k0256; WIN+[v] --> ctrl+v
Key 0857 k0257; WIN+[w] --> ctrl+w
Key 0858 k0258; WIN+[x] --> ctrl+x
Key 0859 k0259; WIN+[y] --> ctrl+y
Key 086A k026A; WIN+[z] --> ctrl+z
Click to expand...
Click to collapse
Where did you edit this keys? In whitch file should I do so?
how to hold down alt while pressing a number?
i use pocket putty on my kaiser and its great, but its really annoying having to type [/win #] every time i want to change the current channel - anyone got any tips or ideas on how i can make this more painless?
(i use [alt + #] or [alt + left/right] on my keyboard at home, but my kaiser doesnt have an alt key - and even it it did i would need to hold down the fn key too to get the numbers)
cheers
fusi
stekern said:
I use the following codes in ae keyboard to get ctrl functionality on win-key and then it still works as win-key too. ctrl-click with stylus does not work however.
Code:
Key 0841 k0241; WIN+[a] --> ctrl+a
Key 0842 k0242; WIN+[b] --> ctrl+b
Key 0843 k0243; WIN+[c] --> ctrl+c
Key 0844 k0244; WIN+[d] --> ctrl+d
Key 0845 k0245; WIN+[e] --> ctrl+e
Key 0846 k0246; WIN+[f] --> ctrl+f
Key 0847 k0247; WIN+[g] --> ctrl+g
Key 0848 k0248; WIN+[h] --> ctrl+h
Key 0849 k0249; WIN+[i] --> ctrl+i
Key 084A k024A; WIN+[j] --> ctrl+j
Key 084B k024B; WIN+[k] --> ctrl+k
Key 084C k024C; WIN+[l] --> ctrl+l
Key 084D k024D; WIN+[m] --> ctrl+m
Key 084E k024E; WIN+[n] --> ctrl+n
Key 084F k024F; WIN+[o] --> ctrl+o
Key 0850 k0250; WIN+[p] --> ctrl+p
Key 0851 k0251; WIN+[q] --> ctrl+q
Key 0852 k0252; WIN+[r] --> ctrl+r
Key 0853 k0253; WIN+[s] --> ctrl+s
Key 0854 k0254; WIN+[t] --> ctrl+t
Key 0855 k0255; WIN+[u] --> ctrl+u
Key 0856 k0256; WIN+[v] --> ctrl+v
Key 0857 k0257; WIN+[w] --> ctrl+w
Key 0858 k0258; WIN+[x] --> ctrl+x
Key 0859 k0259; WIN+[y] --> ctrl+y
Key 086A k026A; WIN+[z] --> ctrl+z
Click to expand...
Click to collapse
Where did you change all these setting?!

Mobilnaut SYM - typing accented characters on hardware keyboard of HTC Touch PRO

Hi,
I made this little program for typing accented characters on the hardware keyboard. It's simple SIP, which means it will be shown as standard input method, but when you click on the icon, no keyboard will be shown. That's useful when you are using hardware keyboard and you are trying to type something, with this SIP no software keyboard will pop up and cover half of the screen. And it's automatically activated only in landscape, in portrait mode you can use your favorite software input method. This program will remember the input method you used before, and when you slide your keyboard back, this method will be set as active.
So when this input method is activated, you can simply type on hardware keyboard for example letter 'A', then press "SYM" key (next to the Space key) and the letter 'A' will be changed to 'Á'. This depends on your \Windows\Sym.txt file, which you can change to whatever you want. When you want to show the Symbol screen (default behaviour when you press "SYM" key), simply press Shift + SYM, or when you press SYM key after typing some letter, which is not in Sym.txt file, this screen will appear as well.
Installation:
1) download CAB file from here:
Code:
http://www.mobilnaut.net/cz/mnsym.htm
(click on "Stáhnout")
2) copy it into your device and install it
3) perform softreset
4) if you want to change the accented letters, change file \Windows\Sym.txt or \Windows\Sym.0409.txt to your own file
Uninstallation:
1) you can uninstall this application via Settings -> Remove Programs
Known issues:
1) In landscape mode Volume buttons doesn't work - many applications have the same problem, it's because of the api function I used - but in portrait mode everything's ok
2) it seems to be not compatible with S2U2
3) during boot process (green windows mobile screen) black bar with "Mobilnaut SYM" text could be shown, but it will disappear in a moment
Warning: This application is provided "as is", without warranty of any kind. Use it at your own risk!
Thank you...
This solved my keyboard problems and hardware sym key issues... super....
Doesnt work for me with Elite RC2 and S2U2 installed. The program installs, but the SYM button still brings up the table.
Unfortunatelly it's not compatible with s2u2 application... I don't use s2u2, so now I don't know why it doesn't work.
spoke too soon
Somehow, when I press the / and sym, it doesn't change the symbol to \
just gets an é same with . and sym key..
Anybody know how to fix this?
This is so frustrating...
It should show the window with symbol list, because SYM key works only with letters, not with symbols. So when you press "/" button, the SYM key won't work and the list of symbols will appear. Mybe in the future I'll add the support for symbols...
that's my whole problem :-D
Jimm98y said:
It should show the window with symbol list, because SYM key works only with letters, not with symbols. So when you press "/" button, the SYM key won't work and the list of symbols will appear. Mybe in the future I'll add the support for symbols...
Click to expand...
Click to collapse
somehow, my symbol pad doesn't show up..
How can I map the sym key to do that?
I think I need the file symselector.exe out of my windows folder, but It's not in Da_G's rom.
Can you maybe post it here?
I think that's why I cant use the sym key.
Can you add support, that would be so great..
Same behaviour when I press e, I can't scroll through the e with the accents, it just ads the same e' symbol.
Do you know how to fix this?
I tried ezinput, that solved some of my problems, and your cab is helpful.
It's just the final bit that's frustrating. I want my \ key
Any help would be greatly appreciated.
not symselector...
Ok, got an answer from Sleuth255 (thanks for that) that the symselector is just an invalid registry key.
So all hope is on you now mate, can you help me get my \ back?
Thanks bunch...
Any news???
Hey Jimmy..any news on the development of this soft to include symbols???
That would make this soft truly awesome..
And exactly what doesn't work with S2U2?
Seems to be running quote well on my device...
What are the problems people are encountering?
Compatibility issues with S2U2 are solved by the newest version of S2U2. Now I'm trying to add some new features, but I don't have much free time, so please be patient.
No Problem...
Jimm98y said:
Compatibility issues with S2U2 are solved by the newest version of S2U2. Now I'm trying to add some new features, but I don't have much free time, so please be patient.
Click to expand...
Click to collapse
All good things in life are worth waiting for..
Glad you're on it..
Keep up the good work
MAybe this helps....
fixed the sym key
http://forum.xda-developers.com/showpost.php?p=3065204&postcount=604
Jimm98y said:
Hi,
I made this little program for typing accented characters on the hardware keyboard. It's simple SIP, which means it will be shown as standard input method, but when you click on the icon, no keyboard will be shown. That's useful when you are using hardware keyboard and you are trying to type something, with this SIP no software keyboard will pop up and cover half of the screen. And it's automatically activated only in landscape, in portrait mode you can use your favorite software input method. This program will remember the input method you used before, and when you slide your keyboard back, this method will be set as active.
So when this input method is activated, you can simply type on hardware keyboard for example letter 'A', then press "SYM" key (next to the Space key) and the letter 'A' will be changed to 'Á'. This depends on your \Windows\Sym.txt file, which you can change to whatever you want. When you want to show the Symbol screen (default behaviour when you press "SYM" key), simply press Shift + SYM, or when you press SYM key after typing some letter, which is not in Sym.txt file, this screen will appear as well.
Installation:
1) download CAB file from here:
Code:
http://www.mobilnaut.cz/?a/1753
(click on "Mobilnaut SYM pro HTC Touch Pro" and then on "Stáhnout")
2) copy it into your device and install it
3) perform softreset
4) if you want to change the accented letters, change file \Windows\Sym.txt or \Windows\Sym.0409.txt to your own file
Uninstallation:
1) you can uninstall this application via Settings -> Remove Programs
Known issues:
1) In landscape mode Volume buttons doesn't work - many applications have the same problem, it's because of the api function I used - but in portrait mode everything's ok
2) it seems to be not compatible with S2U2
3) during boot process (green windows mobile screen) black bar with "Mobilnaut SYM" text could be shown, but it will disappear in a moment
Warning: This application is provided "as is", without warranty of any kind. Use it at your own risk!
Click to expand...
Click to collapse
I have a Fuze, so the keyboard layout is a little different. The SYM key is actually a combination of pressing FN+Space bar. However, when you press that, you get just the symbol panel... I would love to have the application you developed working!
I installed Mobilnaut SYM and it works very well
If you add support for the symbols in the future I propose following:
/ => \ |
( => [ { <
) => ] } >
Thank you for this nice software
help for other keyboard layouts?
As posted, I have a FUZE. Any way you can remap the SYM key to the one to the left of the Spacebar? On the FUZE keyboard, the SYM is obtained by pressing Fn+Space. This doesn't work for you Mobilnaut....
I'm sorry for late response, I was having hard time at school, too many exams in past few days. Well that would be a problem, because I don't have fuze so I can't test it. I'll see what can I do, when I'll have some time...
fuze layout
This is the Fuze layout, as it appears in eT9.Raphael.wwe.atnt.kmap. Would this help?
//
// N O T E: This file must be saved as Unicode
//
// This file contains the virtual keys mapping table for the
// Raphael device World-Wide English QWERTY layout.
// The mapping table is defined as follows
//
// VK_TPOUND = 0x78
// VK_TSTAR = 0x77
// VK_TAB = 0x09
//
// We do not support escape value yet. So the key/char values should be
// entered explicitly or by encoding start with 0x
//
// Format:
// {VK VK1 VK2 CH1 CH2}
// VK -> value from keyboard driver
// VK1 -> key mapped, interpret by IME
// VK2 -> key to interpret when for press and hold
// CH1 -> symbols produced by Fn + key
// CH2 -> symbols in 123 mode
// CH4 -> Key Index
// Top Row
// {1 1 1 ! ! 0xff} // original layout
{@ @ @ % % 0xff}
{- - - ¢ ¢ 0xff}
{! ! ! $ $ 0xff}
{( ( ( & & 0xff}
{) ) ) # # 0xff}
{' ' ' 1 1 0xff}
{" " " 2 2 0xff}
{; ; ; 3 3 0xff}
{: : : * * 0xff}
{/ / / = = 0xff} // 0xBD = VK_OEM_MINUS
{- - - + + 0xff} // 0xBB = VK_OEM_PLUS
// Second Row
// {0x09 0x09 0x00 0x00 0x00 0xff} // TAB - 0x09 = VK_TAB
// {0x09 0x14 0x14 0x00 0x00 0xff} // TAB - 0x09 = VK_TAB, 0x14 = VK_CAPITAL
{Q Q Q Q Q 0x00}
{W W W W W 0x01}
{E E E E E 0x02}
{R R R R R 0x03}
{T T T T T 0x04}
{Y Y Y 4 4 0x05}
{U U U 5 5 0x06}
{I I I 6 6 0x07}
{O O O O O 0x08}
{P P P P P 0x09}
{0x08 0x08 0x08 0x2E 0x2E 0xff} // BACKSPACE - 0x08 = VK_BACK, 0x2E = VK_DELETE
// Third Row
// {0xEC 0xEC 0x00 0x00 0x00 0xff} // FN - 0xEC = FN
// {0x14 0xEC 0xEC 0x00 0x00 0xff} // CAPS - 0x14 = VK_CAPITAL, 0xEC = FN
{A A A A A 0x0a}
{S S S S S 0x0b}
{D D D D D 0x0c}
{F F F F F 0x0d}
{G G G G G 0x0e}
{H H H 7 7 0x0f}
{J J J 8 8 0x10}
{K K K 9 9 0x11}
{L L L L L 0x12}
{0xF2 0x0D 0x00 0x00 0x00 0xff} // ENTER - 0x0D = VK_RETURN
// Fourth Row
{0xA0 0x10 0x10 0x00 0x00 0xff} // SHIFT - 0xA0 = VK_LSHIFT, 0x10 = VK_SHIFT
{Z Z Z Z Z 0x13}
{X X X X X 0x14}
{C C C C C 0x15}
{V V V V V 0x16}
{B B B B B 0x17}
{N N N 0 0 0x18} // Zero
{M M M M M 0x19}
{? ? ? ? ? 0xff} // 0xBF = VK_OEM_2 = VK_SLASH
{0xF1 0x26 0x26 0x21 0x21 0xff} // UP - 0x26 = VK_UP, 0x21 = VK_PRIOR (PAGE UP)
// Bottom Row
// {0xA2 0x11 0x00 0x00 0x00 0xff} // OK, 0xA2 = VK_LCONTROL, 0x11 = VK_CONTROL
{0xEC 0xEC 0x00 0x00 0x00 0xff} // FN - 0xEC = FN
// {0xEB 0xEB 0x00 0x00 0x00 0xff} // SMS - 0xEB = SMS
// {0xEF 0xEF 0x00 0x00 0x00 0xff} // MSG - 0xEF = MSG
{0xE6 0xE6 0x00 0x00 0x00 0xff} // SYM - 0xE9
{0xEA 0x12 0x00 0x00 0x00 0xff} // T9 Menu - 0x12
{0x20 0x20 0x20 0x00 0x00 0xff} // SPACE - 0x20 = VK_SPACE
{, , , , , 0xff}
{. . . . . 0xff}
{0xF5 0x25 0x25 0x00 0x00 0xff} // LEFT - 0x25 = VK_LEFT
{0xF3 0x28 0x28 0x22 0x22 0xff} // DOWN - 0x28 = VK_DOWN, 0x22 = VK_NEXT (PAGE DOWN)
uninstalling?
[- removed]
here's a pic of the layout...maybe this helps
If you can fix it, perfect... I would be grateful for ever!
using mobilnaut sym on Fuze?
Jimm, any chance you can take a look at how to trigger your software with a key other than SYM? Thanks a lot!

Boot.img - Codes

OK, so I have been at this for a while now, trying to figure out how to pull boot.img. We need this in order to get a custom recovery image made.
The problem is that most of the help that's out there refers to doing a dump based on identifying the proper /proc/MTD. It's never that simple though. This phone doesn't have it (and we don't have a map of where to go from here).
Here is the partition info:
Code:
major minor #blocks name
7 0 13545 loop0
7 1 202829 loop1
7 2 31217 loop2
7 3 18743 loop3
7 4 13545 loop4
179 0 15679488 mmcblk0
179 1 2048 mmcblk0p1
179 2 2048 mmcblk0p2
179 3 7168 mmcblk0p3
179 4 1 mmcblk0p4
179 5 28672 mmcblk0p5
179 6 204800 mmcblk0p6
179 7 4096 mmcblk0p7
179 8 24576 mmcblk0p8
179 9 8192 mmcblk0p9
179 10 4096 mmcblk0p10
179 11 4096 mmcblk0p11
179 12 1024000 mmcblk0p12
179 13 1572864 mmcblk0p13
179 14 12288 mmcblk0p14
179 15 12599296 mmcblk0p15
179 16 15622144 mmcblk1
179 17 15621120 mmcblk1p1
254 0 13545 dm-0
254 1 202828 dm-1
254 2 31216 dm-2
254 3 18742 dm-3
254 4 13545 dm-4
Can anyone with a few more years on me in this racket give me a heads up on this? Perhaps a mapping for us to get started? Yeah, I know I'm totally wet behind the ears, but someone has to get this thing rolling. Hopefully that doesn't mean I'll be the first to brick my phone (had a close call tonight).
See what's mounted by typing "mount" first. It'll show you what mmcblk0pX maps to what (mounted, that is).
thecubed said:
See what's mounted by typing "mount" first. It'll show you what mmcblk0pX maps to what (mounted, that is).
Click to expand...
Click to collapse
ok, so here was the output (of what i assume is the relevant part):
Code:
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
/dev/block/mmcblk0p12 /system ext3 ro,relatime,data=ordered 0 0
/dev/block/mmcblk0p13 /data ext3 rw,nosuid,nodev,relatime,errors=continue,data=ordered 0 0
/dev/block/mmcblk0p6 /cache ext3 rw,nosuid,nodev,relatime,errors=continue,data=ordered 0 0
/dev/block/mmcblk0p5 /persist ext3 rw,nosuid,nodev,relatime,data=ordered 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/extasec tmpfs rw,relatime,mode=755,gid=1000 0 0
So 12 is system, 13 is data, 6 is cache, and 5 is persist. What I'm not seeing is boot. Am I missing anything here?
To find unnamed partitions, you might want to dump them to your SD card and try mounting the partitions on your PC.
You can copy a partition to a file on your SD card by using "dd if=/dev/block/mmcblk0pX of=/sdcard/mmcblk0pX.img bs=1024"
Then on your desktop, you can try running fdisk to see what the partition type is and issue a "mkdir /mnt/test" then "mount -o loop -t <type of partition from fdisk> /path/to/mmcblk0pX.img /mnt/test".
From there, you should be able to investigate what's in those partitions by poking around in /mnt/test on your desktop. Once you're done, "umount /mnt/test" to close the image file.
Referring to your list of partitions and sizes, partitions of 2048 blocks or less are probably not worth your time investigating, however I may be wrong.
Also, quick tip: mmcblk0 (with no pX) is the entire onboard storage as one unit. Don't bother dumping that to your SD card, since it contains all partitions, but will be a really big file and a big mess to figure out the partitions and mount it.
Good luck!
Outstanding, and THANKS A MILLION for the help. I've been banging my head against the wall here...
I should probably hit the sack, but I had started pulling those already, so I've got a head start.
Okay, good luck! I don't have this device, but a friend is getting one here soon (not sure how soon though) so I'm interested in getting CWM ported and some groundwork laid for CM7/etc on it.
Whenever you get time, I'm interested in seeing what you find the partitions are...
Thanks!
Went ahead and put a little more time into it...
used your method for dumping each individual partition.
A listing with file sizes:
Code:
2048 mmcblk0p1 4096 mmcblk0p11 2048 mmcblk0p2 4 mmcblk0p4 24576 mmcblk0p8
4096 mmcblk0p10 12288 mmcblk0p14 7168 mmcblk0p3 4096 mmcblk0p7 8192 mmcblk0p9
My common fdisk result (for all files) is:
Code:
fdisk -l mmcblk0p11
Disk mmcblk0p11: 0 MB, 0 bytes
255 heads, 63 sectors/track, 0 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf6908d66
Disk mmcblk0p11 doesn't contain a valid partition table
Maybe I need to look at this again when I'm a little less tired, but this is the result of every image file.
P11 looks to be just a placeholder partition. Try p3, p8, p9, and p14.
Usually /boot is a lower number partition...
If you could upload the dumps of those partitions somewhere, I may be able to tell you which is which. (PM the link, don't post public- I'm not sure how XDA would feel about that).
This shouldn't be too hard to identify which is which. If you're well versed in hex editing, you could run those images through a hex dumper and check the file's magic numbers. I'm not too familiar with this device, but I'd say it can't be much different than the HTC boot.img format. Grab a boot.img from somewhere and see if the first couple of bytes match up on the dumps you've got.
From there, that should give you a clue with which is which. I'm betting you'll find which is the kernel by just doing a "strings" on the dumps and looking for things like "kernel" or "linux".
Good luck!
EDIT: after doing some reading, looks like some of the partitions are the fastboot type. Fastboot images = kernel + ramdisk. And, at least one of those partitions will be the Qualcomm AMSS partition for the radio chipset. Do a "strings <filename> | grep -i qualcomm" (or replace qualcomm with things like 'amss' or 'radio') to find which is which.
QualComm didn't turn up anything, so I changed the search to "comm." I don't have much time to look at this, but here's a quick dump:
mmcblk0p1 = radio?
Code:
mmcblk0p1 | grep -i comm
Device Transfer: Failed to queue the transfer command
DMOV Issue Cmd: Command issued
DMOV Request not Valid: Command list not on 64-bit boundary
DMOV Request not Valid: Invalid number of commands
DMOV Get Chan %d Error: Command error occured
DMOV Get Chan %d Error: Command-phase bus error occured
DMOV Stop Handler: cannot stop channel %d, commands pending
DMOV Stop Handler: cannot stop channel %d, issuing commands
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_auth_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/target/msm7x30/src/boot_pbl_accessor.c
DMOV Request not Valid: Boot and Tools should allocate their own command list memory
mmcblk0p2 = boot?
Code:
strings mmcblk0p2 | grep -i comm
QC_SMEM_PROC_COMM_CQ
ip_uint32 idev_comm_open( void )
dt_uint32 dt_CommOpen( void )
void idev_comm_close(ip_uint32 h)
void dt_CommClose(dt_uint32 h)
ip_commStatus_e idev_comm_queryCloseStatus(ip_uint32 h)
ip_commStatus_e idev_comm_queryConnectStatus(ip_uint32 h)
dt_CommStatus dt_QueryConnectStatus(dt_uint32 h)
const ip_int16 idev_comm_secureInitContext( void )
const dt_int16 dt_CommSecureInitContext( void )
void idev_comm_secureDeleteContext( void )
void dt_CommSecureDeleteContext( void )
EP0 command reply was not sent correctly %d [%d:%d]
Device Transfer: Failed to queue the transfer command
[AUE] update common code block (size):
[AUE] update common code block do_a_swap_ccb(size):
[AUE] Error: get common code block range
[AUE] Error: get common function block range
DMOV Issue Cmd: Command issued
DMOV Request not Valid: Command list not on 64-bit boundary
DMOV Request not Valid: Invalid number of commands
DMOV Get Chan %d Error: Command error occured
DMOV Get Chan %d Error: Command-phase bus error occured
DMOV Stop Handler: cannot stop channel %d, commands pending
DMOV Stop Handler: cannot stop channel %d, issuing commands
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_elf_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_elf_loader_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_sec_elf_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_sec_elf_loader_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_clobber_prot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_clobber_prot_local.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nand_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_partition.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_hash_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_auth_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_dload_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/unified_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/osbl_prog_boot_mproc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/target/msm7x30/src/boot_pbl_accessor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nor_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_sdcc_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_wm_ldr.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_android_ldr.c
void idev_comm_connect(ip_uint32 h, ip_char* addr, ip_uint16 PortNum, ip_int32 TimeOut)
void dt_CommConnect(dt_uint32 h, dt_char* addr, dt_uint16 PortNum, dt_int32 TimeOut)
void idev_comm_send(ip_uint32 h, ip_char* SendBuf, ip_uint32 SendLen, ip_int32 TimeOut)
void dt_CommSend(dt_uint32 h, dt_char* SendBuf, dt_uint32 SendLen, dt_int32 TimeOut)
ip_commStatus_e idev_comm_querySendStatus(ip_uint32 h, ip_uint32* SentLen)
dt_CommStatus dt_QuerySendStatus(dt_uint32 h, dt_uint32* SentLen)
void idev_comm_recv(ip_uint32 h, ip_char* RecvBuf, ip_uint32 RecvLen, ip_int32 Timeout)
void dt_CommRecv(dt_uint32 h, dt_char* RecvBuf, dt_uint32 RecvLen, dt_int32 Timeout)
ip_commStatus_e idev_comm_queryRecvStatus(ip_uint32 h, ip_uint32* RecvLen)
dt_CommStatus dt_QueryRecvStatus(dt_uint32 h, dt_uint32* RecvLen)
const ip_int16 idev_comm_setSecureInfo( ip_int32 protocolID, ip_uint32 cipherSuites[], ip_int32 cipherSuitesSize, ip_char certificate[], ip_int32 certificateSize)
const dt_int16 dt_CommSetSecureInfo( dt_int32 protocolID, dt_uint32 cipherSuites[], dt_int32 cipherSuitesSize, dt_char certificate[], dt_int32 certificateSize)
ip_commStatus_e idev_httpTerminateAsync( ip_httpInterface_s *httpInterface )
CH9: Received vendor specific command for device, but no handlers registered
CH9: Received reserved command for device, but no handlers registered
[AUE] Info: no common code block, this is not ARM region, do zipping instead
Info: no common func block, this is not ARM region, do zipping instead
DMOV Request not Valid: Boot and Tools should allocate their own command list memory
cdc_handle_encapsulated_command
encapsulated_command_complete
hfat_common.c
EP0 command reply was not sent correctly %d [%d:%d]
CH9: Received vendor specific command for device, but no handlers registered
CH9: Received reserved command for device, but no handlers registered
The others returned nothing.
Just for shoots and giggles
I expanded the search for the word boot on 02, and here is what it revealed:
Code:
strings mmcblk0p2 | grep -i boot
/sys_boot/keystore/key.str
/sys_boot/keystore/store.pt
sys_boot
; Time Stamp unavailable from boot loader.
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_mc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_flash.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_flash_dev_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_flash_dev_nand_mproc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_error_handler.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_aarm_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_hash.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_hw_init.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_mc_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_flash_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_setup_mpu_dal.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_adsp_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_load_ramfs.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_sd_img_update.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_elf_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_elf_loader_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_sec_elf_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_sec_elf_loader_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_clobber_prot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_clobber_prot_local.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nand_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_partition.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_hash_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_auth_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_dload_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/unified_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/osbl_prog_boot_mproc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/target/msm7x30/src/boot_pbl_accessor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nor_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_sdcc_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_wm_ldr.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_android_ldr.c
DMOV Request not Valid: Boot and Tools should allocate their own command list memory
boothw_target.c
sys_boot
smem_boot_init: version %x does not match all procs!
boot_elf_loader
boot_elf_loader_factory
boot_sec_elf_loader
boot_sec_elf_loader_factory
boot_flash_trans_nand
boot_flash_trans_nand_factory
boot_flash_trans_nor
boot_flash_trans_nor_factory
boot_flash_trans_sdcc
boot_flash_trans_sdcc_factory
boot_flash_dev_nor
boot_flash_dev_nand
boot_flash_dev_sdcc
clkrgm_mpss_boot.c
/mmc1/IMAGE/APPSBOOT.MBN
/mmc1/IMAGE/BOOT.IMG
/mmc1/IMAGE/EMMCBOOT.MBN
EMMCBOOT.MBN
BOOT.IMG
/sys_boot/IMAGE/
/sys_boot/IMAGE2/
/sys_boot/IMAGE3/
bootsymmetrickey
E/boot/qcsbl
F/boot/oemsbl
F/boot/osbl
G/boot/appsbl
H/boot/apps
I/boot/modem
J/boot/modem_fs1
K/boot/modem_fs2
L/boot/fota
M/boot/qcsbl_cfg
P/boot/adsp
01, same search:
Code:
trings mmcblk0p1 | grep -i boot
sys_boot
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_mc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_error_handler.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_flash.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_configure.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_partition.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_auth.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_target_accessor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_parser.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_onenand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_sflashc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_shared.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_clk.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_clk_settings.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2_onenand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ddr.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_auth_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/target/msm7x30/src/boot_pbl_accessor.c
DMOV Request not Valid: Boot and Tools should allocate their own command list memory
sys_boot
smem_boot_init: version %x does not match all procs!
E/boot/qcsbl
F/boot/oemsbl
F/boot/osbl
G/boot/appsbl
H/boot/apps
I/boot/modem
J/boot/modem_fs1
K/boot/modem_fs2
L/boot/fota
M/boot/qcsbl_cfg
P/boot/adsp
02 - search for "home"
Code:
strings mmcblk0p2 | grep -i home
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_mc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_flash.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_flash_dev_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_flash_dev_nand_mproc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_error_handler.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_aarm_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/shared/src/osbl_hash.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_hw_init.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_mc_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_flash_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_setup_mpu_dal.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_adsp_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_load_ramfs.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/osbl/target/msm7x30/src/osbl_sd_img_update.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_elf_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_elf_loader_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_sec_elf_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_sec_elf_loader_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_clobber_prot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_clobber_prot_local.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_trans_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nand_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_partition.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_hash_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_auth_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_dload_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/unified_boot.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/osbl_prog_boot_mproc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/target/msm7x30/src/boot_pbl_accessor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_nor_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_flash_dev_sdcc_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_wm_ldr.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_android_ldr.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/wiredconnectivity/hsusb/core/src/jslave/core/jusb_core.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/wiredconnectivity/hsusb/core/src/jslave/dcd/dcd_tdi_4x.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/wiredconnectivity/hsusb/core/src/jos/jos_bus.c
01 search for home
Code:
strings mmcblk0p1 | grep -i home
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_mc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_error_handler.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_flash.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_configure.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_partition.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_loader.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_auth.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_target_accessor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/shared/src/dbl_parser.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_target.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_onenand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_sflashc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_shared.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_clk.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_clk_settings.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2_nand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2_onenand.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ebi2_nor.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_ddr.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/dbl/target/msm7x30/src/dbl_flash_sdcc.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/shared/src/boot_auth_if.c
/home/hd.mo/vs910_froyo_ZV4_04/modem/AMSS/products/7x30/core/boot/secboot2/common/target/msm7x30/src/boot_pbl_accessor.c
Remembering that factory reset is the sole function of the boot-loader on this device, I did a search for "factory"
02:
Code:
mmcblk0p2 | grep -i factory
boot_elf_loader_factory
boot_sec_elf_loader_factory
boot_flash_trans_nand_factory
boot_flash_trans_nor_factory
boot_flash_trans_sdcc_factory
01 - no results
I think we have a winner? I'd *almost* place money on 2 being boot, but I need a little insight here.
I should be able to pass you these files tonight. I'm just limited right now as I'm at work and remoting in on a slow connection.
Great work!
A few possible corrections:
Thought #1: From what I've read, AMSS (the radio) has multiple 'nvram partitions' where configuration is stored. The partitions with size 2048 look like those.
My updated guess:
P1 = hardware bootloader (like HBOOT on a HTC device)
P2 = second stage bootloader (references to android and wm_ldr)
The actual AMSS firmware is usually above 10MB in size, so the radio firmware is most likely a larger partition.
Thought #2: /boot is quite possibly a fastboot image. Those are usually compressed, hence you will not find any strings in it. It would be all binary.
If you can, run "hexdump -n 32 <filename>" on each of the dumps, and paste the output here.
With that hexdump information, I can tell you which partitions have the fastboot magic number and which are AMSS configuration partitions or ext3 filesystems.
As a side note, I wonder if this device supports fastboot commands... you could potentially try something like "fastboot reboot recovery" which should be harmless to see. Of course, you'd need Google's fastboot tools on your machine first though. (http://android-dls.com/wiki/index.php?title=Fastboot)
If it turns out that fastboot works, a nondestructive way of testing if the device is signed would be to extract the recovery image and replace it's ramdisk with one containing Clockwork. It may be as simple as "fastboot boot <newimage>" to boot the new image without actually changing anything on the phone.
Anyway, get those hex dumps, then we'll see where that leads...
Great work!
Alright - I'll get on that tonight when I get home (probably about another 2.5 hours from now including dinner).
The other thing that's been rattling around in my head, and I know I shouldn't be jumping this far ahead (nor do I want to derail this thread), is I (and the entire community) need to make some modifications to the android.policy.jar thus completing the migration from Bing on this phone. One string would make all the difference Unfortunately, it is odexed. I'm guessing this has many dependencies, and the best method to go about this would be to pretty much deodex the entire O.S.. Obviously, that's not something I feel comfortable with doing until we are completed with this, but my thought process is on track for what I need to do, right?
I also need to research if it is possible to dump my entire phone as an image as part of an Android AVM, so I don't end up bricking my phone. I had my entire phone lockup and go black last night. About had a heart attack.
Obviously, this takes precedence, but just wanted to throw all that out there while it was fresh in my mind (things get lost quickly - I have twenty browser windows open juggling about a dozen different thought processes).
Hex Dumps
P1:
Code:
0000000 dcd1 844b 1034 73d7 435a 7d0b ffff ffff
0000010 ffff ffff ffff ffff ffff ffff ffff ffff
0000020
P2:
Code:
0000000 000b 0000 0003 0000 0000 0000 0000 0450
0000010 31f8 0013 31f8 0013 31f8 0463 0000 0000
0000020
I'll have to do the fastboot install at home.
majorpay said:
Alright - I'll get on that tonight when I get home (probably about another 2.5 hours from now including dinner).
The other thing that's been rattling around in my head, and I know I shouldn't be jumping this far ahead (nor do I want to derail this thread), is I (and the entire community) need to make some modifications to the android.policy.jar thus completing the migration from Bing on this phone. One string would make all the difference Unfortunately, it is odexed. I'm guessing this has many dependencies, and the best method to go about this would be to pretty much deodex the entire O.S.. Obviously, that's not something I feel comfortable with doing until we are completed with this, but my thought process is on track for what I need to do, right?
I also need to research if it is possible to dump my entire phone as an image as part of an Android AVM, so I don't end up bricking my phone. I had my entire phone lockup and go black last night. About had a heart attack.
Obviously, this takes precedence, but just wanted to throw all that out there while it was fresh in my mind (things get lost quickly - I have twenty browser windows open juggling about a dozen different thought processes).
Click to expand...
Click to collapse
I believe I saw that it has been deodexed on stetsonaw's Twitter page. You may want to get in touch with him
Yeah, I saw he had claimed that over on androidforums. I should start checking that area more often. I put a post out to feel it out and see if he might be willing to throw it my way I think ultimately he is waiting patiently in the wings waiting for us to get done with this so he can release the ROM he is working on.
Just wanted to say keep up the good work. I plan to look into this more when I get home but sounds like you are definitely on the right track. Excited to see more progress soon.
I just got into the scene as this is my first droid phone but I have been reading up as quickly as possible to contribute to making roms.
OK, so I am back in the saddle.
I have run a ./fastboot reboot, and as expected, no response. (says waiting for device) I believe I still need to modify my hosts.
I expect you've seen my hex dumps. Any thoughts?
Edit: Phone went into "Download is in progress. Do not disconnect cable."
Real? I don't know, but this is hindering me from moving forward.
majorpay said:
P1:
Code:
0000000 dcd1 844b 1034 73d7 435a 7d0b ffff ffff
0000010 ffff ffff ffff ffff ffff ffff ffff ffff
0000020
P2:
Code:
0000000 000b 0000 0003 0000 0000 0000 0000 0450
0000010 31f8 0013 31f8 0013 31f8 0463 0000 0000
0000020
I'll have to do the fastboot install at home.
Click to expand...
Click to collapse
Great- now I just need hexdumps of the other partitions I listed: P3, P8, P9, and P14.
P1 and P2 are of little interest to us, we're looking for the one containing recovery and the main kernel+ramdisk.
As soon as we identify which is the recovery partition, we'll be super close to finding whether recovery is signed and one step closer to porting CWM.
PS: Fastboot reboot may have put your phone in download mode. If you're stuck in it, just try using "fastboot reboot recovery", then from there you should be able to select "reboot" and end up in Android again...
p3
Code:
0000000 ffff ffff ffff ffff ffff ffff ffff ffff
*
0000020
p8
Code:
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
0000020
p9
Code:
0000000 4e41 5244 494f 2144 66ac 0038 8000 0020
0000010 fb21 002f 0000 0120 0000 0000 0000 0110
0000020
p14
Code:
0000000 4e41 5244 494f 2144 66ac 0038 8000 0020
0000010 8cd9 0033 0000 0120 0000 0000 0000 0110
0000020
And ./fastboot devices consistently shows nothing. I added the device per Ubuntu guide, and restarted udev, but still nada.
Edit... I missed something on fastboot (I added the wrong device). I'll go back and recheck.
Edit 2: Still no luck.
As an update, it appears that holding the power button with the volume button up puts the device into what looks like a fastboot state (only when plugged into usb).
Edit: Maybe this is just a recovery mode / Emergency mode.
It is designated by a sign that reads: "Download is in progress. Do not disconnect cable."
According to my usb device information, it shows up as a LGE USB CDMA Modem.
Code:
lsusb
Bus 001 Device 025: ID 1004:6200 LG Electronics, Inc.
51-android.rules
Code:
SUBSYSTEM=="usb", SYSFS{idVendor}=="1004", MODE="0666", OWNER="<my username>"
SUBSYSTEM=="usb", ATTRS{idVendor}=="1004",ATTR{idProduct}=="6200", OWNER="<my username>"
"./fastboot devices" shows nothing

[Tool][Test] Firmware Extractor

Hello
Not sure if this is the right place, but I don't think development is the right thread either as I simply need a one time tester and there is already a dev thread for the tool in Optimus Black Forums.
I have developed a tool that extracts LG's bin firmware. I extended it to extract tot files as well. As some of you might know the tot files splits some partitions up into multiple files. I already managed to extract the tot file into their various part, but I have only recently added the ability to merge the parts to it's partition
I don't have enough bandwidth to download one of your firmware files to test it so can someone please test the tool.
Heres the dev thread : link
Heres the git : link
You'll have to compile it with gcc/mingw. The tools name must be BinExtractor(.exe) or it won't remove the first argument (usually the tool path and then it will keep on showing the usage no matter what)
Run it with
Code:
BinExtractor -daph Path/To/Tot/File/firmware.tot
and see if it displays the header info. If that succeeds please test the extraction
Code:
BinExtractor -extract Path/To/Tot/File/firmware.tot
It should prompt you that it detected data blocks with identical names and ask you if you want to merge them. And you want to merge them . After it extracted the files can you please check that the various partitions that it extracted are correct.
To check the system partition mount or extract the system partition in Linux and in Windows use a tool like ext2read to check it.
If it fails with an error please post the results from -daph (and -extract if it happened there) and the first meg of the tot file you used.
If the partitions aren't extracted properly (or merged properly) and -daph succeeded please post just the output from -daph and in what way the output is faulty.
Thanks in advance.
Wow it moved out of page 1 already.
Bump.
It was ignored because the Nexus 4 doesn't use LG .bin files, it uses standard .img files.
Rusty! said:
It was ignored because the Nexus 4 doesn't use LG .bin files, it uses standard .img files.
Click to expand...
Click to collapse
Thanks for responding, but according to this: [Stock] Stock ROMs Collection US/CA/EU/AU
These files are in TOT format
Click to expand...
Click to collapse
And theres a DL link that I presume contains a tot file
LGE960AT-00-V10c-NXS-XX-OCT-25-2012-JVP15Q-USER+0
Click to expand...
Click to collapse
Can you please explain since the info I have atm is a bit contradictory.
Thanks for this xonar. Much appreciated.
Would anyone be able to compile a Windows binary for me and upload it please? Thanks.
Sent from my Nexus 4 using Tapatalk 2
efrant said:
Thanks for this xonar. Much appreciated.
Would anyone be able to compile a Windows binary for me and upload it please? Thanks.
Sent from my Nexus 4 using Tapatalk 2
Click to expand...
Click to collapse
I just compiled it with mingw, but it's not behaving as it's Linux counterpart.
If j is 1024 why isn't the output file 512kB ?!? (Tested with P970 bin)
Code:
for(j = 0; j < tmp.pent_arr[i].file_size; j++)
{
/*DO 512 BLOCK*/
fread(buff, sizeof(char), 512, f);
fwrite(buff, sizeof(char), 512, out);
}
fclose(out);
EDIT: Had a facepalm moment
Windows needs to specify reading and writing in binary. I'll give you exe in a moment.
EDIT2: I attached a zip with the exe inside.
To get it working in Windows I changed read access to binary everywhere theres a fopen and I initialized some thing to 0 as Windows unlike Linux doesn't start you of with a nice clean slate.
I'll push changes to git tomorrow morning to make it work on Windows aswel and from now on I'll actually test the windows exe on windows and not through wine.
Hope it works. I'm going to bed now.
xonar_ said:
I just compiled it with mingw, but it's not behaving as it's Linux counterpart.
If j is 1024 why isn't the output file 512kB ?!? (Tested with P970 bin)
Code:
for(j = 0; j < tmp.pent_arr[i].file_size; j++)
{
/*DO 512 BLOCK*/
fread(buff, sizeof(char), 512, f);
fwrite(buff, sizeof(char), 512, out);
}
fclose(out);
EDIT: Had a facepalm moment
Windows needs to specify reading and writing in binary. I'll give you exe in a moment.
EDIT2: I attached a zip with the exe inside.
To get it working in Windows I changed read access to binary everywhere theres a fopen and I initialized some thing to 0 as Windows unlike Linux doesn't start you of with a nice clean slate.
I'll push changes to git tomorrow morning to make it work on Windows aswel and from now on I'll actually test the windows exe on windows and not through wine.
Hope it works. I'm going to bed now.
Click to expand...
Click to collapse
Thanks so much. I'll try to give it a shot tomorrow. If it doesn't work, I guess I could always use cygwin.
Sent from my Nexus 4 using Tapatalk 2
Doesn't seem to work on Bell Optimus G:
Code:
BinExtractor.exe -extract "LGE973AT-00-V10f-BELL-CA-OCT-24-2012+0.tot"
Reading AP Header...
Unknown Magic Number at 0x8 : AF 33 BF DE
Writing Files...
Finished
Running the info command:
GPT HEADER
----------
Signature 45 46 49 20 50 41 52 54
Revision 65536
Header Size 92
CRC32 of Header B2 64 10 F5
Current Header LBA 1
Backup Header LBA 61071359
First Usable LBA 34
Last Usable LBA 61071326
Disk GUID 32 1B 10 98 E2 BB F2 4B A0 6E 2B B3 3D 00 0C 20
Start of Partition Entries 2
Number of Partition Entries 36
Size of Partition Entries 128
CRC32 of Partition Array 71 79 32 B7
PARTITION ENTRIES
-----------------
PARTITION ENTRY
---------------
Partition Type GUID A2 A0 D0 EB E5 B9 33 44 87 C0 68 B6 B7 26 99 C7
Unique Partition GUID 7B 6F 3E CF 28 B7 86 F3 6A AE 46 69 B1 BC 9A 08
First LBA 16384
Last LBA 147455
Attributes 8
Partition Name modem
PARTITION ENTRY
---------------
Partition Type GUID 2C BA A0 DE DD CB 05 48 B4 F9 F4 28 25 1C 3E 98
Unique Partition GUID BC D0 5B BC 05 A5 44 30 8E 88 59 5C 87 19 A1 08
First LBA 147456
Last LBA 148479
Attributes 0
Partition Name sbl1
PARTITION ENTRY
---------------
....
zivan56 said:
Doesn't seem to work on Bell Optimus G:
Code:
Unknown Magic Number at 0x8 : AF 33 BF DE
Click to expand...
Click to collapse
The tool doesn't support Bell OG yet. I made a guess at what the format could be but I can't say for certain that it will work. I'll push changes in a moment.
Someone tested it on another OG firmware, but it fails to mount the image with:
Code:
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
Code:
EXT4-fs (loop0): bad geometry: block count 389120 exceeds size of device (360576 blocks)
Click to expand...
Click to collapse
Can anyone give me the output from -dgpt with at&t OG or sprint OG?
or the first meg of the tot file of Nexus 4 or Bell OG along with -dgpt output?
EDIT: If possible use pastebin to display dgpt output as it might be fairly long.
I known what the problem is. Great thanks to SnowLeopardJB for testing and correspondence
The file that was being created doesn't have 'space' up until the end of the partitions. (It was left out since thats where it stops in the file) but on the actual disk still has 'space' after the last bit of data.
So it can be fixed with
Code:
#VAL is the value that is supposedly outside the device from the err msg
VAL=389120
#This will say already that size, but the file itself will change size
resize2fs system.img $VAL
#Not sure if this last step is then necessary
fsck.ext4 -f system.img
#Now you can mount is as any other partition :laugh:
I'll make the program add the 'space' and see if it produces a immediately mountable file.
I also totally changed the way it handles 44 DD 55 AA files for future flexibility and it's a step closer to being able to make it use predefined files as formats.
The latest version in git seems to extract the Bell Optimus G firmware properly now. I tried mounting the resulting radio image section and it worked fine, so I assume it knows the proper partition boundaries now.
Btw, I would recommend posting some instructions how to compile it. Not everyone is savvy enough to know how to use gcc.
Likewise, your program is hardcoded to look for its name when looking for parameters. Since there was no makefile it defaulted to a.out, which, the way it is coded, would never accept any parameters unless renamed to LGBinExtractor.
zivan56 said:
The latest version in git seems to extract the Bell Optimus G firmware properly now. I tried mounting the resulting radio image section and it worked fine, so I assume it knows the proper partition boundaries now.
Click to expand...
Click to collapse
Only merged partitions was affected by 'space' bug, plain extraction should have been correct for Bell OB after bb697c27e5. I haven't commited 'space' fix yet.
In retrospect using fseek to create 'space' between image parts might not have been such a good idea either and might also be causing problems.
zivan56 said:
Btw, I would recommend posting some instructions how to compile it. Not everyone is savvy enough to know how to use gcc.
Click to expand...
Click to collapse
Adding a makefile is on my todo list.
zivan56 said:
Likewise, your program is hardcoded to look for its name when looking for parameters. Since there was no makefile it defaulted to a.out, which, the way it is coded, would never accept any parameters unless renamed to LGBinExtractor.
Click to expand...
Click to collapse
Yea, not one of my better choices. I changed it to remove the first arg if it doesn't start with '-'.
Okay Merging partitions should work now. I'm waiting for confirmation then I'll ask mod to close the thread.
xonar_ said:
Okay Merging partitions should work now. I'm waiting for confirmation then I'll ask mod to close the thread.
Click to expand...
Click to collapse
Hello i'm try test with LG Optimus tag working:laugh:
Code:
AP HEADER
----------
Magic Number 44 DD 55 AA
Number of Partitions 32
PARTITION ENTRIES
-----------------
PARTITION ENTRY
------------
Data Block Name MODEM
Data Block ID 1
Size on File 47104
File Offset 0
Size on Disk 65537
Disk Offset 0
PARTITION ENTRY
------------
Data Block Name SBL1
Data Block ID 2
Size on File 1024
File Offset 47104
Size on Disk 2048
Disk Offset 65537
PARTITION ENTRY
------------
Data Block Name SBL2
Data Block ID 3
Size on File 1024
File Offset 48128
Size on Disk 2048
Disk Offset 67585
PARTITION ENTRY
------------
Data Block Name EXT
Data Block ID 4
Size on File 1024
File Offset 49152
Size on Disk 12287
Disk Offset 69633
PARTITION ENTRY
------------
Data Block Name RPM
Data Block ID 5
Size on File 1024
File Offset 50176
Size on Disk 16384
Disk Offset 81920
PARTITION ENTRY
------------
Data Block Name SBL3
Data Block ID 6
Size on File 2048
File Offset 51200
Size on Disk 16384
Disk Offset 98304
PARTITION ENTRY
------------
Data Block Name ABOOT
Data Block ID 7
Size on File 2048
File Offset 53248
Size on Disk 16384
Disk Offset 114688
PARTITION ENTRY
------------
Data Block Name BOOT
Data Block ID 8
Size on File 15360
File Offset 55296
Size on Disk 32768
Disk Offset 131072
PARTITION ENTRY
------------
Data Block Name TZ
Data Block ID 9
Size on File 1024
File Offset 70656
Size on Disk 16384
Disk Offset 163840
PARTITION ENTRY
------------
Data Block Name MODEM_ST1
Data Block ID 10
Size on File 0
File Offset 71680
Size on Disk 16384
Disk Offset 180224
PARTITION ENTRY
------------
Data Block Name MODEM_ST2
Data Block ID 11
Size on File 0
File Offset 71680
Size on Disk 16384
Disk Offset 196608
PARTITION ENTRY
------------
Data Block Name PERSIST
Data Block ID 12
Size on File 16384
File Offset 71680
Size on Disk 16384
Disk Offset 212992
PARTITION ENTRY
------------
Data Block Name RECOVERY
Data Block ID 13
Size on File 17408
File Offset 88064
Size on Disk 32768
Disk Offset 229376
PARTITION ENTRY
------------
Data Block Name MDM
Data Block ID 14
Size on File 57344
File Offset 105472
Size on Disk 65536
Disk Offset 262144
PARTITION ENTRY
------------
Data Block Name M9K_EFS1
Data Block ID 15
Size on File 0
File Offset 162816
Size on Disk 16384
Disk Offset 327680
PARTITION ENTRY
------------
Data Block Name M9K_EFS2
Data Block ID 16
Size on File 0
File Offset 162816
Size on Disk 16384
Disk Offset 344064
PARTITION ENTRY
------------
Data Block Name M9K_EFS3
Data Block ID 17
Size on File 0
File Offset 162816
Size on Disk 16384
Disk Offset 360448
PARTITION ENTRY
------------
Data Block Name FSG
Data Block ID 18
Size on File 0
File Offset 162816
Size on Disk 16384
Disk Offset 376832
PARTITION ENTRY
------------
Data Block Name SSD
Data Block ID 19
Size on File 0
File Offset 162816
Size on Disk 32768
Disk Offset 393216
PARTITION ENTRY
------------
Data Block Name BSP
Data Block ID 20
Size on File 0
File Offset 162816
Size on Disk 16384
Disk Offset 425984
PARTITION ENTRY
------------
Data Block Name BLB
Data Block ID 21
Size on File 0
File Offset 162816
Size on Disk 32768
Disk Offset 442368
PARTITION ENTRY
------------
Data Block Name TOMBSTONES
Data Block ID 22
Size on File 1024
File Offset 162816
Size on Disk 147456
Disk Offset 475136
PARTITION ENTRY
------------
Data Block Name DRM
Data Block ID 23
Size on File 0
File Offset 163840
Size on Disk 16384
Disk Offset 622592
PARTITION ENTRY
------------
Data Block Name FOTA
Data Block ID 24
Size on File 0
File Offset 163840
Size on Disk 49152
Disk Offset 638976
PARTITION ENTRY
------------
Data Block Name MISC
Data Block ID 25
Size on File 0
File Offset 163840
Size on Disk 16384
Disk Offset 688128
PARTITION ENTRY
------------
Data Block Name TZ_BKP
Data Block ID 26
Size on File 0
File Offset 163840
Size on Disk 16384
Disk Offset 704512
PARTITION ENTRY
------------
Data Block Name SYSTEM
Data Block ID 27
Size on File 1720320
File Offset 163840
Size on Disk 1720320
Disk Offset 720896
PARTITION ENTRY
------------
Data Block Name CACHE
Data Block ID 28
Size on File 0
File Offset 1884160
Size on Disk 655360
Disk Offset 2441216
PARTITION ENTRY
------------
Data Block Name WALLPAPER
Data Block ID 29
Size on File 0
File Offset 1884160
Size on Disk 16384
Disk Offset 3096576
PARTITION ENTRY
------------
Data Block Name USERDATA
Data Block ID 30
Size on File 0
File Offset 1884160
Size on Disk 4587520
Disk Offset 3112960
PARTITION ENTRY
------------
Data Block Name MPT
Data Block ID 31
Size on File 0
File Offset 1884160
Size on Disk 32768
Disk Offset 7700480
PARTITION ENTRY
------------
Data Block Name GROW
Data Block ID 32
Size on File 20480
File Offset 1884160
Size on Disk 21000000
Disk Offset 7733248
Code:
Reading AP Header...
Writing Files...
Writing File : 1-MODEM.img -- DONE --
Writing File : 2-SBL1.img -- DONE --
Writing File : 3-SBL2.img -- DONE --
Writing File : 4-EXT.img -- DONE --
Writing File : 5-RPM.img -- DONE --
Writing File : 6-SBL3.img -- DONE --
Writing File : 7-ABOOT.img -- DONE --
Writing File : 8-BOOT.img -- DONE --
Writing File : 9-TZ.img -- DONE --
Writing File : 10-MODEM_ST1.img -- DONE --
Writing File : 11-MODEM_ST2.img -- DONE --
Writing File : 12-PERSIST.img -- DONE --
Writing File : 13-RECOVERY.img -- DONE --
Writing File : 14-MDM.img -- DONE --
Writing File : 15-M9K_EFS1.img -- DONE --
Writing File : 16-M9K_EFS2.img -- DONE --
Writing File : 17-M9K_EFS3.img -- DONE --
Writing File : 18-FSG.img -- DONE --
Writing File : 19-SSD.img -- DONE --
Writing File : 20-BSP.img -- DONE --
Writing File : 21-BLB.img -- DONE --
Writing File : 22-TOMBSTONES.img -- DONE --
Writing File : 23-DRM.img -- DONE --
Writing File : 24-FOTA.img -- DONE --
Writing File : 25-MISC.img -- DONE --
Writing File : 26-TZ_BKP.img -- DONE --
Writing File : 27-SYSTEM.img -- DONE --
Writing File : 28-CACHE.img -- DONE --
Writing File : 29-WALLPAPER.img -- DONE --
Writing File : 30-USERDATA.img -- DONE --
Writing File : 31-MPT.img -- DONE --
Writing File : 32-GROW.img -- DONE --
Finished
PS : @xonar_ If you need any flash file LG pm me i have all files LG
---------- Post added at 01:25 AM ---------- Previous post was at 12:25 AM ----------
LG Optimus LTE2 F160 working
Code:
GPT HEADER
----------
Signature 45 46 49 20 50 41 52 54
Revision 65536
Header Size 92
CRC32 of Header 93 23 A2 52
Current Header LBA 1
Backup Header LBA 30535679
First Usable LBA 34
Last Usable LBA 30535646
Disk GUID 32 1B 10 98 E2 BB F2 4B A0 6E 2B B3 3D 00 0C 20
Start of Partition Entries 2
Number of Partition Entries 32
Size of Partition Entries 128
CRC32 of Partition Array 2A A9 B7 BD
PARTITION ENTRIES
-----------------
PARTITION ENTRY
---------------
Partition Type GUID A2 A0 D0 EB E5 B9 33 44 87 C0 68 B6 B7 26 99 C7
Unique Partition GUID 72 05 1F 0E 0C 89 89 B5 F4 D4 0E 5D 04 65 52 1E
First LBA 16384
Last LBA 147455
Attributes 8
Partition Name modem
PARTITION ENTRY
---------------
Partition Type GUID 2C BA A0 DE DD CB 05 48 B4 F9 F4 28 25 1C 3E 98
Unique Partition GUID 9A 00 DF 9C DE F9 95 65 62 3C 0F 15 D6 1A 75 6B
First LBA 147456
Last LBA 148479
Attributes 0
Partition Name sbl1
PARTITION ENTRY
---------------
Partition Type GUID AD 52 6B 8C 9E 8A 98 43 AD 09 AE 91 6E 53 AE 2D
Unique Partition GUID F1 EC 20 B2 C4 FA 8B FC 06 D2 4F 33 72 B6 0F D2
First LBA 148480
Last LBA 149503
Attributes 0
Partition Name sbl2
PARTITION ENTRY
---------------
Partition Type GUID DF 44 E0 05 F1 92 25 43 B6 9E 37 4A 82 E9 7D 6E
Unique Partition GUID A8 87 F8 53 B8 47 22 FA A9 2B 91 26 94 F6 19 2B
First LBA 149504
Last LBA 151551
Attributes 0
Partition Name sbl3
PARTITION ENTRY
---------------
Partition Type GUID CD FD 0F 40 E0 22 E7 47 9A 23 F1 6E D9 38 23 88
Unique Partition GUID 2A D1 EA 8A 29 76 F5 14 50 CD FA D5 2D 9F 41 26
First LBA 151552
Last LBA 152575
Attributes 0
Partition Name aboot
PARTITION ENTRY
---------------
Partition Type GUID 93 F7 8D 09 12 D7 3D 41 9D 4E 89 D7 11 77 22 28
Unique Partition GUID F7 5A 4B 53 B7 53 FB FF 4C F1 26 3A AD 9D C9 12
First LBA 152576
Last LBA 153599
Attributes 0
Partition Name rpm
PARTITION ENTRY
---------------
Partition Type GUID 86 7F 11 20 85 E9 57 43 B9 EE 37 4B C1 D8 48 7D
Unique Partition GUID 7A C9 D2 E5 B5 2A 04 6C BE 24 C7 AE 35 55 01 B2
First LBA 163840
Last LBA 188415
Attributes 8
Partition Name boot
PARTITION ENTRY
---------------
Partition Type GUID 7F AA 53 A0 B8 40 1C 4B BA 08 2F 68 AC 71 A4 F4
Unique Partition GUID F9 09 61 B9 4F 99 AF 89 FF C3 F3 16 99 B0 E3 A9
First LBA 196608
Last LBA 197631
Attributes 0
Partition Name tz
PARTITION ENTRY
---------------
Partition Type GUID 38 68 4A 00 2A 06 DF 44 81 52 4F 34 0C 05 22 5D
Unique Partition GUID BC 83 9C AC D5 BF F4 36 1C 0F D4 63 6F AD 23 07
First LBA 197632
Last LBA 197633
Attributes 0
Partition Name pad
PARTITION ENTRY
---------------
Partition Type GUID 3E 37 13 20 C4 1A 31 41 B0 F8 91 58 F9 65 4F 4F
Unique Partition GUID 46 F4 88 C2 2C 7A 4A AD 17 28 DD 70 10 8B BD AD
First LBA 197634
Last LBA 203777
Attributes 0
Partition Name modemst1
PARTITION ENTRY
---------------
Partition Type GUID 3E 37 13 20 C4 1A 31 41 B0 F8 91 58 F9 65 4F 4F
Unique Partition GUID 0A E8 2B 7F B8 CF 52 3E C2 7E 52 26 3E 03 B5 35
First LBA 203778
Last LBA 209921
Attributes 0
Partition Name modemst2
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 85 78 29 24 17 62 3D 36 A4 4B E9 47 10 87 AD 67
First LBA 212992
Last LBA 229375
Attributes 8
Partition Name sns
PARTITION ENTRY
---------------
Partition Type GUID 54 05 D3 6C 5D 5F EF 40 82 FE 10 92 35 9F 92 EE
Unique Partition GUID DC BF D4 C1 2E 63 5D 16 3F 45 88 4F 2A 36 86 3C
First LBA 229376
Last LBA 262143
Attributes 0
Partition Name misc
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 8E C6 02 A3 3F DC 79 98 12 7F 02 BE 38 F7 D4 6B
First LBA 262144
Last LBA 2359295
Attributes 8
Partition Name system
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID E2 F2 D0 8D 3E D2 D0 90 E9 45 09 EA 7E 8F 2C 97
First LBA 2359296
Last LBA 29589503
Attributes 8
Partition Name userdata
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID F7 2D 03 28 16 E8 78 07 D0 84 1B 08 6F 5B 6D 39
First LBA 29589504
Last LBA 29605887
Attributes 8
Partition Name persist
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 21 6C AF DC 30 3D D9 D9 3F AE 56 42 4C 0F 66 AC
First LBA 29605888
Last LBA 30146559
Attributes 8
Partition Name cache
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 26 4F D8 D1 AC 24 CC CA EA 7F E1 F0 E5 6C FD 61
First LBA 30146560
Last LBA 30294015
Attributes 0
Partition Name tombstones
PARTITION ENTRY
---------------
Partition Type GUID 86 7F 11 20 85 E9 57 43 B9 EE 37 4B C1 D8 48 7D
Unique Partition GUID BB 74 76 DD 1D 6B 07 56 23 FB 94 96 7A 52 0A DC
First LBA 30294016
Last LBA 30318591
Attributes 8
Partition Name recovery
PARTITION ENTRY
---------------
Partition Type GUID 3E 37 13 20 C4 1A 31 41 B0 F8 91 58 F9 65 4F 4F
Unique Partition GUID 7C 48 3D 02 F0 90 E3 39 F7 14 BA D1 D9 BD 76 C8
First LBA 30318592
Last LBA 30324735
Attributes 8
Partition Name fsg
PARTITION ENTRY
---------------
Partition Type GUID 42 E7 86 2C 5E 74 DD 4F BF D8 B6 A7 AC 63 87 72
Unique Partition GUID 9B 2F 13 2B 51 11 1E C2 30 66 A0 E7 08 BC BF DF
First LBA 30324736
Last LBA 30324751
Attributes 8
Partition Name ssd
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 75 44 C3 7D E2 05 C3 88 22 1B 8A 2D D1 D9 E4 FA
First LBA 30326784
Last LBA 30343167
Attributes 0
Partition Name drm
PARTITION ENTRY
---------------
Partition Type GUID AC 9C 14 00 9B ED 01 48 9A E9 6D F9 60 3A 18 27
Unique Partition GUID 55 D9 D2 33 14 1A 58 56 F8 47 15 23 E1 B9 A4 07
First LBA 30343168
Last LBA 30408703
Attributes 0
Partition Name fota
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 38 9D 3B B9 01 35 EA F7 BA 61 44 35 4F AE 2C 73
First LBA 30408704
Last LBA 30474239
Attributes 0
Partition Name mpt
PARTITION ENTRY
---------------
Partition Type GUID BB 51 9C 73 F9 7A 0A 45 88 49 FF 4F 3D 94 CC AF
Unique Partition GUID EB 58 E9 92 44 82 6E A3 9C 07 F8 60 1D 46 AB 8E
First LBA 30474240
Last LBA 30475263
Attributes 0
Partition Name tzbak
PARTITION ENTRY
---------------
Partition Type GUID 11 84 CC 6A A5 68 18 41 BA B0 07 FA 12 72 B4 9B
Unique Partition GUID 8C 02 6E 7C 87 46 63 0D 71 93 68 7C 2A 4A D8 73
First LBA 30475264
Last LBA 30476287
Attributes 0
Partition Name rpmbak
PARTITION ENTRY
---------------
Partition Type GUID 95 F5 3E 32 7A AF FA 4A 80 60 97 BE 72 84 1B B9
Unique Partition GUID 47 79 8A 0B 52 C4 79 9B 2A 90 81 4E FC A8 E0 77
First LBA 30476288
Last LBA 30477311
Attributes 0
Partition Name encrypt
PARTITION ENTRY
---------------
Partition Type GUID 73 75 D2 A7 3C A5 E7 4C 87 BC 4D 35 12 FF C8 64
Unique Partition GUID 96 9C 90 E9 54 25 10 09 5A B6 CB 7E D3 1E 79 1D
First LBA 30490624
Last LBA 30523391
Attributes 8
Partition Name reserved
PARTITION ENTRY
---------------
Partition Type GUID AF 3D C6 0F 83 84 72 47 8E 79 3D 69 D8 47 7D E4
Unique Partition GUID 88 8D 1A E1 EF BF 80 A7 58 89 13 B3 AF AD 5E A3
First LBA 30523392
Last LBA 30535646
Attributes 0
Partition Name grow
Q:\LG\LG-F160L>
Not work on my G
it forceclose when i try to use -daph
KhmerHacker said:
it forceclose when i try to use -daph
Click to expand...
Click to collapse
What firmware did you try it on?
Succes with your tools
Thanks xonar. with your tools, I successed with Optimus Vu F100L rom: F100L29j_00.kdz. But the tools ext2read you metioned cannot see the ext4 26-SYSTEM.img, but I mount in linux and get the right result as below
mkdir
mount -t ext4 -o loop 26-SYSTEM.img /tmp
thanks very, a question:
after I make change to the img file, how can I repacked the img to tot file? need a change the wdb dll wdh file also?
anyone can give help is wellcome.
flyhigher76 said:
Thanks xonar. with your tools, I successed with Optimus Vu F100L rom: F100L29j_00.kdz. But the tools ext2read you metioned cannot see the ext4 26-SYSTEM.img, but I mount in linux and get the right result as below
mkdir
mount -t ext4 -o loop 26-SYSTEM.img /tmp
Click to expand...
Click to collapse
Not sure why ext2read don't work
,but if it works in Linux it should be correct.
flyhigher76 said:
thanks very, a question:
after I make change to the img file, how can I repacked the img to tot file? need a change the wdb dll wdh file also?
anyone can give help is wellcome.
Click to expand...
Click to collapse
It's possible to recreate the tot file from the extracted partitions,but a mistake can make your phone Hard Bricked. I wouldn't recommend doing that.
change Optimus Vu Languge
xonar_ said:
Not sure why ext2read don't work
,but if it works in Linux it should be correct.
It's possible to recreate the tot file from the extracted partitions,but a mistake can make your phone Hard Bricked. I wouldn't recommend doing that.
Click to expand...
Click to collapse
I like the Optimus Vu very much, fot it's unique size and it's first-class panel display attract me. But unfortunately, it is not in Chinese, also when I make a call I must choose to call local or call Korea. I'm tired of this, so I want to have a custom system for my own. The difficult is that I cannot get control the /system for root fails many times, so I cannot change any apk and jar in /system. I hope I can modify the rom as I have do with galaxy note, and forturely find this thread.
I know tot format file since I own this optimus Vu, so I have no idea about this format. Can you give me some information about this format, like some website?
vmt.
flyhigher76 said:
I know tot format file since I own this optimus Vu, so I have no idea about this format. Can you give me some information about this format, like some website?
vmt.
Click to expand...
Click to collapse
Theres the source code of my tool.

External Bluetooth Keyboard Mapping with HTC Vivid

Hello,
I didn't know if there was already a post for this, my searches were coming up not matching anything.
If you happen to have an external keyboard (bluetooth in my case), you might have the problem that many of the key events from the keyboard do not map nicely to the HTC Vivid. I am running 4.0.3 in my case with 3.6 sense, and other than the alpha-numerics, many of the system level keys were not working for me. Since I often play HD video from my phone to the HDTV, it's handy for me to control things like Volume_UP/Down, HOME / MENU / BACK, Pause / Play, Select Movie title, reply to Text, etc. So I had to find a way to improve the keyboard mappings to make it functional, and I was curious if others may have done similar things as what I describe here. I am still stuck on a few mappings, so would glad to have any info from others who have succeeded or failed in a similar regard.
I went and spent about $35 for this G-Cube bluetooth keyboard model BK-30 at Frye's.
h t t p :// www .gggcube .com/ Upload/ ProImgs/ smaImg/ 201303101915016774.jpg
It was a nice weight with a good feel on the keys, and good enough for a test run. The bluetooth device was discovered and paired easily on my HTC Vivid, and some of the system functions from keyboard were working, like Volume UP/Down and Mute. But I noticed right away I had no way to open a MENU option, or to perform a BACK function from a given application or settings screen. In order to change the keyboard mappings, it's necessary to boot into Recovery, un-mount /system and use ADB to re-mount /system in order to be able to edit the file called Generic.kl (keyboard layout file) which lives in the /system/usr/keylayout/ directory. Here are the steps I used to update the file.
Before editing the Generic.kl file, it's helpful to gather some information using an APP called KeyEvent Display (free in Google Play store).
1. Download, Install and Run the KeyEvent Display application, it gives you a keyEvent monitor for the Bluetooth Keyboard
2. Pick a few keys on the Bluetooth which seem to do nothing, and press them, noting their SCANCODE values in the app. I chose the PrintScr, Pause/Break, Insert and Delete keys, just as a test. These 4 keys gave me scancodes of 99, 119, 110, and 111, respectively.
Now, you can reboot the phone into Recovery, and perform operations using ADB, providing your PC has the right USB drivers. Usually installing HTC Sync will give you these drivers, or from Ubuntu Linux, you may not need them. Google to install the ADB tool
1. Make sure your Vivid is rooted with a Recovery Image for bootup
2. Boot into Recovery, Connect your USB cable from the PC, and test that your ADB tool can properly communicate:
a) to use ADB, you need to have download these files (adb.exe, AdbWinApi.dll and AdbWinUsbApi.dll)
b) from the directory where you have ADB, test the connection with a simple 'adb devices'
c) you should get a response from the phone device like this:
[C:\Users\JohnDoe\ADB_Tool] adb devices
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
FA27VVJ01452 device
Click to expand...
Click to collapse
3. Assuming you are successful, you can now send ADB commands to the phone as needed here below. (If you got nothing after List of devices attached, you can research this seperately - its usually and USB driver issue.) ADB commands are used to mount and unmount file systems (like /system), to send commands or open a shell to the phone, and to push and pull files back and forth.
a) adb remount (should see: remount succeeded)
NOTE: if this fails with an error, use your Recovery Developer options to un-mount /system first, then try again.
b) adb pull /system/usr/keylayout/Generic.kl
NOTE: Generic.kl is the file we want with all the mappings of keyEvents. If the file is pulled successfully, you see something like:
pull /system/usr/keylayout/Generic.kl
982 KB/s (9058 bytes in 0.009s)
Click to expand...
Click to collapse
c) Note with File Explorer in the folder with ADB, you should have a copy of the Generic.kl file.
d) Make a backup of this file, you can cause the keyboard and other items to fail with incorrect changes!
e) Edit the file with your favorite text editor, and look for sections that we want to change, for example:
key 109 PAGE_DOWN
key 110 INSERT
key 111 FORWARD_DEL
# key 112 "KEY_MACRO"
key 113 VOLUME_MUTE
key 114 VOLUME_DOWN
key 115 VOLUME_UP
key 116 POWER WAKE
Click to expand...
Click to collapse
f) Change keys 110 and 111 (for example) to now look like this, and then save the file:
key 109 PAGE_DOWN
key 110 BACK
key 111 MENU
# key 112 "KEY_MACRO"
Click to expand...
Click to collapse
g) adb push Generic.kl /system/usr/keylayout/ (this places the file back to the phone)
h) adb shell (need a shell to reset the permissions of the file)
i) chmod 644 /system/usr/keylayout/Generic.kl (should be read only to group/world)
j) ls -l /system/usr/keylayout/ (check to see ownership and permissions look correct)
ls -l /system/usr/keylayout/
-rw-r--r-- 1 root root 894 Jul 12 2012 AVRCP.kl
-rw-r--r-- 1 root root 9048 Nov 12 20:59 Generic.kl
-rw-r--r-- 1 root root 1293 Jul 12 2012 Vendor_045e_Product_028e.kl
-rw-r--r-- 1 root root 1027 Jul 12 2012 Vendor_046d_Product_c216.kl
Click to expand...
Click to collapse
k) exit (exit from the ADB shell)
l) adb reboot (reboot the phone out of recovery into normal mode)
3. Now when the phone is ready, test the new key functions you have defined. For me, I had success with the MENU, BACK, CALL and ENVELOPE functions, among others. It is very helpful that I can use ALT-TAB to toggle between running apps.
The main one which I am failing to define is the 'OPEN ALL APPS'. If anyone else is performing mappings such as these for an external bluetooth keyboard, I would be interested to know which functions you have gotten to work. I am now at a state where I can control most everything, provided it is already running in the background. But I can't swipe my Sense desktop left and right, and I have trouble toggling certain switches like Wifi and Mobile data. Any suggestions or thoughts on these functions are appreciated.
Darren
Troubleshooting TIP: You can also run ADB when the phone is running in Normal Mode and you have the USB cable connected from your phoe to the PC. Then you can test certain keypresses through functions that are formatted in this way:
adb shell input keyevent 5
Click to expand...
Click to collapse
On my phone, this function will send the CALL event with brings up the phone from the desktop.
Other examples (you can also launch then from a *.cmd file):
If you have a terminal open on the phone, will send "ls -l"(includes the space-62 and enter-66):
@echo off
adb shell input keyevent 40
adb shell input keyevent 47
adb shell input keyevent 62
adb shell input keyevent 69
adb shell input keyevent 40
adb shell input keyevent 66
Click to expand...
Click to collapse
If you have a terminal open on the phone, will send "env|grep PATH":
@echo off
adb shell input text "env"
adb shell input text "|"
adb shell input text "grep"
adb shell input keyevent 62
adb shell input text "PATH"
adb shell input keyevent 66
Click to expand...
Click to collapse

Categories

Resources