home *** CD-ROM | disk | FTP | other *** search
/ Pegasus Graphics Universe / Pegasus_Graphics_Universe.iso / p11 / utils / chgcolor.txt next >
Text File  |  1990-06-05  |  7KB  |  251 lines

  1. \SCRE 0,0,19\READ /P11/FONT19/081119PW.FON
  2. \READ /P11/HUES/P11_TEXT.HUE\CLEAR SCREEN
  3. \MOVE ' ' TO #6
  4. \MOVE ' ' TO #7
  5. \MOVE 0 TO #345  ;FRAME COUNTER
  6. \MOVE 0 TO #40   ;FIRST COLOR REGISTER
  7. \ON KEY F10 JUMP MAINMENU
  8. \ON KEY F1 JUMP INTRO
  9. \X INTRO
  10. \LOC 0,0\WID 320 DOTS\HEIGH 199\OVER 1,A,216
  11. This program lets you convert a picture file
  12. from 256 color mode to a lower mode. 
  13. \"
  14. It will ask you what file you want to convert,
  15. then display the first frame of the file.
  16. \"
  17. It will then scan the first image and as you to
  18. specify a color for each color it encounters.
  19. It can handle about thirty colors.
  20. \WAIT RET -1\LOC 0,0
  21. It will save an auxbox under the name of the
  22. picture file (NNNNNNNN.AUX) that contains the 
  23. picture file name and the color selections.
  24. \"
  25. This auxfile can be modified manually if you 
  26. like, or just reused.
  27. \"
  28. After getting all the information it needs it
  29. will cycle through the frames and create a new
  30. frame for each frame.  When it is finished, it
  31. will beep.  At that point, save the file
  32. which is in RAM.  It will have deleted the original pictures
  33. but NOT changed the picname!
  34. \WAIT RET -1\LOC 0,0\OVER 1,A,217
  35. \X MAINMENU
  36. \LOC 0,0\WID 320 DOTS CENTERED\OVER 1,A,219\HEIGH 199\CLEAR SCREEN
  37. MAIN MENU (PRESS F10 TO GET HERE)
  38. \LOC 20,20\WID 280 DOTS\OVER 1,A,218
  39. 1) NAME A PICTURE
  40. 2) SPECIFY SIZE
  41. 3) SET COLORS
  42. 4) READ AUX COLOR CHOICE FILE
  43. 5) SAVE COLOR CHOICE FILE
  44. 6) LET PROGRAM CREATE NEW COLORS
  45. 7) END, SO YOU CAN SAVE THE FILE.
  46. \CLEAR ON KEYS
  47. \CURSOR 22,22\QUEST #2,0
  48. \IF #2>7 OR #2<1\BEEP\JUMP MAINMENU\ENDIF
  49. \IF #2<>1\JUMP NOT1\ENDIF
  50. \X READ_AGAIN
  51. \CLEAR PICS
  52. \LOC 0,0\WID 320 DOTS CENTERED\OVER 0,A,229\HEIGH 199
  53. \"
  54. Enter the name of the file you wish to read:
  55. \"
  56. \"
  57. \"
  58. \LINE 0,30,320,200,0,BF
  59. \LENGTH #6
  60. \IF A=2 OR A>12\MOVE 'SAMPLE.PIC' TO #6\JUMP NEWNAME\ELSE
  61. \IF A=0\MOVE 'SAMPLE.PIC' TO #6\JUMP NEWNAME\ENDIF
  62. \MOVE 2 TO H
  63. \X CLEARNAMELOOP
  64. \MOVE #6[H,1] TO #4
  65. \IF #4='.'
  66. \MOVE #6[1,H-1] TO #6\BUILD #6=#6,'.PIC'
  67. \ELSE
  68. \IF H<A\ADD 1 TO H\JUMP CLEARNAMELOOP
  69. \ENDIF
  70. \X NEWNAME
  71. \CURSOR 13,0\QUESTION #6,40
  72. \IF #6=' '\JUMP MAINMENU\ENDIF
  73. \MOVE 0 TO #66
  74. \ON ERROR JUMP BAD_READ
  75. \MOVE 0 TO A
  76. \READ (#6)
  77. \CLEAR ON ERRORS
  78. \FRAME ?\MOVE A TO #345
  79. \IF A=0\JUMP READ_AGAIN\ENDIF
  80. \JUMP FILE_READ
  81. \X BAD_READ
  82. \LOC 90,56\HEI 20\OVE 0,A,223\WID 130 DOTS
  83. File not found.
  84. \WAIT RET -1
  85. \JUMP READ_AGAIN
  86. \X FILE_READ
  87. \JUMP MAINMENU
  88. \X NOT1
  89. \IF #2<>2\JUMP NOT2\ENDIF
  90. \CLEAR SCREEN
  91. \SHOW 0,0,1
  92. \LOC 100,100\WID 100 DOTS\OVER 0,A,225\HEIGH 99
  93. Is this the correct file?
  94. (If not, press F10 to go to the main menu.)
  95. \LOC 0,180\WID 320 DOTS\HEI 11 \OVER 0,A,228
  96. F2-next frame.    F3-previous.
  97. \MOVE 1 TO W
  98. \ON KEY F2 JUMP NEXTFRAME\ON KEY F3 JUMP LASTFRAME\JUMP SHOWIT
  99. \X LASTFRAME\IF W>1\SUBTRACT 1 FROM W\ELSE\MOVE #345 TO W\ENDIF\JUMP SHOWIT
  100. \X NEXTFRAME\IF W<#345 \ADD 1 TO W\ELSE\MOVE 1 TO W\ENDIF
  101. \X SHOWIT\SHOW 0,0,W
  102. \WAIT NOW -1\ON KEY F2\ON KEY F3
  103. \LOC 100,100\WID 100 DOTS\OVER 1,A,222\HEIGH 99
  104. Move the mouse to the upper left corner
  105. of the frame and click...
  106. \MOUSE\MOVE D TO #11\MOVE E TO #12
  107. \X WAITMOUSE\IF F<>0\JUMP WAITMOUSE\ENDIF
  108. \LOC 100,100\WID 100 DOTS\OVER 1,A,220\HEIGH 99
  109. Now move mouse to the lower right corner and click...
  110. \MOUSE F=99,0\MOVE D TO #13\MOVE E TO #14\+
  111. \IF D<#11\MOVE #11 TO #13\MOVE D TO #11\ENDIF
  112. \IF E<#12\MOVE #12 TO #14\MOVE E TO #12\ENDIF
  113. \CLEAR MOUSE\ON KEY F3\ON KEY F2
  114. \JUMP MAINMENU
  115. \X NOT2
  116. \IF #2<>4\JUMP NOTROX\ENDIF
  117. \X READ_AUXAGAIN
  118. \LOC 0,0\WID 320 DOTS CENTERED\OVER 0,A,229\HEIGH 199
  119. \"
  120. Enter the name of the color choice file you wish to read:
  121. \"
  122. \"
  123. \"
  124. \LINE 0,32,320,200,0,BF
  125. \LENGTH #7
  126. \IF A=2\ELIMINATE #7\JUMP NEWROXNAME\ELSE
  127. \IF A=0\JUMP NEWROXNAME\ENDIF
  128. \MOVE 2 TO H
  129. \X CLEAROXNAMELOOP
  130. \MOVE #7[H,1] TO #4
  131. \IF #4='.'
  132. \MOVE #7[1,H-1] TO #7\BUILD #7=#7,'.AUX'
  133. \ELSE
  134. \IF H<A\ADD 1 TO H\JUMP CLEAROXNAMELOOP
  135. \ENDIF
  136. \X NEWROXNAME
  137. \CURSOR 13,0\QUESTION #7,40
  138. \IF #7=' '\JUMP MAINMENU\ENDIF
  139. \MOVE 0 TO #67
  140. \ON ERROR CALL BAD_ROXREAD
  141. \READ (#7)\ON ERROR
  142. \JUMP ROXFILE_READ
  143. \X BAD_ROXREAD
  144. \LOC 90,56\HEI 20\OVE 0,A,223\WID 130 DOTS
  145. File not read correctly.
  146. \WAIT RET -1
  147. \RETURN
  148. \X ROXFILE_READ
  149. \JUMP MAINMENU
  150. \X NOTROX
  151. \IF #2<>5\JUMP NOT3\ENDIF
  152. \X WRITE_AUXAGAIN
  153. \LOC 0,0\WID 320 DOTS CENTERED\OVER 0,A,229\HEIGH 199
  154. \"
  155. Enter the name of the file you wish to save:
  156. \"
  157. \"
  158. \"
  159. \LINE 0,45,320,200,0,BF
  160. \LENGTH #7
  161. \IF A=2\ELIMINATE #7\JUMP NEWAUXNAME\ELSE
  162. \IF A=0\JUMP NEWAUXNAME\ENDIF
  163. \MOVE 2 TO H
  164. \X CLEARAUXNAMELOOP
  165. \MOVE #17[H,1] TO #4
  166. \IF #4='.'
  167. \MOVE #17[1,H-1] TO #17\BUILD #17=#17,'.AUX'
  168. \ELSE
  169. \IF H<A\ADD 1 TO H\JUMP CLEARAUXNAMELOOP
  170. \ENDIF
  171. \X NEWAUXNAME
  172. \CURSOR 13,0\QUESTION #17,40
  173. \IF #17=' '\JUMP MAINMENU\ENDIF
  174. \MOVE 0 TO #67
  175. \ON ERROR CALL BAD_AUXWRITE
  176. \WRITE (#17)\ON ERROR
  177. \JUMP AUXFILE_WRITE
  178. \X BAD_AUXWRITE
  179. \LOC 90,56\HEI 20\OVE 0,A,223\WID 130 DOTS
  180. File not written correctly.
  181. \WIAT RET -1
  182. \RETURN
  183. \X AUXFILE_WRITE
  184. \JUMP MAINMENU
  185. \X NOT3
  186. \IF #2<>3\JUMP NOT4\ENDIF
  187. \CLEAR SCREEN\SAVE SCREEN\SHOW 0,0,1
  188. \MOVE 0 TO W\MOVE 40 TO G
  189. \X COLORBARS
  190. \LINE 300,W*8,305,W*8+8,W,BF
  191. \ADD 1 TO W
  192. \IF W<16\JUMP COLORBARS\ENDIF
  193. \LOC 100,100\WID 100 DOTS\OVER 0,A,227\HEIGH 99
  194. Click on each color.  Press F6 to set next color.  Press F5 when finished.
  195. \LOC 0,180\WID 320 DOTS\HEI 11 \OVER 0,A,228
  196. F2-next frame.    F3-previous.
  197. \MOVE 1 TO W\MOVE 0 TO #9
  198. \ON KEY F2 JUMP NXTFRM\ON KEY F3 JUMP LSTFRM\JUMP SHWIT
  199. \X LSTFRM\IF W>1\SUBTRACT 1 FROM W\ELSE\MOVE #345 TO W\ENDIF\JUMP SHWIT
  200. \X NXTFRM\IF W<#345 \ADD 1 TO W\ELSE\MOVE 1 TO W\ENDIF\JUMP SHWIT
  201. \X NEXTREDUCEDCOLOR
  202. \ADD 1 TO #9\IF #9>15\MOVE 0 TO #9\ENDIF
  203. \X SHWIT\SHOW 0,0,W\LINE 300,185,305,199,#9,BF
  204. \CURSOR 30,22\DISPLAY #9\CALL SHOWDOTS
  205. \X MOUSE_COLORS\ON KEY F5 JUMP COLRDONE
  206. \ON KEY F6 JUMP NEXTREDUCEDCOLOR
  207. \MOUSE L=X,Y\DOT D,E,?\MOVE A TO #G\MOVE G+30 TO U\MOVE #9 TO #U\+
  208. \BEEP\MOVE D TO X\MOVE E TO Y\DOT X,Y,#9
  209. \LINE 306,(G-40)*4,310,(G-40)*4+4,A,BF
  210. \X CLEARMOUSE\IF F<>0\JUMP CLEARMOUSE\ENDIF
  211. \ADD 1 TO G
  212. \IF G<70\JUMP MOUSE_COLORS\ENDIF
  213. \X COLRDONE\ON KEY F5
  214. \MOVE G TO #10
  215. \JUMP MAINMENU
  216. \X NOT4
  217. \IF #2<>6\JUMP NOT5\ENDIF
  218. \FRAME ?
  219. \MOVE A TO W\MOVE 1 TO #8
  220. \X FRAME_LOOP
  221. \CLEAR SCREEN
  222. \SHOW 0,0,#8
  223. \MOVE #11 TO X\MOVE #12 TO Y
  224. \X COLOOP1\DOT X,Y,?
  225. \MOVE 40 TO G
  226. \X COLOOP2\IF A=#G\MOVE G+30 TO U\MOVE #U TO H
  227. \DOT X,Y,H\ELSE\ADD 1 TO G\IF G<#10\JUMP COLOOP2\ENDIF
  228. \ADD 1 TO X\IF X<=#13+1\JUMP COLOOP1\ENDIF
  229. \ADD 1 TO Y\IF Y<=#14+1\MOVE #11 TO X\JUMP COLOOP1\ENDIF
  230. \SHOW 0,0,#8,#8,S
  231. \ADD 1 TO #8
  232. \IF #8<=W\JUMP FRAME_LOOP\ENDIF
  233. \JUMP MAINMENU
  234. \X NOT5
  235. \IF #2<>7\JUMP NOT6\ENDIF
  236. \LOC 0,0\WID 320 DOTS\HEIG 199\OVER 0,A,224
  237. Now you should save the file you have created.
  238. It has the same number of frames as the
  239. original but the colors are changed.  
  240. Suggestion:  Save with a different name!
  241. \"
  242. Press F10 to return to the main menu.
  243. \WAIT RET -1
  244. \END
  245. \JUMP MAINMENU
  246. \X NOT6
  247. \BEEP \JUMP MAINMENU
  248. \X SHOWDOTS
  249. \RETURN
  250. \END
  251.