home *** CD-ROM | disk | FTP | other *** search
- 10 REM **********************
- 20 REM * LETTER.SCROLL *
- 30 REM * BY ROBERT DEVINE *
- 40 REM * COPYRIGHT (C) 1984 *
- 50 REM * BY MICROSPARC, INC *
- 60 REM * LINCOLN, MA. 01773 *
- 70 REM **********************
- 80 HIMEM: 32768: REM SET HIMEM TO PROTECT BLOCK SHAPE TABLE
- 90 PRINT CHR$(4)"BLOAD BLOCK.ROUTINES,A$9076": CALL 37799: REM LOAD BLOCK ROUTINES/SET UP YTABLE POINTERS
- 100 PRINT CHR$(4)"BLOAD BIG.LETTERS"
- 110 PRINT CHR$(4)"BLOAD SET.SHAPE": REM ASC TO SHAPE ADDRESS ROUTINE
- 120 GOSUB 320: REM SET UP TABLE ADDRESS ARRAY
- 130 POKE 252,170: POKE 253,182: POKE 254,41: REM SET VT,VB, AND HR THAT WE WILL SCROLL
- 140 HOME : VTAB 22: PRINT "** COPYRIGHT 1984 BY MICROSPARC, INC. **": VTAB 12: INPUT "WHAT IS YOUR NAME? ";NAME$
- 150 PRINT : PRINT "(K)EYBOARD OR (T)EXT STRING "NAME$" ? ";: GET A$
- 160 HGR :X = PEEK(49234): REM SET PAGE 1 WITH FULL SCREEN GRAPHICS
- 170 IF A$ = "T" THEN 240
- 180 GET A$: POKE 25, ASC(A$): CALL 34048: ON ( PEEK(251)) GOTO 180: REM GET CHARACTER/TRANSLATE TO SHAPE TABLE/TEST FOR ILLEGAL
- 190 POKE 255,40: REM SETUP TO DRAW 2 BYTES OFF THE VISIBLE SCREEN
- 200 CALL 37679: REM DRAW THE LETTER
- 210 POKE 255,0: REM MOVE HL TO LEFT EDGE OF SCREEN
- 220 FOR X = 1 TO 14: CALL 37301: NEXT : REM SHIFT ENTIRE LINE OF TEXT 2 BYTES LEFT
- 230 GOTO 180: REM GET ANOTHER LETTER
- 240 A$ = "AS YOU CAN SEE " +NAME$ +", YOU CAN SCROLL ANY KIND OF TEXT ACROSS THE SCREEN.....ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890?!.,"
- 250 FOR Y = 1 TO LEN(A$): POKE 25, ASC( MID$ (A$,Y,1))
- 260 CALL 34048: ON ( PEEK(251)) GOTO 290: REM TRANSLATE/TEST FOR ILLEGAL
- 270 POKE 255,40: CALL 37679: POKE 255,0: REM DRAW OFF SCREEN/SETUP FOR SCROLL
- 280 FOR X = 1 TO 14: CALL 37301: NEXT X: REM SHIFT IT ALL LEFT 2 BYTES
- 290 NEXT Y: REM NEXT CHARACTER
- 300 FOR X = 1 TO 270: CALL 37301: NEXT : REM SHIFT IT ALL THE WAY ACROSS
- 310 TEXT : HOME : GOTO 150
- 320 REM SETUP ADDRESS BYTE TABLES IN MEMORY
- 330 FOR X = 33856 TO 33881: READ Y: POKE X,Y: NEXT : REM SET ALPHA LOW BYTE TABLE STARTS AT $8440
- 340 FOR X = 33888 TO 33913: READ Y: POKE X,Y: NEXT : REM SET ALPHA HIGH BYTE TABLE STARTS AT $8460
- 350 FOR X = 33920 TO 33928: READ Y: POKE X,Y: NEXT : REM SET NUMBER LOW BYTE TABLE STARTS AT $8480
- 360 FOR X = 33936 TO 33944: READ Y: POKE X,Y: NEXT : REM SET NUMBER HIGH BYTE TABLE STARTS AT $8490
- 370 RETURN
- 380 DATA 0,27,54,81,108,135,162,189,216,243,14,41,68,95,122,149,176,203,230,1,28,55,82,109,136,163: REM ALPHA TABLE LOW BYTES
- 390 DATA 128,128,128,128,128,128,128,128,128,128,129,129,129,129,129,129,129,129,129,130,130,130,130,130,130,130: REM ALPHA TABLE HIGH BYTES
- 400 DATA 190,217,244,15,42,69,96,123,150: REM NUMBER TABLE LOW BYTES
- 410 DATA 130,130,130,131,131,131,131,131,131: REM NUMBER TABLE HIGH BYTES