home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 40 / 040.d81 / color select (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1987-01-01  |  3.7 KB  |  159 lines

  1. 5 SD$=""
  2. 6 J=56320
  3. 7 MM$(2)="[194]ORDER     [157][157][157][157][157]":MM$(3)="[194]ACKGROUND"
  4. 10 REM COLOR SELECT
  5. 20 GOSUB 10000 : REM CURRENT SETUP
  6. 22 :
  7. 30 CP=BO:DD$="[194][207][210][196][197][210][146]":OP=1
  8. 40 GOSUB 11000 : REM SELECT NEW BORDER
  9. 42 BO=CP
  10. 50 :
  11. 52 CP=BK:DD$="[194][193][195][203][199][210][207][213][206][196][146]":OP=2
  12. 60 GOSUB 11000 : REM SELECT NEW BK'GRND
  13. 62 BK=CP
  14. 70 :
  15. 72 CP=TE:DD$="[212][197][216][212][146]":OP=3
  16. 80 GOSUB 11000 : REM SELECT NEW TEXT
  17. 82 TE=CP
  18. 84 IFBK=TETHENGOSUB30000:GOTO20
  19. 90 GOSUB 12000 : REM ARE THESE OK
  20. 92 IFNOT(OK)THEN30
  21. 94 :
  22. 100 GOSUB 15000: REM CURRENT SIDE
  23. 102 SB=SI      : REM SIDE BOOTED
  24. 105 NS=3       : REM NUMBER OF SIDES
  25. 110 CS=1
  26. 120 GOSUB13000 : REM WRITE DATA TO FILE
  27. 130 CS=CS+1    : REM ON SIDE CS
  28. 140 IFCS<=NSTHEN120
  29. 150 :
  30. 160 GOSUB14000 : REM PUT SIDE SB IN
  31. 10000 REM GET CURRENT SETUP
  32. 10010 OPEN15,8,15,"I0"
  33. 10020 OPEN3,8,4,"SETUP"
  34. 10030 INPUT#3,D$(1),D$(2),D$(3),D$(4),D$(5),D$(6),D$(7)
  35. 10040 BO=VAL(D$(1))
  36. 10042 BK=VAL(D$(2))
  37. 10044 TE=VAL(D$(3))
  38. 10046 CLOSE3:CLOSE15
  39. 10050 RETURN
  40. 10060 :
  41. 11000 REM  SELECT NEW SOMETHING...
  42. 11005 PRINT"[147]"
  43. 11010 PRINT"":POKE646,TE
  44. 11020 POKE53280,BO:POKE53281,BK
  45. 11030 AA$="[211]ELECT NEW "+DD$+" COLOR":PRINTSPC(20-LEN(AA$)/2)AA$
  46. 11032 PRINT"         BY MOVING ARROW WITH"
  47. 11040 PRINT" JOYSTICK OR CURSOR KEYS.  [212]O SELECT A"
  48. 11050 PRINT"   COLOR, PRESS [[211][208][193][195][197]] OR [198][201][210][197][194][213][212][212][207][206]."
  49. 11055 IF(OP<>1)THENPRINT"    [208]RESS [198]1 TO RE-SELECT "MM$(OP)".":GOTO11060
  50. 11056 PRINT"                                     [160]"
  51. 11060 PRINT""SPC(10)"[208]RESS '_' TO EXIT."
  52. 11070 :
  53. 11080 PRINTSD$;
  54. 11090 FORX=0TO15:POKE646,X:PRINT" ";:NEXT:PRINT"[146]"
  55. 11095 POKE646,TE
  56. 11100 :
  57. 11110 PRINTSD$""SPC(CP)"^"
  58. 11120 :
  59. 11130 JY=PEEK(J):IFJY=127ANDPEEK(198)=0THEN11130
  60. 11140 GETA$
  61. 11145 IF(A$="[133]")AND(OP<>1)THENOP=OP-1:GOTO11260
  62. 11150 IFJY=111ORA$=CHR$(32)THEN11240
  63. 11155 IFA$="_"THENGOSUB20000:GOTO11005
  64. 11160 :
  65. 11170 IFJY=123ORA$="[157]"ORA$=""THENPRINTSD$""SPC(CP)" ":CP=CP-1:MM=-1:GOTO11190
  66. 11180 IFJY=119ORA$=""THENPRINTSD$""SPC(CP)" ":CP=CP+1:MM=1:GOTO11190
  67. 11185 GOTO11130
  68. 11190 GOSUB16000:REM MAKE SURE TEXT AND       BACKGROUND AREN'T THE SAME
  69. 11192 IFCP<0THENCP=15
  70. 11195 IFCP<0THENCP=15
  71. 11200 IFCP>15THENCP=0
  72. 11210 PRINTSD$""SPC(CP)"^"
  73. 11215 IFOP=1THENBO=CP
  74. 11216 IFOP=2THENBK=CP
  75. 11217 IFOP=3THENTE=CP
  76. 11220 GOTO11010
  77. 11230 :
  78. 11240 RETURN
  79. 11250 :
  80. 11260 PRINTSD$""SPC(CP)" "
  81. 11270 ONOPGOTO30,52,72
  82. 12000 REM THESE OK
  83. 12005 :
  84. 12010 PRINT"[147] [193]RE THESE SETTINGS WHAT YOU WANT ([217]/[206])?"
  85. 12020 POKE198,0:WAIT198,1:GETA$
  86. 12025 IFA$<>"Y"ANDA$<>"N"THEN12020
  87. 12030 IFA$="Y"THENOK=-1
  88. 12040 IFA$="N"THENOK=0
  89. 12050 RETURN
  90. 13000 REM  WRITE DATA TO DISK
  91. 13010 PRINT"[147][144]":POKE53281,1:POKE53280,4
  92. 13020 PRINT"  [208]LEASE PLACE SIDE #"CS"OF [204][207][193][196][211][212][193][210] IN"
  93. 13025 PRINT"     THE DRIVE AND PRESS [[211][208][193][195][197]]."
  94. 13030 POKE198,0:WAIT198,1:GETA$:IFA$<>" "THEN13030
  95. 13035 PRINT"              [215]ORKING..."
  96. 13040 GOSUB15000: REM WHAT SIDE IS IT?
  97. 13050 IFSI=CSTHEN13100
  98. 13060 PRINT"   !!! [211]IDE #"CS"NOT FOUND... !!!"
  99. 13070 FORDL=1TO2000:NEXT:GOTO13000
  100. 13080 :
  101. 13100 REM  OK, WRITE DATA
  102. 13110 OPEN15,8,15,"I0"
  103. 13120 D$(1)=MID$(STR$(BO),2)
  104. 13122 D$(2)=MID$(STR$(BK),2)
  105. 13124 D$(3)=MID$(STR$(TE),2)
  106. 13130 OPEN3,8,4,"SETUP":CR$=CHR$(13)
  107. 13140 PRINT#15,"P"CHR$(0)"";
  108. 13150 PRINT#3,D$(1)CR$D$(2)CR$D$(3)CR$D$(4)CR$D$(5)CR$D$(6)CR$D$(7)CR$
  109. 13160 CLOSE3:CLOSE15
  110. 13170 RETURN
  111. 13180 :
  112. 13999 END
  113. 14000 REM  PUT SIDE ONE BACK IN
  114. 14010 PRINT"[147][144]":POKE53281,1:POKE53280,4
  115. 14020 PRINT"  [208]LEASE PLACE SIDE # 1 OF [204][207][193][196][211][212][193][210] IN"
  116. 14022 PRINT" YOUR DRIVE AND PRESS [211][208][193][195][197] TO RETURN"
  117. 14024 PRINT" TO [204][207][193][196][211][212][193][210]."
  118. 14030 POKE198,0:WAIT198,1:GETA$:IFA$<>" "THEN14030
  119. 14040 GOSUB15000: REM WHAT SIDE IS IT?
  120. 14050 IFSI=1THEN14100
  121. 14060 PRINT"   !!! [211]IDE # 1 NOT FOUND... !!!"
  122. 14070 FORDL=1TO2000:NEXT:GOTO14000
  123. 14080 :
  124. 14100 GOTO60000 : REM CONNECT BACK
  125. 14130 :
  126. 15000 REM READ CURRENT SIDE
  127. 15010 OPEN15,8,15,"I0":CLOSE15
  128. 15020 OPEN2,8,2,"$"
  129. 15030 FORI=0TO156:GET#2,A$:NEXT
  130. 15040 GET#2,A$:SI=VAL(A$):CLOSE2
  131. 15050 RETURN
  132. 15060 :
  133. 16000 IF(OP=1)THENRETURN
  134. 16001 IFCP>15THEN16020
  135. 16002 IFCP<.THEN16030
  136. 16004 IF(BK+MM<>TE)AND(OP=2)THENRETURN
  137. 16005 IF(BK<>TE+MM)AND(OP=3)THENRETURN
  138. 16008 IF(BK<>TE+MM)AND(OP=3)THENRETURN
  139. 16010 CP=CP+MM
  140. 16020 IF(CP>15)AND(BK=.)AND(OP=3)THENCP=1
  141. 16030 IF(CP<0)AND(TE=15)AND(OP=2)THENCP=14
  142. 16060 RETURN
  143. 20000 REM QUIT
  144. 20010 PRINT"[147]  [193]RE YOU SURE YOU WANT TO QUIT ([217]/[206])?"
  145. 20020 POKE198,0:WAIT198,1:GETA$
  146. 20025 IFA$<>"Y"ANDA$<>"N"THEN20020
  147. 20030 IFA$="Y"THEN60000 : REM QUIT
  148. 20040 IFA$="N"THENRETURN
  149. 20050 :
  150. 30000 REM SAME BACKGROUND AND TEXT
  151. 30010 POKE53281,1:PRINT"[147][144]   [215]HY DID YOU PICK THE SAME COLOR FOR"
  152. 30020 PRINT"    THE [194][193][195][203][199][210][207][213][206][196] AND THE [212][197][216][212]???"
  153. 30030 PRINT"          [212]RY PICKING AGAIN..."
  154. 30040 FORDL=1TO3200:NEXT:RETURN
  155. 60000 REM  RETURN TO CUSTOMIZE MENU
  156. 60010 POKE646,PEEK(53281)
  157. 60015 PRINT"[147]LOAD"CHR$(34)"CUSTOM LS BOOT"CHR$(34)",8":PRINT"RUN"
  158. 60020 POKE631,13:POKE632,13:POKE198,2:END
  159.