This software was developed to interface with a chroma key generator; it will display text read from a text file as a scrolling marque over other video footage. Below is the source code:
spd = 1
beg0:
SCREEN 12
editor = 0
CLS
po = 1
PRINT "Press [SPACE] to edit the message (only works if you have edit.com in folder.)"
PRINT "Press [ENTER] to reload the marquee message file."
PRINT "Press [ESC] to reposition the marquee or exit to system."
PRINT "Please donate if you find this program useful. drnothing.com"
LOCATE 15, 15
INPUT "Position 1-28 (0=exit)?", po
IF po = 0 THEN PRINT "Marq 1.0 developed by Dr. Nothing (drnothing.com) 1 Nov. 2012. Please donate if you like!": SLEEP 5: SYSTEM
IF po < 1 THEN po = 28
IF po > 28 THEN po = 28
LOCATE 16, 15
INPUT "Auto load new changes to message? (Y/N)>", auto$
auto = 0
IF auto$ = "1" OR UCASE$(auto$) = "Y" THEN auto = 1
SHELL "dir/b > file.dat"
OPEN "file.dat" FOR INPUT AS #1
ck = 0
DO
IF NOT (EOF(1)) THEN INPUT #1, chk$
IF LCASE$(chk$) = "marq.txt" THEN ck = 1
IF LCASE$(chk$) = "edit.com" OR LCASE$(chk$) = "edit.exe" THEN editor = 1
LOOP UNTIL EOF(1)
CLOSE #1
IF editor = 0 THEN PRINT "Editor not found. You need edit.com in your program folder.": PRINT "You will need to edit marq.txt outside this program or delete the marq.txt to start fresh."
SLEEP 2
beg:
SCREEN 12
IF ck = 1 THEN
OPEN "marq.txt" FOR INPUT AS #2
IF NOT (EOF(2)) THEN INPUT #2, marq$
CLOSE #2
END IF
IF ck = 0 THEN
INPUT "What is your marquee message?>", msg$
SHELL "echo " + msg$ + " >> marq.txt"
ck = 1
GOTO beg:
END IF
SCREEN 12
COLOR 15
CLS
c = 0
spc$ = "................................................................................"
marquee$ = spc$ + marq$
l = LEN(marquee$)
LINE (0, 0)-(640, 480), 2, BF
DO
c = c + 1
IF c >= l THEN
c = 1
IF auto = 1 THEN GOTO beg
END IF
mm$ = MID$(marquee$, c, 80)
LOCATE po, 1
PRINT spc$
LOCATE po, 1
PRINT mm$
FOR i = 1 TO spd * 25000
NEXT i
SELECT CASE INKEY$
CASE "+", "=": IF spd > 1 THEN spd = spd - 1
CASE "_", "-": IF spd < 30 THEN spd = spd + 1
CASE CHR$(27): GOTO beg0
CASE CHR$(32): IF editor = 1 THEN SHELL "edit marq.txt": GOTO beg
CASE CHR$(13): GOTO beg
END SELECT
LOOP