Dvorak keylayout in usb host mode... - Nook Touch General

I enabled usb host mode, but I would prefer to use dvorak. I tried http://forum.xda-developers.com/showthread.php?t=1336114 but it didn't work. It may just be for Bluetooth keyboards. I'll keep looking, though it may be time to just get a hard dvorak usb keyboard.

That thread does have the correct way to change any keyboard layout.
The file you want is probably /system/usr/keylayout/qwerty.kl if this is the only keyboard you will ever use.
qwerty.kl is the default.
Using the actual device-specific file is a better way to do this.
If you will look at a logcat when you plug in a keyboard you will see something similar.
Code:
W/KeyCharacterMap( 8641): Error loading keycharmap file '/system/usr/keychars/HID_04d9:1203.kcm.bin'. hw.keyboards.65539.devname='HID 04d9:1203'
Although this will tell you the keychar mapping file (which you don't need to change)
it also will tell you what keylayout file to make, in this case HID_04d9:1203.kl

Done/Works
It took a while to find that. qtADB puts all warnings in hard to read yellow/orange.
Code:
09:15:08.038 Warning KeyCharacterMap 9044 Can't open keycharmap file
09:15:08.038 Warning KeyCharacterMap 9044 Error loading keycharmap file '/system/usr/keychars/Chicony_USB_Gaming_Keyboard_Pro.kcm.bin'. hw.keyboards.196611.devname='Chicony USB Gaming Keyboard Pro'
09:15:08.038 Warning KeyCharacterMap 9044 Using default keymap: /system/usr/keychars/qwerty.kcm.bin
Yeah, I wouldn't have guessed that one. I was trying USB vendor and product ids. I copied 'qwerty.kcm.bin' to 'Chicony_USB_Gaming_Keyboard_Pro.kcm.bin', and changed the 'Vendor_06a3_Product_8000.kl' to 'Chicony_USB_Gaming_Keyboard_Pro.kl'.
Code:
09:47:58.831 Error KeyLayoutMap 1004 /system/usr/keylayout/Chicony_USB_Gaming_Keyboard_Pro.kl:57: expected keycode, got 'CTRL_LEFT'
At least errors are in bright red, easy to spot. Aparently, there is no "CTRL_LEFT". Changed to "SYM" like in qwerty.kl.
Here's the file in case anybody else wants to avoid changing "CTRL_LEFT" to "SYM".
Code:
key 1 BACK # ESCAPE
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 12 LEFT_BRACKET
key 13 RIGHT_BRACKET
key 14 DEL
key 15 TAB
key 16 APOSTROPHE
key 17 COMMA
key 18 PERIOD
key 19 P
key 20 Y
key 21 F
key 22 G
key 23 C
key 24 R
key 25 L
key 26 SLASH
key 27 EQUALS
key 28 ENTER
key 29 SYM # CONTROL_LEFT
key 30 A
key 31 O
key 32 E
key 33 U
key 34 I
key 35 D
key 36 H
key 37 T
key 38 N
key 39 S
key 40 MINUS
key 41 GRAVE
key 42 SHIFT_LEFT
key 43 BACKSLASH
key 44 SEMICOLON
key 45 Q
key 46 J
key 47 K
key 48 X
key 49 B
key 50 M
key 51 W
key 52 V
key 53 Z
key 54 SHIFT_RIGHT
key 55 STAR # NUMPAD_MULTIPLY
key 56 ALT_LEFT
key 57 SPACE
# key 58 # CAPS_LOCK
# key 59 # F1
# key 60 # F2
# key 61 # F3
# key 62 # F4
# key 63 # F5
# key 64 # F6
# key 65 # F7
# key 66 # F8
# key 67 # F9
# key 68 # F10
# key 69 # NUM_LOCK
# key 70 # SCROLL_LOCK
key 71 7 # NUMPAD_7
key 72 8 # NUMPAD_8
key 73 9 # NUMPAD_9
key 74 MINUS # NUMPAD_SUBTRACT
key 75 4 # NUMPAD_4
key 76 5 # NUMPAD_5
key 77 6 # NUMPAD_6
key 78 PLUS # NUMPAD_ADD
key 79 1 # NUMPAD_1
key 80 2 # NUMPAD_2
key 81 3 # NUMPAD_3
key 82 0 # NUMPAD_0
key 83 PERIOD # NUMPAD_DOT
# key 87 # F11
# key 88 # F12
key 96 ENTER # NUMPAD_ENTER
key 97 SYM # CONTROL_RIGHT
key 98 SLASH # NUMPAD_DIVIDE
# key 99 # SYSRQ
key 100 ALT_RIGHT
key 102 HOME
key 103 DPAD_UP # UP_ARROW
key 104 LEFT_NEXTPAGE # PAGE_UP
key 105 DPAD_LEFT # LEFT_ARROW
key 106 DPAD_RIGHT # RIGHT_ARROW
# key 107 # END
key 108 DPAD_DOWN # DOWN_ARROW
key 109 LEFT_PREVPAGE # PAGE_DOWN
# key 110 # INSERT
# key 111 # DELETE
key 113 MUTE
key 114 VOLUME_DOWN
key 115 VOLUME_UP
# key 119 # BREAK
# key 125 # LEFT_WINDOWS
# key 126 # RIGHT_WINDOWS
key 127 MENU # APPLICATION
# key 128 # BOOKMARK
key 129 POWER
# key 130 # SLEEP
# key 131 # WAKE
key 155 ENVELOPE
key 164 MEDIA_PLAY_PAUSE
# key 171 # MUSIC
key 172 HOME
key 217 SEARCH

Yup, that is correct.
The PgUp => LEFT_NEXTPAGE and PgDn => LEFT_PREVPAGE
That way the keyboard buttons work like you'd expect on regular apps.
Then you need to remap the side buttons.
You want whatever key you want to go to the next page to be using LEFT_PREVPAGE.
You want whatever key you want to go to the previous page to be using LEFT_NEXTPAGE.
See: http://forum.xda-developers.com/showpost.php?p=24632564&postcount=7
If you want to prevent the arrow keys from getting all funny when you put the Nook in landscape,
then you can modify services.jar
Load the patch from the sig to somewhere, remount /system, ADB pull system/framework/services.jar
Code:
apktool d services.jar \services
mergesmali \services\smali\com\android\server\KeyInputQueue.smali \somewhere\KeyInputQueue.smali
apktool b \services services.jar
ADB push it back, reboot

Related

HKLM\Software\Microsoft\Welcome

This can be valuable for ROM makers only
Bored with welcome screen? Let's play with HKLM\Software\Microsoft\Welcome
Create Key HKLM\Software\Microsoft\Welcome,
create DWORD value Disable, set some values
execute \windows\welcome.exe
and look at the screen names, which doesn't appear
FFFF FF7F - disable everything except 'email setup' screen [WM5 only AKU 3.x]
FFFF FFBF - disable everything except 'password' screen [WM5 only]
FFFF FFDF - disable everything except 'complete' screen and the finishing tap
FFFF FFEF - disable everything except 'location' screen
FFFF FFF7 - disable everything except 'pop-up menus' screen
FFFF FFFB - disable everything except 'stylus' screen
FFFF FFFD - disable everything except 'align' screen
FFFF FFFE - disable everything except tap on the first screen [ignored if any other bit is cleared, the only difference is between FFFF FFFE and FFFF FFFF]
FFFF FFFF - disable everything [displays first 'splash' screen and exits]
Other bits - probably reserved for the future [look at the order of the things above]
There is another value: SystemStart - I have no idea what does it mean
There is another key Software\Microsoft\Shell\Event\Welcome - I have no idea what does it mean
There are references to the files "\Storage Card\Welcome.Not" "welcome.Not" - I have no idea.
Nice work.
V
Great work!
Thank you.
oh!
that is great!
i used another way to delete this entry from inflashfiles.dat and inboj.dat
Directory("\Windows\StartUp"):-File("Welcome.lnk","\Windows\welcome.lnk")
but yours better
and the others tpics,
if just replacing shellres.dll.xxx.mui on RAM
welcome will be come evry boot.
<mainly i used this for testing to make shellress.mui instantly>
i made one cab it can del the welcome.lnk from StartUP folder.
but after hard rest, welcome will come again,
(this is another topic..sorry)
Ok, so i know this post is old and probably out of sight and mind. But I have an issue. This key does not exist in my registry and I only get the alignment and password setup screens. I want the whole thing enabled. Please help a brother out.
FYI, the welcome.not thing skips the entire wizard. We used to use this in the WM2003 days (back then you couldn't skip the stupid Dr's Appointment tutorial). It was handy if you store your touchscreen alignment in the extrom.
You just create a blank text file called welcome.not and put it on the root of your storage card (won't work in extrom, naturally). Then do a hard reset with the card inserted and it will skip the welcome wizard entirely. If you hard reset without the card inserted, the welcome wizard will proceed as normal.
However, the registry entries are far better than that method. Good find!!!
I just wanted to make a little update to this thread for anyone using this information to skip various screens during welcome.
Only the last 8 bits are actually used to select/de-select subroutines when running welcome (at least for WM 6.1).
7F - disable everything except 'email setup' screen [WM5 only AKU 3.x]
BF - disable everything except 'password' screen [WM5 only]
DF - disable everything except 'complete' screen and the finishing tap
EF - disable everything except 'location' screen
F7 - disable everything except 'pop-up menus' screen
FB - disable everything except 'stylus' screen
FD - disable everything except 'align' screen
FE - disable everything except tap on the first screen
FF - disable everything [displays first 'splash' screen and exits]
For my ROM, I wanted to run welcome with align, location & complete screen.
1111 1101 (FD) - align screen
1110 1111 (EF) - location screen
1101 1111 (DF) - complete screen
---------------
1100 1101 (CD) or 205
ends up being....
Code:
<wap-provisioningdoc>
<!--334.05_Welcome-->
<characteristic type="Registry">
<characteristic type="HKLM\Software\Microsoft\Welcome">
<parm name="Disable" datatype="integer" value="205" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
also if you want to skip everying just put the file welcome.not in the root of the storage card. **.not is the file extension **
irus said:
also if you want to skip everying just put the file welcome.not in the root of the storage card. **.not is the file extension **
Click to expand...
Click to collapse
Yes indeed, but make sure you apply the alignment settings by another means (provxml, cab, etc). I just spent a few days trying to figure out why endkey.exe was not working in the most recent version of my ROM (I use it to switch between vibrate/ring on long end key press). Turns out that if you don't do the align and you don't apply the settings some other way, endkey.exe does not work when you do a long press of the end key (at least on my Touch Pro).
I'm reviving this old thread since I'm running into an issue.
I usually disable everything in my ROM, thus:
Disable=dword:ff (or ffffffff)
After customization though, I need to tap on the taskbar to lauch the home screen. Otherwise, it just stays on the welcome splash.
Any ideas?
just bumping this up as i'd really appreciate an assist.
i've been trying to change the first boot in my 6.5.x build rom.
all i want is the 'allign screen' working
the current entry is
[HKEY_LOCAL_MACHINE\Software\Microsoft\Welcome]
"Disable" = dword:00000080
i may be thick but i'm really having trouble getting my head round this. i've tried
"Disable" = dword:FD
"Disable" = dword:1111 1101
"Disable" = dword:FFFF FFFD
which are all from this thread but none of these are working.
does anyone know what the entry actually is for 6.5.x? and if so i'd be grateful if someone could help.
many thanks in advance
Chris
I use
Code:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Welcome]
; only doing screen calibrate
"Disable"=dword:fffffffc
RoryB said:
I use
Code:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Welcome]
; only doing screen calibrate
"Disable"=dword:fffffffc
Click to expand...
Click to collapse
cheers for that. will give it a try when i get home
RoryB said:
I use
Code:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Welcome]
"Disable"=dword:fffffffc
Click to expand...
Click to collapse
i must be doing something wrong.. no matter what i try it's not changing the boot setup
it's still going 'tap', 'calibrate', 'time/date', and 'password'....
all i want is Tap and calibrate!!!!
this is doing my head in. i'd appreciate any other ideas???
many thanks to anyone who may be able to help
Chris
I will try to explain how to get any number you need:
1. Put this table in an excel,
2. Find the 8 digits corresponding to EACH of the screens wanted (eg. tap screen is FD or 253 and align screen is FE or 254 )
3. Tap each digit in a column (one line per screen wanted)
4. calculate the minimum of each column and get the 8 digits (in the example, min of 11111101 and 11111110 is 11111100).
5. If you use provxml go the other way round and with the total calculated find the Dec Value (3rd column) corresponding to the 8 digits (in the example 11111100 would be FFFFFFFC for reg/rgu files or 252 for xml/provxml files)
This way you can get whatever combination of screens you want.
My current rom has only tap screen (no alignment, no password, etc) and works fine.
If you do not get the expected results, most probably is not because you did it wrong but rather there is some other code replacing yours. My recommendation is to calculate the hex dec and binary values corresponding to the combination of screens that get loaded and then use the search function included in a visual kitchen to locate the file hindering your intended customization (Or simply look for the reg keys). Most of the roms will have as much as 3 or 4 places where welcome values are define (sys, oem, ext and yours !!). If you are not so patient create and ext package called zzz_whatever and in the files directory place a app.REG file so all values are overwritten. Make sure your reg or xml file does not mix with other non tested code since it may also happen that the file is not executed correctly and its rollbacked. When using provxml files non tested code should be placed behind so you can call mxipupdate_zzz01_tested and mxipupdate_zzz02_nontested to get the expected order. I think the order things get loaded are provxml, rgu, reg, xml and inside each group, package folder name and then file name.
Hope it helps, regards
Code:
Binary Hex Dec
10000000 80 128
10000001 81 129
10000010 82 130
10000011 83 131
10000100 84 132
10000101 85 133
10000110 86 134
10000111 87 135
10001000 88 136
10001001 89 137
10001010 8A 138
10001011 8B 139
10001100 8C 140
10001101 8D 141
10001110 8E 142
10001111 8F 143
10010000 90 144
10010001 91 145
10010010 92 146
10010011 93 147
10010100 94 148
10010101 95 149
10010110 96 150
10010111 97 151
10011000 98 152
10011001 99 153
10011010 9A 154
10011011 9B 155
10011100 9C 156
10011101 9D 157
10011110 9E 158
10011111 9F 159
10100000 A0 160
10100001 A1 161
10100010 A2 162
10100011 A3 163
10100100 A4 164
10100101 A5 165
10100110 A6 166
10100111 A7 167
10101000 A8 168
10101001 A9 169
10101010 AA 170
10101011 AB 171
10101100 AC 172
10101101 AD 173
10101110 AE 174
10101111 AF 175
10110000 B0 176
10110001 B1 177
10110010 B2 178
10110011 B3 179
10110100 B4 180
10110101 B5 181
10110110 B6 182
10110111 B7 183
10111000 B8 184
10111001 B9 185
10111010 BA 186
10111011 BB 187
10111100 BC 188
10111101 BD 189
10111110 BE 190
10111111 BF 191
11000000 C0 192
11000001 C1 193
11000010 C2 194
11000011 C3 195
11000100 C4 196
11000101 C5 197
11000110 C6 198
11000111 C7 199
11001000 C8 200
11001001 C9 201
11001010 CA 202
11001011 CB 203
11001100 CC 204
11001101 CD 205
11001110 CE 206
11001111 CF 207
11010000 D0 208
11010001 D1 209
11010010 D2 210
11010011 D3 211
11010100 D4 212
11010101 D5 213
11010110 D6 214
11010111 D7 215
11011000 D8 216
11011001 D9 217
11011010 DA 218
11011011 DB 219
11011100 DC 220
11011101 DD 221
11011110 DE 222
11011111 DF 223
11100000 E0 224
11100001 E1 225
11100010 E2 226
11100011 E3 227
11100100 E4 228
11100101 E5 229
11100110 E6 230
11100111 E7 231
11101000 E8 232
11101001 E9 233
11101010 EA 234
11101011 EB 235
11101100 EC 236
11101101 ED 237
11101110 EE 238
11101111 EF 239
11110000 F0 240
11110001 F1 241
11110010 F2 242
11110011 F3 243
11110100 F4 244
11110101 F5 245
11110110 F6 246
11110111 F7 247
11111000 F8 248
11111001 F9 249
11111010 FA 250
11111011 FB 251
11111100 FC 252
11111101 FD 253
11111110 FE 254
11111111 FF 255
chrisd1a1 said:
i must be doing something wrong.. no matter what i try it's not changing the boot setup
it's still going 'tap', 'calibrate', 'time/date', and 'password'....
all i want is Tap and calibrate!!!!
this is doing my head in. i'd appreciate any other ideas???
many thanks to anyone who may be able to help
Chris
Click to expand...
Click to collapse
Check the registry after you flash and the ROM is finished setting up. Does it read the values you set? Maybe there is another provxml or rgu setting it to a wrong value.
cruiserrr said:
I will try to explain how to get any number you need:
1. Put this table in an excel,
2. Find the 8 digits corresponding to EACH of the screens wanted (eg. tap screen is FD or 253 and align screen is FE or 254 )
3. Tap each digit in a column (one line per screen wanted)
4. calculate the minimum of each column and get the 8 digits (in the example, min of 11111101 and 11111110 is 11111100).
5. If you use provxml go the other way round and with the total calculated find the Dec Value (3rd column) corresponding to the 8 digits (in the example 11111100 would be FFFFFFFC for reg/rgu files or 252 for xml/provxml files)
This way you can get whatever combination of screens you want.
My current rom has only tap screen (no alignment, no password, etc) and works fine.
If you do not get the expected results, most probably is not because you did it wrong but rather there is some other code replacing yours. My recommendation is to calculate the hex dec and binary values corresponding to the combination of screens that get loaded and then use the search function included in a visual kitchen to locate the file hindering your intended customization (Or simply look for the reg keys). Most of the roms will have as much as 3 or 4 places where welcome values are define (sys, oem, ext and yours !!). If you are not so patient create and ext package called zzz_whatever and in the files directory place a app.REG file so all values are overwritten. Make sure your reg or xml file does not mix with other non tested code since it may also happen that the file is not executed correctly and its rollbacked. When using provxml files non tested code should be placed behind so you can call mxipupdate_zzz01_tested and mxipupdate_zzz02_nontested to get the expected order. I think the order things get loaded are provxml, rgu, reg, xml and inside each group, package folder name and then file name.
Hope it helps, regards
Code:
Binary Hex Dec
10000000 80 128
10000001 81 129
10000010 82 130
10000011 83 131
10000100 84 132
10000101 85 133
10000110 86 134
10000111 87 135
10001000 88 136
10001001 89 137
10001010 8A 138
10001011 8B 139
10001100 8C 140
10001101 8D 141
10001110 8E 142
10001111 8F 143
10010000 90 144
10010001 91 145
10010010 92 146
10010011 93 147
10010100 94 148
10010101 95 149
10010110 96 150
10010111 97 151
10011000 98 152
10011001 99 153
10011010 9A 154
10011011 9B 155
10011100 9C 156
10011101 9D 157
10011110 9E 158
10011111 9F 159
10100000 A0 160
10100001 A1 161
10100010 A2 162
10100011 A3 163
10100100 A4 164
10100101 A5 165
10100110 A6 166
10100111 A7 167
10101000 A8 168
10101001 A9 169
10101010 AA 170
10101011 AB 171
10101100 AC 172
10101101 AD 173
10101110 AE 174
10101111 AF 175
10110000 B0 176
10110001 B1 177
10110010 B2 178
10110011 B3 179
10110100 B4 180
10110101 B5 181
10110110 B6 182
10110111 B7 183
10111000 B8 184
10111001 B9 185
10111010 BA 186
10111011 BB 187
10111100 BC 188
10111101 BD 189
10111110 BE 190
10111111 BF 191
11000000 C0 192
11000001 C1 193
11000010 C2 194
11000011 C3 195
11000100 C4 196
11000101 C5 197
11000110 C6 198
11000111 C7 199
11001000 C8 200
11001001 C9 201
11001010 CA 202
11001011 CB 203
11001100 CC 204
11001101 CD 205
11001110 CE 206
11001111 CF 207
11010000 D0 208
11010001 D1 209
11010010 D2 210
11010011 D3 211
11010100 D4 212
11010101 D5 213
11010110 D6 214
11010111 D7 215
11011000 D8 216
11011001 D9 217
11011010 DA 218
11011011 DB 219
11011100 DC 220
11011101 DD 221
11011110 DE 222
11011111 DF 223
11100000 E0 224
11100001 E1 225
11100010 E2 226
11100011 E3 227
11100100 E4 228
11100101 E5 229
11100110 E6 230
11100111 E7 231
11101000 E8 232
11101001 E9 233
11101010 EA 234
11101011 EB 235
11101100 EC 236
11101101 ED 237
11101110 EE 238
11101111 EF 239
11110000 F0 240
11110001 F1 241
11110010 F2 242
11110011 F3 243
11110100 F4 244
11110101 F5 245
11110110 F6 246
11110111 F7 247
11111000 F8 248
11111001 F9 249
11111010 FA 250
11111011 FB 251
11111100 FC 252
11111101 FD 253
11111110 FE 254
11111111 FF 255
Click to expand...
Click to collapse
RoryB said:
Check the registry after you flash and the ROM is finished setting up. Does it read the values you set? Maybe there is another provxml or rgu setting it to a wrong value.
Click to expand...
Click to collapse
looks like you guys are right about something messing with this.
i set it to FC as advised but when i checked the reg on the build it's showing AC. i'm going to try a variation to see what happens..
i really appreciate the advice, just wish i could figure the fix
thanks for the help i appreciate it
Chris
hi,
try to search in the rgu of your OEMDrivers.
maybe there is a registry entry that is replacing your registry.
regards,
twisted
i really appreciate the advice, just wish i could figure the fix
Click to expand...
Click to collapse
What are you using for building the rom? I am pretty familiar with Ervius Visual Kitchen and it is quite straigth forward to use the search tool. Even if you use another kitchen you can download evk, put your files in the ext folder and do the search. Good luck!
I find Agent Ransack is a handy tool for searching the contents of files.
As a test you can set the registry the way you like and then run welcome.exe to see if the behaviour is the way you expect.

EVO Shift buil.prop

I'm on a EVO 3D, and trying to do a.coulpe things that needs EVO shift build.prop. I'm testing to see if I can get Order & Chaos to work on EVO 3d by making it think its a shift, and hoping this way I will not have to use chainfire, thank you in advance. I will hit your thank button.
ro.config.ringtone=Windchimer.mp3
ro.config.notification_sound=Little.mp3
ro.com.google.clientidbase=android-sprint-us
ro.com.google.clientidbase.yt=android-sprint-us
ro.com.google.clientidbase.am=android-sprint-us
ro.com.google.clientidbase.vs=android-sprint-us
ro.com.google.clientidbase.gmm=android-sprint-us
ro.com.google.clientidbase.ms=android-sprint-us
ro.phone.min_match=7
ro.cdma.home.operator.alpha=sprint
gsm.sim.operator.alpha=sprint
gsm.operator.alpha=sprint
ro.cdma.home.operator.numeric=310120
gsm.sim.operator.numeric=310120
gsm.operator.numeric=310120
gsm.sim.operator.iso-country=us
gsm.operator.iso-country=us
# begin build properties
# autogenerated by buildinfo.sh
ro.aa.taskid=196686
ro.aa.project=Speedy_S
ro.aa.romver=2.76.651.4
ro.aa.maincid=SPCS_001
ro.aa.modelid=PG0610000
ro.aa.skulist=651
ro.aa.rid=48
ro.aa.customizationid=178653
ro.aa.cidlist=SPCS_001
ro.build.display.id=2.76.651.4
ro.product.brand=sprint
ro.aa.mainsku=651
BUILD_DISPLAY_ID=2.76.651.4
ro.com.google.clientidbase=android-sprint-us
ro.aa.taskid=196686
ro.aa.project=Speedy_S
ro.aa.romver=2.76.651.4
ro.aa.maincid=SPCS_001
ro.aa.modelid=PG0610000
ro.aa.skulist=651
ro.aa.rid=48
ro.aa.customizationid=178653
ro.aa.cidlist=SPCS_001
ro.build.display.id=2.76.651.4
ro.product.brand=sprint
ro.aa.mainsku=651
BUILD_DISPLAY_ID=2.76.651.4
ro.com.google.clientidbase=android-sprint-us
ro.build.id=GRI40
ro.build.display.id=GRI40
ro.build.version.incremental=74499
ro.build.version.sdk=10
ro.build.version.codename=REL
ro.build.version.release=2.3.3
ro.build.date=六 6月 4 17:03:33 CST 2011
ro.build.date.utc=1307178213
ro.build.type=user
ro.build.user=root
ro.build.host=AA125
ro.build.tags=release-keys
ro.product.model=PG06100
ro.product.brand=sprint
ro.product.name=htc_speedy
ro.product.device=speedy
ro.product.board=speedy
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=HTC
ro.product.locale.language=hdpi
ro.product.locale.region=
ro.wifi.channels=
ro.board.platform=msm7x30
# ro.build.product is obsolete; use ro.product.device
ro.build.product=speedy
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=S.S ROMS
ro.build.changelist=74499
ro.product.ua=
ro.build.fingerprint=sprint/htc_speedy/speedy:2.3.3/GRI40/74499:user/release-keys
ro.build.project=196686
ro.product.version=2.76.651.4
keyguard.no_require_sim=1
# end build properties
#
# system.prop for mahimahi
#
ro.sf.lcd_density=240
debug.fb.rgb565 = 0
rild.libpath=/system/lib/libhtc_ril.so
# Default network type.
# 4 => CDMA mode preferred.
ro.telephony.default_network=4
wifi.interface=eth0
wifi.supplicant_scan_interval=15
# The OpenGL ES API level that is natively supported by this device.
# This is a 16.16 fixed point number
ro.opengles.version = 131072
# This is a high density device with more memory, so larger vm heaps for it.
# Change to 32m, due to 2.3.3 GB already change to 32m
dalvik.vm.heapsize=48m
# For the default value of agps
ro.ril.def.agps.mode = 2
# For emmc phone storage
ro.phone_storage = 0
# For FOTA setting (leave empty value to use default)
ro.htc.checkin.url = http://andchin.htc.com/android/checkin
ro.htc.checkin.crashurl = http://andchin.htc.com/android/crash
ro.htc.checkin.url_CN = http://andchin.htccomm.com.cn/android/checkin
ro.htc.checkin.crashurl_CN = http://andchin.htccomm.com.cn/android/crash
ro.htc.checkin.exmsg.url = http://fotamsg.htc.com/android/extra/
ro.htc.checkin.exmsg.url_CN = http://fotamsg.htccomm.com.cn/android/extra/
ro.htc.appupdate.url = http://apu-chin.htc.com/check-in/rws/and-app/update
ro.htc.appupdate.url_CN = http://apu-chin.htccomm.com.cn/check-in/rws/and-app/update
ro.htc.appupdate.exmsg.url = http://apu-msg.htc.com/extra-msg/rws/and-app/msg
ro.htc.appupdate.exmsg.url_CN = http://apu-msg.htccomm.com.cn/extra-msg/rws/and-app/msg
# release Bluetooth HW/SW information
ro.bt.chipset = Broadcom BCM4329-B1
ro.bt.stack = Broadcom BTL-A
ro.bt.stack.version = 2.0.50.032
#0x10000010010100101000011 represent bt profile list
ro.bt.profiles = 4270403
# Properties of BTLA stack
service.brcm.bt.activation = 0
service.brcm.bt.srv_active = 0
service.brcm.bt.hcid_active = 0
service.brcm.bt.btld = 0
service.brcm.bt.btld_pid = 0
service.brcm.bt.avrcp_pass_thru = 0
service.brcm.bt.avrcp_toggle = 1
#Welly_Fang_01/05/2010
ro.cdma.home.operator.alpha = sprint
ro.cdma.home.operator.numeric = 310120
#Welly_Fang_08/31/2010
gsm.sim.operator.alpha = sprint
gsm.sim.operator.numeric = 310120
gsm.sim.operator.iso-country = us
gsm.operator.alpha = sprint
gsm.operator.numeric = 310120
gsm.operator.iso-country = us
#Welly_Fang_12/30/2010
ro.com.google.clientidbase.yt = android-sprint-us
ro.com.google.clientidbase.am = android-sprint-us
ro.com.google.clientidbase.vs = android-sprint-us
ro.com.google.clientidbase.gmm = android-sprint-us
#Modify MTU from 1500 to 1472 on 3G network
ro.ril.set.mtu1472 = 1
# Properties of Scalado Denoise param.
postprocess.iso_midband = 400
postprocess.denoise_level = 5
# Following property will be reference by Settings.
ro.product.processor = 800 MHz
ro.product.ram = 512 MB
ro.product.display_resolution = 3.6 inch WVGA resolution
ro.product.main_camera = 5M
ro.product.front_camera = NA
ro.product.bluetooth = 2.1 + EDR
ro.product.wifi = 802.11 b/g/n
# For opensense sdk
ro.htc.common.version = 2.1.0.0
#
# ADDITIONAL_BUILD_PROPERTIES
#
ro.url.legal=http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html
ro.url.legal.android_privacy=http://www.google.com/intl/%s/mobile/android/basic/privacy.html
ro.com.google.networklocation=1
ro.setupwizard.mode=DISABLED
ro.setupwizard.mode=OPTIONAL
ro.config.ringtone=QuietlyBrilliant.mp3
ro.config.notification_sound=Zeta.mp3
ro.config.alarm_alert=NewDay.mp3
ro.config.cal_notification=Epsilon.mp3
ro.config.msg_notification=Gamma.mp3
ro.setupwizard.mode=DISABLED
ro.com.google.gmsversion=2.3_r3
media.a1026.nsForVoiceRec=0
htc.audio.alt.enable=1
htc.audio.hac.enable=1
ro.setupwizard.enterprise_mode=1
dalvik.vm.dexopt-flags=m=y
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt
windowsmgr.max_events_per_sec=100
ro.HOME_APP_ADJ=0
ro.FOREGROUND_APP_MEM 2048
ro.HOME_APP_MEM=3072
ro.VISIBLE_APP_MEM 3072
ro.PERCEPTIBLE_APP_MEM 4096
ro.HEAVY_WEIGHT_APP_MEM 4096
ro.SECONDARY_SERVER_MEM 6144
ro.BACKUP_APP_MEM 6144
ro.HIDDEN_APP_MEM 6144
ro.EMPTY_APP_MEM 8192
Sent from my EVO Shift Supreme
mrjaydee82 said:
I'm on a EVO 3D, and trying to do a.coulpe things that needs EVO shift build.prop. I'm testing to see if I can get Order & Chaos to work on EVO 3d by making it think its a shift, and hoping this way I will not have to use chainfire, thank you in advance. I will hit your thank button.[/QUOT
here ya go :
Dam Strapped you type fast: I know copy and paste! LOL
Click to expand...
Click to collapse
ro.product.brand=
ro.product.model=
ro.product.name=
ro.product.device=
ro.product.board=
Ahh sweet you did it already thanks
Not to highjack the thread, but how did you add the txt file fdx? I just pasted my whole biuld.prop lol its early i did it the easy way!
Sent from my EVO Shift Supreme
strapped365 said:
Not to highjack the thread, but how did you add the txt file fdx? I just pasted my whole biuld.prop lol its early i did it the easy way!
Sent from my EVO Shift Supreme
Click to expand...
Click to collapse
I just went into one of my rom .zips opened it up and copied the buid.prop to a folder the zipped it up with 7zip that what you mean?
Yeah i went into root explorer and copied it then pasted lmao lazy way
Sent from my Supreme Hybrid HTC Evo Shift

[Q] [help] I am trying to edit keylayout but no use

I am trying to edit keylayout for my PS3 bluetooth keyboard in my HTC HD2 Android 4.0.4 using tytung NexusHD2 ROM v2.9a
due to the Fn keys are simulate PS3 controler buttoms, i want to set the Fn+up, down, left, right as pgup, pgdn, home, end
i get the scancode as the code below using Testkey.apk
i write a file "Vendor_054c_Product_05af" according to my bluetooth keyboard in /proc/bus/input/devices
and i paste in /system/usr/keylayout and set permission -rw-r--r--
but it never works no matter i change
the keycode still catch the build-in Logitech, PS3 and XBOX controller keylayout
is anyone can help me out
Code:
# Copyright (C) 2011 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Sony Playstation(R)3 Bluetooth Wireless Keyboard with Pointing Stick
#
# key 0x124 DPAD_UP
# key 0x125 DPAD_RIGHT
# key 0x126 DPAD_DOWN
# key 0x127 DPAD_LEFT
key 0x124 PAGE_UP
key 0x125 MOVE_END
key 0x126 PAGE_DOWN
key 0x127 MOVE_HOME
# key 304 Square
# key 305 Cross
# key 306 Circle
# key 307 Triangle
# key 308 L1
# key 309 R1
# key 310 L2
# key 311 R2
# key 312 Select
# key 313 Start
# key 314 L3
# key 315 R3
# key 316 BUTTON_MODE
re
daviking222 said:
I am trying to edit keylayout for my PS3 bluetooth keyboard in my HTC HD2 Android 4.0.4 using tytung NexusHD2 ROM v2.9a
due to the Fn keys are simulate PS3 controler buttoms, i want to set the Fn+up, down, left, right as pgup, pgdn, home, end
i get the scancode as the code below using Testkey.apk
i write a file "Vendor_054c_Product_05af" according to my bluetooth keyboard in /proc/bus/input/devices
and i paste in /system/usr/keylayout and set permission -rw-r--r--
but it never works no matter i change
the keycode still catch the build-in Logitech, PS3 and XBOX controller keylayout
is anyone can help me out
Code:
# Copyright (C) 2011 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Sony Playstation(R)3 Bluetooth Wireless Keyboard with Pointing Stick
#
# key 0x124 DPAD_UP
# key 0x125 DPAD_RIGHT
# key 0x126 DPAD_DOWN
# key 0x127 DPAD_LEFT
key 0x124 PAGE_UP
key 0x125 MOVE_END
key 0x126 PAGE_DOWN
key 0x127 MOVE_HOME
# key 304 Square
# key 305 Cross
# key 306 Circle
# key 307 Triangle
# key 308 L1
# key 309 R1
# key 310 L2
# key 311 R2
# key 312 Select
# key 313 Start
# key 314 L3
# key 315 R3
# key 316 BUTTON_MODE
Click to expand...
Click to collapse
FpseCE
http://www.youtube.com/watch?v=mH_NBKtj0R8

[Q] Looking for the encryption footer

I'm running stock android 4.4 on a Nexus 4. I'm trying to learn how the encryption works... Last night I had to reboot my phone and had forgotten my password. After something like 30 failed password attempts the phone was automatically factory reset without notifying me. Can't find anything about this in the source!
But, what I'm really looking for is a way to extract the footer. If I understand correctly it should be the last 16Kb of the undecrypted userdata-partition which should be /dev/block/mmcblk0p23.
I've tried to extract the last 16Kb in this way:
Code:
$ blockdev --getsz /dev/block/mmcblk0p23
27596800
$ adb shell dd if=/dev/block/mmcblk0p23 of=my_footer count=32 bs=512 skip=27596768
$ adb pull my_footer
The problem is no traces of the footer can be found anywhere in this file. Also, if I skip the "count=32"-part shouldn't it stop anyway after 16Kb? It just keeps on writing until I hit ctrl-c or the phone memory is full. The only way I managed to get part of the footer seems to be from the metadata-partition with:
Code:
adb shell dd if=/dev/block/mmcblk0p18 of=my_footer
adb pull my_footer
Problem is this won't give me any keys it seems? The "magic" and version and so on is correct but I get 0x000000(...) as Encryption key and Salt when running the python script from this site:
(google for "santoku how-to-brute-force-android-encryption" I can't post links)
So.. where are the keys?
Okay I gotta correct myself now. I finally found the footer! It was in metadata after all. Here are the correct commands for Nexus 4:
Boot into recovery or anywhere you have access to adb. With the phone booted normally I had to "adb remount" and pull the files to /system because / was read-only.
Code:
dd if=/dev/block/mmcblk0p18 of=my_footer bs=512 count=32
dd if=/dev/block/mmcblk0p23 of=my_header bs=512 count=1
then
Code:
adb pull my_footer
adb pull my_header
then I made a script based on the one referred to in the earlier post and it works!
edit: Here it is
Code:
#!/usr/bin/env python
# Based on a script from https://santoku-linux.com/howto/mobile-forensics/how-to-brute-force-android-encryption
#
# Decrypts the master key found in the footer using a supplied password
# Written for Nexus 4 running 4.4.2
#
# How to get header & footer:
# dd if=/dev/block/mmcblk0p18 of=my_footer bs=512 count=32
# dd if=/dev/block/mmcblk0p23 of=my_header bs=512 count=1
#
from os import path
import sys, itertools
import time
from struct import Struct
from M2Crypto import EVP
import hashlib
import scrypt
_PARAMS = Struct("!BBBB")
KEY_LEN_BYTES = 16
IV_LEN_BYTES = 16
def main(args):
if len(args) < 3:
print 'Usage: python bruteforce_stdcrypto.py [header file] [footer file]'
print ''
print '[] = Mandatory'
else:
footerFile = args[2]
headerFile = args[1]
assert path.isfile(footerFile), "Footer file '%s' not found." % footerFile
assert path.isfile(headerFile), "Header file '%s' not found." % headerFile
fileSize = path.getsize(footerFile)
assert (fileSize >= 16384), "Input file '%s' must be at least 16384 bytes" % footerFile
result = bruteforcePIN(headerFile, footerFile)
if result:
print 'Correct PIN!: ' + result
else:
print 'Wrong PIN. :('
def bruteforcePIN(headerFile, footerFile):
# retrive the key and salt from the footer file
cryptoKey,cryptoSalt = getCryptoData(footerFile)
# load the header data for testing the password
headerData = open(headerFile, 'rb').read(32)
passwdTry = raw_input('Enter password: ')
print 'Trying: ',passwdTry
# make the decryption key from the password
decKey = decryptDecodeKey(cryptoKey,cryptoSalt,passwdTry)
# try to decrypt the first 32 bytes of the header data (we don't need the iv)
decData = decryptData(decKey,"",headerData)
# has the test worked?
#print decData
if decData[16:32] == "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0":
return passwdTry
return None
def getCryptoData(filename):
data = open(filename, 'rb').read()
# structure taken from cryptfs.h in 4.4.2_r1 source.
s = Struct('<'+'L H H L L L L L L L 64s L 48s 16s Q Q L B B B B')
ftrMagic, majorVersion, minorVersion, ftrSize, flags, keySize, spare1, fsSize1, fsSize2, failedDecrypt, cryptoType, spare2, cryptoKey, cryptoSalt, persistoff0, persistoff1, persistsize, kdfType, N_factor, r_factor, p_factor = s.unpack(data[0:192])
cryptoKey = cryptoKey[0:0+keySize]
print 'Footer File :', filename;
print 'Magic :', "0x%0.8X" % ftrMagic
print 'Major Version :', majorVersion
print 'Minor Version :', minorVersion
print 'Footer Size :', ftrSize, "bytes"
print 'Flags :', "0x%0.8X" % flags
print 'Key Size :', keySize * 8, "bits"
print 'FS Size 1 :', fsSize1
print 'FS Size 2 :', fsSize2
print 'Failed Decrypts:', failedDecrypt
print 'Crypto Type :', cryptoType.rstrip("\0")
print 'Encrypted Key :', "0x" + cryptoKey.encode("hex").upper()
print 'Salt :', "0x" + cryptoSalt.encode("hex").upper()
print 'KDF type :', kdfType
print 'N-factor :', N_factor
print 'r-factor :', r_factor
print 'p-factor :', p_factor
print '----------------'
return cryptoKey,cryptoSalt
def decryptDecodeKey(cryptoKey,cryptoSalt,password):
# make the key from the password
ikey = scrypt.hash(password,cryptoSalt,1<<15,1<<3,1<<1, 32)
key = ikey[:KEY_LEN_BYTES]
iv = ikey[KEY_LEN_BYTES:]
# do the decrypt
cipher = EVP.Cipher(alg='aes_128_cbc', key=key, iv=iv, op=0) # 0 is DEC
cipher.set_padding(padding=0)
decKey = cipher.update(cryptoKey)
decKey = decKey + cipher.final()
return decKey
def decryptData(decKey,essiv,data):
# try to decrypt the actual data
cipher = EVP.Cipher(alg='aes_128_cbc', key=decKey, iv=essiv, op=0) # 0 is DEC
cipher.set_padding(padding=0)
decData = cipher.update(data)
decData = decData + cipher.final()
return decData
if __name__ == "__main__":
main(sys.argv)
. Is it giving exact last 16k byte
Hi Guys,
Code:
dd if=/dev/block/mmcblk0p18 of=my_footer bs=512 count=32
I tried with above code to get footer. But I didn't find any footer information there . Is it giving exact last 16k byte?
I used my userdata partition for footer .
help pls - where i can get header? From bin image. Footer you can search in bin image by words aes-cbc-essiv:sha256 and after dd bs=1 skip=$((your found bytes-36)) count=16384 if=footer

[GUIDE][POCO F2 Pro] How to fix weird headset functionality

I had a problem where the volume buttons on my headset were being recognized but not for volume, tried clean flashing (CrDroid), tried flashing firmware again etc. Didn't seem to help.
What helped was this thread.
I used the app WhichButton and then clicked the buttons and then saw the result was KEYCODE_BUTTON_2, KEYCODE_BUTTON_3.
After recognizing this I went to /system/usr/keylayout/Generic.kl (Root is needed to access this file, I used MiXplorer)
and changed:
Code:
key 257 BUTTON_2
key 258 BUTTON_3
To
Code:
#key 257 BUTTON_2
#key 258 BUTTON_3
key 257 VOLUME_UP
key 258 VOLUME_DOWN

Categories

Resources