'===========================================================================
' Subject: SINUS SCROLL TEST                  Date: 09-05-97 (00:00)       
'  Author: Xtance Coders Alliance             Code: QB, QBasic, PDS        
'  Origin: mrsnow@freemail.nl               Packet: MISC.ABC
'===========================================================================
'             s $$$$$$$$$$ s        $$$$$ s        $$$$$ $$$$$   $$$$$
'               $$$$$$$$$$          $$$$$          $$$$$$$$$$$   $$$$$
'               $$$$$$$$$$          $$$$$          $$$$$ $$$$$   $$$$$
'               $$$$$$$$$$          $$$$$          $$$$$ $$$$$   $$$$$
'               $$$$$$$$$$          $$$$$          $$$$$ $$$$$   $$$$$
'            s  $$$$$$$$$$  s       $$$$$  s       $$$$$ $$$$$   $$$$$
'          s$$  $$$$$$$$$$  $$s     $$$$$  $$s     $$$$$ $$$$$   $$$$$
'         $$$$  $$$$$$$$$$  $$$$    $$$$$  $$$$    $$$$$ $$$$$    S$S
'        $$$$$  $$$$$$$$$$  $$$$$   $$$$$  $$$$$   $$$$$ $$$$$     .
'        $$$$$$$$$$$$$$$$$$$$$$$$   $$$$$$$$$$$$   $$$$$ $$$$$    s$s
'        .$$$$$$$$$$$$$$$$$$$$$$.   .$$$$$$$$$$.   .$$$. .$$$.   $$$$$
'
'                Xtance               Coders         Alliance
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'       This program is made by Mr. Snow from Xtance Coders Alliance and
'                                             DeeJee'z Team 1997
'
'               for All Basic Programmers in the Big Fat World
'
'       E-Mail to mrsnow@freemail.nl or djt@freemail.nl or Harryst@castel.nl
'       Subject Mr. Snow's Programming FAQ: [ Your question ]
'
'       Our pages at http://www.page4life.nl/mrsnow/
'       or at
'                    http://www.page4life.nl/xca-djt/
'
'
' Thats all, greets me..
'
'The Xtance Form Generator by Mr. Snow Again..

DECLARE SUB LeftSinusWave (Lines%)
DECLARE SUB RightSinusWave (Lines%)
DECLARE SUB SinusWave (Lines%)
DEFINT A-Z
'$DYNAMIC
RANDOMIZE TIMER


DIM SHARED SinusText(25) AS STRING * 79
DIM SHARED SinusPos(25)
CONST Delay = .1

SinusText(1) = "Sinus test version 1.0 by Mr. Snow            line: 1"
SinusText(2) = "-----------------------------------------------------"
SinusText(3) = ""
SinusText(4) = "Test it out."
SinusText(5) = ""
SinusText(6) = "Snow productions 1997, Source code by Mr. Snow"
SinusText(7) = "http://www.page4life.nl/mrsnow/"
SinusText(8) = "http://www.page4life.nl/xca-djt/"
SinusText(9) = ""
SinusText(10) = "E-Mailing"
SinusText(11) = "----------"
SinusText(12) = ""
SinusText(13) = "harryst@castel.nl"
SinusText(14) = "mrsnow@freemail.nl"
FOR z = 1 TO 9
	SinusText(14 + z) = STRING$(79, 196)
NEXT z




CALL LeftSinusWave(24)
SLEEP 1

CALL RightSinusWave(24)
SLEEP 1

REM $STATIC
SUB LeftSinusWave (Lines)
CLS
	FOR z = 1 TO Lines
		SinusPos(z) = 1
	NEXT z

DO
	FOR z = 1 TO Lines
		SinusPos(z) = SinusPos(z) + (RND * 1.5)
	NEXT z

	FOR z = 1 TO Lines
		LOCATE z, 1:
		PRINT RIGHT$(SinusText(z), SinusPos(z));
		FOR w = 1 TO 10000: NEXT w
	NEXT z
LOOP UNTIL INKEY$ <> ""

END SUB

SUB RightSinusWave (Lines)
CLS
	FOR z = 1 TO Lines
		SinusPos(z) = 1
	NEXT z

DO
	FOR z = 1 TO Lines
		SinusPos(z) = SinusPos(z) + (RND * 1.5)
	NEXT z

	FOR z = 1 TO Lines
		LOCATE z, 80 - LEN(LEFT$(SinusText(z), SinusPos(z))):
		PRINT LEFT$(SinusText(z), SinusPos(z));
		FOR w = 1 TO 10000: NEXT w
	NEXT z

LOOP UNTIL INKEY$ <> ""

END SUB
