1 REM modified 061485 by Bruce Ramsey       411 N 61st, Seattle, WA 98103
8 REM =# of players;=player;ٱ=year       =$/grain,ı=demand;=weather;        =land price;ñ=customs revenue
9 REM ӱ=sales tax rev.;ɱ=income tax       rev.;=net justice revenue
10 REM ũ=# of markets;ͨũ=# of mer       chants (5 per market):Ĩũ=# of       woollen mills:Өũ=# of serfs
11 REM ¨ũ=palace pts:Ψũ=nobles(RND       1-2/B(E));èũ=cathedral pts.
12 REM Ѩũ=# of clergymen(RND 1-6 per       cath.point;˨ũ=cash;̨ũ=land        Шũ=troops(paid $3/turn)
13 REM Ǩũ=customs duty;Ȩũ=sales tx       ɨũ=income tax;ʨũ=justice          Ԩũ=victory pts.(15 to win)
14 REM Ϩũ=you will die by this date        (1440-1455);Ҩũ=grain reserves       Өũ 0=alive,1=dead;֨ũ=sex
15 REM Ԥ=titles;פ=weather & harvest;       Τ=names;ʤ=level of justice;         Ԩũare you already sup.ruler?
16 REM ըũ=status pts.:cathedral pt.        adds 1;palace,0.5;mill,0.25;          market,0.1;Шũ=land prices
80 CLR :READ N1,N2,N3,N4,N5,N6,N7,N10,N100,KEY,DELAY
82 DATA 1,2,3,4,5,6,7,10,100,764,12000
100 DIM N$(49),T$(215),W$(34),L(N7),P(N7),C(N6),D(N6),A(N6),B(N6),S(N6),A$(23),K(N6),N1(30),N2(30),LP(N6)
110 DIM MT(N6),G(N6),V(N7),H(N6),I(N6),J(N6),O(N6),R(N6),T(N7),U(N6),N(N6),Q(N6),M(N6),J$(12),DS(N6):Y1=1400
120 FOR A=N1 TO 30:N1(A)=LEN(T$)+N1:READ A$:N2(A)=LEN(T$)+LEN(A$):T$(LEN(T$)+N1)=A$:NEXT A
200 GRAPHICS N0:SETCOLOR N2,N0,N2:POKE 82,N4:POKE 83,39:POKE 752,N1:POSITION 9,9
210 GOSUB 23000:POKE 82,N2
212 GOSUB KEY+N2:IF V=84 THEN 22000
215 IF V<>78 THEN 212
300 ? "}":POSITION N7,8:? "PODAJ LICZBE GRACZY (1-6)?":GOSUB KEY+N2:F=V:IF F<49 OR F>54 THEN 300
302 F=VAL(CHR$(F))
308 N$="                                                  ":N$(43,49)="PEPPONE"
310 FOR A=N1 TO F
315 A(A)=N0:B(A)=N0:C(A)=N0:D(A)=N0:DS(A)=N0
318 POKE 752,N0:? "}":POSITION 9,N5:? "IMIE GRACZA ";A;"?":POSITION 12,8:? "






";:? "";:? "";:INPUT A$
322 POKE 752,N1:IF LEN(A$)>N7 THEN A$=A$(N1,N7)
330 ? :N$(A*N7-N6,A*N7-N5+LEN(A$))=A$:? "} ";N$(A*N7-N6,A*N7-N7+LEN(A$));" to mezczyzna czy kobieta?";:V(A)=N0
331 GOSUB KEY+N2:IF V=75 THEN V(A)=15
334 IF V<>75 AND V<>77 THEN 331
400 G(A)=25:H(A)=N10:I(A)=N5:J(A)=N2:O(A)=1440+INT(RND(N0)*15):K(A)=1000:L(A)=10000:R(A)=5000:T(A)=N1:U(A)=N1:N(A)=N4
410 P(A)=25:Q(A)=N5:M(A)=25:S(A)=2000:LP(A)=N2:NEXT A
550 ? "}    PODAJ POZIOM GRY (0-9)":GOSUB KEY+N2:U=V:IF U<48 OR U>57 THEN 550
560 U(N0)=VAL(CHR$(U))+N6
600 E=E+N1:IF T(E)=-N1 THEN E=E+N1
620 AX=N0:FOR A=N1 TO N6:IF T(A)>N0 THEN AX=N1:NEXT A:IF AX=N0 THEN 11000
630 IF E>F THEN E=N0:Y1=Y1+N1:GOTO 600
640 IF Y1>O(E) THEN 600
650 IF Y1=O(E) OR L(E)<1001 THEN 1100
660 GOSUB 2000:GOSUB 2600:GOSUB 3000:GOSUB 5000
666 GOSUB 6000:GOSUB 7000
670 IF K(E)>N0 THEN K(E)=INT(K(E)*1.1)
675 GOTO 600
764 ? "ɤʠ٠"
766 CLOSE #N1:OPEN #1,N4,N0,"K:":BK=PEEK(16):IF BK>127 THEN BK=BK-128:POKE 16,BK:POKE 53774,BK
768 GET #N1,V:CLOSE #N1:RETURN 
1000 POKE 82,2:GOSUB 1001:F1=N1:GOTO 1005
1001 GRAPHICS N0:SETCOLOR N2,N0,N2:POKE 752,N1:? :? :? "WASALE":? :? "WOJOWNICY":? :? "KLER":? :? "KUPCY"
1002 ? :? "PODDANI":? :? "ZIEMIA":? :? "SKARB":? :? "KRAMY":? :? "MLYNY":RETURN 
1005 Z1=N1:FOR A=F1 TO F:POSITION N4+Z1*9,N1:? N$(A*N7-N6,A*N7):POSITION N5+Z1*9,N2:? N(A):POSITION N5+Z1*9,N4
1006 ? P(A):POSITION N5+Z1*9,N6:? Q(A):POSITION N5+Z1*9,8:? M(A):POSITION N5+Z1*9,N10:? S(A):K(A)=INT(K(A))
1007 POSITION N5+Z1*9,12:? L(A):POSITION N5+Z1*9,14:? K(A):POSITION N5+Z1*9,16:? A(A):POSITION N5+Z1*9,18:? D(A)
1008 Z1=Z1+N1:IF A=N3 AND F>N3 THEN F1=N4:GOSUB KEY:GOSUB 1001:GOTO 1005
1009 NEXT A
1010 ? :GOSUB KEY:RETURN 
1100 GRAPHICS N0:SETCOLOR N2,N3,N2:? :? "FATALNE WIE$CI":? :GOSUB 15000:? " zeszedl $miertelnie":T(E)=-N1
1103 IF L(E)<1001 THEN ? "podczas powstania":GOTO 1190
1104 IF A=71 THEN ? "podczas zamieszek glodowych":A=N0:GOTO 1190
1110 Y=INT(RND(N0)*N6+N1):IF Y1>1455 THEN ? "ze staro$ci w R.P. ";Y1:GOTO 1190
1120 IF Y=N1 THEN ? "podczas zarazy"
1160 IF Y=N2 THEN ? "na tyfus"
1170 IF Y=N3 THEN ? "na ospe"
1180 IF Y=N4 THEN ? "na czerwonke"
1182 IF Y=N5 THEN ? "przez zamordowanie"
1185 IF Y=N6 THEN ? "przez zatrucie"
1190 ? :GOSUB KEY:GOSUB 5000:GOSUB 1000:GOTO 600
1300 I1=INT(I1):RETURN 
1310 C1=INT(C1):RETURN 
1320 S1=INT(S1):RETURN 
1330 K(E)=INT(K(E)):RETURN 
1500 POKE 752,N1:Z=INT(RND(N0)*A+N1)*S(E)/N100:Z1=INT(Z):? Z1;" poddanych sie urodzilo":S(E)=S(E)+Z1:RETURN 
1510 Z=INT(RND(N0)*A+N1)*S(E)/N100:Z1=INT(Z):? Z1;" poddanych zmarlo":IF Z1>S(E)*0.3 THEN DS(E)=N1:GOSUB DELAY:A=7
1512 ? :S(E)=S(E)-Z1:RETURN 
2000 POKE 82,N1:IF DS(E)=N1 THEN 600
2005 W=(INT(RND(N0)*N5+N1)+INT(RND(N0)*N6+N1))/N2:W=INT(W):W$=""
2009 ON W GOTO 2010,2020,2030,2040,2050
2010 W$="SUSZA   GROZI GLOD":GOTO 2100
2020 W$="ZLA POGODA-LICHE ZBIORY":GOTO 2100
2030 W$="NORMALNA POGODA-PRZECIETNE ZBIORY":GOTO 2100
2040 W$="DOBRA POGODA-B.DOBRE ZBIORY":GOTO 2100
2050 W$="WSPANIALA POGODA-$WIETNE ZBIORY"
2100 R=INT(RND(N0)*25+N1):V=(R(E)*R)/N100:R(E)=R(E)-V:REM ҥ
2140 X=L(E):Y=(S(E)-D(E)*N100)*N5:IF Y<N0 THEN Y=N0:REM 
2150 IF Y<X THEN X=Y:REM 
2160 Y=R(E)*N2:IF Y<X THEN X=Y:REM 估
2170 Y=W-0.5:H1=X*Y:R(E)=R(E)+H1-INT(X/N2):REM 
2180 D1=N(E)*N100+Q(E)*40+M(E)*30+P(E)*N10+S(E)*N5:REM 
2182 L=(N3*W+INT(RND(N0)*N6+N1)+INT(RND(N0)*N6+N1)+N10)/N10
2190 IF H1<N1 THEN Y=N2:GOTO 2210
2200 Y=D1/H1:IF Y>N2 THEN Y=N2
2210 IF Y<0.8 THEN Y=0.8
2220 L=L*Y:L=INT(L*N10)/N10:REM 彲
2222 IF L>LP(E)+0.8 THEN L=LP(E)+0.8:REM 彰
2224 IF L<LP(E)-0.5 THEN L=LP(E)-0.5:REM 콰
2226 LP(E)=L:REM ŧ
2230 Z=N6-W
2240 G=(Z*N3+INT(RND(N0)*N5+N1)+INT(RND(N0)*N5+N1))/N5*Y*20:G=INT(G*N4):RETURN 
2300 R(E)=INT(R(E)):H1=INT(H1):? "Szczury zjadly ";R;"% twego ziarna ":? :? W$:? " Zbierasz ";H1;" korcow"
2340 ? "ZIEMIA ";L(E);" hektarow":POSITION 20,8:SD=INT(L(E)/N2):IF SD>R(E)-D1 THEN SD=R(E)-D1:IF SD<N0 THEN SD=N0
2342 ? "NASIONA ";SD;" (";INT(N100*SD/(L(E)/N2));"%)"
2344 FOR V=N1 TO 37:? "";:NEXT V:? 
2350 ? "ZAPAS   ZAP. NA  CENA   CENA  SKARB":? "ZIARNA  ZIARNO  ZIARNA  ZIEMI"
2360 Z9=PEEK(84):? R(E)-SD:POSITION 9,Z9:? D1:POSITION 17,Z9:? G:POSITION 24,Z9:? L:POSITION 31,Z9:? K(E)
2365 ? "Korce   Korce   Tys.K  Hektar Dukaty "
2390 RETURN 
2400 J$="":J=INT((J(E)*300-500)*T(E)):IF J(E)=N1 THEN J$=" LAGODNE"
2410 IF J(E)=N2 THEN J$="UMIARKOWANE"
2420 IF J(E)=N3 THEN J$=" SUROWE"
2430 IF J(E)=N4 THEN J$="DRAKONSKIE"
2440 Y=150-G(E)-H(E)-I(E):IF Y<N1 THEN Y=N1:REM 򠳠
2480 C1=(N(E)*180+Q(E)*75+M(E)*20)*(Y/N100)+U(E)*N100:REM 
2490 S1=(N(E)*50+M(E)*25+U(E)*N10)*(Y/N100)*(N5-J(E))/N2:REM 
2500 I1=N(E)*250+U(E)*20+(N10*J(E)*M(E))*(Y/N100):REM ŠŽ
2510 C1=C1*G(E)/N100:IF C1<32760 THEN GOSUB 1310
2520 S1=S1*H(E)/N100:IF S1<32760 THEN GOSUB 1320
2530 I1=I1*I(E)/N100:IF I1<32760 THEN GOSUB 1300
2540 ? "Twoje Dochody ";J+C1+S1+I1;" dukatow":? :? " CLO   SPRZEDAZ  KUPNO     PRAWO "
2545 Z9=PEEK(84):POSITION N3,Z9:? G(E);"%":POSITION 12,Z9:? H(E);"%":POSITION 20,Z9:? I(E);"%":POSITION 27,Z9:? J$
2550 ? :Z9=PEEK(84):POSITION N2,Z9:? C1:POSITION 11,Z9:? S1:POSITION 19,Z9:? I1:POSITION 27,Z9:? J;"   DUK.":RETURN 
2600 GRAPHICS N0:SETCOLOR N2,N0,N2:? :GOSUB 15000:POSITION 27,N1:? " Rok ";Y1:? :GOSUB 2300:POKE 752,N1
2610 ? "":? 
2620 ? "<1> Kupno ziarna    <3>  Kupno ziemi":? :? "<2> Sprzedaz ziarna <4> Sprzedaz ziemi":? 
2621 ? "     <RETURN> kontynuacja"
2622 POKE KEY,255:GOSUB KEY+N2:I1=V:IF I1=155 THEN 4000
2624 IF I1<49 OR I1>52 THEN 2622
2625 I1=VAL(CHR$(I1)):IF I1=N0 THEN RETURN 
2660 ON I1 GOTO 2700,2750,2800,2850
2700 ? "ILE ZIARNA I NASION  ";:GOSUB 9000
2705 K(E)=K(E)-(I1*G/1000):R(E)=R(E)+I1
2720 POSITION N2,7:? "";:GOSUB 2340:GOTO 2610
2750 ? "ILE ZIARNA I NASION ";:GOSUB 9000
2760 IF I1>R(E) THEN ? "TYLE NIE POSIADASZ":GOSUB DELAY:GOTO 2720
2770 K(E)=K(E)+(I1*G/1000):R(E)=R(E)-I1:GOTO 2720
2800 ? "ILE HEKTAROW ";:GOSUB 9000:L(E)=L(E)+I1:K(E)=K(E)-(I1*L):GOTO 2720
2850 ? "ILE HEKTAROW ";:GOSUB 9000
2852 IF I1>L(E)-5000 THEN ? "MUSISZ TRZYMAC CO NAJMNIEJ 5000 HEKTAROW!":GOSUB DELAY:GOTO 2720
2870 L(E)=L(E)-I1:K(E)=K(E)+(I1*L):GOTO 2720
3000 POKE 82,N2:? "}":POKE 752,N1:GOSUB 15000:? :GOSUB 11100:? :GOSUB 2400:? :? " "
3002 ? :? "<1> Clo     <2> Podatek od sprzedazy"
3003 ? :? "<3> Podatek od kupna  <4> Prawo  "
3004 ? :? "   <RETURN> kontynuacja"
3005 GOSUB KEY+N2:I=V:IF I=155 THEN GOSUB 3200:RETURN 
3006 IF I<49 OR I>52 THEN 3005
3008 I=VAL(CHR$(I))
3010 POSITION N2,13:? "";:POKE 752,N0
3060 ON I GOTO 3070,3110,3140,3170
3070 TRAP 3010:? "NOWE CLO (0 to 100)";:INPUT I:TRAP 40000:I=INT(I):IF I>N100 OR I<N0 THEN I=N1:? "":GOTO 3010
3100 G(E)=I:GOTO 3000
3110 TRAP 3010:? "NOWY POD.SPRZ.(0 to 50)";:INPUT I:I=INT(I):TRAP 40000:IF I>50 OR I<N0 THEN I=N2:? "}":GOTO 3010
3130 H(E)=I:GOTO 3000
3140 TRAP 3010:? "NOWY POD.KUPNA (0 to 25)";:INPUT I:I=INT(I):TRAP 40000:IF I<N0 OR I>25 THEN I=N3:? "}":GOTO 3010
3160 I(E)=I:GOTO 3000
3170 POKE 752,N1:? "        Ϡ":? 
3171 ? "    <1> Lagodne":? 
3172 ? "    <2> Umiarkowane":? 
3173 ? "    <3> Surowe":? 
3174 ? "    <4> Drakonskie"
3179 GOSUB KEY+N2:I=V:IF I<49 OR I>52 THEN 3179
3190 J(E)=VAL(CHR$(I)):GOTO 3000
3200 K(E)=K(E)+C1+S1+I1+J
3220 IF K(E)<(-10000*T(E)) THEN GOTO 8000
3230 RETURN 
4000 TRAP 4008:? "Ile ziarna dajesz dla ludzi?":? " dajesz tyle,jakie zap.  ";
4002 POKE 752,N0:INPUT G1:GOTO 4016
4008 G1=D1
4016 POKE 752,N1:TRAP 40000:IF G1<=R(E) THEN 4040
4032 ? "BRAKUJE CI ";G1-INT(R(E));" KORCOW !":GOSUB DELAY:GOSUB DELAY:GOTO 2720
4040 R(E)=R(E)-G1:POKE 82,N2:? "}":GOSUB 15000:? ", ";Y1:? :Z=G1/D1-1:IF Z>N0 THEN Z=Z/N2
4050 IF Z>0.25 THEN Z=Z/N10+0.25
4060 Z1=50-G(E)-H(E)-I(E):IF Z1<N0 THEN Z1=Z1*J(E)
4070 Z1=Z1/N10:IF Z1>N0 THEN Z1=Z1+N3-J(E)
4080 Z=Z+(Z1/N10):IF Z>0.5 THEN Z=0.5
4100 IF G1<(D1-1) THEN 4500
4110 IF S(E)<N0 THEN S(E)=N0
4111 A=N7:? :GOSUB 1500:A=N3:GOSUB 1510
4130 IF (G(E)+H(E))<35 THEN M(E)=M(E)+INT(RND(N0)*N4+N1):REM 󼳵䠱
4140 IF I(E)<INT(RND(N0)*20+N1) THEN N(E)=N(E)+INT(RND(N0)*N2):Q(E)=Q(E)+INT(RND(N0)*N3)
4142 REM 򠱭䠰󬠰
4190 IF G1<(D1*1.3) THEN 4300
4200 Z1=S(E)/1000:Z=(G1-D1)/D1*N10:Z=Z*Z1*INT(RND(N0)*25+N1)+INT(RND(N0)*20+N1):IF Z>32000 THEN Z=32000
4230 Z1=Z:Z=INT(RND(N0)*Z1+INT(Z1/N5)):? Z;" przybylo do twego lenna":? :S(E)=S(E)+Z
4250 Z1=Z/N5:Z=INT(RND(N0)*Z1+N1):IF Z>50 THEN Z=50
4260 M(E)=M(E)+Z:N(E)=N(E)+N1:Q(E)=Q(E)+N2:REM 󠱠嬠󨰭
4300 IF J(E)<N3 THEN 4900
4310 J1=S(E)/N100*(J(E)-N2)*(J(E)-N2):J1=INT(RND(N0)*J1+N1):S(E)=S(E)-J1:? J1;" poddanych zbieglo":? :GOTO 4900
4500 X=(D1-G1)/D1*N100-9:V=X:IF X>65 THEN X=65
4510 IF X<N0 THEN X=N0:V=N0
4520 A=N3:GOSUB 1500:A=V+8:GOSUB 1510:GOTO 4300
4900 IF K(E)<N0 THEN K(E)=INT(K(E)*1.5):? "Lichwiarze domagaja sie zwrotu ";ABS(INT(K(E)/N3));" dukatow":? 
4902 Z=11-INT(H(E)/N10):A=INT((S(E)-500+300*D(E))/1000):FOR V=N1 TO N10:IF A(E)>A*V THEN Z=Z-N1:REM 
4905 NEXT V:Z1=Z/100*A(E)*1000:K(E)=K(E)+Z:IF Z1>N0 THEN ? "Kramy przyniosly ";Z1;" dukatow (";Z;"%)"
4910 IF S(E)<32766 THEN S1=S(E):GOSUB 1320:S(E)=S1
4920 Z=180-G(E)*N2-J(E)*N10-I(E):IF Z<N0 OR S(E)/N100<D(E) THEN Z=N0
4925 Z=D(E)*(Z+INT(RND(N0)*Z+N1))
4927 IF Z>N0 THEN K(E)=K(E)+Z:? "Mlyny przyniosly ";Z;" dukatow (";INT((Z/D(E))/20);"%)"
4930 P(E)=INT(P(E)):Z=P(E)*N3:? :? P(E);" Wojownikow kosztuje ";Z;" dukatow":? :? :K(E)=K(E)-Z
4940 IF (L(E)/1000)>P(E) THEN 8100:REM ˠ
4950 IF (L(E)/500)<P(E) THEN 4980
4960 FOR A=N1 TO F:IF A=E THEN 4975
4970 IF P(A)>(P(E)*N2) THEN 8100
4975 NEXT A
4980 ? :? :GOSUB KEY:RETURN 
5000 GRAPHICS N7:SETCOLOR N4,11,N5:SETCOLOR N2,E-N1,N2:CC=N3
5010 LL=L(E)/1000:IF LL<N10 THEN X=N100:Y=45:GOTO 5100
5020 IF LL<20 THEN X=N100:Y=45-(LL-N10):GOTO 5100
5030 IF LL<30 THEN X=80:Y=45-(LL-20):GOTO 5100
5040 IF LL<40 THEN X=60:Y=45-(LL-30):GOTO 5100
5050 IF LL<50 THEN X=40:Y=45-(LL-40):GOTO 5100
5060 IF LL<60 THEN X=N5:Y=45-(LL-50):GOTO 5100
5070 X=N5:Y=N3
5100 Y=INT(Y):X=INT(X):COLOR CC:PLOT X,Y:DRAWTO 159,Y:REM 
5110 PLOT X,Y:DRAWTO X,79
5120 IF P(E)-N5<L(E)/1000 THEN 5160
5130 FOR A=X+N1 TO X+N6:FOR B=Y+N1 TO Y+9:PLOT A,B:NEXT B:NEXT A:FOR Z=X TO X+N6 STEP N2:PLOT Z,Y-N1:NEXT Z:REM 
5140 IF P(E)/N2<L(E)/1000 THEN 5160
5150 FOR A=X+N7 TO X+N10:FOR B=Y+N1 TO Y+9:PLOT A,B:NEXT B:NEXT A:PLOT X+8,Y-N1:PLOT X+N10,Y-N1
5153 COLOR N0:PLOT X+N3,Y+N2:PLOT X+N7,Y+N4:COLOR CC:PLOT X+N1,Y-N1:PLOT X+9,Y-N1:PLOT X,Y-N2:PLOT X+N2,Y-N2
5154 PLOT X+8,Y-N2:PLOT X+N10,Y-N2:REM 2-turret tower
5160 Z=C(E)+N1:COLOR CC:IF Z>15 THEN Z=15:REM 
5170 ON Z GOTO 5250,5245,5240,5230,5220,5208,5206,5204,5202,5200,5198,5196,5194,5192,5190,5180
5180 PLOT 120,50:DRAWTO 138,50:COLOR N0:PLOT 127,50:PLOT 131,50:COLOR CC
5190 FOR A=120 TO 124:FOR B=40 TO 41:PLOT A,B:NEXT B:NEXT A
5192 FOR A=120 TO 124:FOR B=42 TO 43:PLOT A,B:NEXT B:NEXT A
5194 FOR A=120 TO 124:FOR B=44 TO 45:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 122,44:PLOT 122,45:COLOR CC
5196 FOR A=120 TO 124:FOR B=46 TO 47:PLOT A,B:NEXT B:NEXT A
5198 FOR A=120 TO 124:FOR B=48 TO 49:PLOT A,B:NEXT B:NEXT A
5200 FOR A=134 TO 138:FOR B=40 TO 41:PLOT A,B:NEXT B:NEXT A
5202 FOR A=134 TO 138:FOR B=42 TO 43:PLOT A,B:NEXT B:NEXT A
5204 FOR A=134 TO 138:FOR B=44 TO 45:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 136,44:PLOT 136,45:COLOR CC
5206 FOR A=134 TO 138:FOR B=46 TO 47:PLOT A,B:NEXT B:NEXT A
5208 FOR A=134 TO 138:FOR B=48 TO 49:PLOT A,B:NEXT B:NEXT A
5220 FOR B=36 TO 41:PLOT 129,B:NEXT B:PLOT 128,38:PLOT 130,38
5230 FOR A=127 TO 131:FOR B=42 TO 44:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 127,42:PLOT 131,42:COLOR CC
5240 FOR A=125 TO 133:FOR B=45 TO 46:PLOT A,B:NEXT B:NEXT A
5245 FOR A=125 TO 133:FOR B=47 TO 49:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 127,49:PLOT 131,49:COLOR CC
5250 Z=B(E):IF Z=N0 THEN 5300:REM ŠӠ
5255 COLOR CC:IF Z>12 THEN Z=13:PLOT 94,52:PLOT 110,52
5258 IF Z>11 THEN PLOT 93,53:PLOT 95,53:PLOT 109,53:PLOT 111,53:PLOT 94,52:PLOT 110,52
5260 IF Z>N10 THEN COLOR N0:PLOT 101,53:PLOT 103,52:COLOR CC
5262 IF Z>9 THEN PLOT 101,50:PLOT 103,50:PLOT 102,49
5265 IF Z>8 THEN FOR A=N100 TO 104:FOR B=51 TO 53:PLOT A,B:NEXT B:NEXT A
5270 FOR A=102-Z TO 102+Z:FOR B=54 TO 56:PLOT A,B:NEXT B:NEXT A
5280 FOR A=103-Z TO 101+Z STEP N2:COLOR N0:PLOT A,55:NEXT A:PLOT 102,56:COLOR CC
5300 Z=S(E)-D(E)*N100:IF Z<N1 THEN Z=N1
5305 Z=Z*N5/L(E)*N10+N1:IF Z>N10 THEN Z=N10
5310 Z=(Z/N10)*(77-Y):Z=INT(79-Z):REM 򠦠
5320 FOR A=145 TO 153:PLOT A,Z:NEXT A:COLOR N0:PLOT 148,Z:PLOT 149,Z:PLOT 151,Z
5330 COLOR CC:FOR A=145 TO 153 STEP N2:PLOT A,Z+N1:NEXT A:PLOT 144,Z-N1:PLOT 153,Z-N1
5400 Z=A(E)*N2:IF Z=N0 THEN 5500
5410 IF Z>154-X THEN Z=154-X
5420 FOR A=X TO X+Z STEP N2:PLOT A,60:PLOT A+N1,60:PLOT A+N1,61:PLOT A+N1,62:NEXT A:REM draw market stalls
5500 Z=D(E):IF Z=N0 THEN 5600
5510 IF Z>153-X THEN Z=153-X
5525 FOR B=76 TO 78:PLOT 153-Z,B:DRAWTO 155,B:NEXT B
5530 COLOR N0:FOR A=155-Z TO 153 STEP N2:PLOT A,77:NEXT A:REM 
5600 COLOR CC
5900 ? :? "ROK :";Y1;"   ";:GOSUB 15000
5910 ? :GOSUB KEY:GRAPHICS N0:SETCOLOR N2,N0,N2:RETURN 
6000 POKE 82,5:CLOSE #N1:GRAPHICS N0:SETCOLOR N2,N0,N3:POKE 752,N1:? :GOSUB 15000:? 
6002 FOR V=N1 TO 28:? "-";:NEXT V:? :? K(E);" Dukatow":? :? 
6004 ? "MOZLIWO$CI,  ROK ";Y1:? "



























"
6010 ? "<1> Kram                1000"
6020 ? "<2> Mlyn                2000"
6030 ? "<3> Rozbudowa Zamku     3000"
6040 ? "<4> Rozbudowa Katedry   5000"
6050 ? "<5> 20 Wojownikow        500":? 
6055 ? "<6> Stan posiadania      100"
6057 ? "<7> Mapa                 100"
6058 ? "<8> Samobojstwo":? "<9> Zapisanie stanu gry na TM":? ""
6072 ? :? " kontynuacja";
6082 GOSUB KEY+N2:I=V:IF I=155 THEN RETURN 
6084 IF I<49 OR I>57 THEN 6082
6085 I=VAL(CHR$(I))
6093 IF I>N0 AND I<N6 THEN 6107
6094 IF I=9 THEN 21000
6100 IF I=N6 THEN GOSUB 1000:K(E)=K(E)-N100:GOTO 6000
6102 IF I=N7 THEN GOSUB 5000:K(E)=K(E)-N100:GOTO 6000
6104 IF I=8 THEN ? "Podaj pierwsza litere imienia";:OPEN #N1,N4,N0,"K:":GET #N1,X:CLOSE #N1:POKE KEY,255
6105 IF N$(E*N7-N6,E*N7-N6)=CHR$(X) THEN DS(E)=N1:GOTO 2000
6106 GOTO 6000
6107 ? "Ile jednostek nr. ";I;"?";
6108 GOSUB KEY+N2:ZZ=V:IF ZZ<48 OR ZZ>57 THEN 6108
6109 ZZ=VAL(CHR$(ZZ)):IF ZZ=N0 THEN 6000
6110 FOR IJ=N1 TO ZZ:ON I GOTO 6200,6120,6300,6400,6500
6120 D(E)=D(E)+N1:K(E)=K(E)-2000:U(E)=U(E)+0.25:GOTO 6505
6200 A(E)=A(E)+N1:M(E)=M(E)+N5:K(E)=K(E)-1000:U(E)=U(E)+0.1:GOTO 6505
6300 B(E)=B(E)+N1:N(E)=N(E)+INT(RND(N0)*N2+N1):K(E)=K(E)-3000:U(E)=U(E)+0.5:GOTO 6505
6400 C(E)=C(E)+N1:Q(E)=Q(E)+INT(RND(0)*N6+N1):K(E)=K(E)-5000:U(E)=U(E)+N1:GOTO 6505
6500 P(E)=P(E)+20:S(E)=S(E)-20:K(E)=K(E)-500:GOTO 6505
6505 NEXT IJ
6506 GOTO 6000
7000 Z=N0:A=A(E):GOSUB 7500:A=B(E):GOSUB 7500:A=C(E)*N2:GOSUB 7500:A=D(E):GOSUB 7500:A=K(E)/5000:GOSUB 7500:A=L(E)/4000
7010 GOSUB 7500:A=M(E)/40:GOSUB 7500:A=N(E):GOSUB 7500:A=P(E)/20:GOSUB 7500:A=Q(E)/N10:GOSUB 7500:A=S(E)/1000:GOSUB 7500
7020 A=U(E)/N5:GOSUB 7500:REM 
7130 A=Z/U(0)-J(E):A=INT(A):IF A>15 THEN A=15:REM 
7140 IF (Y1+N2)=O(E) THEN T(E)=T(E)+N1
7145 IF A<N1 THEN A=N1
7150 IF T(E)-N1>A THEN RETURN 
7160 T(E)=A:IF MT(E)=N1 THEN 7490
7165 IF T(E)>=15 THEN 7600
7490 RETURN 
7500 IF A>25 THEN A=25
7530 A=INT(A):Z=Z+A:RETURN 
7600 GRAPHICS N7:MT(E)=N1:? "* ";:GOSUB 15000:? " POSTANOWIENIA!":GOSUB 5010:GOSUB 1000:GOTO 11000
8000 GRAPHICS N0:GOSUB 15000:? " JEST BANKRUTEM!":? :? "Kredytorzy zablokowali":? " twoje aktywa!":? :GOSUB KEY
8002 A(E)=N0:R(E)=N(E)*N100+Q(E)*40+M(E)*30+P(E)*N10+S(E)*N5+2000:B(E)=N0:C(E)=N0:D(E)=N0:L(E)=6000:U(E)=N1
8005 K(E)=N100:T(E)=T(E)-N2:M(E)=25:N(E)=N5:Q(E)=N5:P(E)=P(E)/N2:RETURN 
8100 Z=N0:FOR A=N1 TO F:IF A=E THEN 8200:REM 
8110 IF P(A)<P(E) THEN 8200
8130 IF P(A)<(1.2*(L(A)/1000)) THEN 8200
8140 IF P(A)>P(Z) THEN Z=A:REM 
8200 NEXT A
8205 IF Z=N0 THEN Z=N7:A=INT(RND(N0)*9000+1001):GOTO 8220:REM 
8210 A=INT((P(Z)-P(E)))*50:IF A>L(E)-1000 THEN A=L(E)-1000
8220 IF A<1000 THEN A=1000
8230 GOSUB 16000:? "najechal i zajal ";A:? "hektarow ziemi!":L(Z)=L(Z)+A:L(E)=L(E)-A:Z=INT(RND(N0)*40*(A/1000))
8233 IF Z>P(E)-15 THEN Z=P(E)-15:IF Z<N0 THEN Z=N0
8240 GOSUB 15000:? " stracil ";Z;" wojownikow!":P(E)=P(E)-Z:? :GOSUB KEY:RETURN 
9000 POKE 752,N0:TRAP 9007:INPUT I1:TRAP 40000:IF I1<1 OR I1>250000 OR I<>INT(I) THEN 9007
9005 POKE 752,N1:RETURN 
9007 POKE 752,N1:? "";:POP :GOTO 2720
11000 ? "Chcesz grac dalej?";:GOSUB KEY+N2:IF V=78 THEN DS(E)=N1:RETURN 
11002 IF V<>84 THEN ? "";:GOTO 11000
11003 GOTO 6000
11100 ? "Rok ";Y1;"  Ziemia ";L(E);" hektarow":RETURN 
12000 FOR DEL=N10 TO N100:NEXT DEL:RETURN 
15000 X=N0:TRAP 15002:? T$(N1(T(E)+V(E)),N2(T(E)+V(E)));" ";
15002 ? N$(E*N7-N6+X,E*N7-N6+X);:X=X+N1:IF N$(E*N7-N6+X,E*N7-N6+X)<>" " AND X<N7 THEN 15002
15004 TRAP 40000:RETURN 
16000 ? T$(N1(Z)+V(Z),N2(Z)+V(Z));" ";N$(Z*N7-N6,Z*N7):RETURN 
20000 DATA SIR,BARON,COUNT,MARQUIS,LORD,DUKE,ARCHDUKE,GRAND DUKE,PRINCE,KING,EMPEROR,SHOGUN
20010 DATA DEMI-GOD,GOD,SUPREME RULER
20100 DATA MADAM,BARONESS,COUNTESS,MARQUISE,LADY,DUCHESS,ARCHDUCHESS,GRAND DUCHESS,PRINCESS
20110 DATA QUEEN,EMPRESS,SAINT,DEMI-GODESS,GODESS,SUPREME RULER
20200 DATA SANTA PARAVIA ,FIUMACCIO ,TORRICELLA ,VENIZIA ,MOLINETTO ,FONTANILE
20300 FOR A=N1 TO 30
20310 ? T$(N1(A),N2(A))
20320 NEXT A
21000 TRAP 21010:OPEN #N1,N4,N0,"C:":CLOSE #N1
21004 GOSUB KEY+N2:IF V=78 THEN 6000
21006 IF V<>89 THEN POKE KEY,255:GOTO 21004
21010 CLOSE #N1:OPEN #N1,8,N0,"C:"
21012 ? #N1;N$:? #N1;F:? #N1;U:? #N1;E:? #N1;W:? #N1;AX:? #N1;Y1:? #N1;U(N0)
21014 FOR A=N1 TO F:? #N1;L(A):? #N1;P(A):? #N1;C(A):? #N1;D(A):? #N1;A(A):? #N1;B(A):? #N1;S(A):? #N1;K(A)
21018 ? #N1;MT(A):? #N1;G(A):? #N1;V(A):? #N1;H(A):? #N1;I(A):? #N1;J(A):? #N1;O(A):? #N1;R(A):? #N1;T(A)
21020 ? #N1;U(A):? #N1;N(A):? #N1;Q(A):? #N1;M(A):? #N1;DS(A):? #N1;LP(A):NEXT A
21022 FOR A=N1 TO 30:? #N1;N1(A):? #N1;N2(A):NEXT A:CLOSE #N1
21024 POKE 752,N1:? "}":POSITION 13,N10:? "GRA ZAPISANA":FOR V=N1 TO 400:NEXT V:POKE 752,N0:GOTO 6000
22000 TRAP 22050:OPEN #N1,N4,N0,"C:":REM ĠŠ
22011 ? "}":POSITION 12,N10:? "LADOWANIE GRY"
22012 INPUT #N1;N$:INPUT #N1;F:INPUT #N1;U:INPUT #N1;E:INPUT #N1;W:INPUT #N1;AX:INPUT #N1;Y1:INPUT #N1;B:U(N0)=B
22014 FOR A=N1 TO F:INPUT #N1;B:L(A)=B:INPUT #N1;B:P(A)=B:INPUT #N1;B:C(A)=B:INPUT #N1;B:D(A)=B:INPUT #N1;B:A(A)=B:INPUT #N1;B:B(A)=B
22015 INPUT #N1;B:S(A)=B:INPUT #N1;B:K(A)=B:INPUT #N1;B:MT(A)=B:INPUT #N1;B:G(A)=B:INPUT #N1;B:V(A)=B
22018 INPUT #N1;B:H(A)=B:INPUT #N1;B:I(A)=B:INPUT #N1;B:J(A)=B:INPUT #N1;B:O(A)=B:INPUT #N1;B:R(A)=B:INPUT #N1;B:T(A)=B
22020 INPUT #N1;B:U(A)=B:INPUT #N1;B:N(A)=B:INPUT #N1;B:Q(A)=B:INPUT #N1;B:M(A)=B:INPUT #N1;B:DS(A)=B
22021 INPUT #N1;B:LP(A)=B:NEXT A
22022 FOR A=N1 TO 30:INPUT #N1;B:N1(A)=B:INPUT #N1;B:N2(A)=B:NEXT A:CLOSE #N1:POKE 752,N0:GOTO 666
22050 CLOSE #N1:? "}":POSITION N7,11:? "NIE MOGE ZNALEZC TEJ GRY":FOR V=N1 TO 500:NEXT V:GOTO 300
23000 ? "}                        "
23012 ? "                 "
23014 ? "               "
23016 ? "                  "
23018 ? "                 "
23020 ? "                 "
23022 ? "      "
23024 ? " "
23026 ? " "
23028 ? " Šɠɠ"
23030 ? " "
23032 ? " ᠠ"
23034 ? " "
23036 ? " "
23038 ? " "
23040 ? " "
23042 ? "       "
23044 ? "       ":? :? " Chcesz zaladowac ostatni stan gry?":RETURN 
