home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 17 / CD_ASCQ_17_101194.iso / vrac / vester_e.zip / TIFCONV.BAS < prev    next >
BASIC Source File  |  1994-08-08  |  11KB  |  202 lines

  1. 10 CLEAR,32768!:KEY OFF:CLS
  2. 15 GOTO 2000
  3. 20 X$="system"+CHR$(13):KEY 10,X$
  4. 30 PRINT"                        TIF FILE CONVERSION":PRINT
  5. 40 PRINT"       This program converts a file coming from a frame grabber in a "
  6. 50 PRINT"   640x480 pixels, 24 bit full color format in the TIFF color format"
  7. 60 PRINT"   to a file which can be viewed and transmitted on the K3BC SSTV system"
  8. 70 PRINT"   in the Scottie, Martin, AVT, Wraase and Fax480 modes. It specifi-"
  9. 80 PRINT"   cally has been used with the Computer Eyes/RT and SSC grabbers. It"
  10. 90 PRINT"   should accept any 640 pixel wide, 24 bit color TIF file but you may"
  11. 91 PRINT"   need to adjust the offset in line 205 of this program. To see the"
  12. 92 PRINT"   SYSTEM CONFIGURATION hit Ctrl-Break and LIST 2000-3000. Use the same"
  13. 93 PRINT"   choices as were made for the VU.BAS program."
  14. 100 PRINT:PRINT:PRINT:PRINT"      What Mode desired  (3) Scottie 1 (4) Scottie 2 (5)AVT-90 (6)AVT-94"
  15. 110 INPUT"   (7) Martin 1 (77) Martin 2 (8) Wraase 96 (9) FAX480 (96)ColorFAX";I
  16. 120 IF I=3 THEN MO$=".s1":L=288:LL=878:LI=256:Z=249:GOTO 179
  17. 130 IF I=4 THEN MO$=".s2":L=184:LL=568:LI=256:Z=249:GOTO 179
  18. 140 IF I=5 THEN MO$=".90":L=256:LL=768:LI=240:Z=138:GOTO 179
  19. 150 IF I=6 THEN MO$=".94":L=320:LL=960:LI=200:Z=138:GOTO 179
  20. 155 IF I=8 THEN MO$=".96":L=236:LL=745:LI=256:Z=255:GOTO 179
  21. 160 IF I=7 THEN MO$=".m1":L=302:LL=915:LI=256:Z=249:GOTO 179
  22. 165 IF I=77 THEN MO$=".m2":L=152:LL=464:LI=256:Z=249:GOTO 179
  23. 170 IF I=9 THEN MO$=".fax":Z=249:LI=480:LL=546:GOTO 179
  24. 175 IF I=96 THEN MO$=".cfx":L=536:LL=1638:LI=480:Z=249:GOTO 179
  25. 178 GOTO 100
  26. 179 DEF SEG=&H5F00
  27. 180 BLOAD "tifconva.asm",&H100
  28. 190 FOR Y=230 TO 1024
  29. 200 POKE (&H12E0+Y),Z:NEXT Y
  30. 201 IF I=8 THEN POKE &H241,233:POKE &H242,136:POKE &H243,0:GOTO 310
  31. 205 OF=168      'OF=167 for SSC grabber-other TIF file sources, experiment with this offset
  32. 210 LB=INT(L/256):LA=L-256*LB:POKE &H235,LA:POKE &H236,LB
  33. 220 LLB=INT(LL/256):LLA=LL-256*LLB:POKE &H1B9,LLA:POKE &H1BA,LLB
  34. 230 LIB=INT(LI/256):LIA=LI-256*LIB:POKE &H18B,LIA:POKE &H18C,LIB
  35. 231 IF I=9 THEN POKE &H1A7,192:POKE &H191,128:POKE &H192,7
  36. 232 IF I=7 THEN POKE &H22C,49
  37. 233 IF I=77 THEN POKE &H22C,49:POKE &H23D,12
  38. 234 IF I=4 THEN POKE &H23D,9
  39. 235 IF I=96 THEN POKE &H239,154:POKE &H23A,0:POKE &H191,128:POKE &H192,7:POKE &H244,233:POKE &H245,157:POKE &H246,0:POKE &H23D,3
  40. 240 PRINT:PRINT:PRINT:INPUT"   What TIF Path/File name (include suffix)";OF$
  41. 241 IF OF$="" THEN GOTO 240
  42. 242 PRINT:PRINT:PRINT:INPUT"   Pixel offset to center desired part of image (Default=0)";PO
  43. 243 OF=OF+3*PO:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H163,OF1:POKE &H164,OF2
  44. 250 PRINT:PRINT:PRINT:INPUT"   Output File Path/Name-program adds suffix(Default=d:a.p)";PIX$
  45. 260 IF PIX$="" THEN PIX$=DR$+":a.p":MO$=""
  46. 270 NF$=PIX$+MO$
  47. 280 K=&H100:CALL K(K%,L%,OF$,NF$)
  48. 285 IF I=96 THEN L=546:LL=1638:P=536:GOTO 1895
  49. 290 GOTO 400
  50. 310 FOR Y=742 TO 745
  51. 320 POKE (&H12E0+Y),138:NEXT Y
  52. 330 GOTO 205
  53. 400 BLOAD "vu64ba.asm",&H100
  54. 410 A$=NF$
  55. 420 IF I=3 THEN L=288
  56. 430 IF I=3 THEN L=288
  57. 440 IF I=4 THEN L=184
  58. 450 IF I=5 THEN L=256
  59. 460 IF I=6 THEN L=320
  60. 470 IF I=7 THEN GOTO 740
  61. 480 IF I=77 THEN GOTO 740
  62. 490 IF I=8 THEN L=248
  63. 602 POKE &H226,2  'No. poked here=pixels scrolled per left arrow depression
  64. 605 POKE &H427,PT
  65. 607 IF I=9 THEN GOTO 900
  66. 610 P=L-PT:P2=INT(P/256):P1=P-P2*256
  67. 620 POKE &H15D,P1:POKE &H15E,P2:POKE &H45B,P1:POKE &H45C,P2
  68. 630 IF I=4 THEN POKE &H3EA,16:LL=568
  69. 635 IF I=5 THEN POKE &H3EA,0:LL=768
  70. 640 IF I=7 THEN POKE &H3EA,9:LL=915
  71. 641 IF I=77 THEN POKE &H3EA,8:LL=464
  72. 642 IF I=8 THEN POKE &H3EA,1:LL=745
  73. 645 IF I=6 THEN POKE &H3EA,0:LL=960
  74. 650 IF I=3 THEN POKE &H3EA,14:LL=878
  75. 651 IF EX=0 THEN GOTO 659
  76. 652     'next two lines put in expand by 2 for modes desired
  77. 653 IF I=4 THEN P=320:POKE &H43B,235:POKE &H43C,27:POKE &H15A,0:POKE &H15B,2
  78. 654 IF I=77 THEN P=2*P:POKE &H43B,235:POKE &H43C,27:POKE &H15A,0:POKE &H15B,2
  79. 659 OF=(640-2*P)/2:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H13B,OF1:POKE &H13C,OF2
  80. 660 LL2=INT(LL/256):LL1=LL-256*LL2:POKE &H1FD,LL1:POKE &H1FE,LL2:POKE &H242,LL1:POKE &H243,LL2
  81. 670 IF V=1 THEN GOTO 683
  82. 680 VC=0:PRINT:PRINT:PRINT"  Is Video Card (1)Trident mode 5D (2)Tseng mode 2E (3)ATI mode 62"
  83. 681 INPUT"(4)Paradise mode 5F (5)Chips&Tech mode 79 (6)Genoa mode 5C (7)VESA (Default=1)";VC
  84. 682 IF VC=0 THEN VC=1       'default choice
  85. 683 IF VC=1 THEN GOTO 1590
  86. 684 IF VC=2 THEN GOTO 710
  87. 685 IF VC=3 THEN GOTO 1600
  88. 686 IF VC=4 THEN GOTO 1650
  89. 690 IF VC=5 THEN GOTO 1700
  90. 700 IF VC=6 THEN GOTO 1750
  91. 701 IF VC=7 THEN GOTO 1800
  92. 705 GOTO 680
  93. 710 POKE &H113,46:POKE &H142,205:POKE &H144,136:POKE &H145,216:POKE &H146,238:POKE &H147,195
  94. 720 K=&H100
  95. 721 IF I=99 THEN CALL K(C%,S%,A$):GOTO 730
  96. 722 CALL K(S%,A$)
  97. 730 KEY ON
  98. 731 PRINT:PRINT:PRINT:PRINT"    If you need to center pix better, hit F2 to re-RUN. If pix is OK"
  99. 732 PRINT"   and you used d:a.p option, hit F10 and ENTER to return to DOS so you"
  100. 733 PRINT"   can copy the d:a.p file to whatever name and location you want.":END
  101. 740 POKE &H180,128:POKE &H3DA,128:POKE &H3CB,64:POKE &H3BC,192
  102. 745 IF I=77 THEN L=152:GOTO 602
  103. 750 L=302:GOTO 602
  104. 800 L=282
  105. 801 BLOAD "vurobol.asm",&H100
  106. 802 POKE &H4BD,10:POKE &H350,10      'initial color offset in robot 72
  107. 810 PT=4     'pixels trimmed on Robot 72
  108. 815 POKE &H16A,(141-PT):POKE &H3D4,(141-PT)
  109. 816 POKE &H46A,(76+4*PT)
  110. 817 POKE &H4D5,(75+4*PT)
  111. 825 POKE &H337,TU:POKE &H33F,TU:POKE &H2D7,TU:POKE &H2DF,TU
  112. 835 IF BR=0 THEN POKE &H4EC,208:POKE &H4ED,232:POKE &H4EE,235:POKE &H4EF,4
  113. 840 IF BR=2 THEN POKE &H4EC,235:POKE &H4ED,6
  114. 850 OF=(640-2*L)/2:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H13B,OF1:POKE &H13C,OF2
  115. 860 POKE &H226,2:POKE &H1FD,102:POKE &H1FE,2:POKE &H242,102:POKE &H243,2:POKE &H15D,102
  116. 861 IF I=2 THEN GOTO 870
  117. 862 POKE &H1FD,85:POKE &H242,85:POKE &H15D,85
  118. 870 GOTO 670
  119. 900 POKE &H15D,24:POKE &H15E,2:POKE &H184,235:POKE &H185,1:POKE &H180,0:POKE &H3A8,235:POKE &H3A9,57
  120. 910 POKE &H3EA,10:POKE &H3A2,224:POKE &H3A3,1:POKE &H13B,52:POKE &H13C,0:POKE &H16A,128:POKE &H16B,2
  121. 920 LL=546:GOTO 660
  122. 950 PRINT:PRINT:PRINT:INPUT"   Do you choose (1)1024x768 or (2)640x480 (Default=1)";S
  123. 960 IF S=0 THEN S=1
  124. 970 BLOAD "vuwx.asm",&H100
  125. 980 IF S=2 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1:POKE &H113,93
  126. 981 PRINT:PRINT:INPUT"   What White level count do you choose (Default=138)";W
  127. 982 IF W=0 THEN W=138
  128. 985 POKE &H170,W:POKE &H174,W:POKE &H176,W
  129. 990 GOTO 680
  130. 1100 BLOAD "vuro36l.asm",&H100
  131. 1102 IF BR=0 THEN POKE &H4EC,208:POKE &H4ED,232:POKE &H4EE,235:POKE &H4EF,4
  132. 1103 IF BR=2 THEN POKE &H4EC,235:POKE &H4ED,6
  133. 1104 POKE &H4BD,8:POKE &H350,8      'initial color offset in robot 36
  134. 1110 LL=616:POKE &H13B,140:POKE &H226,1:POKE &H15D,100:POKE &H1F2,12
  135. 1120 IF I=11 THEN LL=576:POKE &H15D,64:POKE &H3BB,64:POKE &H3EF,0:POKE &H4A8,0:POKE &H441,0:POKE &H2F6,32:POKE &H303,32
  136. 1130 GOTO 660
  137. 1590 IF I=6 THEN POKE &H113,&H5C
  138. 1595 GOTO 720
  139. 1600 POKE &H113,&H62:POKE &H444,192:POKE 321,235:POKE 322,90  'ATI video mode 62
  140. 1610 POKE 324,136:POKE 325,196
  141. 1615 POKE 326,128:POKE 327,228:POKE 328,225:POKE 329,208:POKE 330,227:POKE 331,8
  142. 1620 POKE 332,220:POKE 333,176:POKE 334,178:POKE 335,254:POKE 336,202:POKE 337,239:POKE 338,195
  143. 1630 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1:POKE 321,233:POKE 322,66:POKE 323,4:POKE &H58A,192
  144. 1635 IF I=6 THEN POKE &H113,&H61
  145. 1640 GOTO 720
  146. 1650 POKE &H113,&H5F:POKE 321,186:POKE 322,206          'Paradise video mode 5f
  147. 1660 POKE 323,3:POKE 324,176:POKE 325,9:POKE 326,136:POKE 327,220:POKE 328,208
  148. 1665 POKE 329,228:POKE 330,208:POKE 331,228:POKE 332,208:POKE 333,228:POKE 334,208:POKE 335,228
  149. 1670 POKE 336,239:POKE 337,195
  150. 1680 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
  151. 1685 IF I=6 THEN POKE &H113,&H5E
  152. 1690 GOTO 720
  153. 1700 POKE &H113,&H79:POKE 321,186:POKE 322,214            'Chips & Tech Mode 79
  154. 1710 POKE 323,3:POKE 324,176:POKE 325,16:POKE 326,136:POKE 327,220:POKE 328,208
  155. 1715 POKE 329,228:POKE 330,208:POKE 331,228:POKE 332,239:POKE 333,195
  156. 1730 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
  157. 1735 IF I=6 THEN POKE &H113,&H78
  158. 1740 GOTO 720
  159. 1750 POKE &H113,&H5C:POKE 321,186:POKE 322,196                   'Genoa mode 5c
  160. 1760 POKE 323,3:POKE 324,176:POKE 325,6:POKE 326,238:POKE 327,66:POKE 328,236
  161. 1765 POKE 329,36:POKE 330,199:POKE 331,128:POKE 332,227:POKE 333,7:POKE 334,208
  162. 1770 POKE 335,227:POKE 336,208:POKE 337,227:POKE 338,208:POKE 339,227:POKE 340,8
  163. 1780 POKE 341,216:POKE 342,238:POKE 343,195
  164. 1785 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
  165. 1787 IF I=6 THEN POKE &H113,&H7E
  166. 1790 GOTO 720
  167. 1800 POKE &H111,79:POKE &H113,2:POKE 321,177                   'VESA mode 101
  168. 1810 POKE 322,BS:POKE 323,210:POKE 324,227:POKE 325,136:POKE 326,218
  169. 1820 POKE 327,48:POKE 328,246:POKE 329,184:POKE 330,5:POKE 331,79:POKE 332,49:POKE 333,219:POKE 334,205
  170. 1821 POKE 335,16:POKE 336,195
  171. 1825 IF S=1 THEN POKE &H44A,5:GOTO 1840
  172. 1830 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
  173. 1835 'IF I=6 THEN POKE &H398,0
  174. 1840 GOTO 720
  175. 1895 A$=NF$
  176. 1900 BLOAD "trusho.asm",&H100
  177. 1905 P2=INT(P/256):P1=P-256*P2:POKE &H3B0,P1:POKE &H3B1,P2:POKE &H46B,P1:POKE &H46C,P2
  178. 1910 OF=3*(640-P)/2:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H13C,OF1:POKE &H13D,OF2:POKE &H512,OF1:POKE &H513,OF2
  179. 1915 Z=2*L:ZB=INT(Z/256):ZA=Z-256*ZB:POKE &H3CA,ZA:POKE &H3CB,ZB
  180. 1920 W=2*L+32:WB=INT(W/256):WA=W-256*WB:POKE &H3A9,WA:POKE &H3AA,WB:POKE &H3E5,WA:POKE &H3E6,WB
  181. 1925 LB=INT(L/256):LA=L-256*LB:POKE &H3BC,LA:POKE &H3BD,LB:POKE &H3C3,LA:POKE &H3C4,LB
  182. 1930 U=3*L:UB=INT(U/256):UA=U-256*UB:POKE &H55F,UA:POKE &H560,UB:POKE &H531,UA:POKE &H532,UB
  183. 1935 POKE &H427,10:POKE &H226,2  'poke to &h226 is pixels per left arrow depress
  184. 1940 LL2=INT(LL/256):LL1=LL-256*LL2:POKE &H1FD,LL1:POKE &H1FE,LL2:POKE &H242,LL1:POKE &H243,LL2:POKE &H15D,LL1:POKE &H15E,LL2
  185. 1945 Q=BL-3*P:QB=INT(Q/256):QA=Q-256*QB:POKE &H3D6,QA:POKE &H3D7,QB
  186. 1950 POKE &H39A,233:POKE &H39B,107:POKE &H39C,253:POKE &H11A,0:POKE &H11B,0:POKE &H2B8,235:POKE &H2B9,6:POKE &H3AC,1:POKE &H3B4,1
  187. 1951 POKE &H3A2,224:POKE &H3A3,1
  188. 1955 GOTO 1800
  189. 2000    '                   SYSTEM CONFIGURATION
  190. 2010    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  191. 2020 V=0     'V=0 is manual video card choice---V=1 is automatic choice
  192. 2030 VC=1    'Video card 1=Trident 2=Tseng 3=ATI 4=Paradise 5=Chips 6=Genoa
  193. 2040         '7=VESA (VESA card or VESA driver.Pick BS below to get full pix).
  194. 2045 BS=4    'BANK SHIFT FOR DIFFERENT VESA CONFIGURATIONS-VALUES FROM 0 TO 6
  195. 2046 BL=2048 'Bytes/Line in TRUCOLOR modes-ATI=1920 and Diamond PRO=2048
  196. 2050 DR$="d" 'RAMDISK drive designation--make letter D match your drive
  197. 2060 BR=2    'Robot brightness control-br=2 is high-br=1 is med-br=0 is low
  198. 2070 TU=2    'Robot tuning increment with F and G in ten's of cycles
  199. 2080 PT=6    'Pixels trimmed from edge of picture--see line 810 for Robot
  200. 2090 EX=1    'For S2 and M2. EX=0 is as rcvd. EX=1 is EXpanded to fill screen
  201. 2100 GOTO 20
  202.