skip to main |
skip to sidebar
Jailbreak ဆိုတာေတာ့ ဘာလည္းလို႔ မေရးေတာ့ဘူး။ သိၿပီးသား ျဖစ္ၾကဖို႔မ်ားပါတယ္။ ကၽြန္ေတာ္ေျပာမွာက iPhone ကို Jailbreak လုပ္တဲ့နည္းပါ။ တစ္ကယ္ကေတာ့ သိပ္မခက္ပါဘူး။ ဒါေပမယ့္ စလုပ္ရင္ေတာ့ ေၾကာင္တတ္ပါတယ္။ ကၽြန္ေတာ္အခုေျပာမည့္ နည္းေတြကေတာ့ ျမန္မာႏိုင္ငံက လူေတြအတြက္လည္း အဆင္ေျပမည့္နည္းပါ။ လိုအပ္ခ်က္ေတြကေတာ့ ...၁။ ေဒါင္းလုတ္ လုပ္ရမည့္ Software မ်ား။ (QuickPwn, iPhone Firmware Version 2.2.1, WinSCP, MobileInstallation 2.2.1, iTune)၂။ WiFi Access။ (ဒါကေတာ့ ျမန္မာႏိုင္ငံမွာ အခက္အခဲ နဲနဲရွိႏိုင္ပါတယ္။ ဒါေပမယ့္ ကၽြန္ေတာ္သိသေလာက္ တစ္ခ်ိဳ႕အင္တာနက္ ကေဖးေတြမွာ WiFi ရႏိုင္ပါတယ္။ အဲဒီကေနတစ္ဆင့္ သံုးရင္လည္း ရပါတယ္။)၃။ iTune Account။ (ဒါကို ေနာက္ထပ္ ပို႔စ္တစ္ခုမွာ ထပ္တင္ေပးပါ့မယ္။ ရွည္သြားမွာစိုးလို႔ပါ။)၄။ သံုးခ်င္တဲ့ iPhone Cracked Application မ်ား။ (အဲဒါေတြကေတာ့ ကိုယ္တုိင္ေဒါင္းခ်င္လည္း ရတယ္။ ရွိၿပီးသားလူဆီက ကူးသံုးရင္လည္း ရပါတယ္။ ကၽြန္ေတာ္ ေဒါင္းထားတာေလးေတြလည္း ျပန္တင္ေပးပါဦးမယ္။)*** အေရးႀကီးတာတစ္ခုက ကိုယ့္ဖုန္းရဲ႕ Firmware version ကိုအရင္ၾကည့္ပါ။ တစ္ကယ္လို႔ Version 2.2.1 ထက္နိမ့္ေနခဲ့ရင္ iTune ကိုသံုးၿပီး Upgrade လုပ္ေပးပါ။ အဲဒီကိတ္စက ၾကာႏိုင္ပါတယ္။ ခုန Firmware 2.2.1 File ကိုသံုးၿပီးေတာ့ လုပ္ရင္လည္းရပါတယ္။ လုပ္တဲ့နည္းကို ကၽြန္ေတာ္ ထပ္တင္ေပးပါမယ္။ ***ဒီပို႔စ္မွာ ၁ အတြက္အရင္ ေရးပါမယ္။ နံပါတ္ (၁) အတြက္ လင့္ေတြကေတာ့ ... QuickPwn 2.2.5, iPhone Firmware Version 2.2.1, WinSCP, MobileInstallation 2.2.1, iTuneအဲဒါေတြရၿပီဆိုရင္ ပထမဆံုး QuickPwn ကိုဖြင့္ပါ။ ေအာက္ကပံုေပၚလာပါလိမ့္မယ္။iPhone ကိုကြန္ပ်ဴတာမွာ တပ္ထားၿပီးရင္ OK ႏွိပ္ၿပီး Button မွ်ားေလးထပ္ႏွိပ္လိုက္ပါ။ ေအာက္ကပံုထပ္ေပၚလာမယ္။ (အမွန္ျခစ္အစိမ္းက ခုအခ်ိန္မွာ မေပၚေသးပါ။)အဲဒီမွာ Browse ထဲကေန ခုနေဒါင္းထားတဲ့ iPhone Firmware Version 2.2.1 ဖိုင္ကို လင့္ေပးလိုက္ပါ။ ခနေစာင့္လိုက္ရင္။ ဖုန္းေပၚမွာ အမွန္ျခစ္ေလး ေပၚလာၿပီး မွ်ားကို ဆက္ႏွိပ္ပါ။ ေအာက္က ပံုထပ္ေပၚမယ္။ Install Cydia, Install Installer ကို ေရြးပါ။ ၿပီး မွ်ားကို ႏွိပ္ပါ။မွ်ားေလးကိုပဲ ထပ္ႏွိပ္လိုက္ပါ။ ေနာက္ Screen တစ္ခုထပ္ေပၚလာမွာပါ။ အဲဒီထဲမွာပါတဲ့ အဆင့္ေလးေတြအတိုင္း ခလုတ္ေလးေတြ ႏွိပ္သြားပါ။- Recovery Mode ထဲ၀င္သြားဖို႔ ခနေစာင့္ပါ။ (ေရာက္သြားတဲ့အခါ ေနာက္အဆင့္တစ္ခုကို အလုိလို ေျပာင္းသြားပါလိမ့္မယ္။)- Home button ကို 5 seconds ႏွိပ္ထားပါ။- Home ကို မလႊတ္ပဲ Power Button (Wake-up button) ကို 10 seconds ထပ္ႏွိပ္ပါ။ ႏွိပ္ထားပါ။ (အဲဒီအခ်ိန္မွာ ဖုန္းက restart ခနျဖစ္သြားပါလိမ့္မယ္။ ဂ႐ုမစိုက္ပါနဲ႔။)- Power ကိုလႊတ္လိုက္ၿပီး Home ကို 20 seconds ႏွိပ္ထားပါ။ (ဒီအဆင့္ေတြက သူ႔ထဲမွာလည္း အလိုလိုေျပာင္းသြားတာပါ။ မွတ္စရာေတာ့ သိပ္မလိုလွပါဘူး။)- အဆင့္အားလံုးမွန္ရင္ သူ႔ဟာသူ ဆက္ၿပီး Jailbreak လုပ္ေနပါလိမ့္မယ္။ ၿပီးသြားရင္ ေအာက္ကပံုအတိုင္း ျဖစ္သြားပါလိမ့္မယ္။ (မမွန္ရင္ေတာ့ ျပန္စရမွာေပါ့။)ဖုန္းမွာေတာ့ ေအာက္ကပံုေလးေတြ အဆင့္ဆင့္ေပၚေနပါလိမ့္မယ္။ ကိုယ္က ဘာမွဆက္လုပ္စရာ မလိုေတာ့ပါဘူး။ေနာက္ဆံုးမွာ ဖုန္းက Restart ျဖစ္သြားၿပီး Cydia နဲ႔ Installer ဆိုတဲ့ icon ၂ ခု အပိုပါလာပါလိမ့္မယ္။ ဒါဆို Jailbreak လုပ္တာၿပီးသြားပါၿပီ။ Cydia store ထဲမွာ Free ေပးထားတဲ့ application ေလးေတြ အမ်ားႀကီးပါပါတယ္။ Vido Recording, Blacklisting, Forward mail စတဲ့ Application ေလးေတြ Free ေပးထားပါတယ္။iPhone Cracked Applications တင္တဲ့ ကိတ္စကို ကၽြန္ေတာ္ေနာက္ ပို႔စ္တစ္ခုမွာ ထပ္တင္ပါမယ္။(iPhone Buttons and Interface) “ လုပ္နည္းေတြကို သင္ေပးတဲ့ ကိုေက်ာ္မ်ိဳးလိွဳင္ ကိုေက်းဇူးပါ။ ”
Bouncing problem ဆိုတာကေတာ့ Embedded application ေတြမွာ ျဖစ္တတ္တဲ့ ကိစၥပါပဲ။ သေဘာကေတာ့ ခလုတ္ (switch/ key) ကို တစ္ခ်က္ႏွိပ္ေပမယ့္ pulse ေတြအမ်ားႀကီး ၀င္သြားတဲ့ ျပသနာပါ။ Keyboard ခလုတ္ ကပ္သြားသလို ျဖစ္တာေပါ့။ အဲဒါကို key bouncing လို႔ ေခၚပါတယ္။ အဲဒီ ျပသနာကို ျပန္ေျဖရွင္းတာကိုေတာ့ debouncing လို႔ေျပာတာေပါ့။Microcontroller application ေတြမွာ Debounce လုပ္တဲ့နည္း ၃ မ်ိဳးရွိပါတယ္။၁။ ပထမဆံုး Key (pulse) တစ္ခ်က္ ႏွိပ္တာကိုပဲ အတည္ယူပါ။ ေနာက္ထပ္ ၀င္လာတဲ့ pulse ေတြကို ignore လုပ္ပစ္ပါ။ (ေနာက္ထပ္ Key မလႊတ္မခ်င္း လုပ္ငန္း မၿပီးေသးဘူးလို႔ သတ္မွတ္ၿပီး ဘာမွဆက္မလုပ္ပဲ ရပ္ (nop) ထားပါ)၂။ တစ္ခ်က္ႏိွပ္ၿပီး ခနေစာင့္ေနပါ။ ( ၁ စကၠန္႔၊ ဒါမွ မဟုတ္ ၀.၅ စကၠန္႔ေပါ့။ Switch ရဲ႕သဘာ၀ေပၚမူတည္ၿပီး ေစာင့္ရတဲ့ အခ်ိန္ကို ညွိပါ)၃။ ပထမ Key တစ္ခ်က္ႏိွပ္ရင္ အလုပ္လုပ္ၿပီး ဒုတိယ Key တစ္ခ်က္မႏွိပ္ခင္အထိ ေစာင့္ခိုင္းထားပါ။Bouncing ကို Hardware ေရာ Software ေရာနဲ႔ ထိန္းလို႔ ရပါတယ္။ Software နဲ႔ကေတာ့ ပိုလြယ္ပါတယ္။ Hardware နဲ႔ဆိုရင္ေတာ့ ေအာက္မွာ ျပထားတဲ့ အတုိင္း တပ္ဆင္ၿပီး ထိန္းလို႔ရပါတယ္။ HCF4093 ကေတာ့ အိုင္စီပါ။Software နဲ႔ဆိုရင္ေတာ့ ေအာက္မွာ ျပထားတဲ့အတိုင္း ေရးလို႔ရပါတယ္။ ဒီ program မွာက active low ကိုယူထားပါတယ္။
//////////////////////////////////////////////////////////////////////
void init_ports(void) {
TRISIO = (1<<5);>// set as output except bit 5 GP5=i/p
//////////////////////////////////////////////////////////////////////
int get_key(void) {
// Is GP5 low - no so exit
if (GPIO & (1<<5))>
delay_ms(1); // wait for key to settle
// Is GP5 high ? yes so exit = false key.
if ( (GPIO & (1<<5))>0 ) return 0; // was a false key so restart
return 1; // key ok so return valid
}
//////////////////////////////////////////////////////////////////////