home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / prt / tvtext.ba < prev    next >
Text File  |  2006-10-19  |  6KB  |  138 lines

  1. 0 'Club 100 Library - 415/939-1246 BBS,    937-5039 Newsletter, 932-8856 Voice
  2. 1 'TVTEXT.BA by Eiji Miura, Modified by Robert Benson 5/30/88
  3. 10 CLS:BEEP:PRINT@135,"WORDPRO-TV":FORW=1TO500:NEXT
  4. 11 CLEAR2000:SCREEN0,0:MAXFILES=2:POKE64173,0:DEFINTA-Z:DEFSTRW-Y:ONERRORGOTO140:GOSUB132:PRINTXA"V":GOTO32
  5. 12 K=0:IFRIGHT$(X,1)>" "ORLEN(X)<=M(0)THENRETURN
  6. 13 X=LEFT$(X,LEN(X)-1):K1=M(1)-LEN(X):IFK1=0THENRETURN
  7. 14 FORJ=1TOLEN(X)
  8. 15 XE=MID$(X,J,1):IFXE=" "THENNEXT
  9. 16 XJ=RIGHT$(X,LEN(X)-(J-1))
  10. 17 K2=1
  11. 18 IFK2=LEN(XJ)THEN17
  12. 19 XG=MID$(XJ,K2,1):IFXG<>" "THEN22
  13. 20 XU=LEFT$(XJ,K2):YU=RIGHT$(XJ,LEN(XJ)-LEN(XU)):XJ=XU+" "+YU:K=K+1:K2=K2+1:IFK=K1THEN23
  14. 21 IFK2=LEN(XJ)THEN17
  15. 22 K2=K2+1:GOTO18
  16. 23 X=SPACE$(J-1)+XJ:RETURN
  17. 24 XC=WC(BB):J=J-LEN(WC(BB)):RETURN
  18. 25 CLS:PRINT@130,"Printout in progress":RETURN
  19. 26 CLS:O$="":INPUT"Output file name";O$:IFO$=""THEN35ELSEIFLEN(O$)>6THEN26
  20. 27 RETURN
  21. 28 IFD=0ANDE=0THENB=0ELSEB=1
  22. 29 RETURN
  23. 31 FORI=1TO1500:NEXT:RETURN
  24. 32 CLS:PRINTXA"p Files in memory "XA"q":FILES
  25. 33 PRINT@280,"File to format:";:PRINT@302,".DO";:PRINT@296,"";:LINEINPUTI$:IFI$=""THENMENU
  26. 34 OPENI$FORINPUTAS1
  27. 35 CLS:PRINT"1. "XS" (L/R/T/B)":PRINT"2. "XF:PRINT"3. Line spacing":PRINT"4. Output"
  28. 36 PRINT"5. Page numbering":PRINT"6. Pause between pages":PRINT"7. Print":PRINT"8. Exit";
  29. 37 FORI=23TO223STEP40:PRINT@I,":";:NEXT
  30. 38 FORI=1TO4:PRINT@20+I*4,USINGXZ;M(I-1):NEXT:PRINT@64,F:PRINT@105,S:PRINT@145,YA(A)XK:PRINT@185,YB(B):PRINT@225,YC(C)
  31. 39 ONVAL(INKEY$)GOTO101,110,112,114,116,129,40,131:GOTO39
  32. 40 CLS:PRINT"1. Continue":PRINT"2. "XR" to menu"
  33. 41 ONVAL(INKEY$)GOTO42,35:GOTO41
  34. 42 CLS:XT="":PRINT@167,"Press [ENTER] if no Title":PRINT@0,"Title: ";:LINEINPUTXT
  35. 43 IFLEN(XT)>M(1)-M(0)THENBEEP:PRINT:PRINT"Too long":GOSUB31:GOTO42ELSEIFXT=""THENT=0ELSET=1
  36. 44 CLS:IFA=0THENO$="LPT:"
  37. 45 IFA=1THENO$="COM:57I1E"
  38. 46 IFA=2THENO$="LCD:"
  39. 47 IFA=3THENGOSUB26
  40. 48 IFA=4THENGOSUB26:O$="CAS:"+O$
  41. 49 PRINTXA"W"
  42. 50 OPENO$FOROUTPUTAS2:IFA=3ORA=4THENCLS:PRINT@130,"Processing the file"
  43. 51 IFA<2THENGOSUB25ELSEN=1
  44. 52 W=SPACE$(M(0)):X=W:U=P
  45. 53 V=1
  46. 54 PRINT#2,"":V=V+1:IFV=3AND((U=PANDD=1)OR(U>PANDE=1))THENPRINT#2,SPACE$(M(1)-LEN(STR$(U)))U:V=V+1
  47. 55 IFV<=M(2)THEN54
  48. 56 IFT=1ANDU=PTHENPRINT#2,SPACE$(((M(1)-M(0))-LEN(XT))/2+M(0))XT;:FORI=1TO3:PRINT#2,"":V=V+1:NEXT
  49. 57 IFV>M(3)THEN75
  50. 58 FORJ=LEN(X)TOM(1):XC=INPUT$(1,1):IFEOF(1)THENCLOSE1:O=1:GOTO61
  51. 59 AA=INSTR(XL,XC):ONAAGOTO87,88,95,96,98,99
  52. 60 BB=INSTR(XM,XC):IFBB<>0THENGOSUB24
  53. 61 X=X+XC:IFRIGHT$(X,1)=CHR$(10)THEN66
  54. 62 NEXT
  55. 63 IFMID$(X,J,1)=" "THEN65
  56. 64 J=J-1:GOTO63
  57. 65 Y=MID$(X,J+1,M(1)):X=MID$(X,1,J):GOTO67
  58. 66 X=LEFT$(X,LEN(X)-2)
  59. 67 IFMID$(X,M(0),3)=SPACE$(3)THEN70
  60. 68 IFMID$(X,M(0),1)=" "THENX=MID$(X,2,LEN(X)):GOTO68
  61. 69 IFG=1THENPRINT#2,SPACE$(((M(1)-M(0))-LEN(RIGHT$(X,LEN(X)-M(0))))/2)X:V=V+1:G=0:GOTO72
  62. 70 IFR=1THENGOSUB12
  63. 71 PRINT#2,X"":V=V+1
  64. 72 IFO=1THEN75
  65. 73 IFS=2THENPRINT#2,"":V=V+1
  66. 74 X=W+Y:Y="":GOTO57
  67. 75 PRINT#2,"":V=V+1:IFV=M(3)+2AND((U=PANDD=2)OR(U>PANDE=2))THENPRINT#2,SPACE$(((M(1)-M(0))/2)-(LEN(STR$(U))/2)+M(0))U:V=V+1
  68. 76 IFV=F+1THEN77ELSE75
  69. 77 IFO=1THENCLOSE2:GOTO80
  70. 78 IFC=1ANDA<2THENGOSUB85
  71. 79 U=U+1:GOTO53
  72. 80 NN=NN+1:IFNN<NTHEN83
  73. 81 CLS:PRINT"1. Continue":PRINT"2. Print another page":PRINT"3. Exit"
  74. 82 ONVAL(INKEY$)GOTO11,83,84:GOTO82
  75. 83 OPENI$FORINPUTAS1:O=0:GOTO44
  76. 84 MENU
  77. 85 CLS:BEEP:PRINT@126,"Press [ENTER] fornext page"
  78. 86 IFINKEY$=CHR$(13)THENGOSUB25:RETURNELSE86
  79. 87 PRINT#2,"":V=V+1:IFV>M(3)THEN100ELSE87
  80. 88 WA=""
  81. 89 WB=INPUT$(1,1)
  82. 90 IFWB="-"THEN93
  83. 91 IFWB=CHR$(129)THEN94
  84. 92 WA=WA+WB:GOTO89
  85. 93 M(0)=VAL(WA):GOTO88
  86. 94 M(1)=VAL(WA):W=SPACE$(M(0)-1):GOTO100
  87. 95 G=1:GOTO100
  88. 96 IFS=1THENS=2ELSES=1
  89. 97 GOTO100
  90. 98 R=0:GOTO100
  91. 99 R=1
  92. 100 XD=INPUT$(1,1):IFXD=CHR$(10)THENX=W:GOTO57ELSE100
  93. 101 CLS:PRINTXS:PRINT"1. "X(0):PRINT"2. "X(1):PRINT"3. "X(2):PRINT"4. "X(3):PRINT"5. "X(1)" justify":PRINT"6. "XR
  94. 102 FORI=57TO217STEP40:PRINT@I,":":NEXT:FORI=0TO3:PRINT@I*40+58,USINGXZ;M(I):NEXT
  95. 103 PRINT@219,YD(R)
  96. 104 Q=VAL(INKEY$):ONQGOTO105,105,105,105,107,109:GOTO104
  97. 105 Q=Q-1:PRINT@280,X(Q);:INPUTN(Q):IFN(Q)<1THEN101
  98. 106 M(Q)=N(Q):GOTO101
  99. 107 IFR=1THENR=0ELSER=1
  100. 108 GOTO103
  101. 109 IF(M(3)=>F)ORM(0)=>M(1)ORM(2)=>M(3)THENCLS:BEEP:PRINT@134,XS" error":GOSUB31:GOTO101ELSE35
  102. 110 CLS:PRINTXF;:INPUTL:IFL<=M(3)THENBEEP:PRINT:PRINT"Shorter than "X(3)XS:GOSUB31:L=FELSEF=L
  103. 111 GOTO35
  104. 112 IFS=1THENS=2ELSES=1
  105. 113 PRINT@105,S:GOTO39
  106. 114 IFA=4THENA=0ELSEA=A+1
  107. 115 PRINT@145,YA(A)XK:GOTO39
  108. 116 CLS:PRINT"Page numbering":PRINT"1. First page":PRINT"2. Rest of pages":PRINT"3. Starting page #":PRINT"4. "XP:PRINT"5. "XR
  109. 117 FORI=60TO180STEP40:PRINT@I,":":NEXT
  110. 118 PRINT@64,Y(D)XK:PRINT@104,W(E)XK:PRINT@143,USINGXZ;P:PRINT@183,USINGXZ;N
  111. 119 ONVAL(INKEY$)GOTO120,122,124,126,128:GOTO119
  112. 120 IFD=2THEND=0ELSED=D+1
  113. 121 GOTO118
  114. 122 IFE=2THENE=0ELSEE=E+1
  115. 123 GOTO118
  116. 124 PRINT@280,"Page #";:INPUTH:IFH>0THENP=H
  117. 125 GOTO116
  118. 126 PRINT@280,XP;:INPUTM:IFM>0THENN=M
  119. 127 GOTO116
  120. 128 GOSUB28:GOTO35
  121. 129 IFC=1THENC=0ELSEC=1
  122. 130 PRINT@225,YC(C):GOTO39
  123. 131 CLS:BEEP:PRINT"Sure?";:XQ=INPUT$(1):IFXQ="Y"ORXQ="y"THENMENUELSE35
  124. 132 M(0)=41:M(1)=79:M(2)=0:M(3)=65:F=66:S=2:A=3:C=0:D=0:E=0:R=0:P=1:N=1:Z=0
  125. 133 X(0)="Left":X(1)="Right":X(2)="Top":X(3)="Bottom":XR="Return":XF="Form length":XS="Margin"
  126. 134 XA=CHR$(27):XK=XA+"K":XN="No   ":XH="Yes  ":XZ="###":XL=CHR$(128)+CHR$(129)+CHR$(132)+CHR$(135)+CHR$(147)+CHR$(148)
  127. 135 XV="Printer  ":YA(0)=XV+"<P>":YA(1)=XV+"<S>":YA(2)="LCD":YA(3)="RAM":YA(4)="Cassette":YB(0)=XN:YB(1)=XH:YC(0)=XN:YC(1)=XH
  128. 136 Y(0)=XN:Y(1)=XH+X(2):Y(2)=XH+X(3):W(0)=XN:W(1)=Y(1):W(2)=Y(2):YD(0)=XN:YD(1)=XH:XP="Number of copies"
  129. 137 DIMWC(Z):IFZ=0THEN139
  130. 138 A1=A1+1:READB1,B2:XM=XM+CHR$(B1):FORI=1TOB2:READB3:WC(A1)=WC(A1)+CHR$(B3):NEXT:IFA1<ZTHEN138
  131. 139 L=F:GOSUB28:RETURN
  132. 140 CLS:BEEP
  133. 141 IFERL=34AND(ERR=52ORERR=55)THENPRINT@133,"File not found":GOSUB31:RESUME32
  134. 142 IFERL=50AND(ERR=53ORERR=55)THENPRINT@133,"Bad file name":GOSUB31:RESUME44
  135. 143 IFERL=58ANDERR=54THEN:PRINT@135,"Empty file":GOSUB31:RESUME11
  136. 144 PRINT"Error #"ERR" in line"ERL:STOP
  137. 200 'DEFINE DATA for printer codes here
  138.