<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE rss [<!ENTITY % HTMLlat1 PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent">]>
<rss version="2.0" xml:base="http://sysd.org/stas">
<channel>
 <title>stas&#039;den - hack</title>
 <link>http://sysd.org/stas/taxonomy/term/18/0</link>
 <description></description>
 <language>en</language>
<item>
 <title>&quot;keyboard injection&quot; under Linux</title>
 <link>http://sysd.org/stas/node/151</link>
 <description>&lt;p&gt;
What to do if you want to pass some data into STDIN of some process,
and it doesn&#039;t accepts it?! One of the most (un)famous example is &lt;code&gt;ssh&lt;/code&gt;;
who never tried to do a &lt;code&gt;&quot;echo password | ssh host&quot;&lt;/code&gt;?!
So,&amp;nbsp;you just want to inject characters as there were someone
typing them. Remember: &lt;b&gt;TIOCSTI&lt;/b&gt; ioctl() call is your
friend &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;
Just &lt;a href=&quot;http://www.google.com/search?q=ioctl+TIOCSTI&quot;
 target=&quot;_blank&quot;&gt;google it&lt;/a&gt; to see what
it&amp;nbsp;does. And now, some actually working code:&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;pre&gt;#!/usr/bin/perl -w&lt;br&gt;use strict;&lt;br&gt;use Fcntl;&lt;br&gt;use constant TIOCSTI =&amp;gt; 0x5412;&lt;br&gt;&lt;br&gt;unless (@ARGV &amp;gt;= 1) {&lt;br&gt; print &quot;usage: $0 [vt] &amp;lt;input&amp;gt;\n&quot;;&lt;br&gt; exit;&lt;br&gt;}&lt;br&gt;&lt;br&gt;my $vt = shift @ARGV;&lt;br&gt;my $buf = join &#039;&#039;, &amp;lt;&amp;gt;;&lt;br&gt;&amp;amp;writevt ($vt, $buf) || die &quot;can&#039;t write to $vt: $!\n&quot;;&lt;br&gt;exit;&lt;br&gt;&lt;br&gt;&lt;br&gt;sub writevt {&lt;br&gt; my ($vt, $buf) = @_;&lt;br&gt; sysopen (VT, $vt, O_RDONLY) || return 0;&lt;br&gt; for (my $i = 0; $i &amp;lt; length $buf; $i++) {&lt;br&gt; ioctl (VT, TIOCSTI, substr ($buf, $i, 1)) || return 0;&lt;br&gt; }&lt;br&gt; close (VT) || return 0;&lt;br&gt; return 1;&lt;br&gt;} &lt;br&gt;&lt;/pre&gt;
&lt;p&gt;
And this is how it works (Linux-specific!!!):
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;pre&gt;[stas@home stas]$ echo id | ./catvt.pl /dev/pts/0&lt;br&gt;id&lt;br&gt;[stas@home stas]$ id&lt;br&gt;uid=?????(stas) gid=?????(stas) groups=?????(stas)&lt;br&gt;&lt;/pre&gt;
&lt;p&gt;
Kinda awesome &lt;img src=&quot;misc/smileys/lol.png&quot; title=&quot;Laughing out loud&quot; alt=&quot;Laughing out loud&quot; /&gt;
&lt;/p&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/14">console</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/11">linux</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/20">perl</category>
 <pubDate>Wed, 15 Aug 2007 21:20:27 -0300</pubDate>
</item>
<item>
 <title>tiny HTTP proxy</title>
 <link>http://sysd.org/stas/node/100</link>
 <description>&lt;br&gt;

&lt;div align=&quot;center&quot;&gt;
&lt;img alt=&quot;Main screen&quot; width=398 height=395 border=0 src=&quot;http://sysd.org/stas/files/active/0/main1.png&quot; /&gt;&lt;/div&gt;

&lt;br&gt;

&lt;p&gt;This is a tiny and highly experimental HTTP/1.0 proxy software that I have
written to debug HTTP protocol &amp;amp; it&#039;s clients. It is very small and
simple, yet useful to reverse-engineering purposes. It&#039;s interface is quite
obvious. The &lt;em&gt;Server&lt;/em&gt; frame controls the IP, port and connection limit
of the proxy server. It also shows how many connections are active at moment.
The &lt;em&gt;Data Traffic&lt;/em&gt; frame shows in/out packets &amp;amp; bytes.
&lt;em&gt;Service&lt;/em&gt; frame allows you to stop, start and quit the proxy. These
are the very minimalist controls for the very minimalist proxy server.&lt;/p&gt;

&lt;p&gt;The interesting stuff begins at the &lt;em&gt;Plugin&lt;/em&gt; frame. All the packet
passed through this proxy server are forwarded to the selectable plugin
module. By default, it is &lt;code&gt;logger.dll&lt;/code&gt;. It simply saves every
single packet into separate file, which uses the following name scheme:
&lt;code&gt;from_IP.from_port-to_IP.to_port.log&lt;/code&gt; (for example,
&lt;code&gt;127.0.0.1.4322-127.0.0.1.21.log&lt;/code&gt;). The files can be ordered by
their modification date in your file explorer, so you can track the entire
session:&lt;/p&gt;

&lt;div align=&quot;center&quot;&gt;
&lt;img alt=&quot;Packets list&quot; width=435 height=345 border=0 src=&quot;http://sysd.org/stas/files/active/0/packets.png&quot; /&gt;&lt;/div&gt;

&lt;p&gt;The &lt;code&gt;logger.dll&lt;/code&gt; can be set up to include a sequence counter at
the beginning of each packet and to output saved packets into some specific
directory:&lt;/p&gt;

&lt;div align=&quot;center&quot;&gt;
&lt;img alt=&quot;logger.dll setup&quot; width=566 height=71 border=0 src=&quot;http://sysd.org/stas/files/active/0/logger.png&quot; /&gt;&lt;/div&gt;

&lt;p&gt;Plugin module is also capable of injecting packets. Load the
&lt;code&gt;replicator.dll&lt;/code&gt; file and check the setup screen:&lt;/p&gt;

&lt;div align=&quot;center&quot;&gt;
&lt;img alt=&quot;replicator.dll setup&quot; width=631 height=246 border=0 src=&quot;http://sysd.org/stas/files/active/0/replicator.png&quot; /&gt;&lt;/div&gt;

&lt;p&gt;When you click the &lt;em&gt;Capture&lt;/em&gt; button and then make some action in
your proxied web client, the replicator plugin will prompt you if it got a
corresponding packet. This packet may be resent automatically, at the period
specified in the &lt;em&gt;Period&lt;/em&gt; box. You can capture &amp;amp; replicate several
packets, and manipulate their resend period. A very interesting application
of the replicator plugin is to flood &lt;strong&gt;web chats&lt;/strong&gt; and to spin
up &lt;strong&gt;web counters&lt;/strong&gt;. Of course, the right way is to use
&lt;code&gt;logger.dll&lt;/code&gt; and to make a clone that imitates the &quot;real&quot; web
client.&lt;/p&gt;

&lt;p&gt;The final note: this is, and always will be, an &lt;em&gt;alpha-state code&lt;/em&gt;.
I do not develop this proxy application anymore. It is useful to me the way
it is. But you can grab the source and make a whatever plugin you like, or
even rewrite the code entirely. I don&#039;t care. Just give me the proper
credits!&lt;/p&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/13">GUI</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/7">network</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/8">web</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Wed, 03 Jan 2007 22:50:00 -0200</pubDate>
</item>
<item>
 <title>inPEct .EXE binder</title>
 <link>http://sysd.org/stas/node/19</link>
 <description>&lt;p&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;inPEct screenshot&quot; src=&quot;http://sysd.org/stas/files/active/0/inpect.png&quot; height=&quot;168&quot; width=&quot;318&quot;&gt;&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;code&gt;inPEct&lt;/code&gt; means &quot;infect&quot;, applicable to PE (&quot;Portable Executable&quot;) format. It is an &lt;i&gt;executable binder&lt;/i&gt;, thus, it&#039;s able to join two &lt;code&gt;.exe&lt;/code&gt; files in one. Now, &lt;i&gt;why&lt;/i&gt; should anyone want to do that, is a question apart (screenshot is self-explanatory &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;
At the time I&#039;ve wrote inPEct, most executable binders were similar to
SFX (&quot;Self-Extract&quot;) stubs: they simply extracted their content to
somewhere (commonly &lt;code&gt;%TEMP%&lt;/code&gt; directory). inPEct is a bit
different, as it expands the host executable and encrypts &amp;amp; inserts
the hosted executable inside it. When someone executes the bound
application, the host executable runs normally, and the hosted
executable is extracted and then executed. inPEct also has a feature to
execute the hosted executable only once (&lt;code&gt;&#039;smart feature&#039;&lt;/code&gt;):
if the bound program is executed by user again, hosted file won&#039;t be
extracted anymore. And inPEct is very fast and small, as&amp;nbsp; it&#039;s
written entirely in pure assembler (in fact, inPEct&#039;s loader has only
800 bytes!). It&#039;s encryption algorithm is very cheap, but still uses a
random seed. Thus, I expect that inPEct is more stealthy than similar
binders.&lt;br&gt;
Please note that almost every AntiVirus program detects and
quarantines inPEct (and files produced by it)! This shows it&#039;s popularity in the past, I guess &lt;code&gt;&lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;/code&gt;
&lt;/p&gt;
&lt;p&gt;
But today it&#039;s useful mostly as a pure assembler programming example... And for AntiVirus research, as &lt;a href=&quot;http://www.acsac.org/2002/papers/32.pdf&quot; target=&quot;_blank&quot;&gt;this paper&lt;/a&gt; actually shows.
&lt;/p&gt;</description>
 <category domain="http://sysd.org/stas/taxonomy/term/21">assembler</category>
 <category domain="http://sysd.org/stas/taxonomy/term/13">GUI</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Tue, 02 Jan 2007 00:00:00 -0200</pubDate>
</item>
<item>
 <title>ACFTools (for X-Plane)</title>
 <link>http://sysd.org/stas/node/46</link>
 <description>&lt;br&gt;


&lt;div align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/shot.png&quot;&gt;&lt;img alt=&quot;ACFTools screenshot&quot; src=&quot;http://sysd.org/stas/files/active/0/shot_t.jpg&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;br&gt;
&lt;/div&gt;


&lt;br&gt;


The &lt;b&gt;Plane-Maker&lt;/b&gt; from &lt;a href=&quot;http://x-plane.com/&quot;&gt;X-Plane&lt;/a&gt;
v7.x is fun and easy to use... Although I found it a bit limited to
edit my planes&#039; fuselage. 20 cross-sections aren&#039;t enough, sometimes.
It would be nice to export the fuselage shape into any 3D-editor and
fine-tune it there... This is exactly what my ACFTools are supposed to
do. Please note that X-Plane v8.x is unsupported, unless you create &amp;amp; edit a v7
model and then import it to Plane-Maker v8. But I believe this isn&#039;t a
problem: X-Plane v8 is able to use OBJ format files (which can be
imported/exported by &lt;a href=&quot;http://scenery.x-plane.com/tools.php&quot;&gt;AC3D&lt;/a&gt; and &lt;a href=&quot;http://marginal.org.uk/x-planescenery/tools.html&quot;&gt;Blender&lt;/a&gt; plugins) as parts of an aircraft, thus, extremely weird shapes are perfectly possible without even touching the ACF file.&lt;br&gt;


Now, what exactly ACFTools does? It is able to process the file that
stores all the aircraft data (except the textures), in the binary ACF
format, and dump all the data in the human-readable TXT format. It is the
same format as for Tony Gondola&#039;s ACF2Text utility, which inspirited my
ACFTools. Then, ACFTools can extract the 3D model of the aircraft from
this data, and export it in the &lt;a href=&quot;http://www.ac3d.org&quot;&gt;AC3D&lt;/a&gt; format. After that you can edit the aircraft&#039;s shape as you want using AC3D and make the inverse process: from &lt;code&gt;.ac&lt;/code&gt; to &lt;code&gt;.txt&lt;/code&gt;, and then from &lt;code&gt;.txt&lt;/code&gt; to &lt;code&gt;.acf&lt;/code&gt;. Here comes the brief set of ACFTools features:&lt;br&gt;


&lt;ul&gt;


  &lt;li&gt;Convert from ACF (aircraft) &amp;amp; WPN (weapon) formats to TXT format and vice-versa.&lt;br&gt;
  &lt;/li&gt;
  &lt;li&gt;Extract AC3D model from TXT file, along with wings and propellers (using the real airfoils!).&lt;/li&gt;
  &lt;li&gt;Import AC3D model into TXT file (fuselage, nacelles, wheel fairings &amp;amp; external fuel tanks only)&lt;br&gt;
  &lt;/li&gt;
&lt;/ul&gt;


3D model extractor is also useful if you want to use X-Plane generated
aircrafts somewhere else; as in your own Computer Graphics compositions.&lt;br&gt;


ACFTools was written in &lt;a href=&quot;http://www.perl.org/get.html&quot;&gt;Perl&lt;/a&gt;,
thus it is able to work under Linux, MacOS &amp;amp; Windows. And it is
Open-Source &amp;amp; highly modular, so you can modify it as you want, or
use my functions for your own needs. When you start ACFTools, this is
what you get at your console:&lt;br&gt;


&lt;pre&gt;##############################################################################&lt;br&gt;[ACFTools v0.62a] Set of tools to play with ACF files outside of Plane-Maker&lt;br&gt;Perl script and modules coded by Stanislaw Pusep &lt;stas @sysd.org=&quot;&quot;&gt;&lt;br&gt;Site of this and another X-Plane projects of mine: http://xplane.sysd.org/&lt;br&gt;&lt;br&gt;Allows you to:&lt;br&gt; * export X-Plane (www.x-plane.com) aircraft data files to human-editable&lt;br&gt;   plaintext format and 3D mesh editable in AC3D modeler (www.ac3d.org).&lt;br&gt; * import plaintext/3D mesh back to ACF file.&lt;br&gt;##############################################################################&lt;br&gt;&lt;br&gt;Usage: acftools.exe &lt;commands&gt; [parameters]&lt;br&gt; o Commands:&lt;br&gt;	-extract [DEF]	: extract TXT from ACF (opt: using DEF definition)&lt;br&gt;        -generate       : generate ACF from TXT&lt;br&gt;        -merge          : merge body from AC3D file to TXT&lt;br&gt; o Parameters:&lt;br&gt;        -acffile FILE   : name of ACF file to process&lt;br&gt;        -txtfile FILE   : name of TXT file to process&lt;br&gt;        -ac3dfile FILE  : name of AC3D file to process&lt;br&gt;        -noorder        : DO NOT sort vertices while merging bodies&lt;br&gt;        -noac3d         : DO NOT generate AC3D&lt;br&gt;        -(min|max)body N: write all bodies in specified range to AC3D&lt;br&gt;        -force LIST     : force extraction of bodies LIST (comma-separated N)&lt;br&gt;        -normalize N    : normalize wings to N vert/surface (N&amp;gt;=2 or no wings!)&lt;br&gt; o Notes:&lt;br&gt;        * You can use abbreviations of commands/parameters (-gen or even -g&lt;br&gt;          instead of -generate).&lt;br&gt;        * The only required parameter for &quot;extract&quot; command is -acffile.&lt;br&gt;          Both -txtfile and -ac3dfile are derivated from it.&lt;br&gt;        * &quot;generate&quot; command and -txtfile has the same relation.&lt;br&gt;        * By default &quot;extract&quot; uses the latest DEF file.&lt;br&gt;        * &quot;generate&quot; doesn&#039;t need DEF at all (it is implicit in TXT)&lt;br&gt;        * If file to be created already exists backup is made automatically.&lt;br&gt; o Examples:&lt;br&gt;        acftools.exe --extract=ACF700 --acffile=&quot;F-22 Raptor.acf&quot;&lt;br&gt;        (extract &#039;F-22 Raptor.txt&#039; from &#039;F-22 Raptor.acf&#039;)&lt;br&gt;&lt;br&gt;        acftools.exe -e -acf &quot;F-22 Raptor.acf&quot;&lt;br&gt;        (same as above)&lt;br&gt;&lt;br&gt;        acftools.exe -me -ac3d ladar.ac -txt &quot;F-22 Raptor.txt&quot;&lt;br&gt;        (merge *single* 3D body from &#039;ladar.ac&#039; to &#039;F-22 Raptor.txt&#039;)&lt;br&gt;&lt;br&gt;        acftools.exe -g -txt &quot;F-22 Raptor.txt&quot;&lt;br&gt;        (reverse operation; generate &#039;F-22 Raptor.acf&#039; from &#039;F-22 Raptor.txt&#039;)&lt;br&gt;&lt;/commands&gt;&lt;/stas&gt;&lt;/pre&gt;


The most important thing you should know is that to convert from the
binary ACF format to TXT, ACFTools uses one of the files stored in the &lt;code&gt;defs&lt;/code&gt; directory. By default, it is a &lt;code&gt;ACF740.def&lt;/code&gt;,
which works for X-Plane v7.40 and later. You can specify any definition
file you want, as shown on the screen above. You can also write your
own definition files, if you have the structure specification. Note
that to convert TXT back to ACF, no definition is necessary, as the TXT
format itself holds all the data necessary to build the binary file.
The second thing is to specify the file that ACFTools should convert.
The name of the converted file and every of the intermediary files will
be generated from this name. When converting from ACF to AC3D formats,
TXT file is generated automatically. Please note that when you want to
put the edited aircraft part back into the &lt;code&gt;.acf&lt;/code&gt; file, you must save this part as a &lt;code&gt;.ac&lt;/code&gt;
separate file, then merge it into the TXT file, and after that convert
it into ACF! Yes, it would be nice to have a GUI to automate the entire
process, but I&#039;m too lazy to do that! Anyway, may the source be with you
&lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;br&gt;


I strongly recommend you to read the &lt;code&gt;docs\README.txt&lt;/code&gt; file contained in the ACFTools package before you start using it!&lt;br&gt;</description>
 <category domain="http://sysd.org/stas/taxonomy/term/9">addon</category>
 <category domain="http://sysd.org/stas/taxonomy/term/14">console</category>
 <category domain="http://sysd.org/stas/taxonomy/term/29">game</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/11">linux</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/20">perl</category>
 <category domain="http://sysd.org/stas/taxonomy/term/28">simulation</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Wed, 10 May 2006 01:09:12 -0300</pubDate>
</item>
<item>
 <title>Duke3D D.M. cheater</title>
 <link>http://sysd.org/stas/node/43</link>
 <description>&lt;br&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;img alt=&quot;E1L2 near the dark room elevator: enhanced brightness&quot; src=&quot;http://sysd.org/stas/files/active/0/duke3d.png&quot; height=&quot;240&quot; width=&quot;320&quot;&gt;&lt;br&gt;
&lt;small&gt;E1L2 near the dark room elevator: enhanced brightness&lt;/small&gt;
&lt;/div&gt;
&lt;br&gt;
Do you consider yourself a good Duke3D deathmatch player?! Neither I do &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;br&gt;

For our luck, &lt;a href=&quot;http://www.3drealms.com/&quot;&gt;3D Realms&lt;/a&gt; released Duke3D source code under GPL license at April 1&lt;sup&gt;st&lt;/sup&gt;,
2003. No, I&#039;m not fooling you! Since then, several people are enhancing this
classic game, extending it&#039;s portability and adding some cool features
to it. There are ports like &lt;a href=&quot;http://icculus.org/duke3d/&quot;&gt;icculus Duke3D port&lt;/a&gt; and &lt;a href=&quot;http://jonof.edgenetwork.org/index.php?p=jfduke3d&quot;&gt;JonoF&#039;s Duke Nukem 3D Port&lt;/a&gt;.
So, with the source in my hands, I decided to make my own version. I called it &lt;big&gt;Duke Nukem 3D v1.666&lt;/big&gt;. It
is 100% compatible with the original MS-DOS Duke3D v1.5, and adds some &lt;b&gt;cheats&lt;/b&gt; into &lt;b&gt;deathmatch&lt;/b&gt; games:&lt;br&gt;

&lt;ul&gt;

  &lt;li&gt;&lt;b&gt;Omniscience.&lt;/b&gt; You can peek at your opponents screen (using
&quot;Coop View&quot;, which now works even in the deathmatch mode!), and hear the
sounds they make (you may hear them scream when hit at the long distances).
You are able to see in darkness all the time, without using the
night vision goggles, and without that ugly green screen tinting. You&#039;ll know
when your opponent drops a holoduke, so you won&#039;t waste your ammo with
it. And finally, you won&#039;t see that confusing steroids trail anymore!&lt;br&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Aim bot features.&lt;/b&gt; Aim bot (which can be turned off!) will
track the closest visible opponent automatically. If you&#039;re close
enough to your opponent, aim bot will also try to kick him while
shooting. And it will auto-activate med kit when you get shot! Another
cool feature associated to the aim bot is the auto-jetpack. Jump from a
high place, and jetpack will be activated automatically when you&#039;re
close to the ground.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Practical enhancements.&lt;/b&gt; When you find a new weapon, game
won&#039;t switch to it automatically. You will always see which weapon your
opponent is using, without activating the &quot;Weapon Mode&quot;. Demo viewer
doesn&#039;t switches camera automatically anymore. And game doesn&#039;t prompts
you with credit screens/animations when started or finished.&lt;/li&gt;
  &lt;li&gt;&lt;code&gt;DNCROZ&lt;/code&gt;&lt;b&gt; during multiplayer?!&lt;/b&gt; Even this is
possible in the cheater! The only problem is: both players should type
it when the game is paused, or the &quot;Out Of Sync&quot; condition occurs.
Other cheats that work in the multiplayer game are: &lt;code&gt;DNSCOTTY###; DNCOORDS, DNVIEW; DNRATE; DNBETA; DNTODD; DNSHOWMAP; DNALLEN; DNDEBUG&lt;/code&gt;.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;&quot;.ANM viewer&quot;&lt;/b&gt;. Just type &lt;code&gt;DNENDING&lt;/code&gt; while playing, and the game skips right to the episode ending video &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/li&gt;
&lt;/ul&gt;

Please note that the most useful cheat, the aim bot, only works fine
with the game&#039;s internal AI opponents (A.K.A. &quot;PP bot&quot;, started with &lt;code&gt;&quot;duke3d.exe /q2 /a&quot;&lt;/code&gt;
command). It may work in the acceptable way on crossover 100 Mbps LAN
connection (peer-to-peer), although... And the worst thing ever: Duke3D
v1.666 will only work on real DOS mode, so forget it if you only have
Windows NT/2k/XP (anyway, those who play Duke3D over network frequently
do have Windows 9x installed for this specific purpose &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;)&lt;br&gt;

Still interested?! It&#039;s a bit difficult to install, though... First,
you need to have the original Duke Nukem 3D v1.5 installed. Second,
backup it!!! After that:&lt;br&gt;

&lt;ol&gt;

  &lt;li&gt;Unpack the &lt;code&gt;DN3D1666.ZIP&lt;/code&gt; into your Duke3D installation directory, overwriting files.&lt;/li&gt;
  &lt;li&gt;Configure Duke3D. Run &lt;code&gt;SETUP.EXE&lt;/code&gt;, and go to &lt;i&gt;&quot;Controller Setup&quot;&lt;/i&gt;, then &lt;i&gt;&quot;Choose Controller Type&quot;&lt;/i&gt;, and then select &lt;i&gt;&quot;Keyboard and External&quot;&lt;/i&gt;. After this, select &lt;i&gt;&quot;Setup External&quot;&lt;/i&gt;, &lt;i&gt;&quot;Change External Program Name&quot;&lt;/i&gt;, and type &lt;code&gt;&quot;DUKE3D.EXE&quot;&lt;/code&gt; there. Now you can save config, but DON&#039;T LAUNCH A GAME YET!!!&lt;br&gt;
(NOTE: it would be great if you disabled &lt;i&gt;Turn_Left&lt;/i&gt; and &lt;i&gt;Turn_Right&lt;/i&gt; keyboard bindings, although, if you don&#039;t plan to use &lt;i&gt;&quot;AutoAimSelfCalibrate&quot;&lt;/i&gt; setting in &lt;code&gt;DUKE3D.666&lt;/code&gt; file or won&#039;t use Auto-Aim feature at all, you don&#039;t need to do this).&lt;/li&gt;
  &lt;li&gt;Now, edit the file &lt;code&gt;DUKE3D.666&lt;/code&gt;. Open it in your
favorite editor (&lt;code&gt;EDIT.COM&lt;/code&gt; &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;), and you&#039;ll see that it&#039;s almost self-explanatory. Note that
your mouse is now configured by this file, any &lt;code&gt;SETUP&lt;/code&gt;
settings will be ignored! Also note that default mouse settings for
v1.666 imitates the default settings for the original Duke3D v1.5.&lt;br&gt;
  &lt;/li&gt;
&lt;/ol&gt;

I also recommend you to read the &lt;code&gt;&quot;DN3D1666.ME!&quot;&lt;/code&gt; file, supplied in the download package.&lt;br&gt;

&lt;hr size=&quot;2&quot; width=&quot;100%&quot;&gt;Relative project: &lt;a href=&quot;http://sysd.org/stas/node/40&quot;&gt;GRP packer plugin&lt;/a&gt; for the &lt;a href=&quot;http://www.ghisler.com/&quot;&gt;Total Commander&lt;/a&gt;.&lt;br&gt;

&lt;hr size=&quot;2&quot; width=&quot;100%&quot;&gt;Sorry, no source code is available for direct download. However, if you&#039;re interested in it, &lt;a href=&quot;http://sysd.org/stas/feedback&quot;&gt; contact me&lt;/a&gt; and I&#039;ll provide it to you! Thus, GPL license of the original Duke3D source wouldn&#039;t be harmed, I beleive...&lt;br&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/9">addon</category>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/27">cheat</category>
 <category domain="http://sysd.org/stas/taxonomy/term/29">game</category>
 <category domain="http://sysd.org/stas/taxonomy/term/6">graphics</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/7">network</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <pubDate>Tue, 09 May 2006 16:47:51 -0300</pubDate>
</item>
<item>
 <title>MD5/SHA1 checksum</title>
 <link>http://sysd.org/stas/node/42</link>
 <description>An enhanced file checksum plugin for the &lt;a href=&quot;http://www.ghisler.com/&quot;&gt;Total Commander&lt;/a&gt;
(TC for short). It supports both MD5 &amp;amp; SHA1 algorithms, and is able
to checksum the entire directory trees. Note that it&#039;s MD5 checksum
function is much faster than TC&#039;s internal one (70% faster on my Athlon
XP 1700+ with Seagate IDE 160 GB 7200 rpm HD!). Both MD5 &amp;amp; SHA1
algorithms were ripped from &lt;a href=&quot;http://www.chiark.greenend.org.uk/%7Esgtatham/putty/&quot;&gt;PuTTY&lt;/a&gt; by
Simon Tatham, who implemented them directly from the specification.&lt;br&gt;

Basically, the file checksum plugin integrates the functionality of &lt;a href=&quot;http://www.gnu.org/&quot;&gt;GNU&lt;/a&gt;
utilities &lt;code&gt;md5sum&lt;/code&gt; and &lt;code&gt;sha1sum&lt;/code&gt;
into the Total Commander GUI. This is done through the packer extension
API: you simply select files/directories you want to checksum, and
&quot;Pack&quot; (Alt+F5) them into a &lt;code&gt;.md5&lt;/code&gt; or &lt;code&gt;.sha&lt;/code&gt; &quot;archive&quot;. It will be a plain text file which looks like this (just the same format as that of above GNU utilities):&lt;br&gt;

&lt;pre&gt;3fb2924c8fb8098dbc8260f69824e9c437d28c68  FC4-i386-disc1.iso&lt;br&gt;31fdc2d7a1f1709aa02c9ea5854015645bd69504  FC4-i386-disc2.iso&lt;br&gt;032455cdf457179916be3a739ca16add75b768b7  FC4-i386-disc3.iso&lt;br&gt;f560f26a32820143e8286afb188f7c36d905a735  FC4-i386-disc4.iso&lt;br&gt;736e1555e88740d6131c5c84fbe69ed1073ba82d  FC4-i386-rescuecd.iso&lt;br&gt;&lt;/pre&gt;

Note that as TC runs on Windows, checksum plugin will use DOS line endings (CRLF). To
&quot;export&quot; the generated checksum list to a UN*X system, you can use my &lt;a href=&quot;http://sysd.org/stas/node/34&quot;&gt;ToFroWin&lt;/a&gt; utility, which also integrates itself into TC &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;

Then, to verify files consistence from TC, select &lt;code&gt;.md5&lt;/code&gt; or &lt;code&gt;.sha&lt;/code&gt;
file and &quot;Test archive&quot; (Shift+Alt+F9). Files generated by *BSD &lt;code&gt;md5&lt;/code&gt; utility are also supported. You can also browse checksum
files as they were directories; this is specially useful to locate
and check for consistence a single file from the huge directory tree.
To do that, just &quot;View&quot; (F3) a file, and TC Lister will pop you a
window with content like this:&lt;br&gt;

&lt;pre&gt;D:\_INSTALL_\stentz-binary-i386\FC4-i386-rescuecd.iso&lt;br&gt;&lt;br&gt;expected:	736e1555e88740d6131c5c84fbe69ed1073ba82d&lt;br&gt;computed:	736e1555e88740d6131c5c84fbe69ed1073ba82d&lt;br&gt;&lt;br&gt;SHA1 checksum OK!&lt;br&gt;&lt;/pre&gt;

Check this &lt;a href=&quot;http://sysd.org/stas/files/active/0/md5_totcmd.png&quot;&gt;screenshot&lt;/a&gt; to see the checksum plugin in operation!&lt;br&gt;

&lt;br&gt;

&lt;h3&gt;Installation:&lt;/h3&gt;

&lt;ol&gt;

  &lt;li&gt;Unzip the &lt;code&gt;&quot;checksum.wcx&quot;&lt;/code&gt; to the Total Commander or Windows Commander plugins directory&lt;/li&gt;
  &lt;li&gt;In Windows Commander 4.0 (or newer) or Total Commander, choose &#039;Configuration =&amp;gt; Options&#039;&lt;/li&gt;
  &lt;li&gt;Open the &#039;Packer&#039; page&lt;/li&gt;
  &lt;li&gt;Click &#039;Configure packer extension WCXs&#039;&lt;/li&gt;
  &lt;li&gt;Type &lt;code&gt;md5&lt;/code&gt; as the extension&lt;/li&gt;
  &lt;li&gt;Click &#039;New type&#039;, and select the &lt;code&gt;&quot;checksum.wcx&quot;&lt;/code&gt; file&lt;/li&gt;
  &lt;li&gt;Click OK and then &#039;Configure packer extension WCXs&#039;&lt;/li&gt;
  &lt;li&gt;Now type &lt;code&gt;sha&lt;/code&gt; as the extension&lt;/li&gt;
  &lt;li&gt;Click &#039;New type&#039;, and select the &lt;code&gt;&quot;checksum.wcx&quot;&lt;/code&gt; file again&lt;/li&gt;
  &lt;li&gt;Click OK&lt;br&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;Usage:&lt;/h3&gt;

&lt;i&gt;(This section uses MD5 checksums as example; for SHA1 the procedure is the&lt;br&gt;
same, just replace every &quot;md5&quot; you see by &quot;sha&quot; &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;)&lt;/i&gt;&lt;br&gt;

&lt;ol type=&quot;I&quot;&gt;

&lt;li&gt;Generate MD5 checksum:
&lt;ol&gt;
&lt;li&gt;Select files you wish to compute checksum.&lt;/li&gt;
&lt;li&gt;Then go to &quot;Files =&amp;gt; Pack&quot;.&lt;/li&gt;
&lt;li&gt;Select &quot;md5&quot; as packer.&lt;/li&gt;
&lt;li&gt;PLEASE NOTE THAT ARCHIVE PATH WILL BE IGNORED!!!
&quot;.md5&quot; &#039;archive&#039; is &lt;b&gt;ALWAYS&lt;/b&gt; generated in current directory
(where checked files are), and NOT in the opposite panel!
The only exception is creating checksum of the files stored on CD-ROM
media as there&#039;s no way to create files there.&lt;/li&gt;
&lt;li&gt;Press OK and check CURRENT directory for &quot;.md5&quot; list generated.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Verify MD5 checksum:
&lt;ol&gt;
&lt;li&gt;Certify that &quot;.md5&quot; list is in it&#039;s right place (filenames listed
in it should be relative to the current directory).&lt;/li&gt;
&lt;li&gt;Select it and do &quot;Files =&amp;gt; Test Archive(s)&quot;.&lt;/li&gt;
&lt;li&gt;If any file doesn&#039;t matches stored MD5 checksum then
&quot;CRC error&quot; message box appears.&lt;/li&gt;
&lt;li&gt;If everything is clear Total Commander remains quiet.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Browse MD5 checksum list:
&lt;ol&gt;
&lt;li&gt;Certify that &quot;.md5&quot; list is in it&#039;s right place (filenames listed
in it should be relative to the current directory).&lt;/li&gt;
&lt;li&gt;Select it and enter it as it were a normal archive.&lt;/li&gt;
&lt;li&gt;If any file is present in the &quot;.md5&quot; list but wasn&#039;t found in the current
directory then &quot;?&quot; is displayed instead of file date/time and size.&lt;/li&gt;
&lt;li&gt;PLEASE NOTE THAT FILES CAN NOT BE EXTRACTED TO YOUR DISK! &quot;.md5&quot; isn&#039;t an archive, it stores only the hash of the file.&lt;/li&gt;
&lt;li&gt;Select file you wish to check and press F3 (call Lister).&lt;/li&gt;
&lt;li&gt;Lister will show complete file name, expected checksum and generated
checksum. If both checksum matches then the last line is
&quot;MD5 checksum OK!&quot;.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/9">addon</category>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/26">Total Commander</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Tue, 09 May 2006 12:17:37 -0300</pubDate>
</item>
<item>
 <title>Diamond Rio PMP300 FS-plugin</title>
 <link>http://sysd.org/stas/node/41</link>
 <description>&lt;br&gt;

&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;Diamond Rio PMP300 itself!!!&quot; src=&quot;http://sysd.org/stas/files/active/0/rio_pmp300.jpg&quot; height=&quot;400&quot; width=&quot;301&quot;&gt;&lt;br&gt;
&lt;/div&gt;

&lt;br&gt;

Diamond Rio PMP300, with only 32 MB of flash memory, was the second
portable MP3 player ever released, in 1998. Unfortunately, such a
revolutionary piece of hardware is very painful to interface with: as
it is connected through parallel port, highest transfer rates achieved
were around 80 KB/s. And the software bundled with it was too
primitive. To the luck of thousands of (un)happy Rio owners, &lt;a href=&quot;http://www.world.co.uk/sba/&quot;&gt;The Snowblind Alliance&lt;/a&gt;
released their Open-Source RIO utility, which became a starting point
of several alternative Rio manager interfaces. Mine is just one of them
&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;

First of all, there&#039;s absolutely no need to write the entire file manager. &lt;a href=&quot;http://www.ghisler.com/&quot;&gt;Total Commander&lt;/a&gt;
(TC for short) is one of the most feature-rich file managers ever made,
and it supports a very extensible plugin API. As a result, one could
use TC to manage files directly on the flash memory of his/her Rio!
Actually, my plugin supports listing, uploading, downloading &amp;amp;
deleting files from Diamond Rio PMP300 &lt;b&gt;internal&lt;/b&gt; memory. It also displays the transfer speed and the total/remaining space. Take a look at &lt;a href=&quot;http://sysd.org/stas/files/active/0/rio_totcmd.png&quot;&gt;this screenshot&lt;/a&gt; to see it in action. Behind the GUI, my plugin uses the source of the &quot;RIO utility v1.07&quot; by The Snowblind Alliance.&lt;br&gt;

&lt;br&gt;

&lt;h3&gt;Installation:&lt;/h3&gt;

Just the same as for many other FS-plugins:&lt;br&gt;

&lt;ol&gt;

  &lt;li&gt;Unzip &lt;code&gt;rio.wfx&lt;/code&gt; &amp;amp; &lt;code&gt;rio.cfg&lt;/code&gt; files to Total Commander directory&lt;/li&gt;
  &lt;li&gt;Choose &lt;i&gt;&quot;Configuration =&amp;gt; Options =&amp;gt; Operation =&amp;gt; FS-Plugins&quot;&lt;/i&gt;&lt;/li&gt;
  &lt;li&gt;Choose &lt;code&gt;rio.wfx&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Click OK.&lt;/li&gt;
  &lt;li&gt;You can now access the plugin in the &quot;Network Neighborhood&quot;&lt;/li&gt;
  &lt;li&gt;Open &lt;code&gt;rio.cfg&lt;/code&gt; file and set the correct LPT port address (see below for more details)&lt;br&gt;
  &lt;/li&gt;
&lt;/ol&gt;

Please note that &lt;i&gt;DriverLINX Port I/O Driver&lt;/i&gt; by &lt;a href=&quot;http://www.sstnet.com/&quot; target=&quot;_blank&quot;&gt;Scientific Software Tools, Inc.&lt;/a&gt; is required for plugin to operate. Get it &lt;a href=&quot;http://sysd.org/stas/node/41#attachments&quot;&gt;below&lt;/a&gt;.&lt;a href=&quot;http://www.sstnet.com/&quot; target=&quot;_blank&quot;&gt;&lt;br&gt;
&lt;/a&gt;
&lt;h3&gt;Configuration:&lt;/h3&gt;

In the majority of cases, the plugin may work fine &quot;out-of-the-box&quot;. If
it doesn&#039;t work at all, probably you&#039;ll need to discover and specify
your PC&#039;s parallel port hardware address. Open your system&#039;s &quot;Device
Manager&quot; (on Windows XP, open the context menu for &quot;My Computer&quot;, click
&quot;Properties&quot;, go to the &quot;Hardware&quot; tab, and click the &quot;Device
Manager&quot;). Go straight to &quot;Ports (COM &amp;amp; LPT)&quot;. Now locate the port
that your Rio device is attached. On my case, it&#039;s LPT1. Double-click
&quot;Printer port (LPT1)&quot;, and go to the &quot;Resources&quot; tab. You need the
first one of&amp;nbsp; &quot;I/O Range&quot; numbers:&lt;br&gt;

&lt;br&gt;

&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;Device Manager =&amp;gt; Printer port (LPT1) =&amp;gt; Resources&quot; src=&quot;http://sysd.org/stas/files/active/0/device_mgr_lpt1.png&quot; height=&quot;455&quot; width=&quot;412&quot;&gt;&lt;br&gt;
&lt;/div&gt;

&lt;br&gt;

&lt;b&gt;378&lt;/b&gt; is what you need. Note that this number is in a hexadecimal
format. Thus, many programs (like my plugin) may accept it as 0x378.
Now, open the &lt;code&gt;rio.cfg&lt;/code&gt; file. It looks like this, by default:&lt;br&gt;

&lt;pre&gt;# Assume that Rio is connected to LPT1&lt;br&gt;IOPort		0x378&lt;br&gt;&lt;br&gt;# default&lt;br&gt;IODelayInit	20000&lt;br&gt;IODelayTx	100&lt;br&gt;IODelayRx	2&lt;br&gt;&lt;br&gt;# &quot;turbo&quot; mode (UNSAFE!!!)&lt;br&gt;#IODelayInit	5000&lt;br&gt;#IODelayTx	1&lt;br&gt;#IODelayRx	1&lt;br&gt;&lt;/pre&gt;

Now, just update the &lt;code&gt;IOPort&lt;/code&gt; parameter to the value you discovered.&lt;br&gt;

Note all that &lt;code&gt;IODelay*&lt;/code&gt; parameters. For the safety reasons,
the delays are high by default, and, consequently, the file transfer is
slow. If you comment out the default values and uncomment the turbo
mode ones, you&#039;ll get a great increase in performance! But remember to
only use it when your Rio battery is 100% charged, and when your Rio is
&lt;b&gt;turned on&lt;/b&gt;. It may corrupt some bits, through.&lt;br&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/9">addon</category>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/13">GUI</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/5">hardware</category>
 <category domain="http://sysd.org/stas/taxonomy/term/30">music</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/26">Total Commander</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Sat, 06 May 2006 00:26:38 -0300</pubDate>
</item>
<item>
 <title>I.E. &#039;hidden image&#039; maker</title>
 <link>http://sysd.org/stas/node/38</link>
 <description>&lt;p&gt;
&lt;center&gt;&lt;img alt=&quot;sample masked image&quot;
 src=&quot;http://sysd.org/stas/files/active/0/masked.jpg&quot;
 height=&quot;228&quot; width=&quot;320&quot;&gt;&lt;br&gt;
&lt;/center&gt;
&lt;/p&gt;
If you are using Internet Explorer (any version able to load this page
&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;, just select the above image (or go to &lt;i&gt;&quot;Edit =&amp;gt;
Select All&quot;&lt;/i&gt;, or press &lt;code&gt;Ctrl-A&lt;/code&gt;). You
may see a watermark with white letters forming a word &quot;TEST&quot;. This &lt;b&gt;only&lt;/b&gt;
happens in IE, due to the specific way it masks the selected images to
show their selected state. &lt;a
 href=&quot;http://www.mozilla.org/products/firefox/&quot;&gt;Firefox&lt;/a&gt;,
for example, simply tints the image with bluish color. There are lots
of jokes one can make using this simple principle. For example, all
images on your homepage may have some &quot;subliminal&quot; messages. Adobe
PhotoShop is perfectly suitable to make such &#039;Hidden Images&#039; by hand;
in fact, my inspiration was a tutorial made by Matt Kment to do this.
But if you
are too lazy and/or do not have PhotoShop installed (UN*X users, for
example), you can use this small program I wrote in Perl to automate
the
&quot;steganographic&quot; process. I wrote it using &lt;a
 href=&quot;http://www.imagemagick.net/&quot;&gt;ImageMagick&lt;/a&gt;&lt;small&gt;&lt;sup&gt;TM&lt;/sup&gt;&lt;/small&gt;
library (so it&#039;s required to successfully run the program). It is a
command line program, but it is simple enough to use,
and it has an advantage to be integrable into your own scripts/programs
(you can even setup your server to embed your company logo into all
graphics of your site, but this will overload the server&#039;s CPU and RAM
too quickly). I called my program &quot;Internet Explorer Mask&#039;O&#039;Matic&quot;.
Take a look at it&#039;s startup screen:&lt;br&gt;
&lt;pre&gt;Internet Explorer Mask&#039;O&#039;Matic v1.0 by Stas &lt;stanis
 @linuxmail.org=&quot;&quot;&gt;&lt;br&gt;Grab yours at http://sysdlabs.hypermart.net/ &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;br&gt;&lt;br&gt;Inspirated by some mad stuff by Lem0nHead&lt;br&gt;Based on Photoshop &#039;Hidden Image&#039; Guide (http://www.atomicwienerdog.com/ot/)&lt;br&gt;made by Matt Kment &amp;amp; suggested to me by xfalmp&lt;br&gt;&lt;br&gt;&lt;br&gt;ERROR: please give us --visible&lt;br&gt;&lt;br&gt;&lt;br&gt; * Usage: MaskOMatic.pl &lt;options&gt;&lt;br&gt; * Options (note that you can use syntaxes like --vis= --hid -out -p):&lt;br&gt; --visible filename of image normally seen (required)&lt;br&gt; --hidden filename of image seen when selected in IE (required)&lt;br&gt; --output filename to write out, format is selected automatically&lt;br&gt; using suffix provided (required)&lt;br&gt; --percentage float value between 0 &amp;amp; 100; how much of hidden appears&lt;br&gt; (optional, defaults to 50%)&lt;br&gt; --quality JPEG/MIFF/PNG compression level (optional, DON&#039;T USE!)&lt;br&gt; --contrast flag, internal contrast reduction (optional)&lt;br&gt; --test filename to dump preview of selected image (optional)&lt;br&gt;&lt;br&gt; * Notes:&lt;br&gt; # Visible &amp;amp; hidden images doesn&#039;t need to have same size, when size&lt;br&gt; doesn&#039;t matches then hidden image is rescaled using Lanczos filter&lt;br&gt; # A huge set of image formats is supported (JPG, GIF, PNG for example)&lt;br&gt; but I strongly advice you to write output in loseless format *only*&lt;br&gt; (BMP, PNG, TGA) and *then* fine-tune contrast/brightness &amp;amp; save&lt;br&gt; compressed in your favourite image editor (like GIMP)&lt;br&gt;&lt;br&gt; * Example:&lt;br&gt; MaskOMatic.pl --vis bush.jpg --hid death.jpg --out sublim.bmp&lt;br&gt;&lt;/options&gt;&lt;/stanis&gt;&lt;/pre&gt;
Only 3 options are obligatory: &lt;code&gt;--visible&lt;/code&gt;, &lt;code&gt;--hidden&lt;/code&gt;
&amp;amp; &lt;code&gt;--output&lt;/code&gt;. You can abbreviate them
as &lt;code&gt;-v&lt;/code&gt;, &lt;code&gt;-h&lt;/code&gt; &amp;amp;
&lt;code&gt;-o&lt;/code&gt;,
respectively. &quot;Visible&quot; is an image that user sees by default.
&quot;Hidden&quot; is what user sees when he/she selects the image. And &quot;output&quot;
is the resulting image you can embed into your pages. It is also
possible to use the &lt;code&gt;&quot;--test&quot;&lt;/code&gt;
option to preview the selected state of the output image without
starting Internet Explorer. If it looks bad, you may play around with &lt;code&gt;&quot;--percentage&quot;&lt;/code&gt;
option, which specifies the &#039;weight&#039; of the hidden image. The higher
is this value, the greater is the hidden image visibility. If that&#039;s
not
enough to hide your image well (some things are pretty difficult to
hide!), you can try to tune the output image with &lt;code&gt;&quot;--contrast&quot;&lt;/code&gt;
option, but I suggest you to use some GUI program to do that as you get
the visual feedback instantly. I also suggest you to always save your
output in the non-compressed lossless format (like BMP, TGA, TIFF), and
then
fine-tune the compression in some program specialized in it (&lt;a
 href=&quot;http://www.gimp.org/&quot;&gt;GIMP&lt;/a&gt; has a nice
compressor with visual feedback).
&lt;p&gt;
&lt;h3&gt;Alternatives:&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a
 href=&quot;http://www.n-sane.net/effects/hidden-image/index.php&quot; target=&quot;_blank&quot;&gt;Hidden
Image&lt;/a&gt; Photoshop tutorial&lt;/li&gt;
  &lt;li&gt;&lt;a
 href=&quot;http://www.codeproject.com/cs/media/magicimage.asp&quot; target=&quot;_blank&quot;&gt;Magic
Image Generator&lt;/a&gt; C#/VS.NET2003 program (with source) &lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/14">console</category>
 <category domain="http://sysd.org/stas/taxonomy/term/6">graphics</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/20">perl</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/8">web</category>
 <pubDate>Fri, 05 May 2006 17:47:18 -0300</pubDate>
</item>
<item>
 <title>&quot;ps auwx&quot; faker</title>
 <link>http://sysd.org/stas/node/37</link>
 <description>&lt;p&gt;
&quot;Process Stack Faker&quot; (&lt;code&gt;psf&lt;/code&gt; for short) is able to hide the real executable name and it&#039;s parameters from the output of &lt;code&gt;&quot;ps auwx&quot;&lt;/code&gt;, &lt;code&gt;&quot;ps -ef&quot;&lt;/code&gt; &amp;amp; &lt;code&gt;&quot;top&quot;&lt;/code&gt;
(on UN*X machines), without any superuser privileges. Why should one
wish to hide the stuff he/she executes is a complete different topic &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;
Let&#039;s take a look at the options that &lt;code&gt;psf&lt;/code&gt; itself accepts:&lt;br&gt;
&lt;pre&gt;$ ./psf&lt;br&gt;Process Stack Faker (a.k.a. Fucker) v0.03&lt;br&gt;Coded by Stas; (C)opyLeft by SysD Destructive Labs, 1997-2003&lt;br&gt;&lt;br&gt;Usage: psf [options] command arg1 arg2 ...&lt;br&gt;Where options can be:&lt;br&gt;-s string fake process name&lt;br&gt;-p filename file to write PID of spawned process - optional&lt;br&gt;-d try to start as daemon (in background, no tty) - optional&lt;br&gt;-l DO NOT exec through link (detectable by &#039;top&#039;!!!) - optional&lt;br&gt;-u uid[:gid] (format just like in chown(1)) reset UID/GID - optional&lt;br&gt;-n priority renice process - optional&lt;br&gt;&lt;br&gt;Example: psf -s &quot;pine -i&quot; -d -n 19 ./john -session:websrv&lt;br&gt;$&lt;br&gt;&lt;/pre&gt;
I hope this is self-explanatory. &lt;code&gt;psf&lt;/code&gt; will execute &lt;code&gt;&quot;command arg1 arg2&quot;&lt;/code&gt;, and it will appear to &lt;code&gt;&quot;ps&quot;&lt;/code&gt; &amp;amp; &lt;code&gt;&quot;top&quot;&lt;/code&gt; utilities as &lt;code&gt;&quot;string&quot;&lt;/code&gt;. All other options are... Uhm, optional! They are only useful to detach processes not designed to run as daemons. &lt;code&gt;&quot;-l&quot;&lt;/code&gt;
is a &#039;compatibility&#039; switch that disables the weird trick used to
override the detection of the real filename by some process listers
(notably &lt;code&gt;&quot;top&quot;&lt;/code&gt;). The default option may work unexpectingly on some systems (by the way, &lt;code&gt;psf&lt;/code&gt; works fine on FreeBSD 4.3, Linux 2.4, NetBSD 1.5 &amp;amp; Solaris 2.7). To test &lt;code&gt;psf&lt;/code&gt;, try this:&lt;br&gt;
&lt;pre&gt;$ psf -s &quot;pine -i&quot; sleep 30 &amp;amp;&lt;br&gt;[1] 440&lt;br&gt;$ ps auwx&lt;br&gt;...&lt;br&gt;stas 84 0.0 0.6 2012 1232 pts/0 S 19:12 0:00 bash -rcfile .bashrc&lt;br&gt;stas 440 0.0 0.1 1204 376 tty2 S 20:09 0:00 pine -i&lt;br&gt;&lt;br&gt;stas 450 0.0 0.4 2544 816 tty2 R 20:12 0:00 ps auwx&lt;br&gt;...&lt;br&gt;&lt;/pre&gt;
&lt;code&gt;
&quot;sleep 30&quot;&lt;/code&gt; process was spoofed as &lt;code&gt;&quot;pine -i&quot;&lt;/code&gt;. Please note the white line between PIDs 440 and 450. This occurs because &lt;code&gt;psf&lt;/code&gt; uses whitespace (0x20) characters to shift the original process arguments away from the visible area &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;
To understand how does &lt;code&gt;psf&lt;/code&gt; works and learn how to compile it, just read the comments inside the source.&lt;/p&gt;</description>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/14">console</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/11">linux</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <pubDate>Fri, 05 May 2006 01:57:41 -0300</pubDate>
</item>
<item>
 <title>Micro$oft Messenger Hack</title>
 <link>http://sysd.org/stas/node/36</link>
 <description>&lt;br&gt;

&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;Micro$oft Messenger Hack screenshot&quot; src=&quot;http://sysd.org/stas/files/active/0/msmh.png&quot; height=&quot;281&quot; width=&quot;383&quot;&gt;&lt;br&gt;
&lt;/div&gt;

&lt;br&gt;

&quot;Micro$oft Messenger Hack&quot; (MSMH for short &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt; is a GUI alternative to the command line &lt;code&gt;&quot;net send&quot;&lt;/code&gt;,
with some nice additional features. Please remember that &quot;Messenger&quot;
referred here is a Windows NT/2k/XP system service, that &lt;i&gt;&quot;Transmits net send and
Alerter service messages between clients and servers. This service is
not related to Windows Messenger.&quot;&lt;/i&gt;. Messages transferred using this service looks
just like this one:&lt;br&gt;

&lt;br&gt;

&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;&amp;quot;net send usage&amp;quot; screenshot&quot; src=&quot;http://sysd.org/stas/files/active/0/net_send.png&quot; height=&quot;216&quot; width=&quot;423&quot;&gt;&lt;br&gt;
&lt;/div&gt;

&lt;br&gt;

MSMH is able to send the same message as above example. It lists
machines on the local network, so you won&#039;t mistype host names anymore.
It can send messages multiple times, also (just imagine yourself
flooding &lt;code&gt;&quot;*&quot;&lt;/code&gt; &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;. And, using &lt;code&gt;&quot;WinPopup&quot;&lt;/code&gt; method, both &lt;code&gt;&quot;From&quot;&lt;/code&gt; and &lt;code&gt;&quot;To&quot;&lt;/code&gt; fields can be spoofed. By the other side, &lt;code&gt;&quot;net send&quot;&lt;/code&gt; method can send messages &lt;i&gt;beyond&lt;/i&gt; your LAN, given the IP address of the remote host.&lt;br&gt;

MSMH executable is very small, as I programmed it in assembler
language. But beware: Service Packs make the Messenger service disabled
by default, and firewalls won&#039;t allow remote host to receive your
messages. Well, MSMH was much funnier when I wrote it a long time ago &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;br&gt;</description>
 <category domain="http://sysd.org/stas/taxonomy/term/21">assembler</category>
 <category domain="http://sysd.org/stas/taxonomy/term/27">cheat</category>
 <category domain="http://sysd.org/stas/taxonomy/term/13">GUI</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/7">network</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Fri, 05 May 2006 01:53:01 -0300</pubDate>
</item>
<item>
 <title>reg3dit</title>
 <link>http://sysd.org/stas/node/18</link>
 <description>&lt;p&gt;
This one looks like and feels like the popular &quot;Microsoft &amp;reg; Registry Editor&quot; (A.K.A. &lt;code&gt;regedit.exe&lt;/code&gt; &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;), specifically one that comes from Win2k default installation.&lt;br&gt;
It only has one (significative) difference... It will &lt;span style=&quot;font-weight: bold;&quot;&gt;never&lt;/span&gt; prompt you with following message box, when started:&lt;br&gt;&lt;br&gt;
&lt;center&gt;
&lt;span style=&quot;font-style: italic;&quot;&gt;
&lt;div&gt;
&lt;img alt=&quot;&amp;quot;Registry editing has been disabled by your administrator.&amp;quot;&quot; src=&quot;http://sysd.org/stas/files/active/0/regedit_msg.png&quot; style=&quot;width: 350px; height: 126px;&quot;&gt;&lt;br&gt;
&lt;small&gt;&quot;Registry editing has been disabled by your administrator.&quot;&lt;/small&gt;&lt;/div&gt;&lt;/span&gt;
&lt;/center&gt;&lt;br&gt;
This restriction is supposed to save users from themselves. Well, if you&#039;ve successfully located an override (like mine &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;), I hope you really know what&#039;s you&#039;re doing! My &lt;code&gt;regedit&lt;/code&gt; clone will ignore administrator&#039;s restriction, which consist in the following registry patch:&lt;br&gt;
&lt;pre&gt;REGEDIT4&lt;br&gt;&lt;br&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]&lt;br&gt;&quot;DisableRegistryTools&quot;=dword:00000001&lt;br&gt;&lt;/pre&gt;
Then, you may use reg3dit to make all the changes you need (note that on Windows NT/2k/XP &amp;amp; superiors some keys would still give you &quot;Access denied&quot;, as such OSes use per-user security policies). For example, you can unpatch that &lt;span style=&quot;font-style: italic;&quot;&gt;DisableRegistryTools&lt;/span&gt; thing and simply turn back to use default &lt;code&gt;regedit.exe &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;P.S. -&lt;/b&gt; reg3dit has &lt;span style=&quot;font-weight: bold;&quot;&gt;nothing&lt;/span&gt; to do with the &lt;a href=&quot;http://www.kuro5hin.org/story/2004/2/15/71552/7795&quot;&gt;leaked Win2k source&lt;/a&gt;!!! I&#039;ve created it by my own.&lt;/p&gt;</description>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/23">database</category>
 <category domain="http://sysd.org/stas/taxonomy/term/13">GUI</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Thu, 20 Apr 2006 01:16:52 -0300</pubDate>
</item>
<item>
 <title>WiFi card modding</title>
 <link>http://sysd.org/stas/node/17</link>
 <description>&lt;br&gt;

Esse &amp;eacute; um tutorial que &lt;a href=&quot;http://www.warchalking.com.br/cgi-bin/base/tutoriais2.444?40&quot;&gt;publiquei no site Warchalking Brazil&lt;/a&gt;
h&amp;aacute; algum tempo. Acontece que comprei uma placa WiFi
(padr&amp;atilde;o IEEE 802.11b) que n&amp;atilde;o atendia exatamente
&amp;agrave;s minhas necessidades... Bom, segue-se o relato do que
aconteceu com ela &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;
&lt;hr&gt;
&lt;h1&gt;Tutorial sobre modifica&amp;ccedil;&amp;atilde;o de uma placa wireless (IEEE 802.11b)&lt;/h1&gt;



&lt;h2&gt;ou&lt;/h2&gt;



&lt;h1&gt;Transformando placa WiFi Indoor em Outdoor&lt;/h1&gt;



&lt;br&gt;


Autor: Stas&lt;br&gt;


Edi&amp;ccedil;&amp;atilde;o n&lt;sup&gt;&lt;u&gt;o&lt;/u&gt;&lt;/sup&gt;3 (8 de Maio de 2004)&lt;br&gt;




&lt;br&gt;

&lt;hr&gt;


&lt;a name=&quot;indice&quot;&gt;&lt;/a&gt;

&lt;h2&gt;&amp;Iacute;ndice:&lt;/h2&gt;




&lt;ol&gt;


&lt;li&gt;&lt;a href=&quot;http://sysd.org/stas/node/17#intro&quot;&gt;&lt;big&gt;Introdu&amp;ccedil;&amp;atilde;o&lt;/big&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://sysd.org/stas/node/17#desmonta&quot;&gt;&lt;big&gt;Desmontando a placa PCMCIA&lt;/big&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://sysd.org/stas/node/17#hard&quot;&gt;&lt;big&gt;Modifica&amp;ccedil;&amp;otilde;es em Hardware&lt;/big&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://sysd.org/stas/node/17#soft&quot;&gt;&lt;big&gt;Modifica&amp;ccedil;&amp;otilde;es em Software (dispens&amp;aacute;veis!)&lt;/big&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://sysd.org/stas/node/17#ref&quot;&gt;&lt;big&gt;Agradecimentos/Refer&amp;ecirc;ncias/Links&lt;/big&gt;&lt;/a&gt;&lt;/li&gt;

&lt;/ol&gt;




&lt;br&gt;

&lt;hr&gt;


&lt;a name=&quot;intro&quot;&gt;&lt;/a&gt;

&lt;h2&gt;Introdu&amp;ccedil;&amp;atilde;o:&lt;/h2&gt;



Bom, primeiramente, qual &amp;eacute; a necessidade de se alterar uma placa de rede wireless
padr&amp;atilde;o IEEE 802.11b? Melhoramentos &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


802.11b est&amp;aacute; mais difundido do que nunca e o uso dele continue expandindo, e os pre&amp;ccedil;os -- baixando.
O que outrora era tecnologia de ponta hoje est&amp;aacute; nas m&amp;atilde;os do povo, portanto &amp;eacute; uma excelente oportunidade
para &lt;i&gt;fu&amp;ccedil;ar&lt;/i&gt;. E obviamente, nem todos temos ao alcance equipamentos sofisticados como espectr&amp;ocirc;metros
e oscilosc&amp;oacute;pios. A&amp;iacute; precisamos nos virar &lt;code&gt;&lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;/code&gt;.&lt;br&gt;


Basicamente, isso &amp;eacute; um relato fotogr&amp;aacute;fico comentado de
como eu &quot;me virei&quot;. Sem d&amp;uacute;vida alguma, para mim as coisas aqui
relatadas deram certo, por&amp;eacute;m n&amp;atilde;o garanto que dar&amp;atilde;o
certo para voc&amp;ecirc; tamb&amp;eacute;m, portanto tudo que voc&amp;ecirc;
estar&amp;aacute; fazendo &amp;eacute; uma responsabilidade &lt;b&gt;somente sua&lt;/b&gt;.&lt;br&gt;

&lt;br&gt;



&amp;Oacute;timo, sem mais advert&amp;ecirc;ncias e precau&amp;ccedil;&amp;otilde;es, vamos ao que realmente interessa! Para mexer com wireless
precisamos de uma placa wireless, de boa qualidade (tanto hardware quanto firmware/software) de prefer&amp;ecirc;ncia.
A minha &amp;eacute; uma &lt;a href=&quot;http://www.3com.com/products/en_US/detail.jsp?tab=features&amp;amp;pathtype=purchase&amp;amp;sku=3CRWE777A&quot; target=&quot;_blank&quot;&gt;3Com AirConnect 3CRWE777A&lt;/a&gt;,
que voc&amp;ecirc; pode ver na &lt;a href=&quot;http://sysd.org/stas/node/17#fig1&quot;&gt;figura 1&lt;/a&gt;:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig1&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/3crwe777a.jpg&quot; alt=&quot;3Com AirConnect 3CRWE777A&quot; border=&quot;0&quot; height=&quot;366&quot; width=&quot;520&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 1:&lt;/b&gt; 3Com AirConnect 3CRWE777A&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Diga-se de passagem, &amp;eacute; uma excelente placa, estou mais do que satisfeito com a minha escolha, por&amp;eacute;m
de cara repara-se um problema: cad&amp;ecirc; a antena? &amp;Eacute; verdade, n&amp;atilde;o tem... E nem o conector! O manual ainda
fala que o alcance &amp;eacute; hil&amp;aacute;rio.&lt;br&gt;


A&amp;iacute; que entram as modifica&amp;ccedil;&amp;otilde;es &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Para quem j&amp;aacute; fez um &lt;i&gt;mod&lt;/i&gt;
de seu micro, esse &amp;eacute; o desafio supremo. De um lado, aquelas
luzinhas neon e dezenas de ventoinhas n&amp;atilde;o fazem muita coisa;
at&amp;eacute; overclock d&amp;aacute; um ganho rid&amp;iacute;culo de 5% apenas.
Do outro lado, anexando uma antena numa placa dessas o alcance dela
expande de 300 metros at&amp;eacute; 60 km! Sim, &amp;eacute; poss&amp;iacute;vel.
Ali&amp;aacute;s, abro um par&amp;ecirc;nteses aqui: n&amp;atilde;o h&amp;aacute;
nenhuma prova cient&amp;iacute;fica disso, mas o bom senso sugere que
placas que v&amp;ecirc;m de f&amp;aacute;brica sem antena devem ser mais
sens&amp;iacute;veis. Repito: &lt;b&gt;n&amp;atilde;o sei ao certo&lt;/b&gt;,
mas a minha 3CRWE777A chega a ser at&amp;eacute; sensitiva &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


O mesmo n&amp;atilde;o ocorre para transmiss&amp;atilde;o, infelizmente... Mas
seja como for; na pr&amp;aacute;tica a minha modifica&amp;ccedil;&amp;atilde;o
artesanal compete pau-a-pau com as pr&amp;eacute;-fabricadas com conectores
banhados a outro, humildade a parte...&lt;br&gt;


&amp;Eacute; l&amp;oacute;gico que eu n&amp;atilde;o inventei fu&amp;ccedil;ar a minha
plaquinha do nada, enfim, me custou uma nota e coisa que eu menos
queria era perder mais um eletr&amp;ocirc;nico devido ao erro na interface
entre o teclado e a cadeira.&lt;br&gt;


Fui ao velho e bom &lt;a href=&quot;http://www.google.com.br/&quot; target=&quot;_blank&quot;&gt;Google&lt;/a&gt; e procurei se algu&amp;eacute;m
j&amp;aacute; havia feito a fa&amp;ccedil;anha. Para minha grande sorte, achei esses links:&lt;br&gt;




&lt;ol&gt;


&lt;li&gt;&lt;a href=&quot;http://www.fibranet.org/contenidos/wireless/3crwe777a.htm&quot; target=&quot;_blank&quot;&gt;http://www.fibranet.org/contenidos/wireless/3crwe777a.htm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.fibranet.org/contenidos/wireless/smc2632.htm&quot; target=&quot;_blank&quot;&gt;http://www.fibranet.org/contenidos/wireless/smc2632.htm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.nodomainname.co.uk/ma401/ma401.htm&quot; target=&quot;_blank&quot;&gt;http://www.nodomainname.co.uk/ma401/ma401.htm&lt;/a&gt;&lt;/li&gt;

&lt;/ol&gt;


S&amp;atilde;o relatos de anexa&amp;ccedil;&amp;atilde;o do conector de 3
&quot;diferentes&quot; modelos: 3CRWE777A da 3Com, SMC2632W da SMC e MA401 da
NetGear. Pelo que descobri, 3CRWE777A e SMC2632W s&amp;atilde;o 2 nomes
para uma coisa s&amp;oacute;.&lt;br&gt;


E no 2&lt;sup&gt;&lt;u&gt;o&lt;/u&gt;&lt;/sup&gt; link observamos um sujeito metido a neurocirurgi&amp;atilde;o fazendo o que precisamos
fazer: adicionando um conector de antena externo! Mas faz favor meu... Voc&amp;ecirc; tem essas ferramentinhas?
OK, e essas pe&amp;ccedil;as? Nem eu!&lt;br&gt;


Por&amp;eacute;m para que se desapontar; nada que uma gambiarra n&amp;atilde;o resolva! O racioc&amp;iacute;nio &amp;eacute; exatamente o mesmo
para essas 3 placas, da&amp;iacute; tento induzir que ser&amp;aacute; semelhante para toda e qualquer placa wireless.
Ali&amp;aacute;s, descaradamente aproveito as fotos dos outros no meu tutorial, eheheh!
Ent&amp;atilde;o vamos tentar fazer o m&amp;aacute;ximo com o m&amp;iacute;nimo que dispomos, basicamente precisamos:&lt;br&gt;




&lt;ol&gt;


&lt;li&gt;Abrir a placa se for PCMCIA.&lt;/li&gt;
&lt;li&gt;Inserir &lt;a href=&quot;http://sysd.org/stas/node/17#fig12&quot;&gt;capacitores&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Adicionar o &lt;a href=&quot;http://sysd.org/stas/node/17#fig7&quot;&gt;conector&lt;/a&gt; da antena.&lt;/li&gt;

&lt;/ol&gt;



A&amp;iacute; j&amp;aacute; que estamos nessa podemos aproveitar e atualizar firmware. Como diria o meu amigo John,
vamos por partes!


&lt;br&gt;

&lt;br&gt;

&lt;hr&gt;


&lt;a name=&quot;desmonta&quot;&gt;&lt;/a&gt;

&lt;h2&gt;Desmontando a placa PCMCIA:&lt;/h2&gt;



&quot;E se a minha placa n&amp;atilde;o for PCMCIA&quot;? Abra&amp;ccedil;o amigo, muita boa sorte nas suas buscas, mas eu n&amp;atilde;o fa&amp;ccedil;o
menor id&amp;eacute;ia do que voc&amp;ecirc; precisa fazer. Mas espera-se que placas PCI j&amp;aacute; tenham conectores &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Uma observa&amp;ccedil;&amp;atilde;o no m&amp;iacute;nimo curiosa: a placa
3CRWE777A &amp;eacute; um cart&amp;atilde;o PCMCIA que vem com adaptador
PCI/PCMCIA. O bacana &amp;eacute; que h&amp;aacute; um selo colando o
cart&amp;atilde;o no slot. Isso &amp;eacute;, se voc&amp;ecirc; tiver um notebook e
quiser usar a sua placa nele, ter&amp;aacute; de violar a garantia! Nem
preciso salientar que 3Com n&amp;atilde;o lan&amp;ccedil;ou driver algum para
modo PCMCIA dessa placa, mas ouvi (li) relatos de compatibilidade 100%
dos drivers da SMC2632W. Para Linux n&amp;atilde;o h&amp;aacute; esse papo, &lt;code&gt;modprobe prism_cs&lt;/code&gt; e problema resolvido, ponto!&lt;br&gt;


Agora vamos l&amp;aacute;. Nem preciso lembrar que abrir a placa viola a
garantia, mas quem liga, ali&amp;aacute;s 3CRWE777A nem se fabrica mais...
&amp;Uacute;nico problema &amp;eacute; que se voc&amp;ecirc; comprar placa nova
depois, dificilmente conseguir&amp;aacute; vender essa para algu&amp;eacute;m,
pois a &lt;a href=&quot;http://sysd.org/stas/node/17#fig13&quot;&gt;apar&amp;ecirc;ncia do produto&lt;/a&gt;
leva a desejar... &amp;Ocirc; sociedade hip&amp;oacute;crita que valoriza a
forma e n&amp;atilde;o a ess&amp;ecirc;ncia! Ningu&amp;eacute;m liga se o potencial
de cobertura aumentou de fator 200, mas &quot;ficou feio, sujo e porco&quot;!
Bom, enfim...&lt;br&gt;


H&amp;aacute; milhares de maneiras de ter o acesso a placa wireless,
inclusive o sujeito no qual me baseei corta uma janelinha no
pl&amp;aacute;stico do cart&amp;atilde;o e fu&amp;ccedil;a por meio desse
orif&amp;iacute;cio... Na boa, deve ser um m&amp;eacute;dico frustrado;
&amp;eacute; um tanto mais f&amp;aacute;cil e seguro abrir a porcaria e depois
fechar de novo!&lt;br&gt;


Vamos l&amp;aacute; ent&amp;atilde;o, o cart&amp;atilde;o PCMCIA &amp;eacute; feito de
2 metades. N&amp;atilde;o tenha d&amp;uacute;vida: enfie a chave de fenda entre
as metades:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig2&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/abrindo1.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/abrindo1.jpg&quot; alt=&quot;Abrindo a placa (passo 1)&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 2:&lt;/b&gt; Abrindo a placa (passo 1)&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


&amp;Eacute; legal que n&amp;atilde;o seja aquela chave de fenda que voc&amp;ecirc; usa para tirar pneu furado de bike, OK?
Agora com toda a delicadeza, gire a chave:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig3&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/abrindo2.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/abrindo2.jpg&quot; alt=&quot;Abrindo a placa (passo 2)&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 3:&lt;/b&gt; Abrindo a placa (passo 2)&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Pois &amp;eacute;, as duas metades do cart&amp;atilde;o PCMCIA s&amp;atilde;o &lt;b&gt;coladas&lt;/b&gt; uma na outra com uma cola gosmenta, pegajosa
e f&amp;eacute;tida. Agora &amp;eacute; s&amp;oacute; puxar as metades para lados opostos e descolar a placa das capas protetoras:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig4&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/aberto.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/aberto.jpg&quot; alt=&quot;Placa aberta&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 4:&lt;/b&gt; Placa aberta&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Talvez seja interessante nesse momento limpar a placa da cola,
sen&amp;atilde;o vira o p&amp;oacute;lo de atra&amp;ccedil;&amp;atilde;o de todo tipo
de poeira. A minha experi&amp;ecirc;ncia pessoal foi: molhar um cotonete
com &amp;aacute;lcool e depois passar o cotonete na cola espremendo-o de
tal forma que o &amp;aacute;lcool cubra a cola. A&amp;iacute; &amp;eacute;
s&amp;oacute; deixar &quot;de molho&quot; por uns minutos e tirar a cola j&amp;aacute;
mole com o mesmo cotonete. Agora vamos ver a parte da placa que nos
interessa:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig5&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/antena_interna.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/antena_interna.jpg&quot; alt=&quot;Antena interna&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 5:&lt;/b&gt; Antena interna&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


As caixinhas de metal servem para barrar interfer&amp;ecirc;ncias. Paradoxalmente elas protegem o seu computador
da placa e n&amp;atilde;o o contr&amp;aacute;rio! Agora repare os &quot;bigodinhos&quot; nos cantos. Essa &amp;eacute; a antena interna.
Grande antena hein! E os 5 buracos no centro... S&amp;atilde;o para soldar o conector! Per-fei-to!
(agora, se na sua placa n&amp;atilde;o tem, a&amp;iacute; &amp;eacute; outra hist&amp;oacute;ria, resumida numa &amp;uacute;nica palavra: &quot;fo-deu&quot;)
Espere a&amp;iacute;... Os caras fizeram a placa supondo que iam por o conector e mudaram de id&amp;eacute;ia? N&amp;atilde;o exatamente,
a mesma placa PCB se usa para montagem de diversos modelos, e modelo mais caro tem o conector. O mais
reba, ou seja, o seu, n&amp;atilde;o tem conector. E o conector &amp;eacute; t&amp;atilde;o caro assim? Infelizmente, sim. Banhado a ouro,
custa uns R$ 50 importado. Uma espl&amp;ecirc;ndida j&amp;oacute;ia para dar de presente para sua esposa/namorada/m&amp;atilde;e!!!&lt;br&gt;


Mas espere, o que &amp;eacute; isso?!&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig6&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/conector_pigtail.jpg&quot; alt=&quot;Conector pigtail &amp;quot;secreto&amp;quot; :)&quot; border=&quot;0&quot; height=&quot;149&quot; width=&quot;178&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 6:&lt;/b&gt; Conector pigtail &quot;secreto&quot; &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


N&amp;atilde;o sei ao certo, mas pelo que pesquisei &amp;eacute; um conector!
Teoricamente voc&amp;ecirc; pode adquirir um cabo &quot;pigtail&quot; que conecte
a&amp;iacute;, mas n&amp;atilde;o fa&amp;ccedil;o menor id&amp;eacute;ia aonde,
ali&amp;aacute;s n&amp;atilde;o sei nem o nome desse tipo de conector. Portanto
n&amp;atilde;o ajuda em nada. Conector raro &amp;eacute; foda.&lt;br&gt;


Ent&amp;atilde;o chegou a hora para voc&amp;ecirc; eleger um conector para lhe servir fielmente. Pigtails comerciais
terminam com conector tipo &lt;i&gt;N&lt;/i&gt;, j&amp;aacute; que antenas comerciais tamb&amp;eacute;m s&amp;atilde;o &lt;i&gt;N&lt;/i&gt;. E c&amp;aacute; entre n&amp;oacute;s,
conector &lt;i&gt;N&lt;/i&gt;, n&amp;atilde;o &amp;eacute; uma op&amp;ccedil;&amp;atilde;o econ&amp;ocirc;mica e nem compacta... &amp;Eacute; um trambolho e tanto.&lt;br&gt;


Isso &amp;eacute; do lado da antena; do lado da placa &amp;eacute; comum flagrar um conector &lt;i&gt;SMA&lt;/i&gt;. Ali&amp;aacute;s, outra
raridade no Brasil...&lt;br&gt;


Tendo em vista essas dificuldades e n&amp;atilde;o visando compatibilidade alguma dos meus produtos artesanais
com os comerciais, optei pelo velho e bom &lt;i&gt;BNC&lt;/i&gt; (Bayonet Nut Connector),
uma heran&amp;ccedil;a do tempo das LANs coaxiais. Se deseja saber mais sobre essa rel&amp;iacute;quia, vai na
&lt;a href=&quot;http://www.webopedia.com/TERM/B/BNC_connector.html&quot; target=&quot;_blank&quot;&gt;Webopedia&lt;/a&gt;.
Cultura in&amp;uacute;til a parte... S&amp;oacute; para voc&amp;ecirc; ter leve
no&amp;ccedil;&amp;atilde;o da coisa, esse &amp;eacute; o meu ajudante Super-Luper
demonstrando conectores &lt;i&gt;SMA&lt;/i&gt; e &lt;i&gt;BNC&lt;/i&gt;:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig7&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/sma_vs_bnc.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/sma_vs_bnc.jpg&quot; alt=&quot;SMA versus BNC&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 7&lt;/b&gt; SMA &lt;i&gt;versus&lt;/i&gt; BNC&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


&amp;Eacute; claro que o &lt;i&gt;BNC&lt;/i&gt; n&amp;atilde;o foi feito para as freq&amp;uuml;&amp;ecirc;ncias de 2.4 GHz que wireless utiliza, mas quebra
maior galho. H&amp;aacute; sim perdas, mas o defeito mais grave do &lt;i&gt;BNC&lt;/i&gt; &amp;eacute; que ele somente possui conector
&lt;b&gt;macho&lt;/b&gt; para colocar em cabo. Isso &amp;eacute;, para juntar dois cabos, voc&amp;ecirc; precisa desse artefato:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig8&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/juncao_bnc.jpg&quot; alt=&quot;Jun&amp;ccedil;&amp;atilde;o de 2 plugs BNC macho&quot; border=&quot;0&quot; height=&quot;216&quot; width=&quot;200&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 8:&lt;/b&gt; Jun&amp;ccedil;&amp;atilde;o de 2 plugs BNC macho&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


O que obviamente aumenta perdas. Cada metro de cabo &lt;i&gt;RG-58&lt;/i&gt;
perde aproximadamente 1 dB, mas uma jun&amp;ccedil;&amp;atilde;o de conector
perde v&amp;aacute;rios. N&amp;atilde;o sei ao certo quantos, n&amp;atilde;o
&amp;eacute; algo fenomenal mas &amp;eacute; lament&amp;aacute;vel. &lt;br&gt;

&lt;br&gt;

&lt;hr&gt;


&lt;a name=&quot;hard&quot;&gt;&lt;/a&gt;

&lt;h2&gt;Modifica&amp;ccedil;&amp;otilde;es em Hardware:&lt;/h2&gt;


Aqui est&amp;aacute; um importante ponto. Uma coisa &amp;eacute; fu&amp;ccedil;ar
com software; se deu pau d&amp;aacute; um reboot e no m&amp;aacute;ximo
voc&amp;ecirc; tem que reinstalar o Windows, agora hardware... Pense bem se
voc&amp;ecirc; quer fazer isso, mas pense bem mesmo. N&amp;atilde;o &amp;eacute;
uma advert&amp;ecirc;ncia, &amp;eacute; uma prepara&amp;ccedil;&amp;atilde;o do
esp&amp;iacute;rito para batalha &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;
Talvez seja sensato comprar uma placa j&amp;aacute; com conector, poupa um monte de tempo e preocupa&amp;ccedil;&amp;otilde;es.
Enfim, queria resumir: essa adapta&amp;ccedil;&amp;atilde;o de forma alguma pode ser considerada dif&amp;iacute;cil; &amp;eacute; trabalhoso,
leva bastante tempo e concentra&amp;ccedil;&amp;atilde;o, e o m&amp;iacute;nimo de habilidade com ferro de solda. Ali&amp;aacute;s de qualquer
maneira &amp;eacute; melhor praticar com solda antes.&lt;br&gt;


Por que aqui voc&amp;ecirc; n&amp;atilde;o ter&amp;aacute; que mexer com solda qualquer, ter&amp;aacute; que mexer com solda &lt;i&gt;SMD&lt;/i&gt;
(Surface Mount Device). Esse tipo de solda est&amp;aacute; para a
ind&amp;uacute;stria assim como a chave Phillips est&amp;aacute;. Para
n&amp;oacute;s, meros mortais, ambos s&amp;atilde;o simplesmente um saco. O
&amp;uacute;nico problema &amp;eacute; que chave Phillips qualquer um tem,
agora, esta&amp;ccedil;&amp;atilde;o de solda SMD -- n&amp;atilde;o. O que fazer?
Acoxambrar!&lt;br&gt;


&amp;Eacute; poss&amp;iacute;vel utilizar o ferro de solda comum de baixa pot&amp;ecirc;ncia (25W) para realizar solda SMD, atrav&amp;eacute;s
desse adaptador maravilhoso:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig9&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/adaptador_ferro_smd.jpg&quot; alt=&quot;Adaptador para solda SMD&quot; border=&quot;0&quot; height=&quot;139&quot; width=&quot;250&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 9:&lt;/b&gt; Adaptador para solda SMD&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


&quot;Voc&amp;ecirc; t&amp;aacute; zuando...&quot;&lt;br&gt;


T&amp;ocirc;!&lt;br&gt;


Mas esse adaptadorzinho me foi extremamente &amp;uacute;til, ele designa 3 fun&amp;ccedil;&amp;otilde;es:&lt;br&gt;




&lt;ul&gt;


&lt;li&gt;Aumenta a precis&amp;atilde;o com a ponta fina.&lt;/li&gt;
&lt;li&gt;Reduz
o calor do ferro (pe&amp;ccedil;as SMD s&amp;atilde;o mais sens&amp;iacute;veis,
tanto que a solda usada tem ponto de fus&amp;atilde;o mais baixo).&lt;/li&gt;
&lt;li&gt;Amortece os movimentos da m&amp;atilde;o.&lt;/li&gt;

&lt;/ul&gt;



Cara, isso salvou o meu dia! Fa&amp;ccedil;a j&amp;aacute; o seu pr&amp;oacute;prio:&lt;br&gt;




&lt;ol&gt;


&lt;li&gt;Pegue uns 20 cm de fio cobre de se&amp;ccedil;&amp;atilde;o 1.5 mm&amp;sup2;. Geralmente encontrado no fio terra do chuveiro da casa &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Desencape o fio, n&amp;eacute;.&lt;/li&gt;
&lt;li&gt;Enrole ele na ponta do ferro de solda &lt;b&gt;desligado&lt;/b&gt;. Enrole at&amp;eacute; ficar uma ponta de 1.5-2 cm. Ali&amp;aacute;s enrole para se segurar bem!&lt;/li&gt;
&lt;li&gt;Dobre a ponta que sobrou para frente. Agora voc&amp;ecirc; tem uma espiral de fio de cobre com uma protuber&amp;acirc;ncia, eheheh.&lt;/li&gt;
&lt;li&gt;Tire
a espiral do ferro. Com lima ou lixa ou pedra de afiar faca aponte a
ponta. Aponte o melhor que puder, tem que parecer um l&amp;aacute;pis em
miniatura com ponta agulhiforme.&lt;/li&gt;
&lt;li&gt;Agora ligue o ferro e cubra a 1 cm ponta com fin&amp;iacute;ssima camada de estanho. Isso &amp;eacute; para n&amp;atilde;o oxid&amp;aacute;-la.&lt;/li&gt;
&lt;li&gt;
Espere o ferro de solda esfriar e ponha espiral de volta. Ligue o ferro.
O cobre vai escurecer na hora. Onde tiver a gordura dos seus dedos vai formar uns tro&amp;ccedil;os carbonizados...
D&amp;ecirc; um jeito para tirar eles para que toda a espiral menos a ponta esteja uniformemente escura.
&lt;/li&gt;
&lt;li&gt;Agora com um alicate ajeite o adaptador no ferro de tal forma que a ponta do ferro encoste bem na ponta do adaptador.&lt;/li&gt;

&lt;/ol&gt;



Pronto, agora voc&amp;ecirc; est&amp;aacute; nas m&amp;atilde;os com um ferro de solda apto a soldar componentes SMD:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig10&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/soldador_smd.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/soldador_smd.jpg&quot; alt=&quot;Ferro normal de 25 Watts transformado em um SMD ;)&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 10:&lt;/b&gt; Ferro normal de 25 Watts transformado em um SMD &lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Agora que voc&amp;ecirc; est&amp;aacute; com A Ferramenta, observe a magnitude do trabalho a ser realizado:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig11&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/posicao_componentes.jpg&quot; alt=&quot;&amp;Aacute;rea das modifica&amp;ccedil;&amp;otilde;es&quot; border=&quot;0&quot; height=&quot;315&quot; width=&quot;633&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 11:&lt;/b&gt; &amp;Aacute;rea das modifica&amp;ccedil;&amp;otilde;es&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Uma pequena estorinha: como &amp;eacute; feita a montagem industrial de
eletr&amp;ocirc;nicos? Sei l&amp;aacute;, nunca vi, mas vozes do al&amp;eacute;m me
sugeriram que &amp;eacute; aproximadamente assim. &amp;Eacute; estampada uma
placa PCB. Ela tem 3-4 camadas de cobre; n&amp;atilde;o s&amp;oacute; as de
fora mas tem interiores tamb&amp;eacute;m. Da&amp;iacute; v&amp;ecirc;m um
rob&amp;ocirc; e pinga cola nos pontos que vir&amp;atilde;o componentes. Depois
v&amp;ecirc;m outro rob&amp;ocirc; com componentes e gruda eles em cima da
cola. E finalmente, v&amp;ecirc;m um terceiro rob&amp;ocirc; com solda, ele
pinga a solda do lado dos componentes nas trilhas.&lt;br&gt;


Observando-se o &quot;close&quot; da placa acima, reparamos que h&amp;aacute; 2
&quot;v&amp;atilde;os&quot; onde era para termos os capacitores. Isso &amp;eacute;, a
solda est&amp;aacute; l&amp;aacute; para a nossa sorte, mas nem a cola nem o
componente est&amp;atilde;o. S&amp;oacute; para ter id&amp;eacute;ia, o capacitor
por fora &amp;eacute; id&amp;ecirc;ntico ao indutor &lt;i&gt;L4&lt;/i&gt;. Dimens&amp;atilde;o aproximada: 1 x 0.5 mm. Assustador &lt;code&gt;:/&lt;/code&gt;&lt;br&gt;


O pensamento que surge: &quot;e se n&amp;atilde;o mexer nisso?&quot;. A&amp;iacute;
n&amp;atilde;o funciona; n&amp;atilde;o haver&amp;aacute; liga&amp;ccedil;&amp;atilde;o
el&amp;eacute;trica do r&amp;aacute;dio com a antena. &quot;Mas e se s&amp;oacute; fazer
contato que nem os malucos do &lt;a href=&quot;http://www.tomshardware.com/&quot; target=&quot;_blank&quot;&gt;Tom&#039;s Hardware&lt;/a&gt;?&quot;.
A&amp;iacute; at&amp;eacute; pode dar certo, mas pelo que pesquisei os
capacitores s&amp;atilde;o de 150 pF e est&amp;atilde;o l&amp;aacute; para proteger
o r&amp;aacute;dio. O r&amp;aacute;dio &amp;eacute; extremamente sens&amp;iacute;vel e
pode ser danificado com correntes que n&amp;atilde;o sejam da ordem de 2.4
GHz de freq&amp;uuml;&amp;ecirc;ncia. E por que 2 capacitores de 150 pF
associados e n&amp;atilde;o um s&amp;oacute; de 75 pF? A&amp;iacute; sinceramente
n&amp;atilde;o sei, mas parece ter algo a ver com lat&amp;ecirc;ncia. Enfim, os
capacitores est&amp;atilde;o l&amp;aacute; para prote&amp;ccedil;&amp;atilde;o, e 2
deles fazem isso melhor do que 1.&lt;br&gt;


Ent&amp;atilde;o voc&amp;ecirc; precisa de componentes eletr&amp;ocirc;nicos agora... Olha, tudo o que precisa est&amp;aacute; no
&lt;a href=&quot;http://www.rsbrazil.com/&quot; target=&quot;_blank&quot;&gt;RS do Brasil&lt;/a&gt;, apenas procure por seguintes
n&amp;uacute;meros: &lt;code&gt;435-1582, 111-712 e 111-734&lt;/code&gt;. Pra come&amp;ccedil;ar os capacitores s&amp;oacute; vendem 50 unidades no m&amp;iacute;nimo,
da&amp;iacute; junta o imposto para importa&amp;ccedil;&amp;atilde;o, enfim... O Brasil &amp;eacute; triste.&lt;br&gt;


Agora olhe a m&amp;aacute;gica (ou charlatanice, como bem quiser):&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig12&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/capacitores.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/capacitores.jpg&quot; alt=&quot;Capacitores adicionados&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 12:&lt;/b&gt; Capacitores adicionados&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Que bizarro, n&amp;atilde;o! Bom, a grande vantagem &amp;eacute; que funciona e os componentes voc&amp;ecirc; encontra em qualquer loja
de eletr&amp;ocirc;nica. Se voc&amp;ecirc; conseguiu os capacitores &lt;i&gt;SMD&lt;/i&gt; e/ou conector &lt;i&gt;SMA PCB-mount&lt;/i&gt;, &amp;eacute; melhor voc&amp;ecirc; seguir
os passos de altera&amp;ccedil;&amp;atilde;o da &lt;a href=&quot;http://www.fibranet.org/contenidos/wireless/smc2632.htm&quot; target=&quot;_blank&quot;&gt;SMC2632W&lt;/a&gt;.&lt;br&gt;


Se voc&amp;ecirc; teve a mesma sorte que eu, adquira apenas:&lt;br&gt;




&lt;ul&gt;


&lt;li&gt;2 capacitores cer&amp;acirc;micos de 150 pF.&lt;/li&gt;
&lt;li&gt;Uns 10 cm de cabo &lt;i&gt;RG-58&lt;/i&gt;. Provavelmente s&amp;oacute; poder&amp;aacute; comprar 1 metro &lt;code&gt;&lt;img src=&quot;misc/smileys/sad.png&quot; title=&quot;Sad&quot; alt=&quot;Sad&quot; /&gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Conector &lt;i&gt;BNC&lt;/i&gt; macho para cabo.&lt;/li&gt;

&lt;/ul&gt;



Felizmente essas pe&amp;ccedil;as s&amp;atilde;o comuns e baratas.&lt;br&gt;


Vamos prosseguir da seguinte forma: primeiro os capacitores j&amp;aacute;
que &amp;eacute; a parte mais dif&amp;iacute;cil, depois o conector no cabo e
depois cabo na placa. Percebe-se nitidamente que o capacitor &amp;eacute;
bem maior do que o recomendado, ali&amp;aacute;s ele foi feito para soldar
no furo e n&amp;atilde;o de encostar. Portanto voc&amp;ecirc; precisa adaptar
os 2 capacitores:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig12a&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/capacitor_adaptado.png&quot; alt=&quot;Capacitor adaptado&quot; border=&quot;0&quot; height=&quot;192&quot; width=&quot;128&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 12a:&lt;/b&gt; Capacitor adaptado&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Pegue o capacitor de 150 pF e corte fora as pernas dele, deixe
s&amp;oacute; toquinhos. Agora com alicate ou pin&amp;ccedil;a, dobre os tocos
para dentro e para baixo como mostrei no esquem&amp;aacute;tico tosco (==
&quot;tosquem&amp;aacute;tico&quot;) acima. Fa&amp;ccedil;a da maneira que encostando o
capacitor na placa PCMCIA as perninhas dele encostem &lt;b&gt;por fora&lt;/b&gt;
as bolinhas de solda. Cara, essa parte &amp;eacute; muito
respons&amp;aacute;vel, voc&amp;ecirc; tem que ajeitar o capacitor com
precis&amp;atilde;o de d&amp;eacute;cimos de mil&amp;iacute;metro sen&amp;atilde;o
ter&amp;aacute; problemas para soldar!&lt;br&gt;


Por falar em solda, quando dobrar as perninhas do capacitor, deixe
min&amp;uacute;sculas bolinhas de estanho nas pontas do que sobrou das
pernas do capacitor. Representei por bolinhas azul-marinho do
tosquem&amp;aacute;tico. Essas bolinhas ir&amp;atilde;o fundir com as presentes
na placa dessa forma fazendo liga&amp;ccedil;&amp;atilde;o el&amp;eacute;trica.
Ent&amp;atilde;o capricha a&amp;iacute; por que &amp;eacute; uma p&amp;eacute;ssima
id&amp;eacute;ia tentar adicionar solda al&amp;eacute;m dessa a&amp;iacute;
depois... Ah, e lembre-se de que o capacitor n&amp;atilde;o &amp;eacute; um
componente cr&amp;iacute;tico a calor, ent&amp;atilde;o trabalhe sem pressa.
Mas tamb&amp;eacute;m n&amp;atilde;o abuse a ponto de derreter o pobre
coitado...&lt;br&gt;


Agora vem outra parte cr&amp;iacute;tica. Ponha o &lt;a href=&quot;http://sysd.org/stas/node/17#fig9&quot;&gt;adaptador para solda SMD&lt;/a&gt; no ferro, esquente bem, e
cuidadosamente des-solde o &lt;a href=&quot;http://sysd.org/stas/node/17#fig11&quot;&gt;indutor &lt;i&gt;L4&lt;/i&gt;&lt;/a&gt;. Lembre-se de que ele est&amp;aacute; &lt;b&gt;colado&lt;/b&gt;.
Para tir&amp;aacute;-lo de forma segura, encoste a agulha do ferro de solda
num dos lados onde est&amp;aacute; a solda, e pressione levemente para
lado. Assim que o indutor esquentar, a solda e a cola ir&amp;atilde;o
derreter e o capacitor sair&amp;aacute;, Cuidado que o adaptador tende a
funcionar como mola, impulsionando o indutor para longe. Se cair no
ch&amp;atilde;o j&amp;aacute; era, voc&amp;ecirc; jamais encontrar&amp;aacute; pelo
pr&amp;oacute;prio tamanho da pe&amp;ccedil;a &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


&amp;Oacute;timo, agora que a &amp;aacute;rea est&amp;aacute; preparada, limpe os
capacitores e a placa da gordura das suas digitais e prepare-se para
colar os capacitores na placa. Essa &amp;eacute;, sem d&amp;uacute;vida alguma,
a parte mais foda. A solda &amp;eacute; t&amp;atilde;o pequena que n&amp;atilde;o
ir&amp;aacute; segur&amp;aacute;-los, ent&amp;atilde;o tem que ser cola.
Super-bonder &amp;eacute; perfeito. Ali&amp;aacute;s, repare que tive que colar
os capacitores orientados de forma oposta um para outro, devido
&amp;agrave; escassez do espa&amp;ccedil;o. Pingue o m&amp;iacute;nimo que puder no
capacitor e no respectivo lugar da placa. Com pin&amp;ccedil;a, encoste o
capacitor, tome maior cuidado para as perninhas dele estejam em contato
com as bolinhas de estanho na placa. Depois apenas espere a cola secar
por 1 minuto. Cole os capacitores separadamente, e n&amp;atilde;o os 2 de
uma vez.&lt;br&gt;

Bom, teoricamente, assim j&amp;aacute;
funciona; se voc&amp;ecirc; encostou bem os capacitores eles est&amp;atilde;o
em contato el&amp;eacute;trico com a placa. Mas &amp;eacute; &amp;oacute;bvio que
n&amp;atilde;o h&amp;aacute; nada melhor que solda para un&amp;iacute;-los de vez.
Agora voc&amp;ecirc; s&amp;oacute; tem de encostar a agulha quente nas
jun&amp;ccedil;&amp;otilde;es e derreter o estanho da perninha do capacitor e
da placa. Nada mais do que isso. Se faltou estanho, voc&amp;ecirc; pode
colocar um pouquinho na agulha e levar para o local da solda, mas
&amp;eacute; muito pouco mesmo e tenha maior cuidado. Um par&amp;ecirc;nteses
aqui: para mim foi mais f&amp;aacute;cil soldar a olho n&amp;uacute;; usei a
lupa somente para me guiar e ver como ficou a solda. A minha lupa
&amp;eacute; pequena demais e distorce muito a perspectiva ent&amp;atilde;o
preferi for&amp;ccedil;ar o cristalino. O problema &amp;eacute; que esse tipo
de opera&amp;ccedil;&amp;atilde;o levou umas 2 horas ent&amp;atilde;o cansei legal
a vista. Mas ainda confio mais no meu olho do que na lupa &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Beleza, agora que os capacitores est&amp;atilde;o colados e a parte mais
McGyver fora feita. Uma &amp;oacute;tima hora para plugar a placa e ver se &lt;b&gt;ainda&lt;/b&gt; funciona! Observa&amp;ccedil;&amp;atilde;o: pode colocar a placa no adaptador PCI/PCMCIA sem as metades do cart&amp;atilde;o mesmo,
por&amp;eacute;m &lt;b&gt;tome o maior cuidado&lt;/b&gt; para ver se encaixou corretamente. O cart&amp;atilde;o serve de &quot;guia&quot;, e sem ele pode encaixar
de qualquer jeito e dessa forma danificar o hardware... N&amp;atilde;o teria nada mais triste do que isso a essa altura.
O pr&amp;oacute;ximo passo &amp;eacute; o conector da antena. Como n&amp;atilde;o achei a coisa com 5 pinos para fazer
do jeito certo, soldei direto o cabo &lt;i&gt;RG-58&lt;/i&gt;:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig13&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/solda_coaxial.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/solda_coaxial.jpg&quot; alt=&quot;Solda do cabo coaxial&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 13:&lt;/b&gt; Solda do cabo coaxial&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


C&amp;aacute; entre n&amp;oacute;s, &lt;i&gt;RG-58&lt;/i&gt;
&amp;eacute; um dos piores para freq&amp;uuml;&amp;ecirc;ncias da ordem de 2.4 GHz,
mas &amp;eacute; o mais fino e f&amp;aacute;cil de ser trabalhado. Um &lt;i&gt;RGC-213&lt;/i&gt; &amp;eacute; melhor mas ele tem cerca de 1 cm de di&amp;acirc;metro! Pouco pr&amp;aacute;tico para soldar, sem falar que &amp;eacute; pouco
flex&amp;iacute;vel e pode arrancar a solda junto com as trilhas acidentalmente.&lt;br&gt;


De qualquer forma, sugiro que antes voc&amp;ecirc; solde o conector &lt;i&gt;BNC&lt;/i&gt; no cabo e depois o cabo na placa. Para
soldar o conector, recomendo &lt;a href=&quot;http://www.warchalking.com.br/cgi-bin/base/tutoriais2.444?10&quot; target=&quot;_blank&quot;&gt;esse tutorial&lt;/a&gt; que n&amp;atilde;o deixa d&amp;uacute;vidas &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Agora vamos l&amp;aacute;, como soldar o cabo coaxial nos 5 buraquinhos?
Para come&amp;ccedil;ar, s&amp;oacute; consegui soldar nos 4 por que o 5&lt;sup&gt;&lt;u&gt;o&lt;/u&gt;&lt;/sup&gt;
ficou tapado por um capacitor.&lt;br&gt;


Comece desencapando uns 3 cm da ponta do cabo coaxial. Agora puxe a
malha para fora, e separe a malha em 3 &quot;tran&amp;ccedil;as&quot;. enrole bem
essas tran&amp;ccedil;as para que fiquem como um fio s&amp;oacute;, e solda
nelas! Dessa vez sem o adaptador SMD, apenas o ferro de solda comum.&lt;br&gt;

Depois disso, desencape completamente o fio
central que tiver para fora, enrole-o e tamb&amp;eacute;m cubra de solda.
Agora dobre as 3 &quot;tran&amp;ccedil;as&quot; da malha para frente, e encurte todos
os fios at&amp;eacute; deixar 7-10 mm apenas. Note que todos esses fios
devem passar pelos buracos na placa PCB. Portanto n&amp;atilde;o abuse na
solda meu.&lt;br&gt;


E um detalhe interessante: o fio vai sair da placa &lt;b&gt;por cima&lt;/b&gt;, do mesmo lado que est&amp;atilde;o os capacitores. Eis
mais um &quot;tosquem&amp;aacute;tico&quot; para explicar o por que:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig13a&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/fio_em_pcb.png&quot; alt=&quot;Solda do fio na PCB&quot; border=&quot;0&quot; height=&quot;160&quot; width=&quot;180&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 13a:&lt;/b&gt; Solda do fio na PCB&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Isso &amp;eacute; um corte da placa PCB. Em amarelo est&amp;aacute; um tubo de
cobre o qual se encontra dentro dos buracos. Repare que ele entra
dentro da placa e termina com um &quot;chapeuzinho&quot; em cima. &amp;Eacute; nele
que se deve fazer a solda para segurar. Mas infelizmente esse anel de
cobre fica &lt;b&gt;em cima&lt;/b&gt; da placa, portanto o ideal seria soldar o fio &lt;b&gt;por baixo&lt;/b&gt;.
A&amp;iacute; entra em jogo a suprema esperteza de quem fez o adaptador
PCI/PCMCIA. A placa encaixa de tal forma que se fazer isso o cabo vai
&quot;olhar para baixo&quot;, e, tirando algumas raras exce&amp;ccedil;&amp;otilde;es, a
antena fica em cima... E outro detalhe: voc&amp;ecirc; j&amp;aacute; reparou
que os capacitores s&amp;atilde;o grandinhos... Pois &amp;eacute;, a placa
PCMCIA n&amp;atilde;o vai entrar mais no cart&amp;atilde;o; vai ter q fazer
buraco mesmo, e j&amp;aacute; que vai estragar a coisa mesmo por que
n&amp;atilde;o fazer buraco de um lado s&amp;oacute;?!&lt;br&gt;


Mas voltemos ao &quot;tosquem&amp;aacute;tico&quot;. Encaixe o fio central no buraco
central e outros 3 fios da malha nos buracos por fora. Fixe a placa e a
antena de tal forma que o cabo saia mais ou menos perpendicularmente e
solda neles! Voc&amp;ecirc; ter&amp;aacute; que encher os tubos com fios dentro
com solda. Tome um cuidado aqui: se esquentar muito as trilhas podem
desgrudar da PCB. Agora o cabo est&amp;aacute; sendo segurado por solda por
cima. Vire a placa e ponha um pouco de solda embaixo tamb&amp;eacute;m,
formando uma &quot;bola&quot; que n&amp;atilde;o permita o fio sair. &amp;Eacute;
complicadinho de explicar, ent&amp;atilde;o medite sobre o &lt;a href=&quot;http://sysd.org/stas/node/17#fig13a&quot;&gt;esquem&amp;aacute;tico&lt;/a&gt;
at&amp;eacute; cair a ficha &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Teste a placa mais uma vez; e agora voc&amp;ecirc; pode coloc&amp;aacute;-la de volta no cart&amp;atilde;o PCMCIA:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig14&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/pronto_frente.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/pronto_frente.jpg&quot; alt=&quot;Vis&amp;atilde;o frontal do &amp;quot;produto final&amp;quot; :P&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 14:&lt;/b&gt; Vis&amp;atilde;o frontal do &quot;produto final&quot; &lt;img src=&quot;misc/smileys/tongue.png&quot; title=&quot;Sticking out tongue&quot; alt=&quot;Sticking out tongue&quot; /&gt;&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Bom, esse &amp;eacute; o lado bonito da coisa, o &lt;a href=&quot;http://sysd.org/stas/node/17#fig13&quot;&gt;lado feio&lt;/a&gt;
demonstra uma porquice e tanto... N&amp;atilde;o tratei de fazer
orif&amp;iacute;cio bonitinho para sa&amp;iacute;da do cabo, inclusive por que
mesmo com o buraco o cart&amp;atilde;o n&amp;atilde;o fechava por causa dos &lt;a href=&quot;http://sysd.org/stas/node/17#fig12&quot;&gt;capacitores&lt;/a&gt;. Simplesmente arranquei fora a capinha de pl&amp;aacute;stico que juntava na capinha de metal.
Para ser mais exato, cortei as hastes laterais com tesoura e depois arranquei o que sobrou no centro com alicate.
A&amp;iacute; na parte de metal sobraram umas &quot;garras&quot; que dobrei para dentro... Nada de especial.&lt;br&gt;


Fechamos a placa com o toque final de fita isolante ou durex, e ela
est&amp;aacute; pronta para voltar para o adaptador e
conseq&amp;uuml;entemente, para seu PC! N&amp;atilde;o precisa ser muito
perspicaz para notar que a placa n&amp;atilde;o entra no PC junto com o
adaptador por causa do &lt;a href=&quot;http://sysd.org/stas/node/17#fig14&quot;&gt;cabo&lt;/a&gt;, portanto primeiro encaixe no seu micro o adaptador e nele --
o cart&amp;atilde;o PCMCIA. A&amp;iacute; &amp;eacute; s&amp;oacute; conectar o cabo &amp;agrave; antena...&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig15&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;a href=&quot;http://sysd.org/stas/files/active/0/antena_pringles.jpg&quot;&gt;&lt;img title=&quot;(clique para aumentar)&quot; src=&quot;http://sysd.org/stas/files/active/0/antena_pringles.jpg&quot; alt=&quot;Pringles Yagi Cantenna&quot; border=&quot;0&quot; height=&quot;480&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 15:&lt;/b&gt; Pringles Yagi Cantenna&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


...E meus parab&amp;eacute;ns &lt;code&gt;=D&lt;/code&gt;


&lt;br&gt;

&lt;br&gt;

&lt;hr&gt;


&lt;a name=&quot;soft&quot;&gt;&lt;/a&gt;

&lt;h2&gt;Modifica&amp;ccedil;&amp;otilde;es em Software (dispens&amp;aacute;veis!):&lt;/h2&gt;



Agora vem a parte &lt;i&gt;soft&lt;/i&gt;... Nos 2 sentidos &lt;code&gt;&lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Fiquei bastante desapontado quando baixei o &amp;uacute;ltimo update oficial de firmware da 3Com, inclusive
drivers reclamavam de bugs nessa vers&amp;atilde;o. N&amp;atilde;o vou escrever tutorial sobre atualiza&amp;ccedil;&amp;atilde;o de firmware
aqui, tanto por que algu&amp;eacute;m j&amp;aacute; escreveu com muito mais detalhes do que eu podia imaginar:&lt;br&gt;

&lt;br&gt;



&lt;a href=&quot;http://linux.junsun.net/intersil-prism/index.html&quot; target=&quot;_blank&quot;&gt;Mini-howto on Flashing Intersil Prism Chipsets&lt;/a&gt;&lt;br&gt;

&lt;br&gt;


S&amp;oacute; deixo aqui observa&amp;ccedil;&amp;otilde;es do que achei mais
interessante. Antes de mais nada, esse tutorial &amp;eacute; para placas
com chipset &lt;i&gt;Prism/2&lt;/i&gt;, &amp;eacute; o mais comum e bem-suportado. Tanto que at&amp;eacute; d&amp;aacute; para transformar seu PC num &lt;i&gt;Access Point&lt;/i&gt;
com o excelente driver &lt;a href=&quot;http://hostap.epitest.fi/&quot; target=&quot;_blank&quot;&gt;Host AP&lt;/a&gt;!&lt;br&gt;


Ali&amp;aacute;s o &lt;code&gt;hostap&lt;/code&gt; &amp;eacute; a chave para update de firmware tamb&amp;eacute;m! Ele v&amp;ecirc;m com um utilit&amp;aacute;rio que testa a compatibilidade
de dado firmware com o seu hardware:&lt;br&gt;



&lt;p&gt;
&lt;pre&gt;prism2_srec &lt;b&gt;-v&lt;/b&gt; wlan0 &amp;lt;station firmware&amp;gt;&lt;/pre&gt;
&lt;/p&gt;



Isso vai testar a compatibilidade do &quot;station firmware&quot;. Se n&amp;atilde;o der nenhum warning ou erro, prossiga com:&lt;br&gt;


&lt;p&gt;
&lt;pre&gt;prism2_srec -v &lt;b&gt;-f&lt;/b&gt; wlan0 &amp;lt;station firmware&amp;gt;&lt;/pre&gt;
&lt;/p&gt;


Existe tamb&amp;eacute;m o tal do &quot;primary firmware&quot;, &amp;eacute; um arquivo bem menor o que me sugere que &amp;eacute; menos importante &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


O que voc&amp;ecirc; n&amp;atilde;o pode esquecer &amp;eacute;: &lt;b&gt;NUNCA, JAMAIS&lt;/b&gt;
atualize o firmware prim&amp;aacute;rio sem atualizar o &quot;station&quot;. Isso
inutiliza a placa. Bom, se &amp;eacute; t&amp;atilde;o perigoso assim, mais um
motivo para ignor&amp;aacute;-lo. Ali&amp;aacute;s os bugs do meu firmware
foram resolvidos atualizando-se apenas o &quot;station&quot;. Voc&amp;ecirc; deve
estar perguntando: &quot;onde arrumo as firmwares para minha placa&quot;? Bom, na
&lt;a href=&quot;http://linux.junsun.net/intersil-prism/index.html&quot; target=&quot;_blank&quot;&gt;p&amp;aacute;gina do tutorial&lt;/a&gt;
tem umas par. Pode procurar no &lt;a href=&quot;http://www.google.com.br/&quot; target=&quot;_blank&quot;&gt;Google&lt;/a&gt; tamb&amp;eacute;m.&lt;br&gt;


O que importa &amp;eacute; que voc&amp;ecirc; pode testar firmware que bem quiser no chute mesmo, pois espera-se que o &lt;code&gt;prism2_srec&lt;/code&gt;
n&amp;atilde;o permita voc&amp;ecirc; a fazer cagada. Mas obviamente n&amp;atilde;o
h&amp;aacute; nenhuma garantia de eventuais falhas, n&amp;eacute;.&lt;br&gt;



&lt;br&gt;


Bom, esse &amp;eacute; o &lt;code&gt;hostap&lt;/code&gt; que &amp;eacute; para Linux... Mas existe o &lt;code&gt;WinUpdateFlash&lt;/code&gt;, especificamente a
vers&amp;atilde;o &lt;i&gt;0.7.0&lt;/i&gt; dele (pode ser encontrada na &lt;a href=&quot;http://linux.junsun.net/intersil-prism/index.html&quot; target=&quot;_blank&quot;&gt;p&amp;aacute;gina do tutorial&lt;/a&gt;, novamente),
que &amp;eacute; &lt;b&gt;interessant&amp;iacute;ssimo&lt;/b&gt;. Para come&amp;ccedil;ar, foi feito pelos pr&amp;oacute;prios pais do chipset &lt;i&gt;Prism/2&lt;/i&gt;.
E olha s&amp;oacute; o que ele faz:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig16&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/edit_mac1.png&quot; alt=&quot;Op&amp;ccedil;&amp;atilde;o para alterar MAC no WinUpdateFlash da Intersil&quot; border=&quot;0&quot; height=&quot;238&quot; width=&quot;378&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 16:&lt;/b&gt; Op&amp;ccedil;&amp;atilde;o para alterar MAC no WinUpdateFlash da Intersil&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


O MAC pode ser alterado para v&amp;aacute;rias coisas e por v&amp;aacute;rios caminhos&lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;&lt;br&gt;


Nos UN*X em geral pode ser usado o &lt;code&gt;ifconfig&lt;/code&gt; ou programa especializado tal como
&lt;a href=&quot;http://www.alobbs.com/macchanger/&quot; target=&quot;_blank&quot;&gt;MAC Changer&lt;/a&gt;. No Linux, com o driver
&lt;a href=&quot;http://www.linux-wlan.com/&quot; target=&quot;_blank&quot;&gt;linux-wlan-ng&lt;/a&gt;, pode-se usar o utilit&amp;aacute;rio
&lt;code&gt;wlanctl-ng&lt;/code&gt;:&lt;br&gt;



&lt;p&gt;
&lt;pre&gt;wlanctl-ng wlan0 dot11req_reset setdefaultmib=true macaddress=ba:ba:ca:fe:d1:d0&lt;br&gt;ifconfig wlan0 down hw ether ba:ba:ca:fe:d1:d0&lt;br&gt;ifconfig wlan0 up&lt;/pre&gt;
&lt;/p&gt;



&lt;br&gt;At&amp;eacute; para Windows temos o utilit&amp;aacute;rio &lt;a href=&quot;http://www.klcconsulting.net/smac/&quot; target=&quot;_blank&quot;&gt;SMAC&lt;/a&gt;
(nessa p&amp;aacute;gina tamb&amp;eacute;m ensina trocar MAC do Mac (eheheh) e dos Windows 98/ME).&lt;br&gt;


Mas todas essas altera&amp;ccedil;&amp;otilde;es s&amp;atilde;o vol&amp;aacute;teis,
isso &amp;eacute;, a placa wireless s&amp;oacute; fica &quot;despersonificada&quot;
at&amp;eacute; reboot ou reload do driver. Com &lt;code&gt;WinUpdateFlash&lt;/code&gt; a atualiza&amp;ccedil;&amp;atilde;o &amp;eacute; gravada na EEPROM, isso &amp;eacute;, o pr&amp;oacute;prio
hardware &amp;eacute; &lt;i&gt;&quot;clonado&quot;&lt;/i&gt;:&lt;br&gt;

&lt;br&gt;



&lt;a name=&quot;fig17&quot;&gt;&lt;/a&gt;

&lt;table summary=&quot;&quot; align=&quot;center&quot; border=&quot;2&quot;&gt;


&lt;tbody&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;img src=&quot;http://sysd.org/stas/files/active/0/edit_mac2.png&quot; alt=&quot;Entrada de MAC novo&quot; border=&quot;0&quot; height=&quot;139&quot; width=&quot;426&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;small&gt;&lt;b&gt;Figura 17:&lt;/b&gt; Entrada de MAC novo&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;



&lt;br&gt;


Muito legal, n&amp;atilde;o? Mas tome cuidado; MACs como &lt;code&gt;00:00:00:00:00:00&lt;/code&gt; ou &lt;code&gt;FF:FF:FF:FF:FF:FF&lt;/code&gt;
n&amp;atilde;o funcionam bem nem para software; imagine se der pau no hardware! E outro detalhezinho: o MAC novo n&amp;atilde;o
entra em vigor at&amp;eacute; que um update de &quot;station firmware&quot; seja efetuado. O procedimento do qual me utilizei foi:


&lt;ol&gt;


&lt;li&gt;Elegi um &quot;station firmware&quot; funcional no Linux com ajuda do &lt;code&gt;prism2_srec&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;No Windows, editei o MAC pelo &lt;code&gt;WinUpdateFlash&lt;/code&gt;. Serial nem mexi pois n&amp;atilde;o sei utilidade dele.&lt;/li&gt;
&lt;li&gt;Ainda no &lt;code&gt;WinUpdateFlash&lt;/code&gt;, apliquei update de firmware que escolhi no Linux.&lt;/li&gt;
&lt;li&gt;Desfibrilei o Windows com leve toque no &lt;i&gt;Ctrl-Alt-Del&lt;/i&gt; &lt;code&gt;&lt;img src=&quot;misc/smileys/lol.png&quot; title=&quot;Laughing out loud&quot; alt=&quot;Laughing out loud&quot; /&gt;&lt;/code&gt;&lt;/li&gt;

&lt;/ol&gt;


Ent&amp;atilde;o &amp;eacute; isso a&amp;iacute;, boa sorte fu&amp;ccedil;ando
wireless, muito obrigado por ter lido at&amp;eacute; aqui e desculpe a
tagarelice! &lt;code&gt;&lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;/code&gt;


&lt;br&gt;

&lt;br&gt;

&lt;hr&gt;


&lt;a name=&quot;ref&quot;&gt;&lt;/a&gt;

&lt;h2&gt;Agradecimentos/Refer&amp;ecirc;ncias/Links:&lt;/h2&gt;



Primeiramente, queria agradecer:


&lt;ul&gt;


&lt;li&gt;
Andrew S. Clapp -
pelo excelente tutorial sobre antenas para wireless:
&lt;a href=&quot;http://www.netscum.com/%7Eclapp/wireless.html&quot; target=&quot;_blank&quot;&gt;Pringles Yagi Antenna&lt;/a&gt;.
&lt;/li&gt;

&lt;li&gt;
+bERT -
primeiramente por ter paci&amp;ecirc;ncia para tirar todas as fotos e ainda melhor&amp;aacute;-las!
O cara consegue ser ao mesmo tempo hacker, phreaker, fot&amp;oacute;grafo, cineasta, m&amp;uacute;sico;
isso tudo sem considerar a sua incr&amp;iacute;vel capacidade de alimentar circuitos com
correntes bi&amp;ocirc;nicas! Valeu cara &lt;code&gt;;P&lt;/code&gt;
&lt;/li&gt;

&lt;li&gt;
Beethoven -
por um monte de dicas, sugest&amp;otilde;es e indica&amp;ccedil;&amp;otilde;es, pelo site
&lt;a href=&quot;http://www.warchalking.com.br/&quot; target=&quot;_blank&quot;&gt;Warchalking Brazil&lt;/a&gt;
e pela proposta de publicar esse tutorial l&amp;aacute; &lt;code&gt;&lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;/code&gt;
&lt;/li&gt;

&lt;li&gt;
Cpt. Kaboom &amp;amp; Brian Oblivion -
pelo &lt;a href=&quot;http://www.fibranet.org/contenidos/wireless/smc2632.htm&quot; target=&quot;_blank&quot;&gt;tutorial original&lt;/a&gt;
por&amp;eacute;m dif&amp;iacute;cil de ser realizado.
&lt;/li&gt;

&lt;li&gt;
David Taylor -
pela excelente p&amp;aacute;gina sobre
&lt;a href=&quot;http://www.nodomainname.co.uk/ma401/ma401.htm&quot; target=&quot;_blank&quot;&gt;MA401 da NetGear&lt;/a&gt;
e pela explica&amp;ccedil;&amp;atilde;o para que servem os capacitores de 150 pF.
&lt;/li&gt;

&lt;li&gt;
Jean Tourrilhes -
pelos excelentes
&lt;a href=&quot;http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html&quot; target=&quot;_blank&quot;&gt;Wireless Tools&lt;/a&gt;
e
&lt;a href=&quot;http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Overview.html&quot; target=&quot;_blank&quot;&gt;descri&amp;ccedil;&amp;atilde;o de tecnologias empregadas em wireless&lt;/a&gt;.
&lt;/li&gt;

&lt;li&gt;
Juan Miguel Taboada -
pela cole&amp;ccedil;&amp;atilde;o de
&lt;a href=&quot;http://www.fibranet.org/contenidos/wireless/3crwe777a.htm&quot; target=&quot;_blank&quot;&gt;informa&amp;ccedil;&amp;otilde;es sobre 3CRWE777A&lt;/a&gt;
da qual parti nas minhas buscas.
&lt;/li&gt;

&lt;li&gt;Muitos outros que publicaram seus resultados na Internet!&lt;/li&gt;

&lt;/ul&gt;</description>
 <category domain="http://sysd.org/stas/taxonomy/term/9">addon</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/5">hardware</category>
 <category domain="http://sysd.org/stas/taxonomy/term/34">howto</category>
 <category domain="http://sysd.org/stas/taxonomy/term/7">network</category>
 <pubDate>Thu, 20 Apr 2006 00:40:22 -0300</pubDate>
</item>
<item>
 <title>knuckle cracker</title>
 <link>http://sysd.org/stas/node/9</link>
 <description>&lt;p&gt;
This project is a response to the urge to make small changes to the big binary files. For text files, there are &lt;code&gt;diff/patch&lt;/code&gt; utilities; and for big changes, &lt;code&gt;rsync&lt;/code&gt;
is perfect. Now, if&amp;nbsp; you&#039;re sharing something like a game mod,
where you need to swap a single bit inside a huge data file (just like
in a &lt;a href=&quot;http://en.wikipedia.org/wiki/Hot_coffee&quot; target=&quot;_blank&quot;&gt;Hot Coffee Mod&lt;/a&gt; for &lt;a href=&quot;http://en.wikipedia.org/wiki/Grand_Theft_Auto:_San_Andreas&quot; target=&quot;_blank&quot;&gt;GTA San Andreas&lt;/a&gt; &lt;code&gt;&lt;img src=&quot;misc/smileys/wink.png&quot; title=&quot;Eye-wink&quot; alt=&quot;Eye-wink&quot; /&gt;&lt;/code&gt;, you&#039;re frequently forced to share the entire file. By the other side, if you need to update some
firmware glitch, why should you rewrite the entire flash chip?! So, here&#039;s my proposal.&lt;br&gt;
&lt;code&gt;bin_diff&lt;/code&gt; utility will compare two binary files and output a human-readable (and writable &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt; script file, just like this:&lt;br&gt;
&lt;pre&gt;[bb35cc23dda6737d181a63ea3203f0ff engine.dll]&lt;br&gt;50	&quot;This program must be run under Win32\xd\xa$&quot;&lt;br&gt;d60a	EB&lt;br&gt;d77b	90 90&lt;br&gt;da3f	E9&lt;br&gt;da41	1 0&lt;br&gt;ea44	90&lt;br&gt;# Patch length: 0000007A&lt;br&gt;&lt;/pre&gt;
First line contains a name of the file to be patched, and it&#039;s MD5
checksum value. Following lines start with a hex offset inside this
file, and the new byte(s) value. Note that strings with &lt;b&gt;C&lt;/b&gt;-like escaping style are supported! You may also comment each line, using the hash character (&lt;code&gt;#&lt;/code&gt;).
Several files may be patched by a single patch-script. The last string
in the last line is a hex value of the patch data length. It is useful
to make self-applicable patches.&lt;br&gt;
Then, &lt;code&gt;knuckle_cracker&lt;/code&gt; may be used to parse the
patch-script and apply modifications to the files. It will check the
MD5 checksum for each file automatically (and will refuse to patch unmatched files). You can also make the
self-applicable patches, concatenating the patch-script directly at the
end of the &lt;code&gt;knuckle_cracker&lt;/code&gt; executable (following example works on UN*X systems, for Windows box, use any hex editor, it works just the same):&lt;br&gt;
&lt;pre&gt;cat knuckle_cracker engine.bin_patch &amp;gt; engine_patcher&lt;br&gt;&lt;/pre&gt;
Both &lt;code&gt;bin_diff&lt;/code&gt; &amp;amp; &lt;code&gt;knuckle_cracker&lt;/code&gt; are very portable: I tested them on Linux, FreeBSD (gcc) &amp;amp; Win32 (Borland C/CYGWIN/MinGW/MSVC).
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;P.S. -&lt;/b&gt; all sources has DOS line endings (CRLF), use&lt;br&gt;
&lt;code&gt;&quot;unzip -aa knuckle_cracker.zip&quot;&lt;/code&gt; to extract on UN*X systems.
&lt;/p&gt;
</description>
 <category domain="http://sysd.org/stas/taxonomy/term/19">C</category>
 <category domain="http://sysd.org/stas/taxonomy/term/14">console</category>
 <category domain="http://sysd.org/stas/taxonomy/term/18">hack</category>
 <category domain="http://sysd.org/stas/taxonomy/term/11">linux</category>
 <category domain="http://sysd.org/stas/taxonomy/term/10">opensource</category>
 <category domain="http://sysd.org/stas/taxonomy/term/4">software</category>
 <category domain="http://sysd.org/stas/taxonomy/term/12">windows</category>
 <pubDate>Wed, 19 Apr 2006 02:42:33 -0300</pubDate>
</item>
</channel>
</rss>
