Custon buttons - Mogul, XV6800 ROM Development

i installed ae button, wanna get rid of it, but when i do i lose the voice command button. i only have 4 buttons in the settings button manager. any idea how to get the buttons back to the way they started? or add buttons to the phones default button manager?

gbenj said:
i installed ae button, wanna get rid of it, but when i do i lose the voice command button. i only have 4 buttons in the settings button manager. any idea how to get the buttons back to the way they started? or add buttons to the phones default button manager?
Click to expand...
Click to collapse
voice command or the voice dialer? for voice command you need to reg edit and add this
hklm/software/microsoft/shell/keys
add key 40C6
1. add binary data "default" value "\windows\appbuttons\record.lnk" -b (with quotes)
2. add dword flags value 0 (0000000)
3. binary data icon value "location of icon"
4. binary data name value button 5 (press and hold)
5. binary data ResetCmd "\windows\appbuttons\record.lnk" -b (with quotes)
then add key 40C7
1. add dword named BtnWnd value 0 (00000000)
2. add binary data "default" value "\program files\voice command\voicecmd.exe" - ptt
3. add dword flags value 0 (0000000)
4. binary data "icon" value "location of icon"
5. binary data "name" value "button 5"
that should do it...
if you have the OEM voice dialer then point #2 at the file for the voice dial program and then point #5 at that icons location

srtpusher said:
voice command or the voice dialer? for voice command you need to reg edit and add this
hklm/software/microsoft/shell/keys
add key 40C6
1. add binary data "default" value "\windows\appbuttons\record.lnk" -b (with quotes)
2. add dword flags value 0 (0000000)
3. binary data icon value "location of icon"
4. binary data name value button 5 (press and hold)
5. binary data ResetCmd "\windows\appbuttons\record.lnk" -b (with quotes)
then add key 40C7
1. add dword named BtnWnd value 0 (00000000)
2. add binary data "default" value "\program files\voice command\voicecmd.exe" - ptt
3. add dword flags value 0 (0000000)
4. binary data "icon" value "location of icon"
5. binary data "name" value "button 5"
that should do it...
if you have the OEM voice dialer then point #2 at the file for the voice dial program and then point #5 at that icons location
Click to expand...
Click to collapse
thanks alot, but could i just have a little more detail about waht i need to do. im using total commander for reg edits, and used the reg edits before to fix my mms with verizon, but im not sure what to do here. i keep getting "Error in line 1, not a valid hex string!" every time i add binary data default value"..." for either of them
to answer your question, i want to set up button 5 to use a program called voice speed dial. eventually ill want a bluetooth headset to access that program, but for now i just want to get that button working again.
similarly, if its possible to adjust the camera button to run a program(flashlight) when clicked, and open the camera when held.
thanks for the help

gbenj said:
thanks alot, but could i just have a little more detail about waht i need to do. im using total commander for reg edits, and used the reg edits before to fix my mms with verizon, but im not sure what to do here. i keep getting "Error in line 1, not a valid hex string!" every time i add binary data default value"..." for either of them
to answer your question, i want to set up button 5 to use a program called voice speed dial. eventually ill want a bluetooth headset to access that program, but for now i just want to get that button working again.
similarly, if its possible to adjust the camera button to run a program(flashlight) when clicked, and open the camera when held.
thanks for the help
Click to expand...
Click to collapse
OK! was able to get it done, was a little unclear based on the descriptions in your instructions, but once i looked at them, and looked at the existing buttons i had in the other folders it made some sense. you kept saying add binary data etc, but instead i just had to add a string with a vale of wtvr, maybe ur right and i just dont know the terminology, but thats what my registry had for the other buttons so i kinda just copied them.
thanks alot

one more question. any idea how i can add the flashlight program to the camera button(without holding it down)?

Related

HButton - maps more apps on HW buttons

NEW VERSION 2.3
*** this application is no longer developed. Last version (2.3) is attached to this post ***
I didn’t find freeware application for assign more applications to one HW button using hold-button, so I decided to write my own. Here is result.
Application HButton can be used to assign more applications to one HW button. If you press the button, the first application is run. If you hold button till device vibrate, second app is run. If you hold button till second vibrate, third app…. And so on, and so forth.
Usage:
* Install attached cab.
* Run HBSetup (Programs - HButton - HBSetup), setup up to 5 applications to Button1
* Start Setting – personal – Buttons and assign HButton1 to any HW button.
Now you can run all selected applications using this one HW button.
Any topics welcome.
Hundera
[18.5.2007] UPDATE
I uploaded new version 1.2.
Contains new options for starting applications
* vibrate
* beep
* display name on screen
[22.5.2007]
Version 1.3
* "unlimited" num of apps on one button
* <None> application
* option to cycle thru applications
* option to notify first application
[25.5.2007]
Version 1.5 - please uninstall previous version (not necessary on WM5, WM6)
* Fix: Bugs in installation and setup on devices with localized ROMs
* Fix: Unable to remove first app in list
* Fix: Not working for some buttons on Universal
* Could be installed on Storage Card (Only HBSetup.exe)
* <Clock> application
* Positioning of info box.
[2.6.2007]
Version 1.6
* <Today> application
* HButtonTask - task switcher like alt+tab. (first app is always today)
[6.6.2007]
Version 1.7 - fixed bugs with PHM keys
* Possibility to start application with params
* HBSetup search for links in linked directories
* HBSetup doesn't assign .lnk file, but parse it and assign exe with params
Vesion 1.8 - added some "applications"
* <Ok/Close> (minimize app)
* <Quit> (terminates app)
* <Start Menu>
[7.6.2007]
Vesion 1.8.1 - Fixed bug with param parsing
[30.9.2007]
Version 1.9.1
* <Back> - switch to previously opened application
* HButtonTask - first item in list could be Today or previously opened application
* Fixed: Device reboots when <QUIT> is used on "Programs"
[23.10.2007]
Version 2.0
* <Rotate Left>
* <Rotate Right>
* assignment to HW buttons could be done directly in HBSetup
* Label configuration - size, font size, colors
* Fixed: install dir in localized ROMs
[29.10.2007] Version 2.1
* <Toggle BT>
* <Toggle SIP>
* Fixed: refreshing top window after Rotate
[10.1.2008] Version 2.2
* <Toggle Sound (only WM5,WM6)>
* <Toggle WiFi>
* Fixed: list of applications on PPC2003
* Fixed: directory browsing in HBSetup
[15.5.2008] Version 2.3
* Import / Export of settings
* 2 more buttons (HButton6 & HButton7)
* Browse... select any file to be started by HButton
.NET2.0 necessary
One more remark.
.NET 2.0 is necessary to use HBSetup. If you want to use HButtons without .NET, you can install it from cab and setup it manually using registry editor.
For Notify and flags use sum of numbers for options you want. for example notify=5 means vibrate and display name
Code:
[HKEY_CURRENT_USER\Software\HButton]
Delay : DWORD [I]delay in ms between applications start. (Optional, Deafult 500)[/I]
Notify : DWORD [I]type of notification. 1 - vibrate, 2 - Beep, 4 - display name. (Optional, default 1)[/I]
[HKEY_CURRENT_USER\Software\HButton\Button1]
flags : DWORD [I]flags for this button. 1 for cycle thru apps, 2 for notify even first app, 4 custom delay. (Optional, default 0)[/I]
Delay : DWORD [I]delay in ms between for this button. Only when custom delay is set. (Optional)[/I]
NItems : DWORD [I]number of applications assigned to HButton1[/I]
Item0 : STRING [I]first application[/I]
Item0_name : STRING [I]displayed name of first application. (Optional)[/I]
Item0_param : STRING [I]Parameters of first application. (Optional)[/I]
Item1 : STRING [I]second application[/I]
Item1_name : STRING [I]displayed name of second application. (Optional)[/I]
Item1_param : STRING [I]Parameters of second application. (Optional)[/I]
…
[HKEY_CURRENT_USER\Software\HButton\Button2]
[I].. same for others buttons[/I]
[HKEY_CURRENT_USER\Software\HButton\ButtonT]
flags : DWORD [I]flags for task. same as other flags + 8 for show next application + 16 for first item is last opened application. (Optional, default 8)[/I]
Delay : DWORD [I]same as for buttons[/I]
Special applications:
#t - <Today> (i.e. Item0="#t" )
#o - <Ok/Close>
#q - <Quit>
#w - <Start Menu>
#c - <Clock> (*_name must be set to "<Clock>")
#b - <Back>
Cycling
Hello there.
Its a nice tool. Thanks for that.
What about to cycle through defined applications till the button is released? If I do miss the application which I want to launch - it launches the last defined application. I do think there should be the way how to "cancel" the launching at all or something like this.
Sincerely David
dmisek said:
What about to cycle through defined applications till the button is released? If I do miss the application which I want to launch - it launches the last defined application. I do think there should be the way how to "cancel" the launching at all or something like this.
Click to expand...
Click to collapse
Thanks for remark.
My idea was to start last application immediately, when there is no application left – if you have two applications assigned to one button, second will run exactly after 500ms(or delay you have set).
In your situation, there is necessary to release button in proper time.
But I think, that it could be added as possibility – so user can choose, if
- it will works like now
- it will cycle thru defined applications
- last application will be "CANCEL". (or combination with previous one)
It unfortunately fails to install on my smartphone (VOX).
Can you build a version for smartphone?
Thanks!
Smartphone
I can't promise anything, because I have no experiences with Smartphones.
But I will try to compile it.
I have found the problem of missing the app I want to be a nag as well. As dmisek said, if you have 5 apps assigned to a button and you miss the app you want, you have to take one of the following.
As a quick work around, I created a link to the today screen and added it to the last app of each button. So, the worst case there is that if I miss my intended app, I will at least go back to the today screen.
As a suggestion for a fix, I would probably say to have the apps loop over and over in the list. I would also suggest adding a "Cancel" like you said in the list.
jockyw2001 said:
It unfortunately fails to install on my smartphone (VOX).
Can you build a version for smartphone?
Thanks!
Click to expand...
Click to collapse
As I said before, I have no smartphone. There is some version, but not tested. Use it at your's own risk.
Vibration is not vorking - I used functions that doesn't exists on smartphones. If everythink else will work, I will try to find substitute for this functions.
hopes that help
Hundera
Hundera: Thanks for your time. Unfortunately it still doesn't install ("The installation file is not intended for this device").
The WM6 standard edition on my VOX smartphone doesn't have a button changer in the settings menu.
Does anyone know which executable is responsible for this on a PPC?
Alternatively can anyone provide me the registry keys?
Thx!
Maybe smartphone has no button to map.
On PocketPC it is store in HKLM\Software\Microsoft\Shell\Keys\.
There are keys 40Cx for buttons...
If you havn't these keys, app will not work...
I've got one regkey 40C1 (voice record button) and that's exactly the button I'd like to use with HButton.
Can you write down the steps to install your app manually?
(files and reg keys)
Oh btw, is it the ResetCmd value in 40C1 key I need to change?
Currently it's set to "\Windows\AppButtons\Record.lnk -b"
Hi,
there are two exe files.
HBSetup is for settings HButtons. If it doesn't work, see post with registry description.
Into reg key "Default" add path to HButton with param 1 (or what HButton you will set).
for example "\Program Files\HButton\HButton.exe 1"
ResetCmd is origin value. It's not neccessary to change it.
Bad luck. I can't start button.exe in any way. Not via the 40c1 hw key and neither from fexplore.
I manually created the HButton reg key and the made the change to the 40C1 reg key:
[HKEY_CURRENT_USER\Software\HButton]
"Delay"=dword:000001f4
[HKEY_CURRENT_USER\Software\HButton\Button1]
"Item0"=""\Storage Card\Tools\Fakecursor\Fakecursor.exe""
"NItems"=dword:00000001
=============================================
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys\40C1]
@=""\Storage Card\Tools\HButton\Button.exe" 1"
"Flags"=dword:00000000
"Icon"="hotvoice.exe, 0"
"ResetCmd"=""\Windows\AppButtons\Record.lnk" -b"
=============================================
If I press the hw button it starts the voice tag recorder as usual.
Any clue?
Thx for your patience
Did you try HBSetup? works?
Settings in registry looks fine.
What Button.exe does, when you run it from fexplorer? Nothing, or throw some error?
Hundera said:
Did you try HBSetup? works?
Click to expand...
Click to collapse
unexpected error (NotSupportedException).
This is because I'm not running .NET 2.0
Settings in registry looks fine.
What Button.exe does, when you run it from fexplorer? Nothing, or throw some error?
Click to expand...
Click to collapse
nothing
This one will work... hopefully
Yes, it runs fine from fexplorer
But ... it doesn't start when pressing the voice record button
So close ...
Does HTC do something different with the HW keys on Smartphones
strange...
What voice record button does? Start recording as default or do nothing?
If start recording - try to rewrite another reg value in this registry key. Maybe ResetCmd?
If it do nothing - try to write only "\Storage Card\Tools\HButton\Button.exe" into "Default" key, without param 1.
Hundera said:
strange...
What voice record button does? Start recording as default or do nothing?
Click to expand...
Click to collapse
After pressing the button it beeps 3 times and first opens a window "Alert Speak after the audio prompt" followed for a short time by a window "Recognizing Voice Tag" where it says "there is no trained voice tag" and then exits. I never used this application and don't know yet how it works.
If start recording - try to rewrite another reg value in this registry key. Maybe ResetCmd?
If it do nothing - try to write only "\Storage Card\Tools\HButton\Button.exe" into "Default" key, without param 1.
Click to expand...
Click to collapse
Tried both, but to no avail
Perhaps I have to play around with reg keys like :MSVOICE or :MSHOTVOICE in HKLM\Software\Microsoft\Shell\Rai
No ideas :-(

[TUT]How to remove the 01:02 flip in Manila 2.5 properly and how to make CDMA SMS fix

Part 1 - How to remove 01:02 flip:
I write this manual because I find there are people using wrong way to get rid of this nasty "feature", which will cause clock stuck or Manila starts with 0:00AM. Here I provide a proper way to remove this "feature":
1. Download LuaTool(Thanks Co0kieMonster), and make sure you know how to use Command Line.
2. Grab 5fa4d4b7_manila from Manila Home to the same folder as LuaTool.
3. Open Command Line, input "LuaTool /decompile 5fa4d4b7_manila"(without the quotes) and enter. You may not get 100% sucess rate but that's okay.
4. Open 5fa4d4b7_manila.lua that just generated by LuaTool, search for "DoFlip", and you will find something like this:
Code:
Below comes from Manila_Home_2_5_20111612_0, other versions may differ:
local l_28_0 = _application.Store:GetIntValue(Lifetime_Application, "ShowCacheHomePage")
if l_28_0 == 1 then
if _TickControlForClock:CheckBoundary() then
ClockHelper:DoFlip()
else
ClockHelper:SetTimeInstantly()
end
else
local l_28_1 = _application.Store:GetIntValue(Lifetime_Application, "AnimationForHomeKey")
if l_28_1 == 1 then
if _TickControlForClock:CheckBoundary() then
ClockHelper:DoFlip()
else
ClockHelper:SetTimeInstantly()
end
end
end
Simply replace all those "DoFlip" with "SetTimeInstantly", or you can reconstruct the code structure like below:
Code:
local l_28_0 = _application.Store:GetIntValue(Lifetime_Application, "ShowCacheHomePage")
if l_28_0 == 1 then
ClockHelper:SetTimeInstantly()
else
local l_28_1 = _application.Store:GetIntValue(Lifetime_Application, "AnimationForHomeKey")
if l_28_1 == 1 then
ClockHelper:SetTimeInstantly()
end
end
This can reduce internal operations in Manila.
5. After editing the code, save the file and in the Command Line, input "LuaTool /compile -s -r n 5fa4d4b7_manila 5fa4d4b7_manila.lua"(this "n" should be the function number of the edited function. In this example, it's 28) and enter.
6. Overwrite the original 5fa4d4b7_manila with the edited one.
Part 2 - How to make a CDMA SMS fix for Manila 2.5:
This fix can fix the SIM error when you send a SMS from a CDMA2000 phone in Manila 2.5 Classic Messaging Page. To enable Classic Messaging Page, import these registry keys:
Code:
[HKEY_CURRENT_USER\Software\HTC\Manila]
"Manila://PeopleDetail\\peopleMessageClassic.page.hidden"=dword:0
"Manila://PeopleDetail_SIM\\peopleMessageClassic.page.hidden"=dword:0
"Manila://PeopleDetail\\peopleMessage.page.hidden"=dword:2
"Manila://PeopleDetail_SIM\\peopleMessage.page.hidden"=dword:2
Then let's start making this fix:
1. Download LuaTool(Thanks Co0kieMonster), and make sure you know how to use Command Line.
2. Grab 57a92846_manila from Manila People to the same folder as LuaTool.
3. Open Command Line, input "LuaTool /decompile 57a92846_manila"(without the quotes) and enter. You may not get 100% sucess rate but that's okay.
4. Open 57a92846_manila.lua that just generated by LuaTool, search for "SIM", and you will find something like this:
Code:
if not l_43_2.bIsSIMPresent then
trace("[peopleMessage.lua] : SIM is not present")
ShowDialog(Locale:GetString("IDS_NOSIMCARD"), Locale:GetString("IDS_NOSIMCARD_DESP"), "OK")
return
end
and this:
Code:
if not l_43_2.bIsSIMReady then
trace("[peopleMessage.lua] : SIM is not ready")
l_43_2:OpenPINCodeDialog()
return
end
Simply delete these two part of code.
5. After editing the code, save the file and in the Command Line, input "LuaTool /compile -s -r n 57a92846_manila 57a92846_manila.lua"(this "n" should be the function number of the edited function. In this example, it's 43) and enter.
6. Overwrite the original 57a92846_manila with the edited one.

Changing font size and screen gamma CM7

Is there a way to do this? I had a Nook Color and it there was an app to change the gamma. Anyone know of an app that can do this for our TouchPads?
You can change the LCD density in the build.prop. Adjust it in increments of 10 until you find what you like.
Sent from XDA Premium on Thunderbolt
Stock dpi is 160.
I'm running 140 (slightly smaller). Valid is 0 to 255, but numbers over 240 caused issues with other devices so not a bad idea to have a current recovery backup.
How to edit your dpi manually:
Get Root Explorer from Market and scroll down to system, and tap it to open it. Then at the top, tap the [ Mount R/W ] button. It'll change to [ Mount R/O ] so you have read/write privilege. (If you're using a different editor, you'll have to figure out how to get read/write privilege.) Then long-press on your build.prop file, choose "edit".
Scroll down until you find this line (bottom section in ADDITIONAL BUILD PROPERTIES):
ro.sf.lcd_density=160
Tap to position your cursor at the end of the line and carefully change 160 to 140:
ro.sf.lcd_density=140
When done, tap the menu button, choose "save and exit" and tap the top button in Root Explorer to change back to [ Mount R/W ] and reboot.
There are other programs that let you edit system files, but you need one that uses root since this is a system file that can't be edited with some file managers.
Colchiro said:
Stock dpi is 160.
I'm running 140 (slightly smaller). Valid is 0 to 255, but numbers over 240 caused issues with other devices so not a bad idea to have a current recovery backup.
How to edit your dpi manually:
Get Root Explorer from Market and scroll down to system, and tap it to open it. Then at the top, tap the [ Mount R/W ] button. It'll change to [ Mount R/O ] so you have read/write privilege. (If you're using a different editor, you'll have to figure out how to get read/write privilege.) Then long-press on your build.prop file, choose "edit".
Scroll down until you find this line (bottom section in ADDITIONAL BUILD PROPERTIES):
ro.sf.lcd_density=160
Tap to position your cursor at the end of the line and carefully change 160 to 140:
ro.sf.lcd_density=140
When done, tap the menu button, choose "save and exit" and tap the top button in Root Explorer to change back to [ Mount R/W ] and reboot.
There are other programs that let you edit system files, but you need one that uses root since this is a system file that can't be edited with some file managers.
Click to expand...
Click to collapse
Does 140 give you any market app compatibility issues with some apps (Maps) for example. I know on my Thunderbolt there are only a few DPI's to chose from or I have app compatibility errors and can't update apps.
I use Nitrality from the market to change the DPI. It's under the UI section of the application I believe. I set my DPI at 200 and now I can actually see my icons.
180 Seems good. 160 a little too smal and 200 a bit too big for my taste.
I'm on 150 right now and think I'll keep it there until something goofy, like missing market apps happens.
Had that problem on the Nook and didn't even know it until I flashed a version with 160 dpi and instantly had about 6 updates in Market.
How does one get back to 160 dpi? The bar in nitrality wont go below 182 in portrait or landscape
Sent from my HTC Eva 4G using Tapatalk
For reason I'm getting launcher force close with anything under 160. Any idea why?
Mine's set to 150 and I just opened LPP, backed it up and uninstalled it. (I use it on my phone, but not optimal for tables, IMO. No FC's here.
Please post non development Questions into General Forum of device when there is no direct Q & A Forum.

Registry Tweaks for Lumia 710&800

Your phone must be Full Unlocked!
Then you should install WP7 Root Tools.
Unlock the hidden options in the settings:
LOCAL MACHINE/System/Accessibility/
Code:
"CompactMode"=dword: 0
"TTY"=dword: 1
"telecoil UI"=dword: 1
"telecoil"=dword: 1
Change Search Engine in Internet Explorer by vova1609
CURRENT USER/Software/Microsoft/Internet Explorer/SearchProviders
Google:
1. Create key "Google"
2. Create value:
value name: URL
value type: string
value data: http://www.google.com/m?hl=en&gl=us&client=ms-hms-tmobile-us&q={searchTerms}
3. Done!
Yahoo!
1. Create key "Yahoo!"
2. Create value:
value name: URL
value type: string
value data: http://search.yahoo.com/search?p={searchTerms}
Yandex
1. Create key "Yandex"
2. Create value:
value name: URL
value type: string
value data: http://yandex.ru/msearch?text={searchTerms}
Remove built-in applications from saintonotole's firmware by vova1609
As you know, if you delete application, like Bazaar, this application will be installed again after reboot. I have found solution:
Local Machine/Software/OEM/FirstBoot/InstallApps
Delete folder InstallApps
Nice. What about local nachine/software/oem/cloaking/appreinstaller
Maybe this reinstalls deleted apps?
Sent from my Lumia 710 using XDA Windows Phone 7 App
Also can we find any battery tweaks, cause battery really sucks.
Sent from my Lumia 710 using XDA Windows Phone 7 App
mariosraptor said:
Nice. What about local nachine/software/oem/cloaking/appreinstaller
Maybe this reinstalls deleted apps?
Sent from my Lumia 710 using XDA Windows Phone 7 App
Click to expand...
Click to collapse
no
For very low brightness(tested on lumia 710)
Current User/Control Panel/Brightness
"LowBrightness"
Value= 1
1 is the lowest I have tried, I don't want to try 0 lol. Value is probably 1-100.
Battery performance FTW now.
Sb know how to change the vibration pattern? I always miss the incoming calls due to poor vibration level!
There's any way to change the boot splash screen? (Not the nokia logo)
I really searched for anything on registry or file system... but can't find anything
My phone is the Lumia 710
vova1609 said:
Your phone must be Full Unlocked!
Then you should install WP7 Root Tools.
Unlock the hidden options in the settings:
LOCAL MACHINE/System/Accessibility/
Code:
"CompactMode"=dword: 0
"TTY"=dword: 1
"telecoil UI"=dword: 1
"telecoil"=dword: 1
Change Search Engine in Internet Explorer by vova1609
CURRENT USER/Software/Microsoft/Internet Explorer/SearchProviders
Google:
1. Create key "Google"
2. Create value:
value name: URL
value type: string
value data: http://www.google.com/m?hl=en&gl=us&client=ms-hms-tmobile-us&q={searchTerms}
3. Done!
Yahoo!
1. Create key "Yahoo!"
2. Create value:
value name: URL
value type: string
value data: http://search.yahoo.com/search?p={searchTerms}
Yandex
1. Create key "Yandex"
2. Create value:
value name: URL
value type: string
value data: http://yandex.ru/msearch?text={searchTerms}
Remove built-in applications from saintonotole's firmware by vova1609
As you know, if you delete application, like Bazaar, this application will be installed again after reboot. I have found solution:
Local Machine/Software/OEM/FirstBoot/InstallApps
Delete folder InstallApps
Click to expand...
Click to collapse
I only try to do the first tweak but i don't see any change... I'm using a custom rom (Rataplan v3)
what about lumia 800 Music enhacement (vol boost or sth like that) has anyone tried to find something?
I'm preparing my phone for testpoint bootloader swap with ATF so I'll help u out soon ,try
to work on that cuz Original setup sucks 4 real
cdbase said:
what about lumia 800 Music enhacement (vol boost or sth like that) has anyone tried to find something?
I'm preparing my phone for testpoint bootloader swap with ATF so I'll help u out soon ,try
to work on that cuz Original setup sucks 4 real
Click to expand...
Click to collapse
yes, i also want to change the standard volume!
In my case, for this huge range of 30, its way too loud on 1, and way to quiet on 30. In between, you can't really hear a difference for example 23 and 24.
It would be awesome to change this.
Have anyone interested in disabling prediction and auto correct?
I just found that tweak today! (Changing some registy values myself)
Go to: Local Machine\System\Input
enter in the folder that corresponds your alnguage id (in my case is lang_0416 for Portuguese Brazilian)
add the string ".disable" in the end of the values of "Dictionary File" and "HTR Dictionary File" and restart your phone.
Next time you type something, you should not be bothered again with the prediction and auto correct.
Hi guys! You problems with the phone vibration ends here!
Access the phone registry and go to "Current User\Control Panel\SoundCategories\Ring"
First go to: RingerOffVibrateOn
and change script value to: av0.1v2.2w2r
Now go to: RingerOnVibrateOn
and change script value to: av0.1v2.1w0.1v1.pr
DONE!
Reboot isn't required. Call your phone and you will see the classic vibration while on silent.
Unfortunately the phone cannot vibrate and ring... Only vibrate, then ring.
---------- Post added at 09:55 AM ---------- Previous post was at 09:07 AM ----------
I don't know if i'm really helping here...
If you found out that your alarm volume is too low... You can go to in registry: "Current User\Control Panel\SoundCategories\Alarm\RingOnVibrateOn"
Change script to: p
yes... just "p" (that means PLAY)
it will not change the volume at all... it will just play in the same volume as your ringtone ^^

AndroModding

Requirements:
1) Have the .apk file you want to hack.
2) Have WinRar installed on your PC. (*Download WinRar 32bit*|*Download WinRar 64bit*)
3) Have .NET Reflector. (*Download .NET Reflector 9.0*)
4) Have "Reflexil", a required Plugin to hack files with .NET Reflector. (*Download Reflexil Plugin for .NET Reflector*)
5) Have an APK SIGNER. I personally use the one-click signer. (*Download one click apk signer*)
Get Ready
Let's prepare our workspace:
1) The first step is to look inside our .apk file, in order to be sure it can be hacked with this method. What we will do is to rename the apk from .apk to .zip;
2) Double click on the .zip file and you should be able to open it with WinRar. If not, make right-click and select "Open With..." and then chose "WinRar";
3) Try to go to the following location: assets/bin/Data/Managed/. If you reached it succesfully, and if you see lots of .dll files inside it then YES, you can hack this game (or you can TRY hacking it) using .NET Reflector!
4) Now, extract the whole "Managed" folder wherever you like (I personally have a folder on my Desktop I exclusively use to hack games, where I put all the softwares I need to hack them).
5) Open ".NET Reflector", move ALL THE .DLL FILES from the "Managed" folder inside it (move them in the LEFT box of Reflector).
6) Press F3, then press Ctrl+M. This will enable the Search box and set it properly for our scopes. Please note this must be done EVERY TIME you open .NET Reflector.
7) Launch Reflector (if you read the "ReadMe.txt" into the Reflexil folder of my download link above, you already know how to launch it. Otherwise, well, click on the Gear icon or go to Tools -> Reflexil and click on it)
Ok, we managed to set up everything properly and we can finally start hacking!
Let's start
So, let's read what I'll write below very carefully, since it's easy to understand if you spend enough time reading, ok?
1) The first step, after you grabbed your .apk file is to open it with WinRar (I personally rename the extension to .zip in order to open it automatically with WinRar, but you can simply do Right Click on the .apk file and select "Open With..." -> WinRar).
2) Browse to the following path, inside the WinRar window: assets/bin/data/Managed/, like the screenshot below:

3) Extract (you can simply drag them) all the .dll files of this archive into your desired folder (or, to be faster, just drag the entire "Managed" folder of the archive out of it.
4) Now, Open NET Reflector, press F3 and Ctrl+M (this must be done every time, to quickly set up NET Reflector for our usage), load the "Reflexil" plugin by clicking on the Gear icon and move all the .dll files inside .NET Reflector's window (at the left, like in the screenshot below):

Now we're ready to search, so input your desired keyword in the Search Box and edit the desired code, like in the Screenshot below. Watch it carefully:

6) To edit the code, you need to right-click on the desired instruction you want to modify and select "Edit". When you're done with edits, click on Update, like in the screenshot below:

7) Now, let's save our code. To do this, in the Left panel of .NET Reflector, scroll up until you find the name of the Assembly you modified, then do Right Click -> Reflexil -> Save, like in the screenshot below:

8) It'll add ".Patched" to the original name the of the .dll file, so you know which one is the modified and which one is the original .dll file. Now, to be sure we modified the right code, let's load again the Assembly into .NET Reflector, to see how it does look now. (this step is optional, but recommended if you're not 100% sure the hack is properly coded:

9) Ok, in my example the codes were right so we can proceed adding the modified .dll file to our original .apk file. So we open the .apk file again with WinRar and replace the original "Assembly-Csharp.dll" (or any other .dll files you modified) with the one containing ".Patched", but of course, you need to rename the file to its original name, or the game will not load. So, in my example, I renamed Assembly-Csharp.Patched.dll to Assembly-Csharp.dll in order to restore its original name.
10) Now it's time to sign it (or you can add*toast*before singning apk if you want, before signing the .apk file). So we move the modified .apk file in the same folder of the "one_click_signer.cmd" file (or, if you use another apk signer, use your method to sign it), then we open it by double-clicking it and a Command Prompt window will appear.
All we need to do is to type:
"name of the apk file.apk"
and press Enter, like in the screenshot below (don't forget the "" symbols, they are part of the code you need to write!):

11) That's it! Our MOD APK file is ready! You'll find a new .apk file in this folder, starting with "signed-". This is the signed .apk file you can finally share! But first, of course, test the game and ensure it does properly work. If yes, it means you're a good hacker and you can finally upload the .apk file to share it with everyone! If the .apk file is not properly working, or if the codes you made aren't showing, well, don't lose hope! Just try again, modifying some other offsets! Good luck!
FAQs:
If you need help, as always, reply below and I'll be glad to add further details or to give you an helping hand!*
Do you have an Int32?
You can return a value this way:
ldc.i4 -> Int32 -> Your_Value (no limits)
ret
or
ldc.i4.s -> SByte -> Your_Value (max 128)
ret
Do you have an Int64?
You can return a value this way:
ldc.i8 -> Int64 -> Your_Value
ret
Do you have a Single?
You can return a value this way:
ldc.r4 -> Single -> Your_Value
ret
Do you have a Double?
You can return a value this way:
ldc.r8 -> Double -> Your_Value
ret
Do you have a "Boolean"?
I'm used to compare "Boolean" with a question. Basically, it "asks" something to the game, and the game will answer with True (yes) or False (no).
For example: get_isVip will "ask" the game if the user is a VIP, and the game will probably answer "No, he's not a VIP!!!", so what can we do here?
We have two ways. The first (easier, but you will not learn much..) is about returning always True (yes), while the second (not alwasy applicable, but it's the "pros" way) is about making the game thing you're a VIP for real.
But first, let's explain how to return "True" or "False" in the game.
True = ldc.i4.1 (or ldc.i4 -> Int32 -> 1)*
False = ldc.i4.0 (or ldc.i4 -> Int32 -> 0)
Beware that you must always use ldc.i4 (and not ldc.r4, ldc.i8 and so on..) or the game will crash.
So, the easiest way to always return True (or False) to a Boolean is to replace the whole function with:
[TRUE]
ldc.i4.1
ret
[FALSE]
ldc.i4.0
ret
Now, let's talk about the pros' method. As we said above, it's all about making the game think you're a VIP for real, so the Boolean will naturally return a true value, even if we both know you're not a VIP for real in the game (of course I talk about VIP to make an example, you can replace the word "VIP" with anything. For example, "get_isUnlocked" or simply "IsUnlocked" is a boolean to unlock stuff in the game and so on.. it's up to you to find the right keyword to hack a value).
Sometimes, there are some "checks" to ensure if you're a VIP or not. For example, the game checks you VIP level and, if it's equal to 0 returns a false, while if it's higher than 0, it returns true.
It should look like this (very basic example) in NET Reflector decompilation window:
get_isVip {
if (this.Player.get_vipLevel) > 0*
{
return true
}
return false
}
And, in Reflexil (the plugin's window you have at the bottom) you should see something like:
0 ldarg.0
1 ldfld Player.get_vipLevel
2 ldc.i4 0
3 bge (6 -> ldc.i4.1)
4 ldc.i4.0
5 br (7 -> ret)
6 ldc.i4.1
7 ret
Now, it's not that hard to understand what Reflexil says. Let's compare the text with the NET Reflector's decompiled code:
ldarg.0 -> "this."
ldfld -> loads the value, in particular, the one about the Player's vip Level
ldc.i4 0 -> it means 0, referring to the player's vip level
bge (6 -> ldc.i4.1) -> it means "branch if greather than". This means, if the Player's vip Level (ldarg.0 + ldfld) is greather than 0 (ldc.i4 0), the function will jump to the sixth function (ldc.i4.1 which means true)
ldc.i4.0 -> which means false. If the function didn't jump to the ldc.i4.1, the game will return this value (false) so the player will not be a VIP
br (7 -> ret) -> this will jump to the 7th function, which is the "ret". Of course, after returning the false, the function needs to close itself, so it'll jump to the "ret" at the end of it.
ldc.i4.1 -> this means true and it's called by the "bge" we've seen above. This is the only way this value is called so, if the player value is higher than 0, this will be the next value returned = the Player IS a VIP.
ret -> You know better than me that "ret" ends the function. Remember EVERY function in the game must end with "ret" or the game will not work properly.
So, after this long and boring lesson, what's the pros' way to hack this?
The answer is in your brain. If the player vip level is higher than 0, the player will be a VIP so what will we do? Of course, we'll hack the player vip level! How? Simply look for "get_vipLevel" (please note this is just an example, it doesn't apply to any particular games and the keyword could change) and it'll probably be an Int32 so you'll simply replace its whole function to:
ldc.i4 -> Int32 -> 15 (for example, as most games with the VIP interface caps the VIP level at 15, while some other have got 10 as VIP level's cap)
ret
This will not only automatically enable your VIP membership, but it will also give you a VIP level = 15.
Please note, even if we manage to hack the VIP level in particular, some online games will still NOT give you the privileges of the VIP membership, or you will get only some of them. Why? Because sometimes the vip level in online games is managed by the server, so you could be the only one seeing you're a VIP member, while all the other people will see you're NOT a VIP member, because you're not a VIP for the server. So, if this value is server-sided, you may still not be able to get your vip privileges with this hack.
How to multiply a value?
Easy, you have to add the number you want to multiply the value with followed by "mul", before the "ret" or, to be more precise, after the function returns the value you want to hack.
Example:
ldarg.0 (which means "this.")
ldfld Player::get_money
ldc.i4 (or ldc.i8, or ldc.r4, or ldc.r8. Which one? See my above examples) -> Int32 (or Int64, or Single, or Double. Which one? See my above examples) -> Your_Value
mul
ret
Sometimes the function returns different values if different events occur, so it could be necessary to multiply more values.
How to divide/subtract/add a value?
It's the same as before, you just need to use "div" (or "sub" or "add") and not "mul" (div = divide, mul = multiply, sub = subtract, add = add).
What's the difference between multiplying something and simply returning 9999999?
The main difference is that returning 9999999 will give a STATIC value. It will never decrease/increase, while multiplying (or adding) a value will give a DYNAMIC value, so you can run out of money, but you theorically also have a lower ban chance. Don't think about 9999999 only when talking about money. This could be HP or Damage or XP and so on..
We are Cracker.
Help
Hey I’m new to this. I was wondering if there is another method to this because my game doesn’t have the dll files there. It has some folders such as meta data. Thanks
So i modded a dll from a multiplatform .NET app and it works fine when using it on PC. But when placing it in the app, all i get is a black screen.

Categories

Resources