100 DIM T(11),U(11),V(11),M(10),O(20),H(10),B(10),A(20) 110 PRINT"THIS DEMONSTRATION SHOWS YOU SOME VERSATILE FEATURES" 120PRINT"OF OMSI S PDP-8 COMPUTER BY SIMULATING A HORSE" 130 PRINT "RACE. UP TO TEN BETS CAN BE MADE. " 140 PRINT 150 PRINT" SEVENTH - 1 MILE, 3 YR. OLDS POST 2:35" 160 PRINT 170 PRINT"1 MAN O WAR 3:1" 180 PRINT"2 CITATION 4:1" 190 PRINT"3 WHIRLAWAY 5:1" 200 PRINT"4 ASSAULT 8:1" 210 PRINT"5 SEABISCUIT 9:1" 220 PRINT"6 GALLANT FOX 11:1" 230 PRINT"7 STYMIE 20:1" 240 PRINT"8 COALTOWN 30:1" 250 PRINT 260 LET S=0 270 LET S=S+1 280 PRINT 290 PRINT"BET NUMBER ";S 300 PRINT"ON WHAT HORSE DO YOU WISH TO BET (1-8)";\INPUT T(S) 310 IF T(S)>8 THEN 490\IF T(S)<1 THEN 490\LET T(S)=ABS(INT(T(S))) 320 PRINT" WIN , SHOW , OR PLACE ?"; 330 FOR C=1 TO 9\INPUT $D(C)\IF D(C)=141 THEN 350 340 LET D0=0\NEXT C 350 PRINT\FOR E=1 TO C-1\LET D0=D(E)+D0\NEXT E 360 IF D0=622 THEN 400 370 IF D0=833 THEN 410 380 IF D0=997 THEN 420 390 GO TO 320 400 LET U(S)=1\GO TO 430 410 LET U(S)=3\GO TO 430 420 LET U(S)=2\GO TO 430 430 PRINT "HOW MANY DOLLARS DO YOU WISH TO WAGER";\INPUT V(S) 440 IF V(S)>300 THEN 480 450 IF V(S)<2 THEN 480 460 LET V(S)=ABS(INT(V(S))) 470 GO TO 510 480 PRINT "BET MUST BE $2 OR GREATER BUT LESS THAN $300"\GO TO 430 490 PRINT"HORSE NUMBER IN ERROR (MUST BE 1,2,3,4,5,6,7,OR 8)" 500 GO TO 300 510 IF S=10 THEN 580\PRINT "ANYMORE BETS ( YES OR NO )? "; 520 FOR C=1 TO 10\INPUT $D(C)\IF D(C)=141 THEN 540 530 LET D0=0\NEXT C 540 PRINT\FOR E=1 TO C-1\LET D0=D(E)+D0\NEXT E 550 IF D0=625 THEN 270 560 IF D0=413 THEN 580 570 GO TO 510 580 PRINT 590 PRINT 600 PRINT" THEY RE OFF AND RUNNING -" 610 PRINT 620 LET M(0)=62.25 630 LET M(1)=60 640 LET M(3)=500/9 650 LET M (2)=350/6 660 LET M(4)=55 670 LET M(5)=650/12 680 LET M(6)=1100/21 690 LET M(7)=1600/31 700 LET O(1)=6 710 LET O(2)=8 720 LET O(3)=10 730 LET O(4)=16 740 LET O(5)=18 750 LET O(6)=22 760 LET O(7)=40 770 LET O(8)=60 780 FOR N=0 TO 7 790 LET H(N)=0 800 NEXT N 810 LET K=0 820 LET G=1 830 LET J=0 840 LET N=3*T(1)-U(1) 850 IF N>0 THEN 870 860 LET N=1 870 FOR Z5=S TO 5*V(S)+N 880 LET Z1=RND(Z1) 890 NEXT Z5 900 FOR Z5=1 TO 2000 910 IF INT(Z5/N)-G<>0 THEN 1090 920 LET H(J)=H(J)+RND(Z1)*M(J) 930 LET J=J+1 940 LET G=G+1 950 IF J<>8 THEN 1080 960 LET J=0 970 GO SUB 1600 980 LET D=H(B(0)-1) 990 LET K=K+1 1000 PRINT 1010 IF K=8 THEN 1050 1020 GO SUB 2170 1030 GO SUB 1840 1040 GO TO 1090 1050 PRINT" FINISH" 1060 LET Z5=500001 1070 GO SUB 1840 1080 LET Z1=RND(Z1) 1090 NEXT Z5 1100 PRINT 1110 PRINT 1120 PRINT"$2 MUTUELS PAID:" 1130 PRINT" STRAIGHT PLACE SHOW" 1140 LET K=0 1150 FOR I=0 TO 2 1160 GO SUB 1880 1170 LET J=I 1180 IF J=0 THEN 1220 1190 PRINT" "; 1200 LET J=J-1 1210 GO TO 1180 1220 FOR J=I TO 2 1230 LET L=I+I+J 1240 IF J>0 THEN 1270 1250 LET R=1 1260 GO TO 1280 1270 LET R=3*J 1280 LET H(L)=1.5+.01*INT((O(B(I))/R+RND(Z1))*100) 1290 PRINT H(L); 1300 NEXT J 1310 PRINT 1320 NEXT I 1330 PRINT 1340 LET Q=0 1350 FOR J=1 TO S 1360 PRINT "BET NO. ";J 1370 LET P=0 1380 FOR I=0 TO 2 1390 IF B(I) <> T(J) THEN 1460 1400 IF U(J)<=I THEN 1510 1410 LET P=.01*INT((V(J)*50)*H(I+I+U(J)-1)) 1420 PRINT "YOU COLLECT";P;"ON "; 1430 GO SUB 1880 1440 PRINT 1450 GO TO 1530 1460 NEXT I 1470 PRINT"TEAR UP YOUR TICKET ON "; 1480 FOR I = 3 TO 7 1490 IF B(I) = T(J) THEN 1430 1500 NEXT I 1510 PRINT"NEXT TIME, PURCHASE A SHOW TICKET ON "; 1520 GO TO 1430 1530 LET Q = Q+P-V(J) 1540 NEXT J 1550 IF Q<0 THEN 1580 1560 PRINT "YOUR TOTAL WINNINGS AMOUNT TO $";Q 1570 GO TO 1590 1580 PRINT "YOUR TOTAL LOSSES AMOUNT TO $";ABS(Q) 1590 GO TO 2370 1600 LET Q=0 1610 FOR L1=0 TO 7 1620 LET B(L1)=0 1630 LET A(L1)=0 1640 NEXT L1 1650 FOR L1=0 TO 7 1660 FOR L2=0 TO 7 1670 IF L1=L2 THEN 1710 1680 IF H(L1)<>H(L2) THEN 1710 1690 PRINT"RERUN PLEASE" 1700 GO TO 2370 1710 IF H(L1)L1 THEN 1810 1780 LET B(Q)=L2+1 1790 LET Q=Q+1 1800 LET L2=8 1810 NEXT L2 1820 NEXT L1 1830 RETURN 1840 PRINT"POS. HORSE LENGTHS BEHIND" 1850 PRINT 1860 FOR I=0 TO 7 1870 PRINT I+1; 1880 IF B(I)=1 THEN 2090 1890 IF B(I)=2 THEN2070 1900 IF B(I)=3 THEN 2050 1910 IF B(I)=4 THEN 2030 1920 IF B(I)=5 THEN 2010 1930 IF B(I)=6 THEN 1990 1940 IF B(I)=7 THEN 1970 1950 PRINT"COALTOWN "; 1960 GO TO 2100 1970 PRINT"STYMIE "; 1980 GO TO 2100 1990 PRINT"GALLANT FOX"; 2000 GO TO 2100 2010 PRINT "SEABISCUIT "; 2020 GO TO 2100 2030 PRINT"ASSAULT "; 2040 GO TO 2100 2050 PRINT"WHIRLAWAY "; 2060 GO TO 2100 2070 PRINT"CITATION "; 2080 GO TO 2100 2090 PRINT"MAN O WAR "; 2100 IF K=0 THEN 2160 2110 IF I>0 THEN 2140 2120 PRINT 2130 GO TO 2150 2140 PRINT INT(INT(D-H(B(I)-1)))/10 2150 NEXT I 2160 RETURN 2170 IF K=1 THEN 2250 2180 IF K=2 THEN 2270 2190 IF K=3 THEN 2290 2200 IF K=4 THEN 2310 2210 IF K=5 THEN 2330 2220 IF K=6 THEN 2350 2230 PRINT" COMING DOWN THE STRETCH -" 2240 GO TO 2360 2250 PRINT" AS THEY BREAK FROM THE GATE -" 2260 GO TO 2360 2270 PRINT" AT THE 1/4 MILE POLE -" 2280 GO TO 2360 2290 PRINT" NEARING THE HALFWAY MARK -" 2300 GO TO 2360 2310 PRINT" MIDWAY IN THE RACE -" 2320 GO TO 2360 2330 PRINT" AT 5/8 OF A MILE -" 2340 GO TO 2360 2350 PRINT " ROUNDING THE TURN -" 2360 RETURN 2370 PRINT\PRINT"THANK YOU FOR PLAYING!!" 2380 PRINT\PRINT\PRINT 2390 CHAIN "DEMON " 2400 END " 2470 END " 2470 END " 2470 END " 2470 END " 2470 END " 2470 END " 2470 END " 2470 END 8HX;&K^[^K:8 A"X/[U?8A!