home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib19b.dsk / LETTER.SCROLL.bas < prev    next >
BASIC Source File  |  2023-02-26  |  3KB  |  41 lines

  1. 10  REM  **********************
  2. 20  REM  *    LETTER.SCROLL   *
  3. 30  REM  *  BY ROBERT DEVINE  *
  4. 40  REM  * COPYRIGHT (C) 1984 *
  5. 50  REM  * BY MICROSPARC, INC *
  6. 60  REM  * LINCOLN, MA. 01773 *
  7. 70  REM  **********************
  8. 80  HIMEM: 32768: REM  SET HIMEM TO PROTECT BLOCK SHAPE TABLE
  9. 90  PRINT  CHR$(4)"BLOAD BLOCK.ROUTINES,A$9076": CALL 37799: REM  LOAD BLOCK ROUTINES/SET UP YTABLE POINTERS
  10. 100  PRINT  CHR$(4)"BLOAD BIG.LETTERS"
  11. 110  PRINT  CHR$(4)"BLOAD SET.SHAPE": REM  ASC TO SHAPE ADDRESS ROUTINE
  12. 120  GOSUB 320: REM  SET UP TABLE ADDRESS ARRAY
  13. 130  POKE 252,170: POKE 253,182: POKE 254,41: REM  SET VT,VB, AND HR THAT WE WILL SCROLL
  14. 140  HOME : VTAB 22: PRINT "** COPYRIGHT 1984 BY MICROSPARC, INC. **": VTAB 12: INPUT "WHAT IS YOUR NAME? ";NAME$
  15. 150  PRINT : PRINT "(K)EYBOARD OR (T)EXT STRING "NAME$" ? ";: GET A$
  16. 160  HGR :X =  PEEK(49234): REM  SET PAGE 1 WITH FULL SCREEN GRAPHICS
  17. 170  IF A$ = "T"  THEN 240
  18. 180  GET A$: POKE 25, ASC(A$): CALL 34048: ON ( PEEK(251)) GOTO 180: REM  GET CHARACTER/TRANSLATE TO SHAPE TABLE/TEST FOR ILLEGAL
  19. 190  POKE 255,40: REM  SETUP TO DRAW 2 BYTES OFF THE VISIBLE SCREEN
  20. 200  CALL 37679: REM  DRAW THE LETTER
  21. 210  POKE 255,0: REM  MOVE HL TO LEFT EDGE OF SCREEN
  22. 220  FOR X = 1 TO 14: CALL 37301: NEXT : REM  SHIFT ENTIRE LINE OF TEXT 2 BYTES LEFT
  23. 230  GOTO 180: REM  GET ANOTHER LETTER
  24. 240 A$ = "AS YOU CAN SEE " +NAME$ +", YOU CAN SCROLL ANY KIND OF TEXT ACROSS THE SCREEN.....ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890?!.,"
  25. 250  FOR Y = 1 TO  LEN(A$): POKE 25, ASC( MID$ (A$,Y,1))
  26. 260  CALL 34048: ON ( PEEK(251)) GOTO 290: REM  TRANSLATE/TEST FOR ILLEGAL
  27. 270  POKE 255,40: CALL 37679: POKE 255,0: REM  DRAW OFF SCREEN/SETUP FOR SCROLL
  28. 280  FOR X = 1 TO 14: CALL 37301: NEXT X: REM  SHIFT IT ALL LEFT 2 BYTES
  29. 290  NEXT Y: REM  NEXT CHARACTER
  30. 300  FOR X = 1 TO 270: CALL 37301: NEXT : REM  SHIFT IT ALL THE WAY ACROSS
  31. 310  TEXT : HOME : GOTO 150
  32. 320  REM  SETUP ADDRESS BYTE TABLES IN MEMORY
  33. 330  FOR X = 33856 TO 33881: READ Y: POKE X,Y: NEXT : REM  SET ALPHA LOW BYTE TABLE STARTS AT $8440
  34. 340  FOR X = 33888 TO 33913: READ Y: POKE X,Y: NEXT : REM  SET ALPHA HIGH BYTE TABLE STARTS AT $8460
  35. 350  FOR X = 33920 TO 33928: READ Y: POKE X,Y: NEXT : REM  SET NUMBER LOW BYTE TABLE STARTS AT $8480
  36. 360  FOR X = 33936 TO 33944: READ Y: POKE X,Y: NEXT : REM  SET NUMBER HIGH BYTE TABLE STARTS AT $8490
  37. 370  RETURN 
  38. 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
  39. 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
  40. 400  DATA  190,217,244,15,42,69,96,123,150: REM  NUMBER TABLE LOW BYTES
  41. 410  DATA  130,130,130,131,131,131,131,131,131: REM  NUMBER TABLE HIGH BYTES