http://qotile.net/dotmatrix.html

<!doctype html public "-//w3c//dtd html 3.2//en">
<html>
   <head>
<META name="verify-v1" content="sJgWk+lFU7SBn7QpN6AgbSKKOmAVMEbmjBWLw8veAbQ=" />
  <link rel="stylesheet" href="http://qotile.net/style.css" type="text/css" />
  <title>
     paul_slocum_yrs_rvng
  </title>
  <meta name="GENERATOR" content="Arachnophilia 4.0">
  <meta name="FORMATTER" content="Arachnophilia 4.0">
   </head>

   <body bgcolor="#ffffff" text="#dddddd" link="#555555" vlink="#555555" alink="#555555" background="http://qotile.net/images/artnouv.gif">
<!-- background="http://qotile.net/webimages/c/29.jpg" -->
  <div align="center">
     <table width="800">
    <tr>
	<td valign="top" align="left">
	<center>
	Oo. oo. o. o .oOo. O.o.O O.o O. O.oo O.o o .. o O o.o Ooo. O o.o O . O .o o . O o.O . o o ooO.o O o. o o Oo .o o .o O o .o oOo .O o oo. o.o .o.o o .
	Oo. oo. o. o .oOo. O.o.O O.o O. O.oo O.o o .. o O o.o Ooo. O o.o O . O .o o . O o.O . o o ooO.o O o. o o Oo .o o .o O o .o oOo .O o oo. o.o .o.o o .
	o<br>O<br>. .
	</center>
	</td>
   <td width="180" valign="top">
      <table bgcolor="#AA2222" cellpadding="0" cellspacing="3" width="100%">
     <tr>
        <td bgcolor="#ffffff" align="center" background="http://qotile.net/webimages/p/3.jpg">
		<table border="0" cellpadding="0" width="100%"><tr><td align="center">
			<font size="1" color="#ffffff">c:\paul_slocum\qotile.net<br></font>
        <br><a href="http://qotile.net" style="text-decoration:none">
		<img src="http://qotile.net/images/qotile.gif" border="0" width="33"></a> . . . <br><br>
		</td></tr></table>
        </td>
     </tr>
     <tr>
        <td bgcolor="#f8f8f8" align="center">
      P R O J 3 C 7 5
        </td>
     </tr>
     <tr>
        <td bgcolor="#ffffff" align="center">
       <br>
         <a href="http://qotile.net/catalog.html" style="text-decoration:none">catalog of all my stuff</a>
         <br>
         <br>
         <a href="http://qotile.net/dotmatrix.html" style="text-decoration:none">printer synth</a>
         <br>
         <br>
         <a href="http://qotile.net/cynthcart.html" style="text-decoration:none">c=64 synth</a>
         <br>
         <br>
         <a href="http://qotile.net/colorseq.html" style="text-decoration:none">color sequencer</a>
         <br>
         <br>
         <a href="http://qotile.net/circuitboards.html" style="text-decoration:none">circuit board craft</a>
         <br>
         <br>
         <a href="http://qotile.net/2144853092.html" style="text-decoration:none">214-485-3092</a>
         <br>
         <br>
         <a href="http://qotile.net/webpage.html" style="text-decoration:none">time-lapse homepage</a>
         <br>
         <br>
        </td>
     </tr>
     <tr>
        <td bgcolor="#f8f8f8" align="center">
      A T A R I . 2 6 0 0 <br> H A C K I N G
        </td>
     </tr>
     <tr>
        <td bgcolor="#ffffff" align="center">
       <br>
      <a href="http://qotile.net/loopcart.html" style="text-decoration:none">loopcart</a>
      <br>
      <br>
      <a href="http://qotile.net/rpg.html" style="text-decoration:none">homestar rpg</a>
      <br>
      <br>
      <a href="http://qotile.net/synth.html" style="text-decoration:none">synthcart</a>
      <br>
      <br>
      <a href="http://qotile.net/sequencer.html" style="text-decoration:none">sequencer kit</a>
      <br>
      <br>
      <a href="http://qotile.net/marble.html" style="text-decoration:none">marble craze</a>
      <br>
      <br>
      <a href="http://qotile.net/musichacks.html" style="text-decoration:none">music hacks</a>
       <br>
       <br>
      <a href="http://qotile.net/minidig" style="text-decoration:none" target="proginfo">> 2600 programming</a>
       <br>
       <br>
        </td>
     </tr>
     <tr>
        <td bgcolor="#f8f8f8" align="center">
      M U S I C
        </td>
     </tr>
     <tr>
        <td bgcolor="#ffffff" align="center">
       <br>
         <a href="http://www.treewave.com" style="text-decoration:none" target="tree wave">> tree wave</a>
         <br>
         <br>
         <a href="http://qotile.net/robotmusic.html" style="text-decoration:none">my old techno</a>
         <br>
         <br>
         <a href="http://qotile.net/music.html" style="text-decoration:none">more of my music</a>
         <br>
         <br>
         <a href="http://qotile.net/videos.html" style="text-decoration:none">80's midi videos</a>
         <br>
         <br>
        </td>
     </tr>
     <tr>
        <td bgcolor="#f8f8f8" align="center">
      O T H E R
        </td>
     </tr>
     <tr>
        <td bgcolor="#ffffff" align="center">
       <br>
         <a href="http://qotile.net/index.html" style="text-decoration:none">web log</a>
         <br>
         <br>
<script type="text/javascript" language="javascript">
<!--
// Email obfuscator script 2.1 by Tim Williams, University of Arizona
// Random encryption key feature by Andrew Moulden, Site Engineering Ltd
// This code is freeware provided these four comment lines remain intact
// A wizard to generate this code is at http://www.jottings.com/obfuscator/
{ coded = "jEdg@NC77LEb7.SO9"
  key = "T6vjeBaHcQMgkKmqdD8bY7oEFSZt40J9y3wrf15OhAiRNzXGpn2LCUIVlsWxPu"
  shift=coded.length
  link=""
  for (i=0; i<coded.length; i++) {
    if (key.indexOf(coded.charAt(i))==-1) {
      ltr = coded.charAt(i)
      link += (ltr)
    }
    else {     
      ltr = (key.indexOf(coded.charAt(i))-shift+key.length) % key.length
      link += (key.charAt(ltr))
    }
  }
document.write("<a style=\"text-decoration:none\" href='mailto:"+link+"'>email</a>")
}
//-->
</script><noscript>Sorry, you need Javascript on to email me.</noscript>         <br>
         <br>
         <a href="http://qotile.net/maillist.html" style="text-decoration:none">mailing list</a>
         <br>
         <br>
         <a href="http://qotile.net/about.html" style="text-decoration:none">about/resume/contact</a>
         <br>
         <br>
         <a href="http://www.andorgallery.com" style="text-decoration:none" target="andor">> and/or gallery</a>
         <br>
         <br>
         <a href="http://www.palfloat.com" style="text-decoration:none" target="palfloat">> palfloat</a>
         <br>
			<br>
         <a href="legal.html" style="text-decoration:none">legal</a>
         <br>
			<br>
       </center>
       <br>
	</td>
     </tr>
      </table>
   </td>
	<td valign="top">
	<center>
	Oo. oo. o. o .oOo. O.o.O Oo O o. o o Oo .o o .o O o .o oOo .O o oo. o.o .o.o o . O.oo O.o o .. o O o.o Ooo. O o.o O . O .o o . O o.O . o o ooO.o O o. o o Oo 
	 O.oo O.o o .. .o o .o O o .o oOo .O o oo. o.o .o.o o ..o O.  o O o.o Ooo. O o.o O . O .o o . O o.O . o o ooO. Oo. oo. o. o .oOo. O.o.O O.o O. o
	 <br> .<br> O <br><br>o
	</center>
	</td>
   <td width="570" valign="top">
      <table width="100%" bgcolor="#aa2222" cellpadding="10" cellspacing="3">
	<tr>
        <td bgcolor="#ffffff">
       <center>-=*=-



<img src="font/d.gif">
<img src="font/o.gif">
<img src="font/t.gif">
_
<img src="font/m.gif">
<img src="font/a.gif">
<img src="font/t.gif">
<img src="font/r.gif">
<img src="font/i.gif">
<img src="font/x.gif">
_
<img src="font/s.gif">
<img src="font/y.gif">
<img src="font/n.gif">
<img src="font/t.gif">
<img src="font/h.gif">

-=*=-</center>
</td>
</tr>
</table>
<br>
<font size="3" color="#aa0000">cowboy hats.</font>
<br>
<table width="100%" bgcolor="#aa2222" cellpadding="10" cellspacing="3">
<tr>
<td bgcolor="#ffffff">
<br>

<br>

<table width="95%" bgcolor="#887766" cellpadding="1" align="center">
<tr>
<td bgcolor="#ffffff">
</td>
</tr>
<tr>
<td bgcolor="#dddddd">
<table cellpadding="10" align="center" width="100%">
<tr>
<td>

I've got an ongoing project, reprogramming the firmware in these 1985 Epson LQ-500 printers to turn
them into musical instruments.  
I originally just wanted to make a sort of homemade
<a href="http://www.till.com/articles/Mellotron/">mellotron</a>,
but it's evolved into a much deeper project.<br>
<br>
These printers (like all printers) have a computer inside that operates
all the motors and handles the parallel port, etc.  The software
that drives that computer is all on an EPROM (a reprogrammable ROM chip.)
I remove the EPROM, erase it, and reprogram it with my own software that I've
developed by reverse engineering the printer and its computer.<br>
<br>
This page covers my most recent iteration of the project which has been exhibited at 
<a href="http://newmuseum.org">The New Museum of Comtemporary Art (ny)</a>,
<a href="http://www.rum46.dk/">Rum46 Gallery</a> in Denmark 
for the <a href="http://readme.runme.org">readme software art festival</a>, 
and some other places in ny. Upcoming installation at <a href="http://transitiomx.cenart.gob.mx/index.html">transitio mx</a> in Mexico City.<br>
<br>
You can read about previous versions of the printer software on these pages:<br>
<br>
<center>
<a href="dotmatrix1.html">dot matrix 1.0 (w/mellotron)</a><br>
<br>
<a href="dotmatrix2.html">dot matrix 2.0</a><br>
</center>
<br>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br><br>
<br>
<br>
<center>
<img src="images/printer_buttons2.jpg">
</center>
<br>
<br>
<br>
<center>
<img src="font/v.gif">
<img src="font/e.gif">
<img src="font/r.gif">
<img src="font/s.gif">
<img src="font/i.gif">
<img src="font/o.gif">
<img src="font/n.gif">
_
<img src="font/3.gif">
<img src="font/dot.gif">
<img src="font/0.gif">
</center>
<br>
<br>

<table width="95%" bgcolor="#887766" cellpadding="1" align="center">
<tr>
<td bgcolor="#ffffff">
</td>
</tr>
<tr>
<td bgcolor="#dddddd">
<table cellpadding="10" align="center" width="100%">
<tr>
<td>

3.0 is an interactive installation piece.
<br>
<br>The user presses
buttons on an attached control interface to play different notes.  As the printer is played, it's also printing
a set of images that are programmed into the printer's EPROM with the software.<br>
<br>
The printer creates sound from the print head firing pins against the paper and the
vibration of the stepper motor driving the print head back and forth.
To generate different notes, the software adjusts the frequency of the printing process.
Higher pitches tend to come from the firing of the pins against the paper,
and lower pitches come from the rattle of driving the stepper motor.
<br>
<br>
The external eight-button interface plugs into the printer's font cartridge port.  Each button has an assigned pitch, and pressing
multiple buttons simultaneously activates the arpeggiator that quickly cycles through the notes you are holding down.
The software also has the ability to run without
the button interface, using the three buttons on the printer's front panel instead.
<br>
<br>
There is interaction between the images and music.  The image
dithering patterns fluctuate depending on what notes are played, and the
music's volume and rhythmic patterns change depending on the pattern 
in the current horizontal section of the image.  The printer can store about
three pages of black and white images which print in order and then repeat.
<br>
<br>
I also have an alternate version of this printer that automatically plays programmed sequences and
is used in my music and live performance.
</td>
</tr>
</table>
</td>
</tr>
</table>
<br><br>
<br>
<center>
New! Full page pigmented printout:<br> <a href="http://www.qotile.net/images/red_full.jpg">red_full.jpg (720K)</a>
<br><br>
Here's a hi-rez scan of one of a printouts:<br> <a href="http://www.qotile.net/temp/project_pics/printer_synth_printout.jpg">dot_matrix_printout.jpg (560K)</a><br><br>
<center>
<br>
<br>
<img src="images/prints1.jpg"><br><br>
<img src="images/prints2.jpg"><br><br>
<br>
<br>
<br>
<br>
<br>
<img src="font/s.gif">
<img src="font/o.gif">
<img src="font/u.gif">
<img src="font/n.gif">
<img src="font/d.gif">
<img src="font/s.gif">
</center>
<br>
<br>

<table width="95%" bgcolor="#887766" cellpadding="1" align="center">
<tr>
<td bgcolor="#ffffff">
</td>
</tr>
<tr>
<td bgcolor="#dddddd">
<table cellpadding="10" align="center" width="100%">
<tr>
<td>

<br>
<center>version 3.0 audio clips</center>
<br>
Played using the button interface: 
<a href="http://qotile.net/audio/printer_arp.mp3">printer_arp.mp3 (1.7MB)</a>
<br>
<br>
Here's a small Quicktime movie that the Fluxfactory made when it was installed there:
<a href="http://qotile.net/files/slocum.mov">movie</a>
<br>
<br>
<br>
<br>
<center>tree wave</center>
<br>
This is a song by my band <a href="http://www.treewave.com" target="tree wave">tree wave</a> 
that uses the dot matrix synth and a lot of other old computer gear.
<br>
<br>
<a href="http://qotile.net/audio/sleep_by_tree_wave.mp3">sleep_by_tree_wave.mp3 (4.2M)</a>
<br>
<br>
<br>
<br>
<center>version 2.0 audio clips</center>
<br>
These are three recordings of the printer using my new software that plays sequences
using the print head, paper roller motor, and error beeper:
<br>
<br>
<a href="audio/printer1.mp3">printer1.mp3 (400K)</a>
<br>
<br>
<a href="audio/printer2.mp3">printer2.mp3 (400K)</a>
<br>
<br>
<a href="audio/printer3.mp3">printer3.mp3 (400K)</a>
<br>
<br>
<br>
<br>
<center>version 1.0 audio clips</center>
<br>
This is a sample using both the print head and the tape/walkman
setup.This was recorded live with the printer head playing a sequence I wrote
and me playing the walkman/tape setup.  The printer head was recorded with a microphone 
and the walkman
was plugged into the mixer directly (in stereo.)  I put a light reverb on it,
but if you want to hear a dry version listen
<a href="audio/dotmatrix3.mp3">here</a>.
<br>
<br>
<a href="audio/dotmatrix_rev.mp3">dotmatrix_rev.mp3 (800K)</a>
<br>
<br>
This is a sample of just the tape based part of the instrument recorded directly
from the walkman. <br>
<br>
<a href="audio/dotmatrix.mp3">dotmatrix.mp3 (800K)</a>
<br>
<br>
This is a sample of the first sequence I got playing on the printer head.  The sample is
recorded from a microphone placed near the print head.  The audio clip makes
it seem that the print head is rather quiet, but it's actually pretty loud.
<br>
<br>
<a href="audio/matrixhead.mp3">matrixhead.mp3 (800K)</a>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br><br>

								</td>
							</tr>
						</table>
					</td>
	<td valign="top">
	<center>
	.o O.  o O o.o Ooo. O o.o O . O .o o . O o.O . o o ooO. Oo. oo. o. o .oOo. O.o.O O.o O. O.oo O.o o .. .o o .o O o .o oOo .O o oo. o.o .o.o o .
	Oo. oo. o. o .oOo. O.o.O Oo O o. o o Oo .o o .o O o .o oOo .O o oo. o.o .o.o o . O.oo O.o o .. o O o.o Ooo. O o.o O . O .o o . O o.O . o o ooO.o O o. o o Oo 
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-373739-1";
urchinTracker();
</script>	o<br>o<br><br>o.<br>.<br>.
<script type="text/javascript" src="http://technorati.com/embed/i4ghn4pjqh.js"> </script>
	</center>
					</td>
							</tr>
						</table>
					</td>
				</tr>
			</table>
			
		</div>
	</body>
</html>

