Tuesday, March 29, 2011

Fixing that buggy stock ROM on your CM MagnumHD

My phone's
home pane
For those who are lucky enough to get Cherry Mobile's MagnumHD, we all can agree that the stock ROM f***** sucks. I really mean it sucks - the random restarts, the FCs, context buttons stop responding and the the most annoying is the screen times out (i.e. blacks out) when you make a phone call. So, being a geek, I will have none of this and I started scheming (along with Aryan Limjap which BTW, provides us the lovely images attached to this post) to get a fix into my CM Magnum. Warranty be damn!

System Pane
And what do you know, the Indians Indonesians came up with a better ROM. As you can see I'm now running a Wellcom-A99 ROM on my CM MagnumHD. I can tell you it runs better, cooler and longer. Also I would like to point out the Android version 2.2.2. I will still flash this thing to 2.3 when it comes out. But trust me on this, MY PHONE IS RUNNING BETTER on this ROM.

You might wonder how is this possible, then you apparently didn't inherit enough "bright" genes from your parents. But to get my point moving, CM MagnumHD is OEM phone from Foxconn and is rebranded in a lot of other countries.
  • Philippines - CM MagnumHD
  • China - Huawei Ideos X6
  • US - Viewsonic ViewPad 4
  • India Indonesia - Wellcom A99
  • India - OliveSmart V-S300
With the Apps
And that is why children, I can stick an Wellcom A99 ROM on my CM MagnumHD. But still want to beat this into your head, if you are doing this you are voiding your phone's warranty. As for me, I already voided mine when I rooted my phone. Refer to the screenshot with the apps.

So if you understand what I am telling you and you still want to flash in the Welcomm ROM then click here. Just scroll down and look for the link. The download is about 200MB. 

And btw, did I mention to you all that there's still a slight chance that this will put your phone into a boot-loop or (worse) brick your phone?

Edit: Mecha50 corrected me that the A99 ROM is Indonesian. My bad.

Friday, March 25, 2011

Yeah, I run Ubuntu...Wanna make sumthin' out of it?


Yes, I know my desktop looks cool. It also very, very sweet! My 3 year old ACER laptop which has only 1gig of RAM is running quite smoothly and responsively. To quote yoyong ucab,
"Best performance kaayo."
Trust me on this - when you see this thing run Vista, it makes you wanna cry. Vista is the OS that was bundled with this thing when I bought it and it so f'in slow. And to add insult to injury its Vista Starter. Yes. It's the fork-over-more-bucks-so-you-can-run-more-than-3-apps Vista Starter OS.

You will also notice that I got Netbeans running on this thing. I am a developer after all and its gravy. I even got to sync my code from my kenai.com repo.

You should be looking at Ubuntu on you next laptop. I'm beginning to question the wisdom of paying for the "other" operating system when there's this.

Now, I wonder if I can set this one up as an Android dev/test machine...hmmm.

Sunday, March 13, 2011

Using JQuery to read an external XML file

A student of mine asked me this question. He wanted to read an external XML file, parse it and load the data into a HTML Form control. In his case, he wanted to populate a select component (combo box). And he didn't want to use any PHP, Java or whatever. So that leaves me with JavaScript and HTML. This intrigued me for a bit. I haven't tried anything like this before.

So after a bit of research I stumbled into jQuery.ajax. I am familiar with jQuery - been using it for a bit so this should be quick. So, we prep the HTML file for our display:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Parsing Data from a File</title>

        <link rel="stylesheet" type="text/css" href="css/demo.css" />
        <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
        <script type="text/javascript" src="js/demo.js"></script>

    </head>
    <body>
        <h2>Parsing Data from a File</h2>
        <p class="compress">Data will be from an external file. It will formatted as an XML file
            (this could be easily be a html file). It will be be parsed using JQuery library.
            We could do this with raw JavaScript but why would you want to do that when
            there is a simpler solution?</p>

        <p>To learn in detail how this thing works <a href="http://api.jquery.com/jQuery.ajax#options">read this.</a></p>

        <div id="form-div">
        Our Combo box:
            <form id="form1" class="cmbox">
                <select class="combo1">
                </select>
            </form>
        </div>       
    </body>
</html> 
And here is the demo.js file that comes with that file. If you run both now you'll get an error. This is because we have to create a file called data.xml. You should also notice that in the demo.js file (refer to the comments) loads the data.xml if it successfully loads the file it should call a function called "parse" and should it fail it calls the "loadfail" function.
$(document).ready(function(){       // load jQuery 1.5
 function loadfail(){
  alert("Error: Failed to read file!");
 }
 
 function parse(document){
  $(document).find("combo").each(function(){
     var optionLabel = $(this).find('text').text();
     var optionValue = $(this).find('value').text();
     $('.combo1').append(
    ''
     );
  });
 }
 
 $.ajax({
  url: 'js/data.xml',    // name of file with our data
  dataType: 'xml',    // type of file we will be reading
  success: parse,     // name of function to call when done reading file
  error: loadfail     // name of function to call when failed to read
 });
});
Here is the data.xml file.
<formdata>
    <combo>
        <value>1</value>
        <text>Option 1</text>
    </combo>
    <combo>
        <value>2</value>
        <text>Option 2</text>
    </combo>
    <combo>
        <value>3</value>
        <text>Option 3</text>
    </combo>
    <combo>
        <value>4</value>
        <text>Option 4</text>
    </combo>
    <combo>
        <value>5</value>
        <text>Option 5</text>
    </combo>
</formdata>

Do note that this will fail with Chrome because of its security model. If you look at the console it will not allow you to load local files because of Origin null is not allowed by Access-Control-Allow-Origin. Whatever that is.

Thursday, March 3, 2011

Your Nexus One or Moto Droid suck balls

Screenshot after benchmarking
with Quadrant
Being the idiot that I am, I got sucked into a "hot" debate on which Android device is faster. And as we all know, everyone wants to say that they have the "better" device. Well, they can all kiss my phone's ass! So talked about it and we agreed to use a benchmarking tool and get the bottom of this. We all got this benchmarking tool called Quadrant from the Market. It free by the way. And well all agreed to get the Standard Edition. This would be the 1.1.7 version with a build date of Feb 1, 2011.

And let the benchmarking begin! And my Cherry Mobile Magnum HD kicks all their asses! And then some!

The graph does not lie!

"Screw that. The results your getting must be a fluke." they said, I then replied: "I don't know. Am I the one bending over and getting screwed?"

I couldn't begin to tell you how big my grin was walking away.

hehehehehe!