Opened 11 years ago

Last modified 10 years ago

#45 accepted Aufgabe

PaperTape-VIewer 2013

Reported by: sven Owned by: sven
Priority: major Milestone: Next Generation-Entwicklungsprojekte
Component: Entwicklungsprojekt Severity: unbekannt
Keywords: Cc:

Description (last modified by sven)

Dieses Ticket soll den Versuch beschreiben, die alte PaperTapeSuite zu einem gesunden Schluss zu bringen. Das heißt: Nach den vielen Codeumwälzungen, die vor fünf Jahren stattgefunden haben, sollen die 6000 Zeilen C++-Code, die entstanden sind, funktionsfähig gemacht werden. In Ticket #44 sind die SVN-Revisionen etwas untersucht worden. Die TODO.txt von September 2008 beschreibt, wo das ganze stehen geblieben ist. Dann gab es mal eine TODO.htm, die 2009 ein Jahr später beschrieb, dass das ganze in einer Sackgasse endete.

Neue Features

Nach Sichtung der Features wäre folgender Projektabschluss in mehr oder minder günstiger Zeit möglich:

  • Features, die aufgegeben werden:
    • Kein eingebauter Binäreditor mehr. Das ganze darf nur Read-Only funktionieren.
    • Keine eingebaute Hardware-Interaktion (kein Stanzen/Lesen) mehr mit grafischer Benutzeroberfläche.
    • Es fliegen raus: Drag & Drop, Copy & Paste
  • Features, die repariert oder aufgegeben werden müssen:
    • Zoom/Rotations-Wahnsinn
    • Repainting klappt nicht richtig (Bei Fixing sollte Performance nicht an erster Stelle stehen)
  • Was bleibt:
    • Ein PaperTape-Viewer, der Dateien als Lochstreifen darstellen kann.
    • Export von Lochstreifen als PNG oder SVG
    • Zoom-Funktionen, frei einstellbare Farben, mehrere Fenster, Nullbytes
    • Vielleicht, wenn leicht handlebar, Maushovering mit Darstellung (nicht Manipulation!) des aktuellen Bytes, ggf. Bits.
    • Leichte Anpassbarkeit möglich für:
      • um (extern generierte standalone-) Beschriftungen anzuzeigen
      • als Visualisierung "gerade gestanzter Dateien" (à la cat datei | puncher | gtk-viewer --life)
      • Intelligente Fensterpositionierung und -dimensionierung. Praxisnahere Voreinstellungen (bei Farben und Zoom)
      • Möglichst 1:1-Darstellung eines Streifens auf Bildschirm zwecks Vergleich

Neue Libraries

Außerdem sollte der Code (mit hoffentlich wenig Anpassungen) auf Gtk3 portiert werden. Nativere Cairo-Benutzung und damit vielleicht ein Wegfallen einiger Repainting-Bugs könnten die Folge sein.

Neue Richtung

Das Programm geht damit mehr in Richtung Matlab oder gnuplot, wo eine enge Verzahnung mit dem Terminal stattfindet. Es wird stark entschlackt zugunsten eines kleinen Tools. Die Kommandozeilenverwendung sollte sich am cli-Programm orientieren.

Insgesamt ließe sich damit leicht der Weg ebnen für eine Kommandozeilen-Tool-Sammlung, die unter $HOME/bin installiert wird. Diese kann dann von einer guten Dokumentation begleitet werden.

Randbemerkung:
Dieses Ziel ist mit der Plattformunabhängigkeit/RS232 wenig vereinbar, ggf. kann man aber Perl auch unter Windows verpflichtend machen und es dann dort ähnlich verwenden. Alternative reader-Programme, die aus RS232 lesen statt vom Parallelport, passen sich dort in das Piping ein.

Change History (2)

comment:1 Changed 11 years ago by sven

  • Description modified (diff)

Gtk3 erwähnt.

comment:2 Changed 10 years ago by sven

  • Description modified (diff)
  • Owner set to sven
  • Status changed from new to accepted

Die Entwicklung wurde jetzt wieder aufgenommen. Sie wird sehr langsam vonstatten gehen (ca 1h/Woche Entwicklungszeit).

Note: See TracTickets for help on using tickets.
© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License