<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: the T-Mobile G1 &#8212; nice phone, but not totally open</title>
	<atom:link href="http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/</link>
	<description>Casual Dismissals from Danny O'Brien</description>
	<lastBuildDate>Fri, 19 Feb 2010 06:17:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Kragen Javier Sitaker</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-701</link>
		<dc:creator>Kragen Javier Sitaker</dc:creator>
		<pubDate>Tue, 28 Oct 2008 05:41:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-701</guid>
		<description>http://github.com/zaach/execbin/tree/master says:

Let&#039;s you run commands and view the result.

Try things like:

ls  
ps  
top -n 1  
date  
/sdcard/mybinary

etc.</description>
		<content:encoded><![CDATA[<p><a href="http://github.com/zaach/execbin/tree/master" rel="nofollow">http://github.com/zaach/execbin/tree/master</a> says:</p>
<p>Let&#8217;s you run commands and view the result.</p>
<p>Try things like:</p>
<p>ls<br />
ps<br />
top -n 1<br />
date<br />
/sdcard/mybinary</p>
<p>etc.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Danny O'Brien</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-698</link>
		<dc:creator>Danny O'Brien</dc:creator>
		<pubDate>Mon, 27 Oct 2008 06:47:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-698</guid>
		<description>So, as I understand it currently, the problem is that everything is open source and fairly well documented, except the path for installing a compiled kernel onto the G1 itself (I wasn&#039;t talking about the Dalvik application environment, which as you say is sandboxed in a way that&#039;s pretty sensible).

Is the G1 actually Tivo-ized, so you need a signed kernel to upgrade? Or is it just that the firmware upgrade path isn&#039;t documented yet? The impression I got from IRC conversations with Google folk was that the bootloader was HTC&#039;s work, and that it&#039;s outside of the Android system, and if you want to install your own kernel, you should wait until somebody does a &quot;developer&quot; phone. That implies that it&#039;s not going to be documented, at the very least.

There is code to see and install procedures to mull over though -- see http://git.source.android.com/?p=platform/recovery.git;a=tree;hb=HEAD and http://git.source.android.com/?p=platform/vendor/htc/dream.git;a=tree;h=refs/heads/master;hb=master .

Mainly, though, at this point I&#039;m just annoyed I can&#039;t get root on my own phone in a simple way.</description>
		<content:encoded><![CDATA[<p>So, as I understand it currently, the problem is that everything is open source and fairly well documented, except the path for installing a compiled kernel onto the G1 itself (I wasn&#8217;t talking about the Dalvik application environment, which as you say is sandboxed in a way that&#8217;s pretty sensible).</p>
<p>Is the G1 actually Tivo-ized, so you need a signed kernel to upgrade? Or is it just that the firmware upgrade path isn&#8217;t documented yet? The impression I got from IRC conversations with Google folk was that the bootloader was HTC&#8217;s work, and that it&#8217;s outside of the Android system, and if you want to install your own kernel, you should wait until somebody does a &#8220;developer&#8221; phone. That implies that it&#8217;s not going to be documented, at the very least.</p>
<p>There is code to see and install procedures to mull over though &#8212; see <a href="http://git.source.android.com/?p=platform/recovery.git;a=tree;hb=HEAD" rel="nofollow">http://git.source.android.com/?p=platform/recovery.git;a=tree;hb=HEAD</a> and <a href="http://git.source.android.com/?p=platform/vendor/htc/dream.git;a=tree;h=refs/heads/master;hb=master" rel="nofollow">http://git.source.android.com/?p=platform/vendor/htc/dream.git;a=tree;h=refs/heads/master;hb=master</a> .</p>
<p>Mainly, though, at this point I&#8217;m just annoyed I can&#8217;t get root on my own phone in a simple way.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Miles Nordin</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-697</link>
		<dc:creator>Miles Nordin</dc:creator>
		<pubDate>Sun, 26 Oct 2008 21:07:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-697</guid>
		<description>oh, maybe I misunderstood.  The platform is TiVo-ized, so GPLv3 is needed to free it?  or is what&#039;s needed merely to RTFS of the boot loader and write documentation from it?</description>
		<content:encoded><![CDATA[<p>oh, maybe I misunderstood.  The platform is TiVo-ized, so GPLv3 is needed to free it?  or is what&#8217;s needed merely to RTFS of the boot loader and write documentation from it?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Miles Nordin</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-696</link>
		<dc:creator>Miles Nordin</dc:creator>
		<pubDate>Sun, 26 Oct 2008 20:55:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-696</guid>
		<description>I&#039;m prepared to be skeptical of Android&#039;s openness because free software advocates have been tricked too many times in the past, but not based on this post.

It is proper and desireable for the phone&#039;s owner to have more control over it than application developers.  If this is really and thoroughly true of G1, it&#039;s a big selling point.  I currently suggest most people stay the hell away from ``smart&#039;&#039; phones or anything that supports ``installing&#039;&#039; stuff because of:

 http://www.flexispy.com/

To me, openness does not mean application developers get to take over the entire phone, user be damned, like EnTee systems where legitimate programs and viruses install themselves in approximately the same way and there&#039;s no such thing as a perfect uninstaller.  I wouldn&#039;t want the phone to act like ActiveX controls run as Administrator.  Giving YOU total control of MY phone is not part of my idea of freedom.

The development cycle for firmware upgrades should be documented, though.  That&#039;s a fair gripe.

Do you think it is more open or less open than an N810?</description>
		<content:encoded><![CDATA[<p>I&#8217;m prepared to be skeptical of Android&#8217;s openness because free software advocates have been tricked too many times in the past, but not based on this post.</p>
<p>It is proper and desireable for the phone&#8217;s owner to have more control over it than application developers.  If this is really and thoroughly true of G1, it&#8217;s a big selling point.  I currently suggest most people stay the hell away from &#8220;smart&#8221; phones or anything that supports &#8220;installing&#8221; stuff because of:</p>
<p> <a href="http://www.flexispy.com/" rel="nofollow">http://www.flexispy.com/</a></p>
<p>To me, openness does not mean application developers get to take over the entire phone, user be damned, like EnTee systems where legitimate programs and viruses install themselves in approximately the same way and there&#8217;s no such thing as a perfect uninstaller.  I wouldn&#8217;t want the phone to act like ActiveX controls run as Administrator.  Giving YOU total control of MY phone is not part of my idea of freedom.</p>
<p>The development cycle for firmware upgrades should be documented, though.  That&#8217;s a fair gripe.</p>
<p>Do you think it is more open or less open than an N810?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Macky</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-694</link>
		<dc:creator>Macky</dc:creator>
		<pubDate>Sun, 26 Oct 2008 16:15:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-694</guid>
		<description>Voip was available in the Android Market on the day of the release. The app is a skype compatible app.</description>
		<content:encoded><![CDATA[<p>Voip was available in the Android Market on the day of the release. The app is a skype compatible app.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kragen Javier Sitaker</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-685</link>
		<dc:creator>Kragen Javier Sitaker</dc:creator>
		<pubDate>Sun, 26 Oct 2008 07:58:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-685</guid>
		<description>...in short, it&#039;s not bullshit. ☺</description>
		<content:encoded><![CDATA[<p>&#8230;in short, it&#8217;s not bullshit. ☺</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Veg</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-683</link>
		<dc:creator>Veg</dc:creator>
		<pubDate>Sun, 26 Oct 2008 03:03:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-683</guid>
		<description>Isn&#039;t this just the same problem that the manufacturers of &quot;MP3&quot; players and DVD players have had in the past ? Technically they can do whatever they want, but the pressure from the MPAA/RIAA/BPI/AT&amp;T/T-Mobile/etc/etc forces them to restrict what is &quot;playable&quot;. In reality, for anyone who gives a toss about such things, all of these restrictions are trivial to work around, and why should the the manufacturers care ? I give it less than a month before VoIP calls, a root shell, and native ARM code is running on my G1, and there&#039;s no way that Google aren&#039;t aware of that. They just had to do enough to satisfy their paymasters. If you&#039;re waiting for a &quot;truly free&quot; platform, then go openmoko, and cry into your beer. Otherwise, jailbreak your iPhone, hack your G1 and put RockBox on your MP3 player.</description>
		<content:encoded><![CDATA[<p>Isn&#8217;t this just the same problem that the manufacturers of &#8220;MP3&#8243; players and DVD players have had in the past ? Technically they can do whatever they want, but the pressure from the MPAA/RIAA/BPI/AT&amp;T/T-Mobile/etc/etc forces them to restrict what is &#8220;playable&#8221;. In reality, for anyone who gives a toss about such things, all of these restrictions are trivial to work around, and why should the the manufacturers care ? I give it less than a month before VoIP calls, a root shell, and native ARM code is running on my G1, and there&#8217;s no way that Google aren&#8217;t aware of that. They just had to do enough to satisfy their paymasters. If you&#8217;re waiting for a &#8220;truly free&#8221; platform, then go openmoko, and cry into your beer. Otherwise, jailbreak your iPhone, hack your G1 and put RockBox on your MP3 player.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kragen Javier Sitaker</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-663</link>
		<dc:creator>Kragen Javier Sitaker</dc:creator>
		<pubDate>Sat, 25 Oct 2008 03:23:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-663</guid>
		<description>I think ARM Thumb-2 instructions can be either 16 or 32 bits, and of course recent ARMs in general can execute code in either ARM mode (where the instructions are 32 bits) or Thumb mode (where the instructions are 16 bits).  So yeah, there&#039;s some ambiguity.

But ambiguity doesn&#039;t make disassembly into rocket science.  People manage to disassemble x86 code, and in x86 code the instructions can be 1, 2, 3, 4, 5, or 6 bytes.  (Maybe they can be longer? I don&#039;t know.)  You use heuristics (hey, I have a whole bunch of `and %ah, (%eax)` instructions in a row; maybe I&#039;m accidentally disassembling text?  I have a whole bunch of `add %al, (%eax)` instructions; maybe I&#039;m accidentally disassembling a block of zeroes?  Are there really port-input and output instructions in the middle of this user program that runs under an operating system, did I accidentally stumble into a device driver, or am I misinterpreting this block?  Why is there a jump into the middle of another instruction?  Maybe this immediate constant here is actually a bunch of instructions?  Maybe this block of instructions that contains an invalid opcode is actually not a block of instructions?) and you correct the disassembler if it gets it wrong.

There are programs floating around that *deliberately* jump into the middle of an instruction, getting two interpretations out of a single block of instructions; but they&#039;re relatively uncommon, and I&#039;ve never heard of a compiler emitting one.</description>
		<content:encoded><![CDATA[<p>I think ARM Thumb-2 instructions can be either 16 or 32 bits, and of course recent ARMs in general can execute code in either ARM mode (where the instructions are 32 bits) or Thumb mode (where the instructions are 16 bits).  So yeah, there&#8217;s some ambiguity.</p>
<p>But ambiguity doesn&#8217;t make disassembly into rocket science.  People manage to disassemble x86 code, and in x86 code the instructions can be 1, 2, 3, 4, 5, or 6 bytes.  (Maybe they can be longer? I don&#8217;t know.)  You use heuristics (hey, I have a whole bunch of `and %ah, (%eax)` instructions in a row; maybe I&#8217;m accidentally disassembling text?  I have a whole bunch of `add %al, (%eax)` instructions; maybe I&#8217;m accidentally disassembling a block of zeroes?  Are there really port-input and output instructions in the middle of this user program that runs under an operating system, did I accidentally stumble into a device driver, or am I misinterpreting this block?  Why is there a jump into the middle of another instruction?  Maybe this immediate constant here is actually a bunch of instructions?  Maybe this block of instructions that contains an invalid opcode is actually not a block of instructions?) and you correct the disassembler if it gets it wrong.</p>
<p>There are programs floating around that *deliberately* jump into the middle of an instruction, getting two interpretations out of a single block of instructions; but they&#8217;re relatively uncommon, and I&#8217;ve never heard of a compiler emitting one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: balrog-kun</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-662</link>
		<dc:creator>balrog-kun</dc:creator>
		<pubDate>Fri, 24 Oct 2008 23:31:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-662</guid>
		<description>Al: as Guy noted, this irc quote is talking about the Canon cameras, not the phone.  And it&#039;s not complete bullshit - you basically can transfer a program in 0&#039;a and 1&#039;s through blinking same way you transfer any file.  ARM instructions happen to be constant length (as opposed to x86) but that doesn&#039;t matter at all because they are transferred just as a stream of data, say, like an mp3.  They only become instructions once they run on a cpu or are being disassembled.</description>
		<content:encoded><![CDATA[<p>Al: as Guy noted, this irc quote is talking about the Canon cameras, not the phone.  And it&#8217;s not complete bullshit &#8211; you basically can transfer a program in 0&#8242;a and 1&#8217;s through blinking same way you transfer any file.  ARM instructions happen to be constant length (as opposed to x86) but that doesn&#8217;t matter at all because they are transferred just as a stream of data, say, like an mp3.  They only become instructions once they run on a cpu or are being disassembled.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Guy</title>
		<link>http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/comment-page-1/#comment-659</link>
		<dc:creator>Guy</dc:creator>
		<pubDate>Fri, 24 Oct 2008 19:44:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.oblomovka.com/wp/?p=1232#comment-659</guid>
		<description>@Al (and other skeptics):

&quot;blinking the firmware&quot; is not complete bullshit.
I think its very cool hack, and its how the firmware is
dumped from a lot of canon compact cameras to allow CHDK porting.

&lt;a HREF=&quot;http://chdk.wikia.com/wiki/Porting_the_CHDK&quot; rel=&quot;nofollow&quot;&gt;
Here is a page on the CHDK wiki describing the process&lt;/A&gt;.</description>
		<content:encoded><![CDATA[<p>@Al (and other skeptics):</p>
<p>&#8220;blinking the firmware&#8221; is not complete bullshit.<br />
I think its very cool hack, and its how the firmware is<br />
dumped from a lot of canon compact cameras to allow CHDK porting.</p>
<p><a HREF="http://chdk.wikia.com/wiki/Porting_the_CHDK" rel="nofollow"><br />
Here is a page on the CHDK wiki describing the process</a>.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
