Category : BASIC Source Code
Archive   : QB_VGA.ZIP
Filename : VGASCROL.BAS

 
Output of file : VGASCROL.BAS contained in archive : QB_VGA.ZIP
'Text Mode Scroller Text - By Rich Geldreich 1992
'This program may not work on some VGA's.
'Sorry for no documentation, just grab yourself a VGA reference and
'you'll know what's going on. (boy, am I helpfull)
DEFINT A-Z
SCREEN 0: WIDTH 40
OUT &H3D4, 9: OUT &H3D5, INP(&H3D5) OR 128
OUT &H3D4, &H13: OUT &H3D5, 42
SplitScreen = 32
OUT &H3D4,7:OUT &H3D5,(INP(&H3D5) AND 239) OR (SplitScreen AND 256)*16
OUT &H3D4,9:OUT &H3D5,(INP(&H3D5) AND 191) OR (SplitScreen AND 512)*32
OUT &H3D4, &H18: OUT &H3D5, SplitScreen AND 255
a = INP(&H3DA): OUT &H3C0, &H10: OUT &H3C0, INP(&H3C1) OR 32
St$ = "&09Howdy strangers.... This is &8ERich Geldreich's&09 "
St$ = St$ + "simple text mode scroller. How do you like it? "
St$ = St$ + SPACE$(40) + "%7 Look!" + SPACE$(40)
St$ = St$ + "%2 I can change the speed %3too! &8E Wow! "
St$ = St$ + "Look at the pretty colors... &0F " + SPACE$(10)
St$ = St$ + "Sorry I couldn't show you more. Since PostIt! has been "
St$=St$+"banned from the quik_bas conference, I can't give out any "
St$ = St$ + "object or data files... &8C[plug mode off]&0F "
St$=St$+"That's too bad... (&8CPsst!&0F The moderator hasn't "
St$=St$+"said anything about &8BDEBUG&0F scripts yet... I wonder if "
St$ = St$ + "they're Ok?"
St$ = St$ + SPACE$(40) + "&01Thanks for watching!" + SPACE$(40)
StPos = 1
ScreenPan = 0: ScreenPanSpeed = 3
Top = 41: Bottom = 41: ScreenStart = 0
DEF SEG = &HB800
a$ = "Press escape to quit."
a = 10 * 168 + 9 * 2
FOR B = 1 TO LEN(a$): POKE a, ASC(MID$(a$, B, 1)): a = a + 2: NEXT
DO
OUT &H3D4, &HD: OUT &H3D5, (ScreenStart AND 255)
OUT &H3D4, &HC: OUT &H3D5, (ScreenStart \ 256) + 16
WAIT &H3DA, 8
OUT &H3C0, &H33: OUT &H3C0, ScreenPan
ScreenPan = ScreenPan + ScreenPanSpeed
IF ScreenPan > 7 THEN
ScreenPan = ScreenPan - 8
DO
Char = ASC(MID$(St$, StPos, 1))
IF Char = 37 THEN
ScreenPanSpeed = VAL(MID$(St$, StPos + 1, 1))
StPos = StPos + 2
ELSEIF Char = 38 THEN
Attribute = VAL("&H" + MID$(St$, StPos + 1, 2))
StPos = StPos + 3
ELSE
EXIT DO
END IF
LOOP
StPos = StPos + 1: IF StPos >= LEN(St$) THEN StPos = 1
POKE 8192 + Top * 2, Char
POKE 8192 + Top * 2 + 1, Attribute
POKE 8192 + Bottom * 2, Char
POKE 8192 + Bottom * 2 + 1, Attribute
ScreenStart = ScreenStart + 1
IF ScreenStart = 42 THEN ScreenStart = 0
Top = Top + 1
IF Top = 42 THEN Top = 0
Bottom = Bottom + 1
IF Bottom = 83 THEN Bottom = 41
END IF
LOOP UNTIL INKEY$ = CHR$(27)
WIDTH 80


  3 Responses to “Category : BASIC Source Code
Archive   : QB_VGA.ZIP
Filename : VGASCROL.BAS

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/