SMOLNET PORTAL home about changes
iInitial import. - vtv-tools - virtual terminal video tools	Err	bitreich.org	70
1Log	/scm/vtv-tools/log.gph	bitreich.org	70
1Files	/scm/vtv-tools/files.gph	bitreich.org	70
1Refs	/scm/vtv-tools/refs.gph	bitreich.org	70
1Tags	/scm/vtv-tools/tag	bitreich.org	70
1README	/scm/vtv-tools/file/README.md.gph	bitreich.org	70
1LICENSE	/scm/vtv-tools/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit a4a3d674601be3dc0a84e2bf111999eefa4d57b0	/scm/vtv-tools/commit/a4a3d674601be3dc0a84e2bf111999eefa4d57b0.gph	bitreich.org	70
hAuthor: Troels Henriksen <athas@sigkill.dk>	URL:mailto:athas@sigkill.dk	bitreich.org	70
iDate:   Sat, 12 Aug 2023 21:56:34 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
iInitial import.	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  A Makefile                            |      11 +++++++++++	Err	bitreich.org	70
i  A README.md                           |      17 +++++++++++++++++	Err	bitreich.org	70
i  A bin/vtvplayer                       |      31 +++++++++++++++++++++++++++++++	Err	bitreich.org	70
i	Err	bitreich.org	70
i3 files changed, 59 insertions(+), 0 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/Makefile b/Makefile	/scm/vtv-tools/file/Makefile.gph	bitreich.org	70
i@@ -0,0 +1,11 @@	Err	bitreich.org	70
i+# paths	Err	bitreich.org	70
i+PREFIX ?= /usr/local	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+all:	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+install: all	Err	bitreich.org	70
i+        @echo \# Installing executable files to ${PREFIX}/bin	Err	bitreich.org	70
i+        @mkdir -p ${PREFIX}/bin/	Err	bitreich.org	70
i+        install bin/* ${PREFIX}/bin/	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+.PHONY: all install	Err	bitreich.org	70
1diff --git a/README.md b/README.md	/scm/vtv-tools/file/README.md.gph	bitreich.org	70
i@@ -0,0 +1,17 @@	Err	bitreich.org	70
i+# Virtual Terminal Video tools	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+Tools for working with the VTV format.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+## Currently available	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+* [`vtvplayer`](vtvplayer)	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+## Format specification	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+A frame consists of 25 lines, each terminated by a newline character.	Err	bitreich.org	70
i+A file consists of frames in sequence.  This means the number of lines	Err	bitreich.org	70
i+in a file must be divisible by 25.  A line can contain arbitrary	Err	bitreich.org	70
i+terminal control codes (or just plain text).  Playing a .vtv file	Err	bitreich.org	70
i+consists of copying the frames to the screen, one after another.  The	Err	bitreich.org	70
i+delay between each frame (i.e. the frame rate) is not part of the file	Err	bitreich.org	70
i+contents, but must be somehow known from elsewhere.	Err	bitreich.org	70
1diff --git a/bin/vtvplayer b/bin/vtvplayer	/scm/vtv-tools/file/bin/vtvplayer.gph	bitreich.org	70
i@@ -0,0 +1,31 @@	Err	bitreich.org	70
i+#!/bin/sh	Err	bitreich.org	70
i+#	Err	bitreich.org	70
i+# Play a single vtv file in an infinite loop.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+trap 'clear; tput cvvis; exit 0' SIGINT	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+if [ $# -lt 1 ];	Err	bitreich.org	70
i+then	Err	bitreich.org	70
i+    echo "Usage: $0 ADDIR" >&2	Err	bitreich.org	70
i+    exit 1	Err	bitreich.org	70
i+    year="$(date +%Y)"	Err	bitreich.org	70
i+fi	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+adfile="$1"	Err	bitreich.org	70
i+frametime=0.05	Err	bitreich.org	70
i+framelines=25	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+tput civis	Err	bitreich.org	70
i+clear	Err	bitreich.org	70
i+i=0	Err	bitreich.org	70
i+nframes=$(echo "$(wc -l < "${adfile}")" / "$framelines" | bc)	Err	bitreich.org	70
i+while true; do	Err	bitreich.org	70
i+    tput cup 0 0	Err	bitreich.org	70
i+    tail -n +$(echo "(1+${i} % ${nframes} * ${framelines})" | bc) "$adfile" | head -n $framelines	Err	bitreich.org	70
i+    i=$(($i + 1))	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+    userinput=""	Err	bitreich.org	70
i+    sleep $frametime	Err	bitreich.org	70
i+done	Err	bitreich.org	70
i+	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/vtv-tools/commit/a4a3d674601b...
Content-Typetext/plain; charset=utf-8