Index: /paper-tape/in-a-nutshell.htm =================================================================== --- /paper-tape/in-a-nutshell.htm (revision 41) +++ /paper-tape/in-a-nutshell.htm (revision 41) @@ -0,0 +1,68 @@ + +
+ +Der folgende Text wurde als Entwurf für eine Darstellung in der offiziellen +Homepage im September 2009 geschrieben
+ +Das Ziel des Paper Tape Projects ist es, Lochstreifen auf heutigen +Computern verarbeiten zu können, d.h. Lochstreifen stanzen, einlesen und "bearbeiten" +zu können. Dazu wurden vergleichsweise neue Lochstreifengeräte verwendet, die +bereits über eine parallele Schnittstelle (Centronics) angesprochen werden, +auf der sie auf TTL-Niveau kommunizieren können. Leider sind diese Geräte aber +noch nicht neu genug, um dem Centronics-Quasi-Standard der 1970er-Jahre zu +entsprechen (erst 1994 als IEEE-1284 standarisiert). Deswegen kann man nicht +einfach ein gewöhnliches paralleles Druckerkabel verwenden, um einen PC mit +dem Lochstreifengerät zu verwenden.
+ +Die erste Hürde, die genommen werden musste, war demnach das Herstellen eines +passend verdrahteten Kabels, sodass nun ein Lochstreifengerät mit dem +Parallelport-Ausgang des Computers verbindet werden konnte ("LPT"-Anschluss, +der vor wenigen Jahren noch an jedem Computer vorzufinden war). Freilich +fing damit erst die eigentliche Arbeit an, die darin bestand, eine Kommunikation +herzustellen, schließlich entspricht auch das zeitabhängige Pegelverhalten der +Geräte nicht dem genannten Standard.
+ +Die Entwicklung dieser Treiber fand zunächst unter dem freien Betriebssystem +GNU/Linux statt, welches sich wegen dem Open Source-Kernel hervorragend zur +Treiberprogrammierung anbietet. Der Einfachheit halber wurde allerdings zu einem +Userspace-Treiber, aufbauend auf dem ppdev-Framework des Linux 2.6-Kernels, +gegriffen. Auf Basis des ppdev-Moduls kann in der Programmiersprache C mit wenig +Aufwand der Parallelport des Computers von einem ganz normalen Anwenderprogramm +vollständig gesteuert werden.
+ +Der Parallelport besteht aus drei 8-bit-Hardwareregistern: Ein bidirektionales +Datenregister, ein Steuerregister und einem Signalregister. Da Lochstreifen aus 8-bit +breiten Wörtern (Oktetts) bestehen, drängt sich regelrecht auf, diese acht Bit +auf das Datenregister zu legen und im Computer direkt in einem Byte zu speichern. +Die Steuer- und Signalleitungen ermöglichen eine Takt- d.h. Interrupt-gesteuerte +Kommunikation mit den Lochstreifengeräten (Der Parallelport verfügt über ein +Interrupt-fähiges Bit im Statusregister, die Strobe). Die verwendeten Geräte stanzen etwa 80 +Zeichen/Sekunde und lesen 250 Zeichen/Sekunde, sodass selbst langsame +Personalcomputer die Protokollemulation mühelos bewerkstelligen können.
+ +Wie bereits gesagt, stellt sich bei Lochstreifen nicht die Frage der Modellierung, +da Oktetts als Bytes auf PC-Architekturen +gerade die kleinste adressierbare Speichereinheit darstellen und somit als +nativer Datentyp verarbeitet werden. Eine 250 Byte lange Binärdatei stellt somit +genau einen 250 Zeichen langen Lochstreifen dar. Dadurch ist die computerinterne +Verarbeitung von Lochstreifen durch Unix-Kommandozeilenwerkzeuge oder grafische +Werkzeuge wie Hex-Editoren sehr leicht möglich. Zur Vereinfachung des Arbeitsflusses +wurden zunächst einfache Werkzeuge in der Scriptsprache Perl geschrieben, mit denen +etwa auch Beschriftungen von Lochstreifen vorgenommen werden konnten. Später entstand +ein grafischer Editor, mit dem Binärdateien direkt als Lochstreifen visualisiert +bearbeitet werden können. Dieser in der Programmiersprache C mit Gtk+ programmierter +"Paper Tape Editor" wurde ausgebaut zu der "Paper Tape Suite", mit der nun auch unter +Windows Lochstreifen eingelesen, bearbeitet, abgespeichert und ausgestanzt werden +können. Auf diese Weise sind alle nur denkbaren Aufgaben mit Lochstreifen dank +der Vielseitigkeit von Computern möglich.
+ +Weitere Details zu diesem Projekt mit umfassenden Hintergrundinformationen gibt es +auf der englischsprachigen Homepage, The Paper +Tape Project. Alle Quelltexte wurden unter einer Open Source-Lizenz veröffentlicht +und können im technikum29.de Subversion-Repositorium eingesehen werden.
Index: /paper-tape/web-frontend/README.htm =================================================================== --- /paper-tape/web-frontend/README.htm (revision 41) +++ /paper-tape/web-frontend/README.htm (revision 41) @@ -0,0 +1,56 @@ + + ++ This is a web frontend to the visualisation subproject. It uses + PHP and Ajax and is capable to render files up to several + Megabytes (afterwards the generated graphic files get very, very + huge). Like all the visualisation programs, it is highly + configurable (every detail you can change at the LOCHSTREIFEN + object can be changed in the HTML form). Thus the + HTML form is quite complex, but very friendly to DAUs + (a german expression for "PEBKAC") due to the ability to fold + the huge form. It should be running stable but hasn't + really been tested so far. Thanks to caching every generated image + it should even stand very much rendering requests. + +
Work is shared between two files:
+Sven Köppel, 19.07.2008 19:30 Index: per-tape/web-frontend/README.txt =================================================================== --- /paper-tape/web-frontend/README.txt (revision 40) +++ (revision ) @@ -1,19 +1,0 @@ - - The Paper Tape Project -- The Visualisation Web frontend project - ================================================================ - - This is a web frontend to the visualisation subproject. It uses - PHP and Ajax and is capable to render files up to several - Megabytes (afterwards the generated graphic files get very, very - huge). Like all the visualisation programs, it is highly - configurable (every detail you can change at the LOCHSTREIFEN - object can be changed in the HTML form). Thus the - HTML