Prints a message sideways on the 2040 printer. Messages are limited to 32 characters.
Content
Image Gallery
Source Code
1 DIM B$(8,8)
2 PAPER 0: BORDER 0: INK 7: CLS
3 PRINT AT 10,4;"BANNER BY CHRIS RAYNAK"
4 PAUSE 250
5 PAPER 1: BORDER 1: CLS
6 PRINT "WHEN ENTERING YOUR MESSAGES YOU MUST REMEMBER THAT YOU ARE LIMITED TO 32 CHARACTERS."
7 PRINT "ALSO, YOU CANNOT USE USER DEFINED GRAPHICS OR REGULAR GRAPHICS FOR BANNERS. PLEASE SELECT ONE OF THE LETTER SIZES FROM BELOW."
8 PAPER 2: PRINT " ": PAPER 1
9 PRINT "1) 8X8"'"2) 16X16"'"3) 32X32": INPUT "YOUR SELECTION?";S: CLS
10 PRINT "PLEASE ENTER YOUR MESSAGE."
11 INPUT C$: IF LEN C$>32 THEN LET C$=C$(1 TO 32)
12 PAPER 3: PRINT AT 8,0;"YOUR MESSAGE IS BEING PROCESSED": PAPER 1
13 FOR Z=1 TO LEN C$: PRINT AT 10,Z-1;C$(Z): LET L=15359+(CODE C$(Z)*8): IF L>16383 THEN LET L=65367+8*(CODE C$(Z)-144)
14 REM ^FINDS ADDRESS OF FIRST SCAN LINE.
15 REM *************************
16 REM CONVERTS DECIMAL #
17 REM OF THE SCAN LINE OF
18 REM CORRESPONDING CHARACTER
19 REM IN THE ROM TO BINARY.
20 REM *************************
200 FOR X=1 TO 8
210 LET L=L+1: LET D=PEEK L
360 FOR A=1 TO 8
370 LET B$(X,9-A)=CHR$ (CODE "0"+D-2*INT (D/2))
380 LET D=INT (D/2)
390 NEXT A
400 NEXT X
451 LET A$=""
452 REM ************************ ROTATES LETTER 90 DEGREES TO THE RIGHT. ************************
460 FOR X=1 TO 8
470 FOR Y=8 TO 1 STEP -1
480 IF B$(Y,X)="1" THEN GO TO 486
481 IF S=1 THEN LET A$=A$+" "
482 IF S=2 THEN LET A$=A$+" "
483 IF S=3 THEN LET A$=A$+" "
484 GO TO 490
486 IF S=1 THEN LET A$=A$+"\ "
487 IF S=2 THEN LET A$=A$+"\ \ "
488 IF S=3 THEN LET A$=A$+"\ \ \ \ "
490 NEXT Y
491 FLASH 1: INK 0: PAPER 7: PRINT AT 12,3;"**PRINTER IN OPERATION**": FLASH 0
492 IF S=1 THEN LPRINT A$
493 IF S=2 THEN LPRINT A$'A$
500 IF S=3 THEN LPRINT A$'A$'A$'A$
501 INK 7: PAPER 1: PRINT AT 12,3;" "
502 LET A$=""
510 NEXT X
520 NEXT Z
530 PRINT AT 13,0;"WOULD YOU LIKE TO PRINT ANOTHER MESSAGE?": INPUT A$: IF A$(1)="N" OR A$(1)="n" THEN GO TO 1000
540 INPUT "SAME LETTER SIZE?";A$: IF A$(1)="N" OR A$(1)="n" THEN CLS : GO TO 8
550 CLS : GO TO 10
1000 REM ***********************
1010 REM MEMORY USED=2040 BYTES*
1020 REM ***********************