<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JOAT</title>
	<atom:link href="http://joat.ca/feed" rel="self" type="application/rss+xml" />
	<link>http://joat.ca</link>
	<description></description>
	<lastBuildDate>Thu, 04 Aug 2011 02:02:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>SMB Mode for Emacs</title>
		<link>http://joat.ca/smb-mode-for-emacs.html</link>
		<comments>http://joat.ca/smb-mode-for-emacs.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 02:00:46 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=22</guid>
		<description><![CDATA[A Major Mode for Emacs, to help the editing of Samba&#8217;s configuration file smb.conf It doesn&#8217;t do anything fancy, but it helps me, I hope it helps you. It&#8217;s still a work in progress, as well as being my first &#8230; <a href="http://joat.ca/smb-mode-for-emacs.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A Major Mode for Emacs, to help the editing of Samba&#8217;s configuration file smb.conf It doesn&#8217;t do anything fancy, but it helps me, I hope it helps you. It&#8217;s still a work in progress, as well as being my first non-trivial Emacs Lisp project. Comments, suggestions, and more code are welcome; email address is at the bottom of the page.</p>
<p>The original motivation for this was a mistake I made with my home Samba server: I commented out a section header without commenting out its settings. They therefore overrode the settings of the previous section, and caused all sorts of bizarre behaviour until I diagnosed the problem with {cs testparm}. If I&#8217;d had SMB Mode then, one touch of the TAB key would have shown me the problem.</p>
<p>Features</p>
<p>Currently smb-mode can do the following:</p>
<p>Auto-indent smb.conf (using TAB, &#8220;=&#8221; or &#8220;]&#8221;) and auto-pad the &#8220;=&#8221; sign.</p>
<p>Perform editing operations on sections (e.g. kill-section, comment-section, etc. &#8211; do a C-h m for full details)</p>
<p>Use outline-minor-mode appropriately to get an overview of the file.</p>
<p>Look up a parameter in the {cs smb.conf} manual page.</p>
<p>Perform parameter completion.</p>
<p>Toggle a yes/no parameter.</p>
<p>Set certain yes/no parameters explicitly (like read only) whether they exist in the current section or not.</p>
<p>Run the buffer through {cs testparm}.</p>
<p>Colour things nicely using font-lock-mode (thanks to Johnny Weare)</p>
<p>A list of parameters for completion is obtained from the manual page. Thus, on the first completion attempt, you will wait several seconds until the manpage is ready. You can avoid this by creating a &#8220;clean&#8221; version of the manual in a text file and setting the {cs smb-manual-file} variable; see {a href=#config Configure} below. In fact, if you are not running Emacs on a Unix system on which Samba is installed, you must do this or completion and manual lookup won&#8217;t work.</p>
<p>By default, SMB Mode makes the following assumptions about the format of smb.conf :</p>
<p>[section headers] jam left (not configurable)</p>
<p>options indent 3 spaces (or whatever you set {cs smb-indent} to)</p>
<p>comments start with ; or # and indent the same as the previous line (not configurable)</p>
<p>the &#8220;=&#8221; in settings always has at least one space on either side of it (set smb-pad-equal to nil to disable)</p>
<p>Download and Install</p>
<p>Download the file below, and save it somewhere in your load-path , as described below.</p>
<p>Download</p>
<p>If you have administrator privileges on your machine, or at least have access to the location where Emacs is installed, save the file in Emacs&#8217; site-lisp directory.</p>
<p>Configure</p>
<p>Place the following lines in your .emacs :</p>
<p>(autoload &#8216;smb-mode &#8220;smb-mode&#8221; &#8220;SMB Major Mode&#8221; t)<br />
(setq auto-mode-alist<br />
     (cons &#8216;(&#8220;smb\\.conf$&#8221; . smb-mode) auto-mode-alist))</p>
<p>This instructs Emacs that whenever a file ending in smb.conf is edited, smb-mode should be used. It also causes smb-mode.el to be automatically loaded when required, assuming that you installed it correctly as above.</p>
<p>Some aspects of SMB Mode&#8217;s behaviour is configurable; here are some examples of what you can put in your .emacs :</p>
<p>Change the automatic parameter indent to 5 (default is 3):</p>
<p> (setq smb-indent 5)</p>
<p>Change the string used to comment a line (default is <img src='http://joat.ca/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  [this should probably be ; or #]:</p>
<p> (setq smb-comment-str &#8220;#&#8221;)</p>
<p>Stop the automatic padding of = characters:</p>
<p> (setq smb-pad-equal nil)}</p>
<p>Use a text file as the source of the smb.conf manual page, rather than invoking smb.conf :</p>
<p> (setq smb-manual-file &#8220;~/smb-manual&#8221;)</p>
<p>Automatically enter Outline minor mode with appropriate things defined so that outlines work properly. TAB key hides and unhides sections, as well as indenting. Not recommended until you get used to things without it.</p>
<p> (setq smb-use-outline-mode t)</p>
<p>If in outline mode as above, automatically hide all bodies and just show the headers initially. Again, not recommended until you have more experience.</p>
<p> (setq smb-hide-immediate t)</p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/smb-mode-for-emacs.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cddump</title>
		<link>http://joat.ca/cddump.html</link>
		<comments>http://joat.ca/cddump.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 02:00:29 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=20</guid>
		<description><![CDATA[cddump is a Perl wrapper around &#8220;mkisofs&#8221; and &#8220;cdrecord&#8221; that behaves in a similar manner to the standard dump(8) utility. It backs up files to single or multiple CD-Rs or CD-RWs, and fully supports full, differential and incremental backups, and &#8230; <a href="http://joat.ca/cddump.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>cddump is a Perl wrapper around &#8220;mkisofs&#8221; and &#8220;cdrecord&#8221; that behaves in a similar manner to the standard dump(8) utility. It backs up files to single or multiple CD-Rs or CD-RWs, and fully supports full, differential and incremental backups, and single- or multi-session disks. It requires fairly recent versions of cdrecord and mkisofs.</p>
<p>PLEASE NOTE: Although cddump works, the code has become messy and unmaintainable. I still use it, but do not intend to develop it any further in its present form.</p>
<p>Banner&#8217;s primary goals are:</p>
<p>    a simple, single-script backup<br />
    intended for user data rather than system data &#8211; disaster recovery first requires re-install of original operating system<br />
    no special tools required for restore, once OS has been recovered (currently cddump just requires that you be able to mount the CDs, but any other tools normally available on OS may be required in future, e.g. gunzip, unzip, tar, etc.); in particular, cddump itself is *not* required, since it is presumed to have been lost in the failure </p>
<p>cddump is not:</p>
<p>    useful for backing up system directories or special files (such as /dev &#8211; although it can currently create a cpio archive of such files)<br />
    useful for very large quantities of data<br />
    useful for unattended backups<br />
cddump requires Perl version 5 (probably preinstalled on most Linux machines, with packages available for everything else).</p>
<p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p>
<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p>
<p>Bug reports and constructive comments are welcomed. </p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/cddump.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Single Button Launcher</title>
		<link>http://joat.ca/single-button-launcher.html</link>
		<comments>http://joat.ca/single-button-launcher.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 02:00:09 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=18</guid>
		<description><![CDATA[Single Button Launcher is a PalmOS application that can launch up to 5 different applications using only a single hardware button. Pressing this button and immediately releasing it launches the first application. Holding the button down for a few moments &#8230; <a href="http://joat.ca/single-button-launcher.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Single Button Launcher is a PalmOS application that can launch up to 5 different applications using only a single hardware button. Pressing this button and immediately releasing it launches the first application. Holding the button down for a few moments cycles through the other applications; release the button when you reach the one you want. It is probably most suitable for those applications that you need to refer to quickly without using the stylus (clocks, tide calculators, compasses, etc.). It is not a Hack, nor does it patch the PalmOS in any other way, it&#8217;s just another application.</p>
<p>To use, go to Buttons in Preferences and assign SBL to one of the application buttons, for example, the Memopad button. Press this button. When the SBL screen appears, assign Memopad to the first button, then any other applications of your choice to the remaining buttons.</p>
<p>Now if the Memopad button is pressed in the normal way, SBL will immediately start Memopad. Other applications can be started by holding the button down; simple as that. I told you it only used a single button. Unassigned slots are ignored and skipped.</p>
<p>SBL&#8217;s overriding <a title="ecommerce web design" href="http://marketingmedia.ca/">ecommerce web design</a> principle is speed; for this reason it does not read the application icons, and does not verify the existence of the applications it is launching until actual launch time. If an application turns out not to exist when launch is attempted, SBL returns to configuration mode. It has no built-in help, &#8220;About&#8221; screen, or menu options. This ensures that it starts and gets out of the way as quickly as possible, and should not crash when applications are no longer available (unlike some launchers we could mention). It also uses only 6K of memory.</p>
<p>FAQ:</p>
<p>Q: There are already other button launchers out there, why did you waste time making a new one?</p>
<p>A: Because they crashed in various circumstances, or because they were difficult to use with one hand, or because they were just too damn slow.</p>
<p>Q: SBL cycles through applications too fast or too slow!</p>
<p>A: The rate is just perfect (for me) using Handspring Visor hardware. Depending on your PalmOS device&#8217;s speed and button hardware, your milage may vary. If you complain vociferously enough, I may add a speed selection option.</p>
<p>Single Button Launcher is released under the Gnu General Public License. You must read the file license.txt (supplied in the download file) before using this software.</p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/single-button-launcher.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Banner</title>
		<link>http://joat.ca/banner.html</link>
		<comments>http://joat.ca/banner.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 01:59:48 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=16</guid>
		<description><![CDATA[Banner accepts a text message and scrolls it in huge letters across the PalmOS screen. While the message is scrolling, press the up or down hardware buttons to interrupt. It takes up around 64K of RAM, most of this is &#8230; <a href="http://joat.ca/banner.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Banner accepts a text message and scrolls it in huge letters across the PalmOS screen. While the message is scrolling, press the up or down hardware buttons to interrupt. It takes up around 64K of RAM, most of this is the compressed font data; the actual code size, both the UI code and the font drawing code, is very small and simple.</p>
<p>Version 0.2 is now available, with many of the features most requested by users of 0.1. Several users have reported interesting and unusual things they use Banner for; if you have one, I&#8217;d love to hear from you.</p>
<p>Change Log</p>
<p>0.1 2-Sep-2001</p>
<p>FIRST RELEASE</p>
<p>0.2 26-Sep-2001</p>
<p>bugfix: incorrect handling of non-ASCII chars at end of string caused fatal exception;</p>
<p>bugfix: international characters did not display;</p>
<p>completely reorganised GUI and increased message field screen size;</p>
<p>added menus for cut/copy/paste/about;</p>
<p>added repeat/continuous/looping option;</p>
<p>added start delay;</p>
<p>added optional beep after each message loop (since screen is usually not visible to holder)</p>
<p>Building</p>
<p>The font included in the PRC file in this distribution (&#8220;Fairfax Station&#8221;) is copyright (C) 1997-2001 Nick Curtis http://www.nicksfonts.com, and is used with permission. This font is not licensed under the GPL, and is not included in the source distribution. To build this program yourself, you must find your own font and use the supplied Perl scripts to generate the &#8220;bannerfont.rcp&#8221; file. If you do this, you must seek the permission of the font copyright owner before distributing your build.</p>
<p>Banner is released under the Gnu General Public License. You must read the file license.txt (supplied in both download files below) before using this software. </p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/banner.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Entropy Hack</title>
		<link>http://joat.ca/entropy-hack.html</link>
		<comments>http://joat.ca/entropy-hack.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 01:59:11 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=14</guid>
		<description><![CDATA[The Entropy Hack gathers randomness or &#8220;entropy&#8221; by recording system events, then uses this entropy to patch PalmOS&#8217; SysRandom() call, to generate high-quality random numbers for any application that needs them. Why Is This Useful? The PalmOS SysRandom() call is &#8230; <a href="http://joat.ca/entropy-hack.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The Entropy Hack gathers randomness or &#8220;entropy&#8221; by recording system events, then uses this entropy to patch PalmOS&#8217; SysRandom() call, to generate high-quality random numbers for any application that needs them. </p>
<p>Why Is This Useful?</p>
<p>The PalmOS SysRandom() call is a weak pseudo-random number generator. It combines an initial &#8220;seed&#8221; (often the system clock or some value derived from it is used; this is under application control) with a mathematical algorithm to generate a sequence of numbers that appear to be random. For most purposes this is fine, however in certain cases (such as encryption or password generation) it is not good enough.</p>
<p>For example, suppose you use your Palm to generate passwords, and also suppose that you maintain the physical security of your Palm, that is, it is kept completely separate from the systems it generates passwords for. If you generate passwords of 8 characters with a mix of upper or lower case letters and digits, you get 2.2E14 combinations, equivalent to roughly 47 bits.</p>
<p>HOWEVER, if an attacker knows that you generate your passwords on your Palm, and also knows which application you use to do it, your passwords may be of much poorer quality. If the application uses the SysRandom() function, it likely seeds it first. The seed value is 32 bits, so that immediately reduces your password quality to 32 bits even though it appears to be 47 bits, since the algorithm generating it is based on a 32-bit starting value. With modern desktop processors, a 32-bit quality password could be cracked in a matter of hours. Even worse, if the application derives the seed from the system clock and the attacker knows roughly when the password was generated, then he has a better idea of the seed. Knowing that the password was generated in a given 12 month period further reduces the quality to 24 bits, in a given month to 21 bits, and a week to 19 bits.</p>
<p>So, if you can bypass these weak algorithmic values entirely, your passwords should be of much better quality. If you still do not understand why this hack is useful, then you don&#8217;t need it.</p>
<p>Will Existing Applications Be Affected?</p>
<p>If the applications seed SysRandom using something like the system clock, in order to get as good quality randomness as possible, they will work fine, except that they should receive better quality randomness. If they seed it in a particular way they will not get the sequence they expected. An example of this is the game Shisensho. Each game is assigned a &#8220;code&#8221; which is just the seed for the system generator. Same code = same game. With Entropy Hack loaded, same code = different game.</p>
<p>How Does Entropy Hack Gather Entropy?</p>
<p>Entropy Hack traps user-initiated events such as character entry and pen taps and shovels data associated with each event plus an existing entropy pool through the MD5 secure one-way hash function to generate a new entropy pool. Random numbers are generated similarly &#8211; the random pool and a counter is shoveled through MD5 to give random values. Since MD5 is computationally infeasible to reverse, there is no way for an attacker to predict either previous or subsequent values based on current values, without access to the PalmOS device.</p>
<p>The Entropy Hack requires X-Master. It may also work with the original HackMaster, but this has not been tested.</p>
<p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. A copy of the version 2 license can be found in the file &#8220;license.txt&#8221; in this distribution.</p>
<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the file license.txt (supplied with this program) for more details.</p>
<p>If Entropy Hack is useful to you or especially if it misbehaves or crashes, please let me know: joat@joat.ca. In the case of a crash, a reproducible test case will be very helpful. </p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/entropy-hack.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Insidious Calculator</title>
		<link>http://joat.ca/the-insidious-calculator.html</link>
		<comments>http://joat.ca/the-insidious-calculator.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 01:58:44 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=12</guid>
		<description><![CDATA[he Insidious Calculator is a PalmOS Hack that turns every text field into a four-function calculator. It will evaluate any normal arithmetic expression containing numbers, +, -, *, /, ( and ) entered into any text field, including in the &#8230; <a href="http://joat.ca/the-insidious-calculator.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>he Insidious Calculator is a PalmOS Hack that turns every text field into a four-function calculator. It will evaluate any normal arithmetic expression containing numbers, +, -, *, /, ( and ) entered into any text field, including in the pop-up system keyboards. X-Master or HackMaster is required. X-Master is recommended &#8211; it has not been tested with HackMaster. </p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/the-insidious-calculator.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open PalmOS</title>
		<link>http://joat.ca/open-palmos.html</link>
		<comments>http://joat.ca/open-palmos.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 01:24:50 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=10</guid>
		<description><![CDATA[Open is a PalmOS application which records the opening hours of stores, restaurants, banks, or anything else that maintains regular hours over a week, such as TV shows, shortwave radio stations or flex-time systems, and shows their current &#8220;open-ness&#8221; at &#8230; <a href="http://joat.ca/open-palmos.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Open is a PalmOS application which records the opening hours of stores, restaurants, banks, or anything else that maintains regular hours over a week, such as TV shows, shortwave radio stations or flex-time systems, and shows their current &#8220;open-ness&#8221; at a glance, together with how long they will remain so.</p>
<p>Be sure to read the help menu on the Edit Place screen for tips, since there is some &#8220;hidden&#8221; functionality for copying times, and for hours that stretch over midnight.</p>
<p>English version by me (open-en.prc)</p>
<p>Deutsche Übersetzung von Jan de Cuveland (open-de.prc)</p>
<p>Tlumaczenie na jezyk polski &#8211; Tomasz Zielinski (open-pl.prc)</p>
<p>Open is released under the Gnu General Public License. You must read the file license.txt (supplied in both download files below) before using this software. </p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/open-palmos.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>No-Parts PIC Programmer driver program</title>
		<link>http://joat.ca/no-parts-pic-programmer-driver-program.html</link>
		<comments>http://joat.ca/no-parts-pic-programmer-driver-program.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 01:24:29 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=8</guid>
		<description><![CDATA[Linux/x86 software to drive the rather misleadingly-named No-Parts PIC Programmer, the cheapest and simplest programmer for Microchip&#8217;s 18-pin microcontrollers, designed by Michael Covington. The hardware is described in files in all of the distributions available below. There are lots of &#8230; <a href="http://joat.ca/no-parts-pic-programmer-driver-program.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Linux/x86 software to drive the rather misleadingly-named No-Parts PIC Programmer, the cheapest and simplest programmer for Microchip&#8217;s 18-pin microcontrollers, designed by Michael Covington. The hardware is described in files in all of the distributions available below.</p>
<p>There are lots of versions of this software floating around the &#8216;net. This is an update of the most recent Linux version converting it to command-line options instead of text menus, and incorporating support for later microcontroller models.</p>
<p>Downloads:</p>
<p>GZipped source (see subdirectory &#8220;hardware&#8221;)<br />
RPM (Redhat 8.0) (see &#8220;docs/hardware&#8221;)<br />
Source RPM (see &#8220;docs/hardware&#8221; after installation)</p>
<p>The following devices should be supported:<br />
Device	Status<br />
P16C84<br />
P16F84	Tested<br />
P16F83<br />
P16F873<br />
P16F874<br />
P16F628	Tested<br />
P16C73<br />
P16C74<br />
P16F876<br />
P16F877</p>
<p>New PICs that are pin-compatible with these may also work, and explicit support should be easy to add to the table near the top of noppp.c.</p>
<p>To program a PIC with the contents of code.hex, remove (yes, remove) the PIC from the programmer socket, remove power from the programmer, connect the programmer to your parallel port, then run a command like this:</p>
<p>noppp -d pic-type -w code.hex</p>
<p>&#8230;and follow the instructions. Make sure you select the correct PIC model, matching the model the code was assembled for. Verify the code like this:</p>
<p>noppp -d pic-type -v code.hex</p>
<p>To completely erase a PIC with flash memory (all the &#8220;F&#8221; models):</p>
<p>noppp -d pic-type -e</p>
<p>This does not securely erase a PIC, in the sense that the CIA could probably recover the data if they wanted. If that is a problem, you need to completely destroy it with a combination of high temperature and crushing force. This is not supported in software, nor do I necessarily recommend it.</p>
<p>To test your programmer hardware, fetch a voltmeter and do this:</p>
<p>noppp -t</p>
<p>For other options, such as non-default parallel port settings, use this:</p>
<p>noppp -h</p>
<p>A build-and-program in a single line for a 16F84 might look something like this:</p>
<p>gpasm code.asm &amp;&amp; noppp -d pic16f84 -w -P code.hex</p>
<p>Using this software while the parallel port driver is loaded by the kernel may cause unexpected operation.</p>
<p>The tools required to write code for PIC microcontrollers (such as assemblers, simulators and information), can be found here.</p>
<p>Not counting prototyping boards, soldering irons and other tools, the NoPPP can easily be built for less than US$20 in parts. Individual PICs can be purchased for between US$2.50 and US$10, depending on model. At the time of writing the 16F628 probably gives you the most bang for your buck, having internal and external clock options, two analog comparators, a USART and three timers for around US$3. To purchase them, the following websites are useful. I am in no way associated with any of them, nor am I attempting to endorse them:</p>
<p>BG Micro<br />
eBay Canada<br />
Digikey Canada</p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/no-parts-pic-programmer-driver-program.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kite Aerial Photography Without a Radio</title>
		<link>http://joat.ca/kite-aerial-photography-without-a-radio.html</link>
		<comments>http://joat.ca/kite-aerial-photography-without-a-radio.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 01:23:45 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[JOAT]]></category>

		<guid isPermaLink="false">http://joat.ca/?p=6</guid>
		<description><![CDATA[The mechanical parts of the problem are well-documented elsewhere, so our problem becomes how to get commands to the camera without using radio. This might seem obvious, but here are the stages: The operator enters commands into a unit on &#8230; <a href="http://joat.ca/kite-aerial-photography-without-a-radio.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The mechanical parts of the problem are <a href="http://web.archive.org/web/20031018100256/http://arch.ced.berkeley.edu/kap/equip/equip.html">well-documented elsewhere</a>, so our problem becomes how to get commands to the camera without using radio.</p>
<p>This might seem obvious, but here are the stages:</p>
<ul>
<li>The operator enters commands into a unit on the ground.</li>
<li>The ground unit transmits the commands via some medium to the flight unit which holds the camera.</li>
<li>The flight unit receives the commands, positions the camera and takes pictures.</li>
</ul>
<p>s on the ground and parabolic reflectors at the camera, like those on flashlights.</p>
<h3>Flight Unit Controller</h3>
<p>Our signalling is likely to be digital in form, so the ideal method is to use a Microcontroller. Microcontrollers are basically tiny single-chip computers, with small amounts of program and data memory, capable of interfacing directly to other electronics. I have used <a href="http://web.archive.org/web/20031219123920/http://www.microchip.com/">Microchip</a> PIC-series microcontrollers in the past for other projects, and have already build a simple <a href="http://web.archive.org/web/20031219123920/http://www.joat.ca/software/noppp.html">programmer</a> for them.</p>
<p>They can easily be interfaced to DTMF chips and IR receivers, as well as standard radio-control servos, so they should allow us to build a camera control system mechanically identical to a radio-controlled one, but without the radio receiver:</p>
<p><img src="http://web.archive.org/web/20031219123920im_/http://www.joat.ca/kite-camera-project/microcontroller-diagram.png" alt="" /></p>
<p>One great advantage of microcontrollers is that once the interface to the other hardware is in place and working, functionality can be changed just by changing the software in flash memory.</p>
<h3>Ground Unit</h3>
<p>This is the easy part. <img src='http://joat.ca/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  The easiest ground unit to construct would probably use something like a telephone keypad. Easy to interface to other logic to send digital signals in any form. Not as easy to use as a normal RC transmitter, but it would offer more sophisticated command-input possibilities. With a microcontroller at the other end, the sophistication of the commands is limited only by the software.</p>
]]></content:encoded>
			<wfw:commentRss>http://joat.ca/kite-aerial-photography-without-a-radio.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

