! THIS PROGM CREATES A 'LOGO', A PROGRAM WHICH PRINTS A BIG EMBLEM
       ! ON YOUR SCREEN.  THE LETTERS WERE BORROWED FROM "POSTER.BAS",
       ! A PROGRAM ON THE AMUS NETWORK.  THE PROGRAM WAS WRITTEN BY
       ! JIM DULANEY, DIRECTOR OF DP FOR PATRIOT HOMES INC, ELKHART IN. PHI/AM
       !  ANY COMMENTS WOULD BE APPRECIATED. (219) 293-6507
       ! USAGE:
       ! LOGO CREATES A ALPHA-BASIC SOURCE FILE WHICH CAN BE COMPILED
       !   AND THEN RUN.  IT TAKES AS IT'S INPUT KEYBOARD STRINGS WHICH
       !   IT THEN MAKES INTO THREE LINES OF BIG LETTERS ON THE SCREEN,
       !   AT THE SAME TIME "WRITING" A PROGRAM WHICH WHEN "RUN" WILL
       !   DO THE SAME THING, FINISHING WITH A FLOURISH.  IF YOU FIND BUGS,
       !   YOU FIX-EM, OKEY DOKEY?
       MAP1 LOGO,S,11
       MAP1 OLD'LOGO,S,11
       MAP1 COMPARE,S,
       MAP1 LETTER(7),S,7
       MAP1 PROGM,S,10,"SIGNON.BAS"
       MAP1 POINTER,F
       MAP1 ROW,F
       MAP1 LAST'ROW,F
       MAP1 LENGTH,F
       MAP1 VECTOR,F
       MAP1 INITIAL'VECTOR,F
       MAP1 X,F
       MAP1 Z,F

       INPUT "NAME OF PROGM TO PUT IT IN (DEFAULT TO SIGNON.BAS)";PROGM
       IF INSTR(1,PROGM,".") = 0 THEN PROGM = PROGM + ".BAS"
       OPEN#14,PROGM,OUTPUT
       ?#14,CHR$(9);"! LOGO PROGRAM CREATED BY LOGO.BAS COPYRIGHT JDL 1986"
       ?#14,CHR$(9);"MAP1 X,F"
       ?#14,CHR$(9);"MAP1 Z,F"
       ?#14,CHR$(9);"PRINT TAB(-1,0);"
       ?TAB(-1,0);

  GET'A'LINE:
       ?TAB(23,1);TAB(-1,9); : INPUT LINE "INPUT STRING TO LOGO ";LOGO
       IF LOGO = "" THEN GOTO EOJ'PROCESSOR
       OLD'LOGO = LOGO
       ROW = 0
       ?TAB(23,1);TAB(-1,9); : INPUT "ROW TO PUT IT IN? ",ROW
       IF ROW = 0 THEN IF LAST'ROW = 0 THEN ROW = 1
       IF ROW = 0 THEN ROW = LAST'ROW + 8
       LAST'ROW = ROW
2       LENGTH = LEN(LOGO)
3       VECTOR = (((5-(INT(LENGTH/2)))*7)+1)
       INITIAL'VECTOR = VECTOR
6       FOR X = 1 TO LEN(LOGO)

7       RESTORE
8         FOR POINTER = 32 TO ASC(LOGO[X;1])
9               FOR Z = 1 TO 7
10                      READ LETTER(Z)
11                      NEXT Z
12              NEXT POINTER
13        FOR POINTER = ROW TO (ROW+6)
!               ?TAB(24,1);"POINTER=";POINTER;" VECTOR=";VECTOR;
!               ?" POINTER-ROW+1=";(POINTER-ROW+1);
14              ?TAB(POINTER,VECTOR);LETTER(POINTER-ROW+1);
15              ?#14,CHR$(9);"PRINT TAB(";POINTER;",";VECTOR");";CHR$(34);
16              ?#14,LETTER(POINTER-ROW+1);CHR$(34);";"
17              NEXT POINTER
18              VECTOR = VECTOR + 8
19      NEXT X
       GOTO GET'A'LINE
  EOJ'PROCESSOR:
       PRINT#14,CHR$(9);"PRINT TAB(";(ROW-1);",";INITIAL'VECTOR;");"
       PRINT#14,CHR$(9);"FOR X = 1 TO ";(LEN(OLD'LOGO)*8)
       PRINT#14,CHR$(9);CHR$(9);"CALL STALL"
       PRINT#14,CHR$(9);CHR$(9);"PRINT TAB(-1,6); : NEXT"
       PRINT#14,CHR$(9);"FOR X = 1 TO 8"
       PRINT#14,CHR$(9);CHR$(9);"CALL STALL"
       PRINT#14,CHR$(9);CHR$(9);"PRINT TAB(-1,4); : NEXT"
       PRINT#14,CHR$(9);"FOR X = 1 TO ";(LEN(OLD'LOGO)*8)
       PRINT#14,CHR$(9);CHR$(9);"CALL STALL"
       PRINT#14,CHR$(9);CHR$(9);"PRINT TAB(-1,5); : NEXT"
       PRINT#14,CHR$(9);"FOR X = 1 TO 8"
       PRINT#14,CHR$(9);CHR$(9);"CALL STALL"
       PRINT#14,CHR$(9);CHR$(9);"PRINT TAB(-1,3); : NEXT"
       PRINT#14 : PRINT#14
       PRINT#14,CHR$(9);CHR$(9);"PRINT TAB(24,1); "
       PRINT#14,CHR$(9);CHR$(9);"END"
       PRINT#14 : PRINT#14
       PRINT#14,CHR$(9);"STALL:"
       PRINT#14,CHR$(9);CHR$(9);"FOR Z = 1 TO 30 : NEXT : RETURN"

       CLOSE#14
       CHAIN "COMPIL.LIT "+PROGM+"/N"

       !
       ! character DATA
       !
       DATA"       ","       ","       ","       ","       "
       DATA "       ","       "
       DATA "   !   ","   !   ","   !   ","   !   ","   !   "
       DATA "       ","   !   "
       DATA "       "," xx xx "," xx xx "," xx xx ","       "
       DATA "       ","       "
       DATA "  # #  ","  # #  ",#######,"  # #  ",#######
       DATA "  # #  ","  # #  "
       DATA " $$$$$$","$$ $   ","$$ $   "," $$$$$ ","   $ $$"
       DATA "   $ $$","$$$$$$ "
       DATA " %%   %"," %%  % ","    %  ","   %   ","  %    "
       DATA " %  %% ","%   %% "
       DATA "  &    "," & &   ","  &    "," & &   ","&   & &"
       DATA "&    & "," &&&& &"
       DATA "       ","  ''   ","  ''   ","  '    ","       "
       DATA "       ","       "
       DATA "      (","     ( ","    (  ","    (  ","    (  "
       DATA "     ( ","      ("
       DATA ")      "," )     ","  )    ","  )    ","  )    "
       DATA " )     ",")      ",
       DATA "*  *  *"," * * * ","  ***  ","*******","  ***  "
       DATA " * * * ","*  *  *"
       DATA "   +   ","   +   ","   +   ","+++++++","   +   "
       DATA "   +   ","   +   "
       DATA "       ","       ","       ","       ","       "
       DATA "   ,   ","   ,   "
       DATA "       ","       ","       ","  ___  ","       "
       DATA "       ","       "
       DATA "       ","       ","       ","       ","       "
       DATA "  . .  ","  . .  "
       DATA "      /","     / ","    /  ","   /   ","  /    "
       DATA " /     ","/      "
       DATA " 00000 ",0     0,0     0,0     0,0     0
       DATA 0     0," 00000 "
       DATA "   1   ","  11   "," 1 1   ","   1   ","   1   "
       DATA "   1   "," 11111 "
       DATA "  2222 "," 2    2","     2 ","    2  ","   2   "
       DATA "  2    "," 222222"
       DATA " 33333 ",3     3,"      3","    33 ","      3"
       DATA "3     3"," 33333 "
       DATA "    44 ","  4  4 "," 4   4 ","444444 ","     4 "
       DATA "     4 ","     4 "
       DATA "555555 ","5      ","5      ","55555  ","     5 "
       DATA "     5 ","55555  "
       DATA " 6666  ","6      ","6      ","66666  ","6    6 "
       DATA "6    6 "," 6666  "
       DATA 7777777,"     7 ","    7  ","   7   ","  7    "
       DATA " 7     ","7      "
       DATA "  8888 "," 8    8"," 8    8","  8888 "," 8    8"
       DATA " 8    8","  8888 "
       DATA "  9999 "," 9    9"," 9    9","  99999","      9"
       DATA "      9","  9999 "
       DATA "       ","  ::   ","  ::   ","       ","  ::   "
       DATA "  ::   ","       "
       DATA "       ","  ;;   ","  ;;   ","       ","   ;   "
       DATA "  ;    ","       "
       DATA "    <  ","   <   ","  <     "," <     ","  <    "
       DATA "   <   ","    <  "
       DATA "       "," ===== "," ===== ","       "," ===== "
       DATA " ===== ","       "
       DATA "  >    ","   >   ","    >  ","     > ","    >  "
       DATA "   >   ","  >    "
       DATA "  ???  "," ?   ? ","     ? ","    ?  ","   ?   "
       DATA "       ","   ?   "
       DATA "       ","       ","       ","       ","       "
       DATA "       ","       "
       DATA " aaaaa ",aa   aa,aa   aa,aaaaaaa
       DATA "aa   aa","aa   aa","aa   aa"
       DATA "bbbbbb ",bb   bb,bb   bb,"bbbbbb "
       DATA bb   bb,bb   bb,"bbbbbb "
       DATA " ccccc ","cc   cc","cc     ","cc     ","cc     "
       DATA cc   cc," ccccc "
       DATA "dddddd ",dd   dd,dd   dd,dd   dd
       DATA dd   dd,dd   dd,"dddddd "
       DATA eeeeeee,"ee     ","ee     ","eeeee  ","ee     "
       DATA "ee     ",eeeeeee
       DATA fffffff,"ff     ","ff     ","ffff   ","ff     "
       DATA "ff     ","ff     "
       DATA " ggggg ",gg   gg,"gg     ","gg     ",gg  ggg
       DATA gg   gg," ggggg "
       DATA hh   hh,hh   hh,hh   hh,hhhhhhh,hh   hh
       DATA hh   hh,hh   hh
       DATA "  iiii ","   ii  ","   ii  ","   ii  ","   ii  "
       DATA "   ii  ","  iiii "
       DATA "     jj","     jj","     jj","     jj","     jj"
       DATA " jj  jj","  jjjj "
       DATA kk   kk,"kk  kk ","kk kk  ","kkkk   ","kkkkk  "
       DATA "kk  kk ",kk   kk
       DATA "ll     ","ll     ","ll     ","ll     ","ll     "
       DATA "ll     ",lllllll
       DATA m     m,mm   mm,mmm mmm,mm m mm,mm   mm
       DATA mm   mm,mm   mm
       DATA n    nn,nn   nn,nnn  nn,nn n nn,nn  nnn
       DATA nn   nn,nn    n
       DATA " ooooo ",oo   oo,oo   oo,oo   oo,oo   oo
       DATA oo   oo," ooooo "
       DATA "pppppp ",pp   pp,pp   pp,"pppppp "
       DATA "pp     ","pp     ","pp     "
       DATA " qqqqq ",qq   qq,qq   qq,qq   qq
       DATA qq   qq,qq  qqq," qqqqqq"
       DATA "rrrrrr ",rr   rr,rr   rr,"rrrrrr ","rrrr   "
       DATA "rr rr ","rr  rr "
       DATA " ssssss","ss     ","ss     "," sssss ","     ss"
       DATA "     ss","ssssss "
       DATA "tttttt ","  tt   ","  tt   ","  tt   ","  tt   "
       DATA "  tt   ","  tt   "
       DATA uu   uu,uu   uu,uu   uu,uu   uu,uu   uu
       DATA uu   uu," uuuuu "
       DATA " v    v"," v    v"," vv  vv","  v  v ","  vvvv "
       DATA "   vv  ","   vv  "
       DATA ww   ww,ww   ww,ww   ww,ww   ww,ww w ww
       DATA www www," w   w "
       DATA xx   xx," xx xx ","  xxx  ","  xxx  ","  xxx  "
       DATA " xx xx ",xx   xx
       DATA yy   yy," yy yy ","  yyy  ","   yy  ","   yy  "
       DATA "   yy  ","   yy   "
       DATA zzzzzzz,"     z ","    z  ","   z   ","  z    "
       DATA " z     ",zzzzzzz, , , , ,
       !
       end