<?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 - Total Commander</title>
 <link>http://sysd.org/stas/taxonomy/term/26/0</link>
 <description></description>
 <language>en</language>
<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>GRP packer plugin</title>
 <link>http://sysd.org/stas/node/40</link>
 <description>The &lt;code&gt;.grp&lt;/code&gt; (group) file format, used by the game &lt;a href=&quot;http://www.3drealms.com/&quot;&gt;Duke Nukem 3D&lt;/a&gt;, is just a collection of a lot of files stored
into 1 big one. The &lt;a href=&quot;http://www.advsys.net/ken/build.htm&quot;&gt;Build engine&lt;/a&gt;, upon which Duke Nukem 3D was constructed, went on to
become one of the most successful engine in terms of number of games
released. Other notable games developed using the Build engine
include Witchaven, TekWar, Shadow Warrior, Blood, PowerSlave and
Redneck Rampage (check for a more complete list and more stuff about the Build engine at &lt;a href=&quot;http://www.icculus.org/BUILD/&quot;&gt;http://www.icculus.org/BUILD/&lt;/a&gt;). Thus, all of them use the GRP file format &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;&lt;br&gt;
So, here is the plugin I wrote for the  &lt;a href=&quot;http://www.ghisler.com/&quot;&gt;Total Commander&lt;/a&gt;
(TC for short) to access &lt;code&gt;.grp&lt;/code&gt;
files directly. It is able to list, unpack &amp;amp; pack GRP files (file
deletion is unsupported by the format itself...). By the way, this TC
plugin is the first one (and probably the only one ever &lt;img src=&quot;misc/smileys/smile.png&quot; title=&quot;Smiling&quot; alt=&quot;Smiling&quot; /&gt;) to be
written in the pure assembler language. I suppose that it&#039;s also the
smallest TC plugin, with it&#039;s 5.5 KB size! And &lt;a href=&quot;http://sysd.org/stas/files/active/0/grp_wincmd.png&quot;&gt;here&#039;s a screenshot&lt;/a&gt; showing it in action (opening the &lt;code&gt;DUKE3D.GRP&lt;/code&gt;).&lt;br&gt;
&lt;br&gt;
&lt;h3&gt;Installation:&lt;/h3&gt;
The same as for most TC packer&amp;nbsp; plugins:&lt;br&gt;
&lt;ol&gt;
  &lt;li&gt;Unzip the &lt;code&gt;grp.wcx&lt;/code&gt; to the TC directory (usually &lt;code&gt;C:\totalcmd&lt;/code&gt;)&lt;/li&gt;
  &lt;li&gt;Choose &#039;Configuration - 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 DLLs&#039;&lt;/li&gt;
  &lt;li&gt;type &lt;code&gt;grp&lt;/code&gt; as the extension&lt;/li&gt;
  &lt;li&gt;Click &#039;new type&#039;, and select the &quot;grp.wcx&quot;&lt;/li&gt;
  &lt;li&gt;Click OK&lt;br&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/21">assembler</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>
 <pubDate>Sat, 06 May 2006 00:19:20 -0300</pubDate>
</item>
</channel>
</rss>
