home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / games / xmasfun.zip / PRINT.BAS < prev    next >
BASIC Source File  |  1985-02-09  |  2KB  |  56 lines

  1.  
  2. 10 REM ----------------------- BANNER PROGRAM ---------------------------------
  3. 20 REM ------------ free software , by Barry Roth, revised 8/08/83 ------------
  4. 30 CLS:LOCATE ,,1:DEFINT A-Z:DIM P(8,8)
  5. 40 PRINT "                             BANNER PROGRAM"
  6. 50 PRINT "Wilmington, DE - PC Professional Users Group  - revised 08/08/83 "
  7. 60 PRINT "a banner program using ROM dot patterns for the first 128 ASCII characters"
  8. 70 PRINT:PRINT "enter the character to be used in printing the banner (for example, 'X')"
  9. 80 PRINT "or press return to use the entered character (i.e. g will be formed with 'g') ";
  10. 90 A$=INKEY$:IF A$="" THEN GOTO 90
  11. 100 PRINT A$:PRINT:PRINT "enter the banner scale (1 for 24 characters wide, 2 for 48, or 3 for 72) ";
  12. 110 B$=INKEY$:IF B$="" THEN GOTO 110
  13. 120 D=INT(VAL(B$)):IF D<1 OR D>3 THEN GOTO 100
  14. 130 PRINT D:PRINT:PRINT "get your printer ready and then press any key to start ";
  15. 140 B$=INKEY$:IF B$="" THEN GOTO 140
  16. 150 PRINT:PRINT
  17. 160 PRINT "begin typing your banner (press return at any time to end this program)"
  18. 170 PRINT "have patience, the printer will take time to print each character"
  19. 180 PRINT
  20. 190 DEF SEG=&HF000
  21. 200 N$=INKEY$:IF N$="" THEN GOTO 200
  22. 210 IF ASC(N$)=13 THEN GOTO 480
  23. 220 PRINT N$;
  24. 230 IF ASC(A$)=13 THEN C$=N$ ELSE C$=A$
  25. 240 IF D=1 THEN AA$=C$+C$+C$
  26. 250 IF D=2 THEN AA$=C$+C$+C$+C$+C$+C$
  27. 260 IF D=3 THEN AA$=C$+C$+C$+C$+C$+C$+C$+C$+C$
  28. 270 AN=&HFA6E+8*ASC(N$)-1
  29. 280 FOR I=1 TO 8     
  30. 290 N=PEEK(AN+I)
  31. 300 IF N>=128 THEN N=N-128:P(I,1)=1 ELSE P(I,1)=0
  32. 310 IF N>= 64 THEN N=N- 64:P(I,2)=1 ELSE P(I,2)=0
  33. 320 IF N>= 32 THEN N=N- 32:P(I,3)=1 ELSE P(I,3)=0
  34. 330 IF N>= 16 THEN N=N- 16:P(I,4)=1 ELSE P(I,4)=0
  35. 340 IF N>=  8 THEN N=N-  8:P(I,5)=1 ELSE P(I,5)=0
  36. 350 IF N>=  4 THEN N=N-  4:P(I,6)=1 ELSE P(I,6)=0
  37. 360 IF N>=  2 THEN N=N-  2:P(I,7)=1 ELSE P(I,7)=0
  38. 370 IF N>=  1 THEN         P(I,8)=1 ELSE P(I,8)=0
  39. 380 NEXT I
  40. 390 FOR II=1 TO 8
  41. 400 FOR DD=1 TO D
  42. 410 LPRINT SPACE$((3-D)*12);
  43. 420 FOR III=8 TO 1 STEP -1
  44. 430 IF P(III,II)>0 THEN LPRINT AA$; ELSE LPRINT SPACE$(3*D);
  45. 440 NEXT III
  46. 450 LPRINT:NEXT DD
  47. 460 NEXT II
  48. 470 LPRINT:GOTO 200
  49. 480 PRINT:PRINT"end of BANNER PROGRAM":PRINT:END
  50. 
  51. ;
  52. 440 NEXT III
  53. 450 LPRINT:NEXT DD
  54. 460 NEXT II
  55. 470 LPRINT:GOTO 200
  56. 480 PRINT:PRINT"end of BANNER PROGRAM":PRINT:END