home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 11 / 11.iso / m / m411 / 1.ddi / SURFER.ZIP / SYMGEN.BAS < prev    next >
Encoding:
BASIC Source File  |  1986-12-23  |  3.2 KB  |  88 lines

  1. 100 '=========================================================================
  2. 110 '
  3. 120 ' SYMGEN.BAS (Program to plot any valid symbol set)
  4. 130 ' (C) Copyright Golden Software 1987 Version 3.00
  5. 140 ' Golden Colorado 80401
  6. 150 '
  7. 160 '=========================================================================
  8. 165 PRINT "PLOTCALL Symbol File Demonstration Program Version 3.00"
  9. 166 PRINT "(C) Copyright Golden Software 1987"
  10. 167 PRINT
  11. 168 PRINT
  12. 170 '
  13. 180 ' Get filename and convert to uppercase if necessary
  14. 190 '
  15. 200 INPUT "Enter the name of the symbol file to plot [.SYM]: ",IN$
  16. 210 IF IN$="" THEN 200
  17. 220 SET$=""
  18. 230 FOR PTR=1 TO LEN(IN$)
  19. 240   CH=ASC(MID$(IN$,PTR,1))
  20. 250   IF CH>96 AND CH<123 THEN CH=CH-32
  21. 260   SET$=SET$+CHR$(CH)
  22. 270 NEXT PTR
  23. 280 '
  24. 290 ' Add default extension if necessary and create plot file name
  25. 300 '
  26. 310 IF INSTR(1,SET$,".")=0 THEN SET$=SET$+".SYM"
  27. 320 P1=INSTR(1,SET$,".")-1
  28. 330 IF P1>0 THEN OUTFIL$=LEFT$(SET$,P1)+".PLT" ELSE OUTFIL$=SET$+".PLT"
  29. 340 '
  30. 350 ' Open plot file, set origin .5" to right and 1.0" up from lower left
  31. 360 '
  32. 370 OPEN OUTFIL$ FOR OUTPUT AS #1
  33. 374 PRINT #1,"RO ";: WRITE #1,90.0              'Rotate plot to fit on 8.5x11
  34. 378 PRINT #1,"TR ";: WRITE #1,0.0,-11.0
  35. 380 PRINT #1,"TR ";: WRITE #1,.5!,1!
  36. 390 '
  37. 400 ' Plot border box around symbols
  38. 410 '
  39. 415 PRINT #1,"MA ";: WRITE #1,0!,0!
  40. 420 PRINT #1,"PA ";: WRITE #1,7!,0!
  41. 430 PRINT #1,"PA ";: WRITE #1,7!,9!
  42. 440 PRINT #1,"PA ";: WRITE #1,0!,9!
  43. 450 PRINT #1,"PA ";: WRITE #1,0!,0!
  44. 460 '
  45. 470 ' Use default set for ASCII codes and title
  46. 480 '
  47. 490 PRINT #1,"SS ";: WRITE #1,"DEFAULT"
  48. 500 PRINT #1,"PS ";: WRITE #1,.6,8!,.125,0!,"CHARACTERS AVAILABLE IN SYMBOL SET "+SET$
  49. 510 CHAR=31
  50. 520 '
  51. 530 ' Loop to plot out ASCII code numbers
  52. 540 '
  53. 550 FOR COL=0 TO 5 STEP 1
  54. 560   FOR ROW=15 TO 0 STEP -1
  55. 570     CHAR=CHAR+1: IF CHAR>127 THEN 650
  56. 580     X=1!+COL*.83: Y=.5+ROW*.4
  57. 590     PRINT #1,"PS ";: WRITE #1,X,Y,.08,0!,RIGHT$(STR$(CHAR),LEN(STR$(CHAR))-1)
  58. 600   NEXT ROW
  59. 610 NEXT COL
  60. 612 IF SET$="CENTERED.SYM" THEN PRINT #1,"PS ";: WRITE #1,2.3,7.3,.15,0,"CENTERED SYMBOLS"
  61. 614 IF SET$="SET15.SYM" THEN PRINT #1,"PS ";: WRITE #1,2.3,7.3,.15,0, "SPECIAL SYMBOLS"
  62. 616 IF SET$="SET16.SYM" THEN PRINT #1,"PS ";: WRITE #1,2.3,7.3,.15,0, "SPECIAL SYMBOLS"
  63. 620 '
  64. 630 ' Use the requested symbol set from now on. Turn error display off
  65. 640 '
  66. 650 PRINT #1,"SS ";: WRITE #1,SET$
  67. 655 IF SET$="CENTERED.SYM" OR SET$="SET15.SYM" OR SET$="SET16.SYM" THEN 680
  68. 660 PRINT #1,"PS ";: WRITE #1,1.2,7.5,.15,0!,"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  69. 670 PRINT #1,"PS ";: WRITE #1,1.2,7.3,.15,0!,"abcdefghijklmnopqrstuvwxyz"
  70. 680 ASCII=31
  71. 690 '
  72. 700 ' Loop for each character in set. If not there a blank is plotted
  73. 710 ' Note that the double quotes (ASCII 34) can't be printed
  74. 720 '
  75. 730 FOR COL=0 TO 5 STEP 1
  76. 740   FOR ROW=15 TO 0 STEP -1
  77. 750     ASCII=ASCII+1: IF ASCII>127 THEN 820
  78. 760     X=1!+COL*.83: Y=.5+ROW*.4
  79. 770     IF ASCII=34 THEN 800
  80. 780     IF ASCII<100 THEN X=X+.2 ELSE X=X+.28
  81. 785     IF SET$="CENTERED.SYM" THEN X=X+.125: Y=Y+.125
  82. 790     PRINT #1,"PS ";: WRITE #1,X,Y,.25,0!,CHR$(ASCII)
  83. 800   NEXT ROW
  84. 810 NEXT COL
  85. 820 CLOSE
  86. 825 PRINT OUTFIL$;" has been created"
  87. 830 END
  88.