home *** CD-ROM | disk | FTP | other *** search
/ The Glitch Apple Disk Collection / 2014.glitch.apple.collection.zip / indexed / CARTELS.DSK / BS-COMP.bas < prev    next >
BASIC Source File  |  2014-09-09  |  6KB  |  72 lines

  1. 1  CALL 54915: DEF  FN I(A) = A *(A <32000) +32000 *(A > = 32000): POKE DS,0: GOTO 700
  2. 30 B = 0: FOR J = 1 TO 12:B = B + RND(1): NEXT :B = B -6: RETURN 
  3. 100 J = LN(I)/(AS(I) -CS(I)):I%(3) = 130 *J ^2:A = I%(3) +I%(4):I%(4) = I%(4) -A *(A <0):B = (D%(4,1) +I%(3) +I%(4))/1000:X = 0:X = 1 *(B >IT(I)) -1 *(B <IT(I)): RETURN 
  4. 190  ON A +1 GOTO 200,210,220,230,240,250,260,270,280
  5. 200  RETURN 
  6. 210 DP%(I) = SP%(I) *(1 +.03 *L): RETURN 
  7. 220 MK(I,1) = MK(I,1) *(1 -.15 *L): RETURN 
  8. 230 PP%(I) = PP%(I) *(1 +.1 *L): RETURN 
  9. 240 F1%(I) = 1: RETURN 
  10. 250 MK(I,1) = MK(I,1) *(1 +.3 *L): RETURN 
  11. 260 DP%(I) = SP%(I) *(1 -.03 *L): RETURN 
  12. 270 PP%(I) = PP%(I) *(1 -.1 *L): RETURN 
  13. 280 F1%(I) =  -1: RETURN 
  14. 700  FOR J = 1 TO 5:R%(I,J) = 0: NEXT :KK = (YR -1) *4 +QT:DP%(I) = SP%(I)
  15. 765 LW(I) = 0: IF LN(I) = 0  AND CS(I) >0  THEN 850
  16. 767  IF CS(I) >0  THEN LW(I) =  -1 *(CS(I) *(CS(I) < = LN(I)) +LN(I) *(CS(I) >LN(I)))
  17. 770 B = (E(I,1) *4 +E(I,2) *3 +E(I,3) *2 +E(I,4)) *.4:B = B *(B >0) -1 *(B < = 0):A = 10 *IT(I) *LN(I)/B -3
  18. 772 I%(4) = ((A *(A <17) +17 *(A > = 17)) *(B >0) +17 *(B <0)) *10 +.5: GOSUB 100: IF  ABS(B -IT(I)) <.035  AND LW(I) = 0  AND J *(CL(I) = 0) < = C%(I)/10  AND CS(I) >0  THEN 850
  19. 775  IF CS(I) <0  THEN LW(I) =  -CS(I)
  20. 840 CS(I) = CS(I) +LW(I):LN(I) = LN(I) +LW(I):AS(I) = AS(I) +LW(I): GOSUB 100:IT(I) = B *(LN(I) >0)
  21. 850 A = E(I,1):J = C%(I):C%(I) = J -(A <0) *(J >1) +(A >0) *(J <9):A =  INT(((AS(I) -CS(I)) *C%(I)/10 -LN(I))/100) *100:CL(I) = A *(A >0)
  22. 890 A = E(I,1):J = C%(I):C%(I) = J -(A <0) *(J >1) +(A >0) *(J <9):J = F1%(I):A = J *10:B = UQ%(I): IF J <0  THEN :A =  INT(B/(F%(I) -J) *J +.5)
  23. 930 B = B +A:UQ%(I) = B
  24. 960 R%(I,1) = 0: IF F%(I) = 0  OR UQ%(I) = 0  THEN LC(I) = LC: GOTO 1020
  25. 965 A =  INT((LC -LC(I))/LC(I) *100):B =  INT((PU%(I)/UQ%(I) +.25) *A +.5):B = B *(B <100) +100 *(B >99): IF A <10  OR B <5  THEN 1000
  26. 970  IF  RND(1) <.4 *(PU%(I)/UQ%(I))  THEN LC(I) = LC
  27. 1000  IF A < =  -5  AND  RND(1) <.3  THEN LC(I) = LC
  28. 1020 L = RD(I,0) +RD(I,1) +1: IF .01 ^(1/(L/600)) +V/4 < RND(1)  OR RD(I,1) *RD(I,2) = 0  OR K%(I) <0  OR PU%(I) = 0  OR QQ = 0  THEN 1085
  29. 1025 A = UQ%(I): IF  RND(1) <.1  THEN UQ%(I) = A + INT(A/10 +.5): GOTO 1070
  30. 1035  IF  RND(1) <.1  THEN A%(I) = A%(I) *.9: GOTO 1070
  31. 1040  IF (400 -L%(I))/4 <30  AND QQ >3  THEN R%(I,3) = 2: REM  ACCEPT AUTOMATION
  32. 1055 B = 0: FOR J = 0 TO T:B = B +PD%(J): NEXT :B = B +5:B = 5/B *P%(3):A =  INT(FC/1400) *100: IF MK(I,1) *MK(I,2)  AND (PD%(I) <10  OR B >1)  AND QQ >3  THEN R%(I,4) = 2: REM "ACCEPT PRODUCT
  33. 1060  IF R%(I,3) = 0  AND R%(I,4) = 0  THEN 1085
  34. 1070 RD(I,0) = RD(I,0) *.75
  35. 1085 A = YR *4 +QT: IF A >7  AND  RND(1) <(2 *V -PD%(I)/100)  AND PD%(I) <20  AND QQ >3  THEN R%(I,5) = 2:T%(I) = 15: IF  RND(1) >.5  THEN PD%(I) = PD%(I) +10:T1%(I) = 1
  36. 2030 M = 0:C = E(I,1) -O%(I): FOR J = 0 TO T:M = M +MK(J,1): NEXT 
  37. 2040 M = M/Q:M = M +(M = 0):A = (MK(I,1) -M)/M:L = (SP%(I) -D%(6,1))/D%(6,1):J =  -100:X = UQ%(I) +(T%(I) = 7) *10: IF X  THEN J = (PP%(I) -X)/X
  38. 2100  IF FM(I) = 0  AND LM(I) = 0  THEN 2240
  39. 2130  IF FM(I)  THEN 2200
  40. 2140 K = 1: IF MK(I,1) >M  AND A *P%(2) > -L *P%(1)  THEN K = 2
  41. 2150  IF PP%(I) <X  AND J >L  AND  -J >(A)  THEN K = 3
  42. 2160  IF F%(I) = 0  OR (D%(5,1)/Q >X +5  AND C%(I) = 9  AND PP%(I) >X  AND  RND(1) <.3)  AND QQ >3  THEN K = 43
  43. 2170  IF SL%(I)  THEN  IF C/SL%(I) < -.1 *SP%(I)  AND L <0  THEN K = 1
  44. 2190  GOTO 2320
  45. 2200 K = 5: IF SP%(I) >D%(6,1)  AND  -A *P%(2) <L *P%(1)  THEN K = 6
  46. 2210  IF PP%(I) >X  AND J > -A  AND J >L  THEN K = 7
  47. 2220  IF FM%(I) >X  AND D%(5,1)/Q <X -8  AND F1%(I) > = 0  THEN K = 87
  48. 2230  GOTO 2320
  49. 2240  IF C >.8 *AE  THEN K = 0: GOTO 2320
  50. 2260  IF PP%(I) >(D%(5,1)/Q)  OR PP%(I) >X  THEN 2290
  51. 2270 K = 30: IF MK(I,1) <M  THEN K = K +5: GOTO 2320
  52. 2280  IF SP%(I) >D%(6,1)  THEN K = K +6: GOTO 2320
  53. 2290  IF MK(I,1) <M  AND SP%(I) <D%(6,1)  THEN K = 15: GOTO 2320
  54. 2300  IF MK(I,1) >M  AND SP%(I) >D%(6,1)  THEN K = 26: GOTO 2320
  55. 2310 K = 0
  56. 2320 F1%(I) = (T%(I) = 7):A = SL%(I) +(SL%(I) = 0):L = (FM%(I) + INT(LM(I)/SP%(I)))/A:L = L *(L <1) +1 *(L > = 1):L = L *5:A = K - INT(K/10) *10: GOSUB 190:A =  INT(K/10): GOSUB 190
  57. 2330 A = MK(I,1): GOSUB 30:B = B +(K%(I) -3) *(YR = 0):MK(I,1) =  INT(A +A *B/5/(KK +1) ^2):A = DP%(I) *(BC +G(1))/2:DP%(I) = A +A *B/30/(KK +1) ^2:A = PP%(I):J = UQ%(I):A = (A +D%(5,1) *(FM%(I) = 0)/Q)/2:PP%(I) = A *(A > = J) +J *(A <J):MK(I,1) = MK(I,1) *(MK(I,1) >0)
  58. 2930 A = 1: IF C%(I) *AS(I)/10 -LN(I) +CS(I) <5000  THEN A = 0:RD(I,1) = 0: FOR J = 2 TO 4:R%(I,J) = 0: NEXT : IF F%(I) >1  THEN F1%(I) =  -1
  59. 2940  IF A = 0  THEN PP%(I) = (F%(I) +F1%(I)) *10 *(FM%(I) <F%(I) *10):RB%(I) = PP%(I) -RM%(I):RB%(I) = RB%(I) *(RB%(I) >0): GOTO 3000
  60. 2950 A = PP%(I): IF RT = 1  THEN RB%(I) = A -RM%(I)
  61. 2952  IF RT = 4  THEN RB%(I) = A +A *V: IF RM%(I) >2 *(A)  THEN RB%(I) = 0
  62. 2954  IF RT = 3  AND QT = 2  THEN RB%(I) = 4 *(1 +V) *A -RM%(I)
  63. 2956  IF RT = 3  AND QT < >2  THEN RB%(I) = A *(1 +V) -RM%(I) +A *(KK = 0)
  64. 2958  IF RT = 2  THEN J = RC *B2/D%(2,1):B =  INT((S0(1) -J -(RM%(I) -A)/A *10 +.4)/10):B = B *A:RB%(I) = B *(B >0): IF RB%(I) +RM%(I) <A *2  THEN J = A +A *2 *V *(S0(1) *1.2 >J):RB%(I) = RB%(I) *(RB%(I) >J) +J *(RB%(I) < = J): IF RB%(I) +RM% <(A)  THEN RB%(I) = A
  65. 2965 RB%(I) = RB%(I) *(RB%(I) >0)
  66. 2980 RD(I,1) = 300: IF QQ <4  OR PD%(I) >20  OR (400 -L%(I))/4 >30  THEN RD(I,1) = 0
  67. 3000 M%(I) = 0:O%(I) = 0: IF R%(I,5) = 0  THEN T%(I) = 0:T1%(I) = 0
  68. 5000 A = TZ/TQ: GOSUB 30:A =  INT(A +A/5 *B +.5):S1%(I) = A *(A >0) +(A < = 0):I = I +1: IF G = 1  AND YR  THEN H = H +1:I = H: IF H < = T  THEN I = D%(H,0)
  69. 5010  CALL 54915: IF I < = T  THEN  IN# 0: PR# 0: CALL 1002: IF K%(I) >1  THEN 1
  70. 5020  IF I < = T  THEN  CALL 16392"BS-REP1"
  71. 5030  FOR I = 0 TO 11: FOR J = 1 TO 6:S$(I,J) = "": NEXT : NEXT :I =  FRE(0)
  72. 5040  IN# 0: PR# 0: CALL 1002: CALL 16392"BS-MOD1"