Random demo
Random demo
Random game
  • Entry name:
     UniSport 
  • Category:
    Databases/mailing lists
  • Publisher/Developer:
    Flop 4
  • Year:
    1989
  • Code:
    Boris Letocha junior
  • Media format:
    Diskette
  • Programming language:
    Turbo Basic XL
UniSport UniSport UniSport UniSport UniSport UniSport UniSport UniSport
Listing 1
1 REM 
2 REM  UNISPORT.STB 
3 REM 
4 REM  
5 REM Boris LETOCHA junior (c) 1989
6 REM  Hradec Kralove 
7 REM 
8 REM
10 DIM B$(460),​K$(50),​P(255),​K1$(5),​PO$(100),​TIS$(10),​PO1$(51),​PO2$(51),​UNI$(40),​DL$(7)
20 MI1=FRE(%0)-800:​DIM A$(MI1)
30 EXEC INIT
100 EXEC UNI:​POKE 82,​%0:​? "Menu:​"
110 ? ") Nova karta"
111 ? ") Load":​IF ZAD=%0 THEN 119
112 ? ") Save"
113 ? ") Zadavani st. listiny":​IF ZAV=%0 THEN 118
114 ? ") Vypis st. listiny"
115 ? ") Hledani + oprava karty"
116 ? ") Pridani vysledku"
117 ? ") Vypis vys. listiny"
118 ? ") Parametry razeni"
119 ? ") Zmena tiskarny nyni:​";TIS$
130 GET KEY:​IF KEY<K1-%1 OR KEY>57 THEN ? "";:​GOTO 130
132 KEY=KEY-K1+%2:​? ""
135 ON KEY GOSUB 500,​1000,​2000,​4000,​3000,​5000,​6000,​7000,​9000,​8000
140 GOTO 100
200 PROC DP:​DP=ASC(B$(CP*C3+C3-%2)):​ENDPROC
250 FOR A=%1 TO KAT:​? " ";CHR$(A+176);") ";K$(A*5-4,​A*5):​NEXT A:​GET KEY:​IF KEY<K1 OR KEY>KAT+K1-%1 THEN ? "":​GOTO 250
260 KEY=KEY-K1+%1:​GOSUB 950:​RETURN
270 GOSUB 900
271 FOR A=%0 TO POL-%1:​? CHR$(A+193);") ";B$(A*C3+%1,​A*C3+C3-%3):​NEXT A:​GET KEY:​IF KEY<64 OR KEY>POL+64 THEN ? "":​GOTO 270
280 KEY=KEY-65:​GOSUB 910:​GOSUB 950:​RETURN
300 PROC OP:​OP=ASC(B$(CP*C3+C3)):​ENDPROC
350 PO$(LEN(PO$)+%1)=PO1$:​RETURN
390 RESTORE 5500:​GOTO 410
400 RESTORE 1500
410 DP=DP&127:​IF DP<K1+%2 THEN LP=DP:​RETURN
420 POKE 182,​(DP-K1-%2):​READ LP:​RETURN
500 IF TIS=%0 THEN TIS$="PRT-42G":​TIS=%1:​GOSUB 21000:​RETURN
510 TIS=%0:​TIS$="ATARI 1029":​RETURN
600 X=%0
601 EXEC P234:​Z=LE*I+OP:​Z1=LE*I1+OP:​R=%0:​DR=ASC(B$(CP*C3+C3-%1))
610 IF A$(Z,​Z+LP-%1)<A$(Z1,​Z1+LP-%1) THEN R=%1
620 IF A$(Z,​Z+LP-%1)>A$(Z1,​Z1+LP-%1) THEN R=-%1
625 IF ASC(A$(Z))=254 AND ASC(A$(Z1))=254 THEN R=%0
630 IF DR>127 AND A$(Z1,​Z1)<>CHR$(254) AND A$(Z,​Z)<>CHR$(254) THEN R=-(R=%1)+(R=-%1)
634 IF R<>%0 THEN RETURN
640 DR=DR&127:​IF DR=%0 OR X<>%0 THEN R=-%1:​RETURN
650 X=CP:​CP=DR-%1:​GOSUB 601:​CP=X:​RETURN
700 EXEC P234:​Z=LE*P(O)+OP:​Z1=LE*P(O-%1)+OP:​IF O-%1=%0 THEN Z1=Z+%1
710 IF ASC(A$(Z))=254 THEN PO$="DIS ":​RETURN
720 IF A$(Z,​Z+LP-%1)=A$(Z1,​Z1+LP-%1) THEN PO$=" ":​RETURN
730 I=O:​PO$="":​PO1$=" ":​GOSUB 14000:​PO1$=" ":​GOSUB 350:​RETURN
800 T=CP:​PO$="":​FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP>127 THEN 820
810 GOSUB 16000
820 NEXT CP:​? PO$:​CP=T:​RETURN
900 SHCO=PEEK(702):​POKE 702,​64:​RETURN
910 POKE 702,​SHCO:​RETURN
950 ?:​? "":​?:​RETURN
960 PROC INIT
961 ZAD=%0:​ROV=%0:​ZAV=%0:​K1=49:​C3=23:​TIS=%0:​TIS$="ATARI 1029":​A$=" ":​A$(MI1)=" ":​A$(%2)=A$:​B$=A$:​K$=A$:​ENDPROC
962 PROC UNI
963 GRAPHICS %0:​UNI$="5.)30/24 oris,​etochajunior(+ralove":​UNI$(10,​10)=CHR$(34):​DL$=" ":​DL$(%1,​%1)=CHR$(112)
965 DL$(%2,​%2)=CHR$(66):​DPOKE ADR(DL$(%3)),​ADR(UNI$):​DL$(5,​5)=CHR$(%1):​DPOKE ADR(DL$(6)),​DPEEK(560)+2:​DPOKE 560,​ADR(DL$)
969 ENDPROC
970 PROC P234:​EXEC DP:​GOSUB 400:​EXEC OP:​ENDPROC
1000 ------------------------------
1005 EXEC INIT
1010 TRAP 1010:​INPUT "Kolik kategorii ";KAT:​KAT=INT(KAT):​IF KAT<%1 OR KAT>10 THEN ? "":​GOTO 1010
1020 FOR A=%1 TO KAT
1030 ? A;" kategorie (max 5 zn.) ";:​INPUT K1$:​K$(A*5-4,​A*5-5+LEN(K1$))=K1$
1040 NEXT A
1045 ? "opravit 1-ano":​GET KEY:​IF KEY=K1 THEN K$=" ":​K$(50)=" ":​K$(%2)=K$:​GOTO 1010
1046 GOSUB 950
1050 ?:​? "Zadej kolik polozek ";:​INPUT POL:​POL=INT(POL):​IF POL<%1 OR POL>20 THEN ? "":​GOTO 1050
1060 FOR A=%1 TO POL
1070 ? "Zadej nazev polozky ";A;" (max zn.20) ":​INPUT PO$
1080 B$(A*C3-22,​A*C3-C3+LEN(PO$))=PO$
1090 ? ") Text":​? ") Datum":​? ") Desetinne cislo":​? ") Cele cislo 0-253":​? ") Cele cislo 0-65533"
1100 ? ") cas hh:​mm:​ss":​? ") cas hh:​mm:​ss:​dd":​? ") cas mm:​ss:​dd":​? ") cas ss:​dd"
1110 GET KEY:​IF KEY<K1 OR KEY>57 THEN ? "":​GOTO 1090
1115 KEY=KEY-K1+%1
1120 IF KEY=%1 THEN ? "Zadej delku (max zn.50) ";:​INPUT L:​L=INT(L):​IF L<%1 OR L>50 THEN ? "":​GOTO 1120
1130 IF KEY>%1 THEN L=KEY+K1
1140 B$(A*C3-%2,​A*C3-%2)=CHR$(L)
1145 GOSUB 950
1150 NEXT A
1160 ? "opravit 1-ano":​GET KEY:​IF KEY=K1 THEN B$=" ":​B$(460)=" ":​B$(%2)=B$:​GOTO 1050
1165 L=%0:​GOSUB 950
1170 FOR CP=%0 TO POL-%1
1175 B$(CP*C3+C3,​CP*C3+C3)=CHR$(L+%2)
1180 EXEC DP:​DP=DP&127:​B$(CP*C3+C3-%2,​CP*C3+C3-%2)=CHR$(DP)
1185 ? B$(CP*C3+%1,​CP*C3+C3-%3);" Disciplina 1-ano ?":​GET KEY:​IF KEY=49 THEN B$(CP*C3+C3-%2,​CP*C3+C3-%2)=CHR$(DP+128)
1190 GOSUB 400:​L=L+LP
1220 NEXT CP
1230 L=L+%1:​MI=INT(MI1/L)-%1:​LE=L:​IF MI>255 THEN MI=255
1235 ? "opravit 1-ano":​GET KEY:​IF KEY=49 THEN 1165
1240 GOSUB 950:​? "Max. pocet zavodniku je ";MI:​GET KEY:​ZAD=%1:​RETURN
1500 DATA 3,​3,​1,​2,​3,​4,​3,​2
2000 ------------------------------
2005 EXEC INIT
2010 GOSUB 900:​? "Zarizeni:​nazev ";:​INPUT PO$:​GOSUB 910:​IF PO$="" THEN GOSUB 950:​DIR:​GOSUB 950:​GOTO 2010
2015 ZAD=%0:​ROV=%0:​ZAV=%0:​A$=" ":​A$(MI1)=" ":​A$(%2)=A$
2020 CLOSE #%1:​OPEN #%1,​4,​%0,​PO$
2025 ZAD=%1
2030 INPUT #%1;ROV:​INPUT #%1;ZAV:​INPUT #%1;KAT:​INPUT #%1;POL:​INPUT #%1;LE:​INPUT #%1;MI:​BGET #%1,​ADR(K$),​50:​BGET #%1,​ADR(B$),​460
2035 BGET #%1,​ADR(A$),​LE*ZAV
2040 CLOSE #%1
2050 RETURN
2999 ------------------------------
3000 IF ZAD=%0 AND ZAV<MI THEN RETURN
3010 ? "Zadavas ";ZAV+%1;" zavodnika"
3020 ?:​? "Kategorie :​"
3030 GOSUB 250:​K=KEY
3040 A$(ZAV*LE+%1,​ZAV*LE+%1)=CHR$(K)
3050 CP=%0
3060 IF CP>POL-%1 THEN 3400
3070 EXEC DP
3080 IF DP>127 THEN GOSUB 3300:​CP=CP+%1:​GOTO 3060
3085 ? B$(CP*C3+%1,​CP*C3+C3-%3)
3090 IF DP<51 THEN 3150
3100 IF DP=52 THEN 3200
3110 RESTORE 3500+DP:​A=%0
3115 READ PO$:​IF PO$="end" THEN CP=CP+%1:​GOSUB 12100:​GOTO 3060
3120 READ MIN,​MAX
3125 TRAP 3125:​? "Zadej ";PO$:​INPUT Z:​Z=INT(Z):​IF Z<MIN OR Z>MAX THEN ? "":​GOTO 3125
3130 IF MAX>253 THEN EXEC OP:​V=ADR(A$(ZAV*LE+A+OP)):​DPOKE V,​Z:​GOSUB 12000:​A=A+%2:​GOTO 3115
3140 EXEC OP:​POKE ADR(A$(ZAV*LE+A+OP)),​Z:​A=A+%1:​GOTO 3115
3150 ? "zadej text max. ";DP;" zn.":​INPUT PO$:​IF LEN(PO$)>DP OR LEN(PO$)<%1 THEN ? "":​GOTO 3150
3155 PO1$=" ":​PO1$(50)=" ":​PO1$(%2)=PO1$:​PO1$(%1,​LEN(PO$))=PO$
3160 EXEC P234:​A$(ZAV*LE+OP,​ZAV*LE-%1+OP+LP)=PO$:​CP=CP+%1:​GOTO 3060
3200 ? "Zadej cislo xxxx.xx":​INPUT PO$:​Z=INSTR(PO$,​"."):​IF LEN(PO$)>7 OR Z>5 OR (LEN(PO$)-Z>%2 AND Z<>0) THEN ? "":​GOTO 3200
3205 IF LEN(PO$)=%0 THEN ? "":​GOTO 3200
3210 FOR A=%1 TO LEN(PO$):​IF (PO$(A,​A)<"0" OR PO$(A,​A)>"9") AND PO$(A,​A)<>"." THEN POP:​? "":​GOTO 3200
3220 NEXT A
3222 IF Z=%0 THEN 3233
3225 PO1$(%1,​Z+%2)="0000000":​PO1$(%1,​LEN(PO$))=PO$:​PO$=PO1$
3230 IF Z=%1 THEN X=%0:​GOTO 3240
3233 IF Z=%0 THEN X=VAL(PO$):​GOTO 3240
3235 X=VAL(PO$(%1,​Z-%1))
3240 EXEC OP:​V=ADR(A$(ZAV*LE+OP)):​DPOKE V,​X:​GOSUB 12000
3245 IF Z=%0 THEN X=%0:​GOTO 3255
3250 X=VAL(PO$(Z+%1,​LEN(PO$)))
3255 OP=OP+%2:​POKE ADR(A$(ZAV*LE+OP)),​X
3260 CP=CP+%1:​GOTO 3060
3300 EXEC P234
3310 F=OP+ZAV*LE
3320 POKE ADR(A$(F)),​255
3330 RETURN
3400 ? "Opravit 1-ano":​GET KEY:​IF KEY=K1 THEN 3010
3410 ZAV=ZAV+%1:​? "Konec 1-ano":​GET KEY:​IF KEY=K1 THEN RETURN
3420 GOTO 3040
3551 DATA den,​1,​31,​mesic,​1,​12,​rok rr,​0,​99,​end
3553 DATA cislo 0-253,​0,​253,​end
3554 DATA cislo 0-65533,​0,​65533,​end
3555 DATA hodiny,​0,​99,​minuty,​0,​59,​sekundy,​0,​59,​end
3556 DATA hodiny,​0,​99,​minuty,​0,​59,​sekundy,​0,​59,​setiny,​0,​99,​end
3557 DATA minuty,​0,​59,​sekundy,​0,​59,​setiny,​0,​99,​end
3558 DATA sekundy,​0,​59,​setiny,​0,​99,​end
3999 ------------------------------
4000 IF ZAD=%0 THEN RETURN
4010 GOSUB 900:​? "Zarizeni:​nazev ";:​INPUT PO$:​GOSUB 910
4020 CLOSE #%1:​OPEN #%1,​8,​%0,​PO$
4030 ? #%1;ROV:​? #%1;ZAV:​? #%1;KAT:​? #%1;POL:​? #%1;LE:​? #%1;MI:​BPUT #%1,​ADR(K$),​50:​BPUT #%1,​ADR(B$),​460
4035 BPUT #%1,​ADR(A$),​LE*ZAV
4040 CLOSE #%1
4050 RETURN
4999 ------------------------------
5000 IF ZAD=%0 OR ROV=%0 OR ZAV<%1 THEN RETURN
5005 ? "Vystup 1-jen obrazovka":​GET KEY:​TTT=(KEY=K1):​GOSUB 950
5010 GOSUB 250:​F=KEY
5020 GOSUB 900:​FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP>127 THEN 5030
5025 ? CHR$(CP+193);" ";B$(CP*C3+%1,​CP*C3+C3-%3)
5030 NEXT CP
5040 GET CP:​CP=INT(CP)-65:​EXEC DP:​IF DP>127 THEN ? "":​GOTO 5020
5050 GOSUB 950:​POKE 559,​%0:​GOSUB 910:​X=%0:​FOR A=%0 TO ZAV-%1:​IF ASC(A$(A*LE+%1))<>F THEN 5060
5055 X=X+%1:​P(X)=A
5060 NEXT A
5070 IF X=%0 THEN POKE 559,​34:​? "":​RETURN
5080 IF X=%1 THEN POKE 559,​34:​GOTO 5200
5085 W=X
5090 FOR J=%2 TO W:​S=J:​I=P(S):​P(%0)=I
5100 I1=P(S-%1):​GOSUB 600:​IF R=%1 THEN P(S)=I1:​S=S-%1:​GOTO 5100
5110 P(S)=I
5120 NEXT J:​X=W:​POKE 559,​34
5200 GOSUB 10000:​PO$="":​GOSUB 20000:​GOSUB 20000
5210 PO$="Kategorie :​":​PO1$=K$(F*5-4,​F*5):​GOSUB 350:​GOSUB 20000:​PO$="":​GOSUB 20000
5215 PO$="":​IF TIS THEN PO$="-"
5220 FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP>127 THEN 5240
5230 GOSUB 390:​PO1$=" ":​PO1$(LP)=" ":​PO1$(%2)=PO1$:​PO1$(%1,​LP)=B$(CP*C3+%1,​CP*C3+C3-%3):​GOSUB 350
5240 NEXT CP
5245 IF TIS THEN PO1$="-":​GOSUB 350
5246 GOSUB 20000
5300 FOR O=%0 TO W-%1:​A=P(O+%1)
5310 PO$="":​FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP>127 THEN 5330
5320 GOSUB 16000
5330 NEXT CP:​GOSUB 20000
5340 NEXT O
5350 GOSUB 13000:​GET KEY:​RETURN
5500 DATA 8,​7,​3,​5,​8,​11,​8,​5
5999 ------------------------------
6000 IF ZAD=%0 OR ZAV<%1 THEN RETURN
6005 O4=%0
6010 ?:​? "Hledat podle :​":​?:​GOSUB 270:​CP=KEY
6030 GOSUB 6090
6040 GOTO 6300
6090 EXEC DP:​DP=DP&127:​IF DP<51 THEN GOSUB 6150:​RETURN
6100 IF DP=52 THEN GOSUB 6200:​RETURN
6110 A=%0:​GOSUB 400:​PO1$="":​PO1$(%1,​LP)=" ":​RESTORE 3500+DP
6115 READ PO$:​IF PO$="end" THEN GOSUB 12200:​RETURN
6120 READ MIN,​MAX
6125 ? "Zadej ";PO$:​INPUT Z:​Z=INT(Z):​IF Z<MIN OR Z>MAX THEN ? "":​GOTO 6125
6130 IF MAX>253 THEN V=ADR(PO1$(A+%1)):​DPOKE V,​Z:​GOSUB 12000:​A=A+%2:​GOTO 6115
6140 EXEC OP:​POKE ADR(PO1$(A+%1)),​Z:​A=A+%1:​GOTO 6115
6150 ? "zadej text max. ";DP;" zn.":​INPUT PO$:​IF LEN(PO$)>DP OR LEN(PO$)<%1 THEN ? "":​GOTO 6150
6160 PO1$=PO$:​RETURN
6200 ? "Zadej cislo xxxx.xx":​INPUT PO$:​Z=INSTR(PO$,​"."):​IF LEN(PO$)>7 OR Z>5 OR (LEN(PO$)-Z>%2 AND Z<>0) THEN ? "":​GOTO 6200
6205 IF LEN(PO$)=%0 THEN ? "":​GOTO 6200
6210 FOR A=%1 TO LEN(PO$):​IF (PO$(A,​A)<"0" OR PO$(A,​A)>"9") AND PO$(A,​A)<>"." THEN POP:​? "":​GOTO 6200
6220 NEXT A
6222 IF Z=%0 THEN PO1$=" ":​GOTO 6233
6225 PO1$(%1,​Z+%2)="0000000":​PO1$(%1,​LEN(PO$))=PO$:​PO$=PO1$:​PO1$=" "
6230 IF Z=%1 THEN X=%0:​GOTO 6240
6233 IF Z=%0 THEN X=VAL(PO$):​GOTO 6240
6235 X=VAL(PO$(%1,​Z-%1))
6240 V=ADR(PO1$(%1)):​DPOKE V,​X:​GOSUB 12000
6245 IF Z=%0 THEN X=%0:​GOTO 6255
6250 X=VAL(PO$(Z+%1,​LEN(PO$)))
6255 POKE ADR(PO1$(%3)),​X
6260 RETURN
6300 PO2$=PO1$:​OD=%0:​EXEC P234
6310 PO1$=PO2$:​A=INSTR(A$,​PO1$,​OD):​IF A=%0 THEN ? "Nenalezeno !!!":​RETURN
6320 OD=A:​A=A DIV LE:​EXEC P234:​IF OD<A*LE+OP OR OD>A*LE+OP+LP-%1 THEN 6310
6321 IF O4 THEN X=%1:​P(X)=A:​GOTO 7045
6325 Q=A:​O3=%0
6330 A=Q:​GOSUB 800:​IF O3 THEN ? "":​GOTO 7200
6340 GOSUB 950:​GOSUB 910:​? "pravit":​? "mazat":​? "enu":​? "ledat dal":​GET KEY:​GOSUB 900
6350 IF KEY=ASC("O") THEN 6399
6360 IF KEY=ASC("S") THEN 6500
6370 IF KEY=ASC("M") THEN RETURN
6380 IF KEY=ASC("H") THEN 6310
6390 ? "":​GOTO 6330
6399 ? "0 Kategorie":​GOSUB 270:​IF KEY=-%1 THEN GOSUB 250:​A$(Q*LE+%1,​Q*LE+%1)=CHR$(KEY):​GOTO 6330
6400 A=Q:​CP=KEY:​EXEC DP:​IF DP<128 THEN 6409
6401 GOSUB 950:​? "iskvalifikovat estartoval-a adat":​GET KEY:​IF KEY=ASC("Z") THEN 6409
6402 IF KEY<>ASC("D") AND KEY<>ASC("N") THEN ? "":​GOTO 6400
6403 EXEC P234:​X=255-(KEY=ASC("D")):​POKE ADR(A$(LE*A+OP)),​X:​GOTO 6330
6408 CP=O2
6409 GOSUB 950:​EXEC DP:​GOSUB 6090:​CP=O2:​EXEC P234:​PO$=" ":​PO$(50)=" ":​PO$(%2)=PO$
6410 IF LEN(PO1$)<LP THEN PO1$(LEN(PO1$)+1,​LP)=PO$
6420 A=Q:​A$(A*LE+OP,​A*LE+OP+LP-%1)=PO1$
6430 GOTO 6330
6500 ? "Opravdu 1-ano":​GET KEY:​IF KEY<>K1 THEN 6330
6510 MOVE ADR(A$(A*LE+LE+%1)),​ADR(A$(A*LE+%1)),​(ZAV-A)*LE:​ZAV=ZAV-%1:​GOTO 6330
7000 IF ZAD=%0 OR ZAV<%1 THEN RETURN
7005 ? "0-kvd1 1-kvdv 2-phdv":​GET KEY:​O4=(KEY>=K1):​IF KEY>K1 THEN 6010
7010 GOSUB 250:​F=KEY
7020 X=%0:​FOR A=%0 TO ZAV-%1:​IF ASC(A$(A*LE+%1))<>F THEN 7030
7025 X=X+%1:​P(X)=A
7030 NEXT A
7040 IF X=%0 THEN ? "":​RETURN
7045 IF O4 THEN CP=%0:​GOTO 7060
7050 GOSUB 270:​CP=KEY:​EXEC DP:​IF DP<128 THEN ? "":​GOTO 7050
7060 O2=CP:​O1=X:​FOR O=%1 TO O1:​GOSUB 950:​Q=P(O):​A=Q
7065 IF O4 THEN CP=O2:​EXEC DP:​IF DP<128 THEN 7200
7070 GOSUB 800:​?:​FOR INV=%1 TO 20:​PUT ASC(B$(CP*C3+INV))+128:​NEXT INV:​?:​?
7100 CP=O2:​EXEC P234
7110 ? "onechat":​? "iskvalifikovat":​? "estartoval-a":​? "adat":​GET KEY
7130 IF KEY=ASC("P") THEN 7200
7140 IF KEY=ASC("Z") THEN GOSUB 950:​O3=%1:​GOTO 6408
7145 IF KEY<>ASC("D") AND KEY<>ASC("N") THEN ? "":​GOTO 7110
7150 X=255-(KEY=ASC("D")):​POKE ADR(A$(LE*A+OP)),​X
7200 IF O4 THEN O2=O2+%1:​IF O2<POL THEN GOSUB 950:​GOTO 7065
7205 IF O4 THEN O2=%0
7210 NEXT O:​O3=%0:​O4=%0:​RETURN
8000 IF ZAD=%0 THEN RETURN
8005 ? "1-Opravit jeden,​ ostatni-vsechny":​GET KEY:​O3=(KEY=K1):​IF O3 THEN GOSUB 270:​CP=KEY:​GOTO 8020
8010 FOR CP=%0 TO POL-%1:​GOSUB 950
8020 ?:​?:​? B$(CP*C3+%1,​CP*C3+C3-%3)
8030 ? "Radit 1=sestupne":​GET KEY:​Z=(KEY=K1)*128:​EXEC DP:​IF DP=51 THEN Z=(KEY<>K1)*128
8040 ? "Kdyz rovno tak podle:​":​? ") niceho":​GOSUB 270:​B$(CP*C3+C3-%1,​CP*C3+C3-%1)=CHR$(Z+KEY+%1):​IF O3 THEN RETURN
8050 NEXT CP:​ROV=%1
8060 RETURN
9000 IF ZAD=%0 OR ROV=%0 OR ZAV<%1 THEN RETURN
9005 ? "Vystup 1-jen obrazovka":​GET KEY:​TTT=(KEY=K1):​GOSUB 950
9010 GOSUB 250:​F=KEY
9020 FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP<128 THEN 9030
9025 ? CHR$(CP+193);" ";B$(CP*C3+%1,​CP*C3+C3-%3)
9030 NEXT CP
9040 GET CP:​CP=INT(CP)-65:​EXEC DP:​IF DP<128 THEN ? "":​GOTO 9020
9050 POKE 559,​%0:​X=%0:​EXEC DP:​EXEC OP:​FOR A=%0 TO ZAV-%1:​IF ASC(A$(A*LE+%1))<>F OR ASC(A$(A*LE+OP))=255 THEN 9060
9055 X=X+%1:​P(X)=A
9060 NEXT A:​W=X:​GOSUB 950
9070 IF X=%0 THEN POKE 559,​34:​? "":​RETURN
9080 IF X=%1 THEN POKE 559,​34:​GOTO 9200
9090 FOR J=%2 TO W:​S=J:​I=P(S):​P(0)=I
9100 I1=P(S-%1):​GOSUB 600:​IF R=%1 THEN P(S)=I1:​S=S-%1:​GOTO 9100
9110 P(S)=I
9120 NEXT J:​X=W:​O2=CP:​POKE 559,​34
9200 GOSUB 10100:​PO$="":​GOSUB 20000:​GOSUB 20000
9210 PO$="Kategorie :​ ":​PO1$=K$(F*5-4,​F*5):​GOSUB 350:​GOSUB 20000
9211 PO$="Disciplina :​ ":​PO1$=B$(CP*C3+%1,​CP*C3+C3-%3):​GOSUB 350:​GOSUB 20000:​PO$="":​GOSUB 20000
9215 PO$="":​IF TIS THEN PO$="-"
9217 PO1$="POR ":​GOSUB 350
9220 FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP>127 THEN 9240
9230 GOSUB 390:​PO1$=" ":​PO1$(LP)=" ":​PO1$(%2)=PO1$:​PO1$(%1,​LP)=B$(CP*C3+%1,​CP*C3+C3-%3):​GOSUB 350
9240 NEXT CP
9241 CP=O2:​EXEC DP:​GOSUB 390:​PO1$=" ":​PO1$(LP)=" ":​PO1$(%2)=PO1$:​PO1$(%1,​LP)=B$(CP*C3+%1,​CP*C3+C3-%3):​GOSUB 350
9245 IF TIS THEN PO1$="-":​GOSUB 350
9246 GOSUB 20000
9300 FOR O=%1 TO W:​A=P(O):​CP=O2:​GOSUB 700
9310 FOR CP=%0 TO POL-%1:​EXEC DP:​IF DP>127 THEN 9330
9320 GOSUB 16000
9330 NEXT CP:​IF PO$(%1,​%3)<>"DIS" THEN CP=O2:​GOSUB 16000
9335 GOSUB 20000
9340 NEXT O
9350 GOSUB 13000:​GET KEY:​RETURN
10000 IF TIS=%0
10010 PO$="STARTOVNI LISTINA"
10020 ELSE
10030 PO$="2WE-STARTOVNI LISTINAWF-"
10040 ENDIF
10050 GOSUB 20000:​RETURN
10100 IF TIS=%0
10110 PO$="VYSLEDKOVA LISTINA"
10120 ELSE
10130 PO$="2WE-VYSLEDKOVA LISTINAWF-"
10140 ENDIF
10150 GOSUB 20000:​RETURN
12000 V1=PEEK(V):​POKE V,​PEEK(V+%1):​POKE V+%1,​V1:​RETURN
12100 IF DP<>51 THEN RETURN
12110 V=ADR(A$(ZAV*LE+OP)):​GOSUB 12000:​V=V+%1:​GOSUB 12000:​V=V-%1:​GOSUB 12000:​RETURN
12200 IF DP<>51 THEN RETURN
12210 V=ADR(PO1$):​GOSUB 12000:​V=V+%1:​GOSUB 12000:​V=V-%1:​GOSUB 12000:​RETURN
13000 PO$="":​GOSUB 20000:​GOSUB 20000:​PO$="Dne :​ 15.7.1989 Zpracoval :​ Boris Letocha junior":​GOSUB 20000:​RETURN
13990 PO1$="00"
14000 W1=LEN(PO1$):​PO1$(W1+%1-LEN(STR$(I)),​W1)=STR$(I):​GOSUB 350:​RETURN
15000 EXEC DP
15001 GOSUB 390:​PO1$=" ":​PO1$(51)=" ":​PO1$(%2)=PO1$:​PO1$(1,​LP)=A$(A*LE+OP,​A*LE+OP+LP-%1):​PO1$=PO1$(1,​LP+%1):​GOSUB 350:​RETURN
15010 I=PEEK(ADR(A$(A*LE+OP+%2))):​GOSUB 13990:​PO1$=".":​GOSUB 350
15011 I=PEEK(ADR(A$(A*LE+OP+%1))):​GOSUB 13990:​PO1$=".":​GOSUB 350
15012 I=PEEK(ADR(A$(A*LE+OP))):​GOSUB 13990:​PO1$=" ":​GOSUB 350:​RETURN
15020 PO1$=" ":​V=ADR(A$(A*LE+OP)):​GOSUB 12000:​I=DPEEK(V):​GOSUB 12000:​GOSUB 14000:​PO1$=".":​GOSUB 350
15021 PO1$="00":​I=PEEK(ADR(A$(A*LE+OP+%2))):​GOSUB 14000:​PO1$=" ":​GOSUB 350:​RETURN
15030 PO1$=" ":​I=PEEK(ADR(A$(A*LE+OP))):​GOSUB 14000:​PO1$=" ":​GOSUB 350:​RETURN
15040 PO1$=" ":​V=ADR(A$(A*LE+OP)):​GOSUB 12000:​I=DPEEK(V):​GOSUB 12000:​GOSUB 14000:​PO1$=" ":​GOSUB 350:​RETURN
15050 I=PEEK(ADR(A$(A*LE+OP))):​GOSUB 13990:​PO1$=":​":​GOSUB 350
15051 I=PEEK(ADR(A$(A*LE+OP+%1))):​GOSUB 13990:​PO1$=":​":​GOSUB 350
15052 I=PEEK(ADR(A$(A*LE+OP+%2))):​GOSUB 13990:​PO1$=" ":​GOSUB 350:​RETURN
15060 I=PEEK(ADR(A$(A*LE+OP))):​GOSUB 13990:​PO1$=":​":​GOSUB 350
15061 I=PEEK(ADR(A$(A*LE+OP+%1))):​GOSUB 13990:​PO1$=":​":​GOSUB 350
15062 I=PEEK(ADR(A$(A*LE+OP+%2))):​GOSUB 13990:​PO1$=",​":​GOSUB 350
15063 I=PEEK(ADR(A$(A*LE+OP+%3))):​GOSUB 13990:​PO1$=" ":​GOSUB 350:​RETURN
15070 I=PEEK(ADR(A$(A*LE+OP))):​GOSUB 13990:​PO1$=":​":​GOSUB 350
15071 I=PEEK(ADR(A$(A*LE+OP+%1))):​GOSUB 13990:​PO1$=",​":​GOSUB 350
15072 I=PEEK(ADR(A$(A*LE+OP+%2))):​GOSUB 13990:​PO1$=" ":​GOSUB 350:​RETURN
15080 I=PEEK(ADR(A$(A*LE+OP))):​GOSUB 13990:​PO1$=",​":​GOSUB 350
15081 I=PEEK(ADR(A$(A*LE+OP+%1))):​GOSUB 13990:​PO1$=" ":​GOSUB 350:​RETURN
16000 EXEC DP:​DP=DP&127:​IF DP<(K1+%2) THEN DP=K1+%1
16010 DP=DP-K1:​EXEC OP:​ON DP GOSUB 15000,​15010,​15020,​15030,​15040,​15050,​15060,​15070,​15080:​RETURN
20000 ? PO$:​IF TTT THEN RETURN
20001 IF TIS=%0
20010 LPRINT PO$
20020 ELSE
20030 IF LEN(PO$)>%0 THEN FOR X=%1 TO LEN(PO$):​A=USR(1536,​ASC(PO$(X))):​NEXT X
20035 A=USR(1536,​10)
20040 ENDIF
20050 RETURN
21000 POKE 54018,​56:​POKE 54016,​255:​POKE 54018,​60
21001 RESTORE 21003:​FOR I=1536 TO 1564
21002 READ A:​POKE I,​A:​NEXT I:​RETURN
21003 DATA 104,​104,​104,​9,​128,​141,​0,​211
21004 DATA 172,​17,​208,​208,​251,​41,​127
21005 DATA 141,​0,​211,​172,​17,​208,​240,​251
21006 DATA 9,​128,​141,​0,​211,​96
21007 DATA 1539,​41,​1540,​127,​1549,​9
21008 DATA 1550,​128,​1559,​41,​1560,​127	

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!