diff --git a/Demo/sgi/video/README b/Demo/sgi/video/README
index 85855a9..335a108 100644
--- a/Demo/sgi/video/README
+++ b/Demo/sgi/video/README
@@ -26,7 +26,10 @@
 format (in August 1992), Sjoerd added an interface to the video
 library to Python (sv) and Guido wrote Vrec.py (based upon a
 still frame grabber by Sjoerd, in turn based upon SGI demo code in C)
-to record a movie using it.
+to record a movie using it.  Vrec was soon followed by modernized
+versions of the other programs (Vinfo, Vplay, Vtime) and an
+interactive editor (Vedit).  Finally, VFile was rewritten for more
+modularity, functionality and robustness.
 
 	Guido van Rossum
 	Jack Jansen
@@ -36,6 +39,61 @@
 Overview of files
 -----------------
 
+cmif-film.ms	description of the CMIF video file format
+
+
+These are programs with a command line interface:
+
+Vrec.py		record video movies using the Indigo video library and
+		board
+
+Vplay.py	play video movies
+
+Vinfo.py	show statistics on movies
+
+Vtime.py	(unrelated to vtime!!!) Copy a video file,
+		manipulating the time codes (e.g. faster/slower, or
+		regenerate time codes, or drop frames too close apart)
+
+Vedit.py	interactive video editing program
+
+
+These modules are used by the above programs:
+
+VFile.py	classes that read and write CMIF video files
+
+Viewer.py	two viewer classes used by Vedit
+
+
+The following are C programs, either for efficiency or because they
+need to link with a C library:
+
+squash.c	make a movie smaller by averaging pixels
+		usage: squash factor [bits] <moviefile >newmoviefile
+		factor		x and y compression factor
+		bits		#bits left per sample in result (default 8)
+
+squash2.c	make a movie smaller by dropping pixels
+		usage: squash2 factor <moviefile >newmoviefile
+		factor		x and y compression factor
+
+tomono.c	like squash2 but outputs a monochrome movie
+
+v2i.c		convert the first frame of a movie file to SGI .rgb format
+		link with -limage
+
+i2v.c		convert an rgb file to "lrectwrite" format (this was
+		used one time by the CMIF editor)
+
+
+These programs are obsolete, but kept around for sentimental reasons.
+Most either don't work any more because they don't use VFile and hence
+haven't followed the frequent changes in the CMIF video file format;
+or they are dependent upon hardware we don't have (SGI's previous
+generation framegrabber).  Except for cam.py / tv.py, their
+functionality is present in the suite of programs whose name begins
+with 'V' listed above.
+
 cam.py		network real-time tv broadcast; see tv.py
 		usage: cam [packfactor [host]]
 		specifying 'all' for host broadcasts
@@ -54,11 +112,6 @@
 		p	pause recording (record single frame if paused)
 		ESC	quit
 
-Vrec.py		record video movies using the Indigo video library and
-		board
-
-colorsys.py	color conversions, used by video
-
 statit.py	various statistics operations on movie files
 
 syncaudio.py	record audio synchronized with camcorder -a
@@ -84,43 +137,12 @@
 		soundfile	default is none (no sound)
 		skipbytes	byte offset in soundfile where sound starts
 
-Vplay.py	similar but more modern, using VFile.py
-
 vinfo.py	print summary of movie file(s)
 		usage: vinfo [-d] moviefile ...
 		-d		print delta times (default: print abs times)
 
-Vinfo.py	similar but more modern, using VFile.py
-
 vpregs.py	definition of VP registers
 
 vtime.py	virtual time module imported by syncaudio.py and camcorder.py
 
-Vtime.py	(unrelated to vtime!!!) Copy a video file,
-		manipulating the time codes (e.g. faster/slower, or
-		regenerate time codes, or drop frames too close apart)
-
-Vedit.py	interactive video editing program
-
-Viewer.py	two viewer classes used by Vedit
-
-
-The following are C programs, either for efficiency or because they
-need to link with a C library:
-
-squash.c	make a movie smaller by averaging pixels
-		usage: squash factor [bits] <moviefile >newmoviefile
-		factor		x and y compression factor
-		bits		#bits left per sample in result (default 8)
-
-squash2.c	make a movie smaller by dropping pixels
-		usage: squash2 factor <moviefile >newmoviefile
-		factor		x and y compression factor
-
-tomono.c	like squash2 but outputs a monochrome movie
-
-v2i.c		convert the first frame of a movie file to SGI .rgb format
-		link with -limage
-
-i2v.c		convert an rgb file to "lrectwrite" format (this was
-		used one time by the CMIF editor)
+colorsys.py	color system conversions (now part of std python lib)
diff --git a/Demo/sgi/video/Vinfo.py b/Demo/sgi/video/Vinfo.py
index 341ddbf..cfda32a 100755
--- a/Demo/sgi/video/Vinfo.py
+++ b/Demo/sgi/video/Vinfo.py
@@ -65,13 +65,7 @@
 		sys.stderr.write(filename + ': EOF in video file\n')
 		return 1
 
-	print 'File:    ', filename
-	print 'Version: ', vin.version
-	print 'Size:    ', vin.width, 'x', vin.height
-	print 'Pack:    ', vin.packfactor, '; chrom:', vin.chrompack
-	print 'Bits:    ', vin.c0bits, vin.c1bits, vin.c2bits
-	print 'Format:  ', vin.format
-	print 'Offset:  ', vin.offset
+	vin.printinfo()
 
 	if quick:
 		vin.close()
diff --git a/Demo/sgi/video/Vplay.py b/Demo/sgi/video/Vplay.py
index 5f02ef1..facd20f 100755
--- a/Demo/sgi/video/Vplay.py
+++ b/Demo/sgi/video/Vplay.py
@@ -15,6 +15,7 @@
 	print '-d         : write some debug stuff on stderr'
 	print '-l         : loop, playing the movie over and over again'
 	print '-m delta   : drop frames closer than delta msec (default 0)'
+	print '-n         : don\'t wait after each file'
 	print '-q         : quiet, no informative messages'
 	print '-r delta   : regenerate input time base delta msec apart'
 	print '-s speed   : speed change factor (default 1.0)'
@@ -137,13 +138,7 @@
 		return 1
 
 	if not quiet:
-		print 'File:    ', filename
-		print 'Version: ', vin.version
-		print 'Size:    ', vin.width, 'x', vin.height
-		print 'Pack:    ', vin.packfactor, '; chrom:', vin.chrompack
-		print 'Bits:    ', vin.c0bits, vin.c1bits, vin.c2bits
-		print 'Format:  ', vin.format
-		print 'Offset:  ', vin.offset
+		vin.printinfo()
 	
 	gl.foreground()
 
@@ -211,6 +206,8 @@
 			time.millisleep(100)
 
 	tin = 0
+	toffset = 0
+	oldtin = 0
 	told = 0
 	nin = 0
 	nout = 0
@@ -247,11 +244,18 @@
 			except EOFError:
 				break
 		nin = nin+1
+		if tin+toffset < oldtin:
+			print 'Fix reversed time:', oldtin, 'to', tin
+			toffset = oldtin - tin
+		tin = tin + toffset
+		oldtin = tin
 		if regen: tout = nin * regen
 		else: tout = tin
 		tout = int(tout / speed)
 		if tout - told < mindelta:
 			nskipped = nskipped + 1
+			if not threading:
+				vin.skipnextframedata(size, csize)
 		else:
 			if not threading:
 				try:
diff --git a/Demo/sgi/video/vcopy.py b/Demo/sgi/video/vcopy.py
index 1842094..fe012ea 100755
--- a/Demo/sgi/video/vcopy.py
+++ b/Demo/sgi/video/vcopy.py
@@ -10,7 +10,7 @@
 	print 'Frame', iframe, ': t =', time
 
 def usage():
-	sys.write('usage: vcopy infile outfile\n')
+	sys.stderr.write('usage: vcopy infile outfile\n')
 	sys.exit(2)
 
 def help():
