Ohne Organisation kein Tor
Ohne entsprechenden Verwaltungsaufwand findet auch in der untersten Liga kein Fußballspiel statt. Dieses Programm ist vor allem für die vielen ehrenamtlichen Helfer geschrieben, aber auch jeder Sportfan kann es sinnvoll einsetzen um zu sehen, wo »seine« Mannschaft steht.
In der ersten oder zweiten Bundesliga macht eigentlich nur das Wetter den Kickern zu schaffen. Entweder spielen sie im Regen, Schnee oder Nebel .. oder das Match wird nachgeholt. In diesen Klassen eine Tabelle aufzustellen ist einfach. Schwieriger wird es schon in den unteren Ligen und im Jugendbereich: Mannschaften werden plötzlich nachgemeldet oder zurückgezogen. Nachholspiele sind an der Tagesordnung. Mit Papier und Bleistift oder einem simplen Tabellenprogramm ist es hier nicht getan. Der ehrenamtliche Fußball-Funktionär Franz-Josef Heuser aus Aachen-Haaren schrieb schließlich das Programm »Ligatab«, das genau auf diese Problematik zugeschnitten ist. »Ich habe bewußt kein Programm geschrieben, um mit dem C 64 schneller zu sein, als die EDV-Anlagen der Fernsehanstalten. Mir ging es darum, den vielen ehrenamtlichen Helfern Zeit einzusparen«, erklärt der 34jährige Fußballfan. Eine Übertragung der Ligaverwaltung auf andere Sportarten ist nur dann sinnvoll, wenn die Tabellenplätze nach den gleichen Kriterien bewertet werden. Also: Pluspunkte, Minuspunkte, Tordifferenz, geschossene Tore, Gegentore. Auf alle Fälle sollten Sie die Anleitung beachten. Sie sparen später mit Sicherheit viel Zeit.
(rg)| Compiler: | Astro-Compiler |
| Autostart: | Autostart-Maker aus der 64’er, Juli 1984 |
| Hardware: | C 64; Floppy 1541; Drucker MPS 801 |
| Speicherplatz: | in compilierter Form und mit Autostart, 19450 Byte |
| Grenzen: |
|
| Autor: | Heuser, Franz-Josef In den Atzenbenden 74 5100 Aachen-Haaren |
»Ligatab«, die besondere Sportliga-Verwaltung
Zu einem guten Programm benötigt man eine gute Beschreibung. Fast ein Handbuch ist es bei dem Programm »Ligatab«.
Im nachfolgenden wird nur auf die compilierte und mit Autostart versehene Form eingegangen. Die Original-Version in Standard-Basic des C 64 ist für die Anwendung zu langsam und aus Speicherplatzgründen nur mit bis zu 6 Ligen einsetzbar. Auf der Diskette zu dieser Ausgabe der 64’er ist sowohl die Basic-Version, als auch die compilierte Version des Programms »Ligatab« enthalten. Floppy und Drucker müssen während der Arbeit mit »Ligatab« eingeschaltet bleiben. Das Programm wird von Diskette geladen mit: LOAD "c/ligatab b1/a",8,1.
Nach kurzer Zeit wird der Bildschirm gelöscht und nach dem Ladevorgang sehen Sie das Titelbild. Hier geben Sie das Datum ein, das in erster Linie für die Druckerausgabe benötigt wird. Eingabeform: TT.MM.JJJJ (08.08.1985).
Nach korrekter Eingabe mit abschließendem RETURN erklingt, falls Sie die Lautstärke richtig eingestellt haben, ein Ton. Dieser Ton erklingt immer dann, wenn das Programm eine Eingabe von Ihnen erwartet, ohne daß der blinkende Cursor auf dem Bildschirm zu sehen ist.
Im unteren Balken verlangt das Programm eine Eingabebestätigung. Antworten Sie mit »N« für Nein, wird der Bildschirm gelöscht und das Titelbild erscheint erneut. Antworten Sie mit »J« für Ja, erscheint nach kurzer Zeit das Hauptmenü. Das Hauptmenü ist in vier Auswahlgruppen unterteilt.
| Bildschirmausgabe | Auswahl 1,2,3 |
| Druckerausgabe | Auswahl 4,5,6 |
| Diskettenoperationen | Auswahl 7,8 |
| Neue Liga/Programmende | Auswahl 9 |
Wenn Sie das erste Mal mit diesem Programm arbeiten, sollten Sie zuerst »Tips zur Vorbereitung« genau durchlesen. Des weiteren empfiehlt es sich, Ihre erste Liga als »Testliga« anzulegen, um die Möglichkeiten des Programms besser kennenzulernen und auszutesten.
Erste Sportliga anlegen
Wie bei der Datenverwaltung ist die Ersteingabe auch in diesem Programm der arbeitsintensivste und wichtigste Teil. Deshalb sollten Sie an dieser Stelle ganz besonders sorgfältig arbeiten und auf mögliche Fehler achten.
Die Basis Ihrer Sportliga sind die Mannschaften. Das Programm benötigt zuerst die Namen und Anzahl der Mannschaften. Aus diesem Grunde wählen Sie im Menü »1 = MANNSCHAFTEN EINGEBEN/SICHTEN/KORRIGIEREN«. Nachdem der Bildschirm gelöscht wurde, werden Sie nach dem Namen der Liga gefragt. Dieser darf einschließlich Leerstellen nicht mehr als 16 Zeichen umfassen. Für die Testliga ein Vorschlag: »FVM 7 A-Ju. Nst. 5«. Dies würde bedeuten:
Fußball-Verband-Mittelrhein, Kreis 7 Aachen, A-Junioren, Normalstaffel 5. Die Eingabe muß mit RETURN abgeschlossen werden.
Nun werden Sie nach der Anzahl der Mannschaften gefragt. Sie können wählen zwischen minimal 3 und maximal 20 Mannschaften. Geben Sie eine Zahl >3 oder <20 ein, wird der Bildschirm gelöscht, und Sie müssen die Eingabe einschließlich Liganamen wiederholen. Der Liganame wird später auch Dateiname auf der Datendiskette sein. Haben Sie alles richtig eingegeben, fragt das Programm nach den Mannschaftsnamen. Abschließend müssen Sie die Richtigkeit der Eingaben bestätigen. Verneinen Sie hier mit »N«, werden Sie gefragt, ob ein Name oder die Anzahl der Mannschaften falsch sind. Sie können nun »N« für Name falsch oder »A« für Anzahl falsch eingeben. Bei Eingabe von »N« haben Sie die Möglichkeit zur Korrektur der Namen.
Auf die Möglichkeit nach Eingabe von »A« für Anzahl falsch wird unter »Besonderheiten« eingegangen.
Hatten Sie die Namen richtig eingegeben oder zwischenzeitlich korrigiert, so können Sie die Eingabe mit »J« bestätigen, worauf wieder das Hauptmenü auf dem Bildschirm erscheint.
Nachdem Sie nun die Eingaben bezüglich der Mannschaften abgeschlossen haben, benötigt der Computer weitere Informationen zu den Spieltagen. Hierzu wählen Sie im Hauptmenü »2 = SPIELTAGE -E-S-K-«. Sie sehen nun das Untermenü »SPIELTAGE -E-S-K-«, indem Sie »E« für »SPIELPLAN EINGEBEN« wählen. Auf die anderen Auswahlmöglichkeiten wird im Abschnitt »ARBEITEN MIT BESTEHENDEN SPORTLIGEN« eingegangen. Es kann nun das Datum aller Spieltage eingegeben werden. Stehen einzelne, alle oder von einer Gruppe (zum Beispiel der Rückserie) von Spieltagen noch nicht fest, so müssen Sie das entsprechende Datum einfach mit RETURN überschreiben.
Die Anzahl der Spieltage läßt sich rechnerisch aus der Mannschaftsanzahl wie folgt ableiten:
- bei gerader Anzahl Mannschaften:
(Anzahl der Mannschaften * 2) — 2 - bei ungerader Anzahl Mannschaften:
Anzahl der Mannschaften * 2
Diese Rechnung hat Ihr C 64 bereits durchgeführt, und Sie können das Ergebnis auf dem Bildschirm sehen.
Falls Sie die Daten von allen Spieltagen noch nicht kennen, bestätigen Sie die Abfrage »EINGABE OK« einfach mit »J« für Ja. Zum Eingeben verneinen Sie mit »N« für Nein. Sie können dann die Daten in der Form TT.MM.JJJJ eingeben. Nach erfolgter Eingabe und der Bestätigung mit »J« wird der Bildschirm gelöscht und Sie können die Spiele eingeben.
Auf dem neuen Bild auf dem Bildschirm erkennen Sie im oberen Teil die Mannschaftsnamen. Die Zahlen links davon sind die Mannschaftskennzahlen, für die im nachfolgenden die Abkürzung MKZ gebraucht wird. In dem unteren Teil werden die Spiele eingegeben. Sie brauchen hier aber nicht die Namen sondern nur die entsprechenden MKZ einzugeben.
Die Anzahl der Spiele je Spieltag läßt sich ebenfalls wie folgt aus der Anzahl der Mannschaften ableiten:
- bei gerader Anzahl Mannschaften:
Anzahl der Mannschaften/2 - bei ungerader Anzahl Mannschaften:
(Anzahl der Mannschaften -1)/2
Für nicht belegte Spiele geben Sie die MKZ »0« ein.
Nachdem Sie den ersten Spieltag eingegeben haben, können Sie die Richtigkeit der Eingaben mit »J« für Ja bestätigen oder mit »N« für Nein verneinen. Mit »N« können sie die Eingaben korrigieren, mit »J« den nächsten Spieltag eingeben. Des weiteren haben sie an dieser Stelle die Möglichkeit, mit »M« wieder zum Hauptmenü zu gelangen.
Der C 64 benötigt nur die Eingabe der Spieltage der Hinrunde. Die Rückrunde wird in Umkehrung der Hinrunde automatisch gesetzt.
Haben Sie alles richtig gemacht erscheint wieder das Untermenü.
Um sich nicht um den Lohn der Arbeit zu bringen, sollten Sie an dieser Stelle erst einmal ihre Daten in Sicherheit bringen. Dazu überprüfen Sie, ob das Floppy-Disk-Laufwerk eingeschaltet und die richtige Diskette im Laufwerk ist. Danach wählen Sie im Hauptmenü »8=DATEN SPEICHERN AUF DISKETTE«.
Arbeiten mit bestehenden Sportligen
Bei der ersten Liga, die Sie verwalten werden, wird davon ausgegangen, daß noch keine Änderungen, mit Ausnahme von Tippfehlern, zu bearbeiten sein werden. Alle möglichen Änderungen und Ergänzungen, die während der laufenden Saison auftreten und vom Programm verarbeitet werden können, sind im Abschnitt »BESONDERHEITEN« beschrieben.
Programm laden von Diskette
Vor dem Laden sollten Sie NEW und CLR im Direktmodus eingeben, damit alle Speicherplätze im C 64 gelöscht werden. Zum Laden geben Sie
LOAD"c/ligatab b1/a",8,1
ein.
Nach Beendigung des Ladevorgangs erscheint das Titelbild auf dem Bildschirm. Sie geben das Datum in der Form TT.MM.JJJJ ein und bestätigen die Eingabe mit »J« für Ja. Sie sehen nach kurzer Zeit das Hauptmenü.
Laden einer Liga von Diskette
Nun müssen Sie zuerst die richtige Datendiskette einlegen. Dann wählen Sie im Hauptmenü »7=DATEN LADEN VON DISKETTE« und geben danach den Liganamen ein. Achtung! Jetzt müssen Sie sehr sorgfältig sein, da eine Fehlermeldung wie zum Beispiel »FILE NOT FOUND«, verursacht durch einen nicht richtigen Liganamen, das Programm zum Absturz bringt. Es hilft dann nur noch ein Ausschalten des Computers und ein erneutes Laden vom Programm und Daten.
Haben Sie den Liganamen richtig eingegeben, bestätigen Sie die Abfrage »EINGABE OK« mit »J«. Wenn Sie nun sicher sind, daß die richtige Datendiskette im Laufwerk ist, drücken Sie RETURN. Verneinen Sie die Frage »EINGABE OK« mit »N« für Nein haben Sie die Möglichkeit, den Liganamen zu korrigieren. Des weiteren können Sie mit »M« aus diesem Teil des Programms zum Hauptmenü zurückkehren. Nach Beendigung des Ladevorgangs meldet sich das Programm automatisch wieder mit dem Hauptmenü.
Bildschirmausgabe
Die ersten drei Auswahlmöglichkeiten im Hauptmenü beziehen sich auf die Bildschirmausgabe.
1 = Mannschaften -e-s-k-
Wenn Sie diesen Programmpunkt anwählen, sehen Sie die Mannschaftsnamen auf dem Bildschirm. Da Sie eventuelle Namensfehler bei der Ersteingabe korrigiert haben und alle weiteren Änderungsmöglichkeiten unter Abschnitt »BESONDERHEITEN« behandelt werden, können Sie die Frage »EINGABE OK« mit »J« für Ja beantworten, um zum Hauptmenü zu gelangen.
2 = Spieltage -e-s-k-
Nach Eintippen von »2« im Hauptmenü sehen Sie ein Untermenü mit den folgenden Auswahlmöglichkeiten:
| e | = | Spielplan eingeben |
| s | = | Spiele sichten |
| Ergebnisse -e-s-k- | ||
| n | = | Nachholspiele -e-s-k |
| m | = | Menü |
Tippen Sie »s« für Spiele sichten beziehungsweise für Ergebnisse -e-s-k- ein.
Der C 64 fragt nun nach dem Spieltag, mit dem Sie beginnen möchten. Nachdem Sie nun die entsprechende Zahl eingegeben haben, sehen Sie ein neues Bild auf dem Bildschirm.
In der oberen Hälfte erkennen Sie die Mannschaftskennzahl (MKZ) und die Mannschaftsnamen. Dann folgt ein Balken, aus dem Sie die Spieltagsnummer erkennen können.
In der unteren Hälfte sind die Spielpaarungen zu sehen. Der untere Balken ist der Befehlsbalken, aus dem Sie die drei folgenden Eingabemöglichkeiten ableiten können:
- M = Menü
- K = Korrigieren
- CRSR = Blättern
Mit »M« gelangen Sie wieder zum Hauptmenü, über »K« erfolgt die Ergebniseingabe beziehungsweise Korrektur und mit den Cursor-Tasten können Sie in den Spieltagen blättern.
Ergebniseingabe: Hierzu wählen Sie »K« und der Comptuer verlangt nun die Eingabe der Ergebnisse. Sie dürfen nun Zahlen eingeben bis einschließlich 499 sowie den Buchstaben »N« für Nachholspiele.
Auf die Verwaltung der Nachholspiele wird später eingegangen. Steht ein Ergebnis noch nicht fest, drücken Sie RETURN. Haben Sie die letzte Eingabe eines Spieltages mit RETURN abgeschlossen, erscheint der nächste Spieltag. Wollen Sie zu dem Spieltag zurück, bei dem Sie gerade eine Eingabe gemacht haben, drücken Sie CURSOR-RUNTER.
Blättern mit dem Cursor: Das Sichten aller Spieltage ist mit den Cursor-Tasten möglich. Sie haben hiermit eine komfortable Möglichkeit zum Blättern.
- Mit CURSOR-RUNTER erscheint der vorherige Spieltag.
- Mit CURSOR-HOCH erscheint der nächste Spieltag.
- Mit CURSOR-RUNTER erscheint beim ersten wieder der letzte Spieltag.
- Mit CURSOR-HOCH erscheint beim letzten wieder der erste Spieltag.
3 = Tabellen
Wählen Sie diesen Punkt mit »3« im Hauptmenü an, fragt der Computer, bis zu welchem Spieltag er die Tabelle errechnen soll. Sie können nun zwischen 1 und dem höchsten Spieltag, maximal 38, wählen. Die aktuelle Tabelle erhalten Sie bei Eingabe des letzten Spieltages.
Nach kurzer Zeit erscheint die Tabelle auf dem Bildschirm. Sie bleibt so lange erhalten, bis Sie eine beliebige Taste drücken.
Aus Platzgründen konnten bei der Bildschirmausgabe nur der Tabellenplatz, der Mannschaftsname, die Tordifferenz, die Pluspunkte und die Minuspunkte berücksichtigt werden. Die Druckerausgabe der Tabelle ist wesentlich umfangreicher.
Druckerausgabe
Die Auswahlmöglichkeiten 4, 5 und 6 im Hauptmenü beziehen sich auf die Druckerausgabe.
4 = Mannschaftsliste -d-
Nach dem Anwählen dieses Menüpunktes ist auf dem Bildschirm eine Information zu sehen, die aussagt, was der C 64 als nächstes machen wird. Des weiteren werden Sie gefragt, ob der Drucker eingeschaltet ist. Achtung, bestätigen Sie nun mit RETURN und der Drucker ist nicht eingeschaltet, führt dies zum Programmabsturz. Aus diesem Grunde erst überzeugen, dann bestätigen mit RETURN.
Mit der Eingabe von »M« gelangen Sie wieder zum Hauptmenü zurück. Nach Beendigung des Druckvorganges erscheint automatisch wieder das Hauptmenü.
Spieltage -d-
Nach Eintippen von »5« im Hauptmenü sehen Sie ein Untermenü mit den folgenden Auswahlmöglichkeiten:
- A = kompletter Spielplan
- B = ein bestimmter Spieltag
- C = von/bis zu einem Spieltag
- D = Ergebnisse einer Mannschaft
- N = Nachholspiele
- M = Menü
A = Kompletter Spielplan
Nachdem Ste »A« eingegeben haben, sehen Sie wieder eine entsprechende Information auf dem Bildschirm. An dieser Stelle sollten Sie überprüfen, ob Ihr Drucker eingeschaltet ist. Wollen Sie den Druckvorgang nicht starten, gelangen Sie mit der Eingabe »M« wieder zum Menü. Haben Sie jedoch »D« gewählt, ist der Druckvorgang nicht mehr zu unterbrechen. Nach Beendigung meldet sich das Programm mit dem Menü wieder.
B = Ein kompletter Spieltag
Wählen Sie »B« im Untermenü fragt der Computer nach dem Spieltag, den Sie ausdrucken möchten. Nach richtiger Eingabe mit abschließendem RETURN sehen Sie wieder die Information und haben nun die Auswahl »M=MENUE« und »D=DRUCKEN«.
C = Von/bis zu einem Spieltag
Hier können Sie sich nach Eingabe des ersten und des letzten Spieltages, den Sie drucken möchten, eine beliebige Anzahl von Spieltagen ausdrucken lassen.
D = Ergebnisse einer Mannschaft
Wenn Sie »D« im Untermenü anwählen, können Sie die Spielpläne jeder Mannschaft einzeln ausdrucken lassen.
Das Programm fragt zuerst nach der Mannschaftskennzahl (MKZ) und zeigt Ihnen danach den dazugehörigen Mannschaftsnamen. Verneinen Sie die anschließende Abfrage »EINGABE OK« haben Sie die Möglichkeit, die MKZ zu korrigieren. Beantworten Sie diese Frage jedoch mit »J«, können Sie wieder wählen zwischen »M = Menü« oder »D = Drucken«.
Ist der Druckvorgang zu Ende, fragt das Programm, ob Sie einen weiteren Ausdruck der Spielerergebnisse dieser Mannschaft wünschen. Antworten Sie mit »J« wiederholt sich der Druckvorgang. Antworten Sie mit »N« fragt das Programm, ob Sie einen Ausdruck einer anderen Mannschaft wünschen. Bei Eingabe »J» beginnt wieder die Prozedur mit der Abfrage der MKZ, mit Eingabe von »N« gelangen Sie wieder zum Menü. Hinweis zur Ausdrucksform:
Auf dem Ausdruck wurde eine Spalte »…. Uhr« vorgesehen. Im Programm können Sie diese Uhrzeit nicht eingeben. Nun fragen Sie sicher, wieso dann? Wenn Sie als Staffelleiter ein arbeitssparendes Instrument wie »Ligatab« zur Verfügung haben, sollten auch die Vereine davon profitieren. Stellen Sie diese Liste den Vereinen zur Verfügung, haben diese nach Ergänzung der Listen mit der Uhrzeit einen vernünftigen Spielplan, den Sie für den Aushang und zum Verteilen im Verein verwenden können. Den Vereinen wird somit auch eine Menge Arbeit erspart.
N = Nachholspiele
Hiermit haben Sie die Möglichkeit, alle noch ausstehenden Nachholspiele ausdrucken zu lassen, wenn Sie als solche in den Spieltagen gekennzeichnet sind.
Hierzu ist jedoch mehr im Abschnitt »Besonderheiten« nachzulessen. Mit der Eingabe von »M« im Untermenü gelangen Sie zum Hauptmenü.
6 = Tabelle -d-
Wie bei der Bildschirmausgabe fragt das Programm auch hier, bis zu welchem Spieltag (einschließlich) die Tabelle errechnet werden soll. Nach Beantwortung erscheint nach kurzer Zeit die Tabelle auf dem Bildschirm. Sie haben nun wieder die Wahl zwischen »M=MENUE« und »D=DRUCKEN«. Die Druckerausgaben der Tabellen sind wesentlich umfangreicher als die Bildschirmausgaben und enthalten folgende Informationen:
| — Pl. | = Tabellenplatz |
| — Verein | = Mannschaftsname |
| — Sp. | = Anzahl der Spiele |
| — G | = Anzahl der gewonnenen Spiele |
| — U | = Anzahl der unentschiedenen Spiele |
| — V | = Anzahl der verlorenen Spiele |
| — +T | = Anzahl der erzielten Tore |
| — —T | = Anzahl der Gegentore |
| — TD | = Tordifferenz |
| — +P | = Anzahl der Pluspunkte |
| — —P | = Anzahl der Minuspunkte |
Diskettenoperationen
8 = Daten speichern auf Diskette:
Nachdem Sie im Hauptmenü »8« angewählt haben, die richtige Diskette eingelegt ist und dies mit RETURN bestätigt wurde, werden die Daten auf Diskette gespeichert. Ist das Abspeichern abgeschlossen, meldet sich das Programm automatisch mit dem Hauptmenü zurück.
9 = Neue Liga/Programmende
Diesen Programmteil dürfen oder müssen Sie dann anwählen, wenn Sie entweder die Arbeit mit der zur Zeit im Computer befindlichen Liga beenden und mit einer nächsten Liga weiterarbeiten wollen, oder wenn Sie die Arbeit mit Ligatab ganz beenden wollen. Sie sollten in diesem Programmabschnitt wieder ganz besonders vorsichtig sein, um nicht die eingegebenen Daten durch unüberlegte Eingaben zu verlieren. Dies ist ganz besonders ärgerlich, wenn Sie sich hier bei einer Ersteingabe verschreiben.
Nachdem Sie im Hauptmenü.»9« angewählt haben, erfolgt aus Sicherheit eine doppelte Aubfrage, ob Sie die Daten bereits abgespeichert haben. Sobald Sie eine Abfrage mit »N« für Nein beantworten, sind Sie wieder im Hauptmenü. Bejahen Sie jedoch die Abfragen zweimal mit »J« für Ja, sind die Daten im C 64 unwiderruflich verloren.
Jetzt haben Sie die Möglichkeit, mit Eingabe von »E« die Arbeit ganz zu beenden, oder mit der Eingabe von »N« eine neue Liga zu bearbeiten. Bei der Eingabe von »E« werden nicht nur die Daten, sondern auch das Programm gelöscht.
Der Computer wird in den Einschaltzustand versetzt. Nach Eingabe von »N« werden alle Daten der zur Zeit im Computer befindlichen Liga gelöscht und es wird anschließend wieder das Titelbild auf dem Bildschirm erscheinen.
Besonderheiten
Mit den bisher beschriebenen Möglichkeiten läßt sich eine Sportliga nur so lange sinnvoll verwalten, wie sie keinerlei Änderungen unterliegt. Wenn damit die Möglichkeiten des Programms erschöpft sind, so ist es vollkommen praxisfremd.
Welcher Staffelleiter kennt nicht den Aufwand zur Verfolgung der Termine von Nachholspielen, oder den Ärger, eine mühsam errechnete Tabelle am zehnten Spieltag vor Saisonende korrigieren zu müssen, weil ein Verein seine Mannschaft zurückgezogen hat, oder den Ärger, einen Spielplan am neunten Spieltag umzuplanen, einschließlich der anfallenden Nachholspiele, weil eine Mannschaft nachgemeldet wurde, oder die entstehen kann, wenn ein Spiel gewertet werden muß, und die Tabelle war schon errechnet, oder…
Jeder, der mit der Verwaltung von Sportligen zu tun hat, weiß, daß all diese Dinge um so häufiger vorkommen, je niedriger die Liga ist, die er zu verwalten hat. Ganz zu schweigen vom Spielbetrieb im Jugendbereich.
Ein Programm, das den Anspruch »praxisnah« für sich stellt, muß mit all diesen Unzulänglichkeiten in einer anwenderfreundlichen Weise fertig werden. Wie Sie nun in solchen Fällen im Detail mit dem Programm arbeiten können, wird in den nachfolgenden Abschnitten beschrieben.
Wertung von Spielen
Die Wertung von Spielen ist im Programmablauf einer einfachen Ergebniskorrektur gleichzusetzen. Beispiel: Am 12. Spieltag spielt Mannschaft X gegen Y 1:1 unentschieden und Sie erhalten den Spielbericht dienstags. Da keine besonderen Vormerke eingetragen sind, übernehmen Sie das Ergebnis in den Computer. Nun erhebt Y am Samstag berechtigten Einspruch, und die Spruchkammer wertet das Spiel auf ihrer Sitzung zwei Wochen später mit 2:0 für Mannschaft Y.
Was tun?
- — Sie wählen im Hauptmenü »2 = Spieltage -e-s-k-«
- — Sie wählen im Untermenü »s = Ergebnis -e-s-k-«.
- — Sie wählen für den Start den 12. Spieltag.
- — Sie wählen »K« für korrigieren.
- — Bei nicht zu korrigierenden Ergebnissen: RETURN
- — Sie überschreiben die entsprechenden Zahlen.
Eingabe von Nachholspielen
Beispiel:
Im oben beschriebenen Fall hat die Spruchkammer entschieden, das Spiel ist neu anzusetzen, oder das Spiel ist aufgrund der Witterungsverhältnisse ausgefallen und neu anzusetzen.
Was tun:
- 1. — 5. wie oben (Wertung)
- 6. — Sie tragen anstelle der geschossenen Tore der Heimmannschaft ein »N« ein.
- 7. — War bereits ein Ergebnis eingetragen, sind neben dem »N« 2 Punkte und bei den Gegentoren 3 Punkte einzuschreiben.
Bildschirmausgabe der Nachholspiele und eintragen des Datums
Was tun:
- — Sie wählen im Hauptmenü »2 = Spieltage -e-s-k-«.
- — Sie wählen im Untermenü »N = Nachholspiele«.
- — Sie sehen auf dem Bildschirm die Nachholspiele des 1. Spieltages oder die Meldung »Keine Nachholspiele!«
- — Sie können nun mit den Cursor-Tasten blättern.
- — Möchten Sie das Datum eintragen, wählen Sie hierzu »K« und tragen anschließend das entsprechende Datum in der Form TT.MM.JJJJ ein.
Druckerausgabe Nachholspiele
Hiermit haben Sie die Möglichkeit, alle noch ausstehenden Nachholspiele als Liste über den Drucker auszugeben.
Was tun:
- — Sie wählen im Hauptmenü »5 = Spieltage -d-«.
- — Sie wählen im Untermenü »N = Nachholspiele«.
- — Sie beantworten die Frage von/bis zu welchem Spieltag.
- — Sie wählen im Informationsbild »D = Drucken«.
Hinweis:
Ein Nachholspiel wird als Nachholspiel automatisch gelöscht, wenn für das entsprechende Spiel ein Ergebnis eingetragen wird.
Mannschaften zurückziehen
Beispiel:
Sie verwalten eine Liga mit X Mannschaften und am 12. Spieltag zieht ein Verein seine Mannschaft zurück.
Was tun:
- — Sie wählen im Hauptmenü »1 = Mannschaften -e-s-k-«.
- — Sie verneinen die Frage »EINGABE OK« mit »N« für Nein.
- — Sie geben »A« für »ANZAHL FALSCH« ein.
- — Sie geben »—« für »EINE MANNSCHAFT WENIGER« ein.
- — Sie geben die MKZ der entsprechenden Mannschaft ein.
Das Programm korrigiert die Daten automatisch. Hatten Sie die falsche MKZ eingegeben, so gehen Sie über das Hauptmenü zu Punkt »9« und beenden die Arbeit so, als ob mit einer neuen Liga weitergearbeitet werden soll. Nun laden Sie die Liga erneut und können entsprechend korrigieren.
Alle Spiele, an denen die gelöschte Mannschaft beteiligt war, werden in den Spieltagen (nur Bildschirmausgabe) mit der MKZ »0« belegt.
Beispiel:
Eine Mannschaft wird zurückgezogen und gleichzeitig eine andere nachgemeldet.
Was tun:
- 1. — 2. — wie im letzten Beispiel.
- 3. — Sie geben »N« für »NAME FALSCH« ein.
- 4. — Bei nicht zu ändernden Namen tippen Sie RETURN.
- 5. — Den Namen der zu löschenden Mannschaft überschreiben Sie mit dem Namen der neuen Mannschaft.
- 6. — In den Spieltagen müssen Sie nun die Ergebnisse der alten Mannschaft mit drei Punkten belegen, und die Spiele, die laut Spielplan bereits stattgefunden haben müßten, wie Nachholspiele behandeln (das heißt mit »N« belegen).
Mannschaften nachmelden
Hier müssen Sie drei verschiedene Voraussetzungen unterscheiden.
- Sie haben eine Liga mit ungerader Anzahl von Mannschaften, und alle Plätze sind bereits besetzt.
- Sie haben eine Liga mit gerader Anzahl von Mannschaften, und alle Plätze sind bereits besetzt.
- Sie haben eine Liga, in der noch Plätze frei sind.
Beispiel:
Ihre Liga hat 15 Mannschaften und Sie möchten sie um eine auf 16 erweitern.
Was tun:
- — Sie wählen im Hauptmenü »1 = Mannschaften -e-s-k-«.
- — Sie verneinen die Frage »EINGABE OK« mit »N« für Nein.
- — Sie geben »A« für »ANZAHL FALSCH« ein.
- — Sie geben »+«für »EINE MANNSCHAFT MEHR« ein.
- — Sie geben den Mannschaftsnamen ein.
- — Sie bestätigen »EINGABE OK« mit »J« für Ja.
- — Sie wählen im Hauptmenü »2 = SPIELTAGE -e-s-k-«.
- — Sie wählen »E« im Untermenü.
- — Sie starten mit dem 1. Spieltag.
- — Sie setzen die Spiele der neuen Mannschaft gegen die, die bisher spielfrei war.
- — Sie behandeln die Spiele, die eigentlich bereits stattgefunden haben sollten, wie Nachholspiele.
Beispiel:
Ihre Liga hat 14 Mannschaften und soll um eine auf 15 erweitert werden.
Was tun:
- 1. — 5. — wie im ersten Beispiel.
- 6. — Sie sehen nun die Meldung »SPIELTAGE UND ERGEBNISSE NEU SETZEN«.
Normalerweise müßten Sie nun den kompletten Spielplan neu setzen. Diese sehr umfangreiche und eigentlich sinnlose Arbeit könnten Sie sich jedoch bei vernünftiger Vorplanung beim Anlegen der Ligen ersparen. Siehe hierzu auch Abschnitt »Tips zur Vorbereitung«. Sie sollten daher nie eine Liga, die eine gerade Anzahl von Mannschaften und keine Plätze mehr frei hat, vergrößern. Das Programm läßt dies zwar zu, jedoch nur in Verbindung mit einem nicht vertretbaren Aufwand.
Beispiel:
Ihre Liga hat 14 Plätze, diese sind aber nur mit 12 Mannschaften belegt, so daß immer 2 Mannschaften spielfrei sind. Sie möchten nun die 13. Mannschaft einordnen.
Was tun:
- 1. — und 2. — wie im ersten Beispiel.
- 3. — Sie geben »N« für »NAME FALSCH« ein.
- 4. — Sie drücken so oft RETURN bis der CURSOR auf den ersten freien Mannschaftsnamen ist.
- 5. — Sie überschreiben die Punkte mit dem neuen Namen.
- 6. — Sie drücken so lange »RETURN« bis der Balken mit der Frage »EINGABE OK« erscheint.
- 7. — Sie bestätigen mit »J« für Ja.
- 8. — Schritte 7. — 9. — wie im ersten Beispiel.
- 9. — Sie ersetzen in den Spieltagen die Spiele die bisher mit der MKZ »0« belegt waren mit den richtigen MKZs.
- 10. — Wie 11. — im ersten Beispiel
Tips zur Vorbereitung
Wenn Sie das in diesem Abschnitt beschriebene genauestens durchlesen, und bei der Verwaltung ihrer Sportliga anwenden, können Sie sich eventuell sehr viel Arbeit ersparen.
Anlegen der Ligen vor der Saison
Wir sehen uns nun den Sportteil einer Montagszeitung genauer an. Sie sehen hier fast alle Klassen im Fußballsport. In der mir vorliegenden, einer Aachener Lokalzeitung, stelle ich folgendes fest:
| 1.— | 1. Bundesliga | 18 Mannschaften |
| 2.— | 2. Bundesliga | 20 Mannschaften |
| 3.— | Oberliga | 18 Mannschaften |
| 4.— | Verbandsliga | 15 Mannschaften |
| 5.— | Landesliga | 17 Mannschaften |
| 6.— | Bezirksliga | 17 Mannschaften |
| 7.— | Kreisliga A,Gr.1 | 16 Mannschaften |
| 8.— | Kreisliga A,Gr.2 | 15 Mannschaften |
| 9.— | Kreisliga B,Gr.1 | 16 Mannschaften |
| 10.— | Kreisliga B,Gr.2 | 16 Mannschaften |
| 11.— | Kreisliga B,Gr.3 | 16 Mannschaften |
| 12.— | Kreisliga B,Gr.4 | 16 Mannschaften |
| 13.— | Kreisliga C,Gr.1 | 15 Mannschaften |
| . | . | . |
| . | . | . |
| . | . | . |
| 20.— | Kreisliga C,Gr.8 | 16 Mannschaften |
| 21.— | A—Junioren Verbandsklasse | 12 Mannschaften |
| 22.— | B—Junioren Verbandsklasse | 12 Mannschaften |
| 23.— | A—Junioren Sondergruppe | 12 Mannschaften |
| 24.— | B—Junioren Sondergruppe | 12 Mannschaften |
| 25.— | C—Junioren Sondergruppe | 12 Mannschaften |
| . | . | . |
| . | . | . |
| . | . | . |
| 64.— | F—Jugend Normalstaffel 1 | 8 Mannschaften |
| 65.— | F—Jugend Normalstaffel 2 | 10 Mannschaften |
| 66.— | F—Jugend Normalstaffel 3 | 10 Mannschaften |
Jeder, der sich normalerweise nicht im Verband um die Organisation des Spielbetriebes kümmert, wird nun erstmal staunen, wieviel Ligen die ehrenamtlichen Staffelleiter, insbesondere im Jugendbereich, zu verwalten haben. Von den insgesamt 66 Ligen werden 58 im Kreisverband, davon 44 im Jegendbereich, organisiert. Somit liegt es nahe, sich ein Instrument zu beschaffen, das die Routinearbeiten erledigen kann.
Im nachfolgenden soll nun am Beispiel des Kreises Aachen aufgezeigt werden, welche Grundüberlegungen man anstellen sollte, um die Ligen des Kreises mit »Ligatab« bei möglichst kleinem Aufwand zu verwalten.
Es geht nun darum festzustellen, welche Liga Sie mit welcher Anzahl von Mannschaften anzulegen haben. Das Ergebnis muß natürlich so sein, daß genügend Flexibilität vorhanden ist, um alle Veränderungen, bezogen auf die Mannschaftsanzahl, mit geringst möglichem Arbeitsaufwand erfassen zu können. Hierzu betrachten Sie nur die Ligen, die im Kreisverband verwaltet werden müssen (Nr. 7 bis 20, Nr. 23 bis 66).
Es sind hier zwei Arten zu unterscheiden. Einmal die Ligen, in denen die Anzahl der Mannschaften durch Auf- beziehungsweise Abstieg geregelt wird, zum anderen die Ligen, in denen die Anzahl der Mannschaften nur von der Anzahl der Meldungen der Vereine abhängig ist.
Zur ersten Gruppe gehören die Gruppen der Kreisliga A und B sowie die Junioren Sondergruppen und Leistungsstaffeln. In diese Ligen wird es in der laufenden Saison nie vorkommen, daß sie durch eine Mannschaft vergrößert werden müssen.
In der zweiten Gruppe, den Kreisligen C und den Junioren- beziehungsweise Jugendnormalstaffeln, kann es schon öfter vorkommen, daß Mannschaften nachgemeldet werden.
In der ersten Gruppe brauchen Sie nicht lange zu überlegen. Hier kommen Sie mit 16er und 12er Gruppen aus. In der zweiten Gruppe sollten Sie für die Kreisliga C 16er Gruppen anlegen und für die Jugendmannschaften 12er Gruppen. Damit haben Sie zwei Probleme erschlagen. Zum einen haben Sie genügend Reserve für die Nachmeldung, zum andern benötigen Sie nur den 16er und den 12er DFB-Spielplanschlüssel.
Um nun nicht stundenlang in 14 Gruppen mit 16er-Schlüssel und in 44 Gruppen mit 12er-Schlüssel Mannschaftskennzahl und Spieltagsdatum eintragen zu müssen, sollten Sie wie folgt vorgehen:
- — Sie legen eine Liga mit 16 Mannschaften, einschließlich komplettem Spielplan und Spieltagsdatum an.
- — Wie vor, jedoch mit 14 Mannschaften.
- — Sie kopieren die Ligen mit dem auf Ihrer »TEST/DEMO-DISKETTE« befindlichem Programm »DOS 5.1« und benennen sie um.
Die Schreibweise des Befehls im »DOS 5.1« ist: >C:Neuer Name = Alter Name
Aufteilen der Ligen auf Disketten
Um die Ligen bei Ihrer wöchentlichen Arbeit schnell wiederzufinden, ist es ratsam, nicht mit Disketten zu sparen und die Aufteilung nach rein logischen Gesichtspunkten vorzunehmen. So hat eine F-Jugendliga nichts auf der gleichen Diskette zu suchen wie eine Kreisliga A. Es passen maximal zehn 16er Ligen oder maximal zwanzig 12er Ligen auf eine Diskette. Hierauf aufbauend könnte eine Aufteilung wie folgt aussehen:
| 1. Diskette Kreisliga A und B | (6 Ligen) |
| 2. Diskette Kreisliga C | (8 Ligen) |
| 3. Diskette Ju.-Sonder und Leistungsgruppe | (6 Ligen) |
| 4. Diskette A- und B-Junioren Normalstaffel | (11 Ligen) |
| 5. Diskette C- und D-Jugend Normalstaffel | (16 Ligen) |
| 6. Diskette E- und F-Jugend Normalstaffel | (11 Ligen) |
Datensicherung
Die Datensicherung muß sehr ernst genommen werden. Um einen unnötigen Verlust größerer Datenmengen zu vermeiden, sollten Sie mindestens einmal im Monat alle Datendisketten mit einem Diskettenkopierprogramm vollständig kopieren. Dies sollten Sie auch tun, nachdem Sie alle Ligen, die Sie verwalten möchten, zum ersten Mal angelegt haben.
Es wäre natürlich sinnlos, sich die Arbeit des Kopierens zu machen, um die Kopien am gleichen Ort wie die Originale aufzubewahren. Die Kopien sollten mindestens in einem anderen Raum aufbewahrt werden. Es wäre natürlich noch besser, wenn Sie die Kopien in einem anderen Gebäude aufbewahren könnten. Wenn Sie diese Tips befolgen, ersparen Sie sich viel Arbeit.
Das Programm wurde in erster Linie für die ehrenamtlichen Mitarbeiter der Kreisverbände geschreiben, die jede Woche mühsam per Hand die Ergebnisse in Listen eintragen und nach den verschiedensten Schemata in unregelmäßigen Zeitabständen Tabellen errechnen. Aber auch für den privaten Bereich kann Ligatab zweckentfremdet werden.
(Franz-Josef Heuser/rg)

1 poke53280,0:poke53281,0:printchr$(14):rem poke788,52:poke792,193
3 printchr$(147):print
4 print " Bitte warten"
5 gosub655
6 printzd$zh$
7 printzh$" "za$" "zb$"
8 print" "za$" "zb$" "za$" "zb$
9 print" "za$" "zb$" L{$a0}I{$a0}G{$a0}A{$a0}T{$a0}A{$a0}B{$a0} "za$" "zb$
10 print" "za$" "zb$" "za$" "zb$
11 print" "za$" "zb$" by Heuser Franz-Josef "za$" "zb$
12 print" "za$" "zb$" "za$" "zb$
13 print" "za$" "zb$" In den Atzenbenden 74 "za$" "zb$
14 print" "za$" "zb$" "za$" "zb$
15 print" "za$" "zb$" 5100 Aachen-Haaren "za$" "zb$
16 print" "za$" "zb$" "za$" "zb$
17 print" "za$" "zb$" Telefon 0241/16737 "za$" "zb$
18 print" "za$" "zb$" "za$" "zb$
19 print" "za$" "zb$"
20 print:print:print" Bitte geben Sie das heutige"
21 print:print" Datum in der Form TT.MM.JJJJ" "
22 print" ^^ ^^ ^^^^" "
23 print" ein. ..........";
24 printze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$;:inputda$
25 print:print:printza$z0$zb$
26 gosub709
27 ifw$<>"j"then6
28 dimm$(20),m(20),d(38,10),e(38,10),l(20,9),g$(38,20),sr$(20),z(20)
29 dimh$(38,20),k1(20,2),ds$(38),n$(38,10),dn$(38,10)
30 gosub575
31 printzd$za$z1$zb$:print
32 print"-------- "zz$" ----------" :print
33 print" "za$" 1 "zb$" = "zw$
34 print" "za$" 2 "zb$" = "zt$
35 print" "za$" 3 "zb$" = "zs$:print
36 print"-------- "zy$" ----------":print
37 print" "za$" 4 "zb$" = "zr$
38 print" "za$" 5 "zb$" = "zq$
39 print" "za$" 6 "zb$" = "zp$:print
40 print"-------- "zx$" ----------":print
41 print" "za$" 7 "zb$" = "zo$
42 print" "za$" 8 "zb$" = "zn$:print
43 print"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}":print
44 print" "za$" 9 "zb$" = "za$zm$zb$
45 print:printzl$
46 gosub709
47 w=val(w$):ifw<1orw>9then46
48 onwgosub50,88,147,194,219,291,331,374,411
49 goto31
50 printzd$:printza$z2$zb$:print
51 ifln$=""thenln$="................"
52 ifa=0thenprint:print" E{$a0}R{$a0}S{$a0}T{$a0}E{$a0}I{$a0}N{$a0}G{$a0}A{$a0}B{$a0}E{$a0}{$a0} ":print:print
53 ifa=0thenprint" Liganame = ";ln$:printzc$zg$zg$zg$zg$zg$
54 ifa=0thenprint:forx=1to12:printzf$;:nextx
55 ifa=0theninputln$:ln$=left$(ln$,16):print
56 ifa=0theninput" Wieviele Mannschaften (3-20) ";a:gosub571:y=1
57 ifa<3ora>20thena=0:goto50
58 printzd$za$z2$zb$:print
59 fori=1toa
60 ifi<10thenprintzf$;
61 printi;ze$;". Mannschaft ";m$(i)
62 nexti
63 ify=1thengosub82
64 printzg$za$z0$zb$
65 gosub709
66 ifw$="j"theny=0:return
67 ifw$<>"n"then65
68 printzh$;:print" "za$"N"zb$"ame "za$"A"zb$"nzahl falsch ?";
69 print" "
70 gosub709
71 ifw$="n"theny=1:gosub82:goto80
72 ifw$="a"thenprintzh$zh$
73 print" "za$"-"zb$" = Eine Mannschaft weniger"
74 print:print" "za$"+"zb$" = Eine Mannschaft mehr"
75 gosub709
76 ifw$="-"thengosub497:y=0:goto58
77 ifw$="+"thengosub526:y=0:goto58
78 goto75
79 w$="a"
80 ifw$="n"thenprintzh$:goto64
81 ifw$<>"n"orw$<>"a"then70
82 printzc$zg$
83 fori=1toa
84 forx=1to18:printzf$;:nextx
85 inputm$:m$(i)=left$(m$,15):m$=""
86 nexti
87 return
88 printzd$za$z3$zb$:print:print
89 print" "za$" e "zb$" = Spielplan eingeben":print
90 print" "za$" s "zb$" = Spiele sichten":print
91 print" Ergebnisse -e-s-k-":print
92 print" "za$" n "zb$" = Nachholspiele -e-s-k-":print
93 print" "za$" m "zb$" = Menue"
94 gosub709
95 ifw$="m"thenreturn
96 ifw$="e"then101
97 ifw$="s"thenprint:print:print" Start bei Spieltag (1-";b;")";:inputbs
98 ifw$="s"then120
99 ifw$="n"then685
100 goto88
101 gosub571
102 gosub477
103 fori=1toint(b/2)
104 gosub712
105 printza$i;ze$;"Tag Wer spielte gegen wen (1 -"a;:printze$") "zb$:print
106 forj=1toc
107 printzf$;d(i,j)
108 printzh$zf$zf$zf$zf$zf$" - ";:print e(i,j):printzh$zh$
109 inputd$
110 d(i,j)=val(left$(d$,2)):d$=""
111 printzh$zf$zf$zf$zf$" - ";:input e$:e(i,j)=val(left$(e$,2)):e$=""
112 nextj
113 printza$z0$zb$
114 gosub709
115 ifw$="m"thenreturn
116 ifw$<>"j"then104
117 nexti
118 gosub519
119 goto88
120 gosub571:ifbs<1orbs>bthen88
121 fori=bstob
122 gosub712
123 printzc$:forx=1to6:printzg$:nextx
124 printza$i;ze$;"Tag E{$a0}R{$a0}G{$a0}E{$a0}B{$a0}N{$a0}I{$a0}S{$a0}S{$a0}E "zb$:print
125 forj=1toc
126 gosub732:printd(i,j)
127 printzh$zf$zf$zf$zf$" - ";:printe(i,j):printzh$zh$
128 ifn$(i,j)="n"thenprint:printzh$;:for x=1to18:printzf$;:nextx
129 ifn$(i,j)="n"thenprint" nachholspiel":goto137
130 ifg$(i,d(i,j))<>""thenprint:printzh$;:forx=1to18:printzf$;:nextx
131 ifg$(i,d(i,j))<>""thenprintg$(i,d(i,j));
132 ifg$(i,d(i,j))<>""thenprint:printzh$;:forx=1to23:printzf$;:nextx:print"*";
133 ifh$(i,d(i,j))<>""thenprint" ";h$(i,d(i,j))
134 ifg$(i,d(i,j))=""andh$(i,d(i,j))=""thenprint:printzh$;
135 ifg$(i,d(i,j))=""andh$(i,d(i,j))=""thenprint;:forx=1to23:printzf$;:nextx
136 ifg$(i,d(i,j))=""andh$(i,d(i,j))=""thenprint"*"
137 gosub735
138 nextj
139 ifa<19thenprint
140 printza$zk$zb$:gosub709
141 ifw$=zh$theni=i:ifi=btheni=0
142 ifw$=zg$theni=i-2:ifi<0theni=b-1
143 ifw$="k"thengosub552
144 ifw$="m"thenreturn
145 nexti
146 goto88
147 gosub571
148 printzd$za$z4$zb$:print
149 print" Bis zu welchem Spieltag ?"
150 ifb=0thenreturn
151 print:print" 1 - ";b;:input k
152 ifk<1ork>bthen148
153 gosub 738:print:print" Ich berechne die Tabelle !"
154 print:print" Bitte warten "
155 fori=1to20
156 forj=1to9
157 l(i,j)=0
158 nextj
159 nexti
160 fori=1toa
161 forj=1tok
162 ifg$(j,i)=""orh$(j,i)=""then169
163 l(i,4)=l(i,4)+1
164 l(i,1)=l(i,1)+val(g$(j,i))
165 l(i,2)=l(i,2)+val(h$(j,i))
166 ifval(g$(j,i))>val(h$(j,i))thenl(i,5)=l(i,5)+1
167 ifval(g$(j,i))=val(h$(j,i))thenl(i,6)=l(i,6)+1
168 ifval(g$(j,i))<val(h$(j,i))thenl(i,7)=l(i,7)+1
169 nextj
170 nexti
171 fori=1toa
172 l(i,3)=l(i,1)-l(i,2)
173 l(i,8)=(l(i,5)*2)+l(i,6)
174 l(i,9)=(l(i,7)*2)+l(i,6)
175 nexti
176 gosub622:gosub 739
177 ifr1=1thenr1=0:return
178 gosub 738:printzd$za$z4$zb$:print
179 print" Tabelle einschl.";k;ze$". Spieltag":print:print
180 ifa>17thenprintzh$zh$
181 print"Pl.{SHIFT--} Name {SHIFT--} Tord. {SHIFT--} +Pu.{SHIFT--} -Pu."
182 print"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}":ty=0
183 fori=1toa
184 ifm$(z(i))="..............."then190
185 ty=ty+1:printty;
186 print:printzh$zf$zf$zf$;left$(m$(z(i)),15)
187 printzh$;:forx=1to21:printzf$;:nextx:print l(z(i),3)
188 printzh$;:forx=1to28:printzf$;:nextx:print l(z(i),8)
189 printzh$;:forx=1to34:printzf$;:nextx:print l(z(i),9)
190 nexti
191 gosub739:ifr1=1thenr1=0:return
192 gosub709
193 return
194 printzd$za$z5$zb$:print:print
195 print" Druckerausgabe Mannschaftsliste":print
196 print" Stand : ";da$:print
197 print" Drucker eingeschaltet ?":print
198 print" Wenn fertig dann ";za$zv$zb$
199 print:print:print " M = Menue"
200 gosub709
201 ifw$="m"then return
202 ifw$<>chr$(13)then194
203 close2:open2,4,7
204 print#2
205 print#2,chr$(14);"********** Mannschaftsliste ***********";chr$(15)
206 print#2
207 print#2,chr$(14);ln$" Stand : ";da$;chr$(15)
208 print#2:gosub711
209 print#2,chr$(14);"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}";chr$(15)
210 print#2
211 fori=1toastep4
212 print#2,m$(i);" ";
213 print#2,m$(i+1);" ";
214 print#2,m$(i+2);" ";
215 print#2,m$(i+3)
216 nexti
217 print#2:print#2:print#2:close2
218 return
219 printzd$za$z6$zb$:print:print:print:print
220 print" "za$" A "zb$" = Kompletter Spielplan":print
221 print" "za$" B "zb$" = Ein bestimmter Spieltag":print
222 print" "za$" C "zb$" = Von / bis zu einen Spieltag ":print
223 print" "za$" D "zb$" = Ergebnisse einer Mannschaft":print
224 print" "za$" N "zb$" = Nachholspiele":print
225 print" "za$" M "zb$" = Menue":print:print:print
226 gosub709
227 ifw$="m"thenreturn
228 ifw$="a"thenb1=1:b2=b
229 ifw$="a"thenb3=1:goto240
230 ifw$="b"thenprint" Welcher Spieltag 1 - ";ze$;b;:inputb1:b2=b1
231 ifw$="b"thenb3=2:goto240
232 ifw$="c"orw$="n"thenprint" von welchem Spieltag 1 - ";ze$;b;:inputb1:print
233 ifw$="c"orw$="n"thenprint" bis welchem Spieltag";b1;"- ";ze$;b;:inputb2
234 b4=0:ifw$="n"thenb4=1
235 ifw$="c"orw$="n"thenb3=3:goto240
236 ifw$="d"thengosub435
237 goto219
238 ifb1<1orb1>bthen219
239 ifb2<b1orb2>bthen219
240 printzd$za$z6$zb$:print:print:print
241 print" Druckerausgabe":print:print
242 ifw$="a"thenprint " Kompletter Spielplan"
243 ifw$="b"thenprint " ";b1;ze$;". Spieltag"
244 ifw$="n"thenprint" Nachholspiele":print:print
245 ifw$="c"orw$="n"thenprint " Vom";b1;"bis einschl.";b2;ze$;". Spieltag"
246 print:print:print" Stand : ";da$:print:print
247 print" "za$" M "zb$" = Menue "za$" D "zb$" = Drucken"
248 gosub709
249 ifw$="m"thenreturn
250 ifw$<>"d"then219
251 gosub571
252 gosub 738:close2:open2,4,7
253 print#2,chr$(14);"********** S p i e l p l a n **********"chr$(15)
254 print#2
255 print#2,chr$(14);ln$;" ";"Stand :";da$;chr$(15)
256 ifb3=1then261
257 print#2
258 ifb3=3thenprint#2,chr$(14);" vom";b1;". bis einschl.";
259 ifb3=3thenprint#2,b2;". Spieltag";chr$(15)
260 ifb3=2thenprint#2,chr$(14);" ";b2;". Spieltag";chr$(15)
261 print#2:gosub 711
262 print#2,chr$(14);"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}";chr$(15)
263 print#2:ifb4=1thengoto425
264 fori=b1tob2step2
265 print#2,"*";i;". Spieltag ";ds$(i);
266 ifi+1>b2thenprint#2
267 ifi+1<=b2thenprint#2,chr$(16)chr$(52)chr$(48);"*";i+1;
268 ifi+1<=b2thenprint#2,". Spieltag ";ds$(i+1)
269 print#2
270 j=1:x=1
271 foryy=jtoc
272 ifd(i,yy)=0thenj=j+1
273 ifd(i,yy)>0then275
274 nextyy
275 print#2,m$(d(i,j));"-";m$(e(i,j));" ";g$(i,d(i,j));":";h$(i,d(i,j));
276 j=j+1
277 ifb2=b1thenprint#2:goto284
278 forxx=xtoc
279 ifd(i+1,xx)=0thenx=x+1
280 ifd(i+1,xx)>0then282
281 nextxx
282 print#2,chr$(16)chr$(52)chr$(48);m$(d(i+1,x));"-";m$(e(i+1,x));" ";
283 print#2,g$(i+1,d(i+1,x));":";h$(i+1,d(i+1,x))
284 x=x+1
285 ifx>cthen287
286 goto271
287 print#2
288 nexti
289 print#2:print#2:print#2:close2:gosub739
290 goto219
291 printzd$za$z7$zb$:print
292 r1=1:gosub149
293 printzd$za$z7$zb$:print
294 r1=1:gosub179
295 print:print" "za$" D "zb$" = Drucken "za$" M "zb$" = Menue"
296 gosub709
297 ifw$="m"thenreturn
298 ifw$<>"d"then296
299 gosub 738:close2:open2,4,7
300 print#2
301 print#2,chr$(14);"************ T a b e l l e ************"
302 print#2
303 print#2,ln$;" Stand : ";da$
304 print#2
305 print#2," einschl.";k;". Spieltag";chr$(15)
306 print#2:gosub 711
307 print#2,chr$(14);"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}";chr$(15)
308 print#2
309 print#2
310 print#2," Pl. Verein Sp. G U V +T ";
311 print#2," -T TD +P -P "
312 print#2," {CBM-Q}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}";
313 print#2,"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-+}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{CBM-W}":ty=0
314 fori=1toa
315 ifm$(z(i))="..............."then327
316 ty=ty+1:print#2,chr$(16)chr$(48)chr$(55);ty;
317 print#2,chr$(16)chr$(49)chr$(50);m$(z(i));
318 print#2,chr$(16)chr$(50)chr$(56);l(z(i),4);
319 print#2,chr$(16)chr$(51)chr$(52);l(z(i),5);
320 print#2,chr$(16)chr$(51)chr$(56);l(z(i),6);
321 print#2,chr$(16)chr$(52)chr$(50);l(z(i),7);
322 print#2,chr$(16)chr$(52)chr$(55);l(z(i),1);
323 print#2,chr$(16)chr$(53)chr$(50);l(z(i),2);
324 print#2,chr$(16)chr$(53)chr$(55);l(z(i),3);
325 print#2,chr$(16)chr$(54)chr$(51);l(z(i),8);
326 print#2,chr$(16)chr$(54)chr$(56);l(z(i),9)
327 nexti
328 print#2
329 print#2:print#2:print#2:close2:gosub739
330 printzh$zh$zh$:goto295
331 printzd$za$z8$zb$:print:print:print
332 print" Richtige Diskette einlegen":print
333 ifln$=""thenln$="................"
334 gosub709
335 gosub740
336 print:print" Dateiname = ";ln$
337 printzh$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$zf$;:inputln$
338 print:printza$z0$zb$:gosub709
339 ifw$<>"j"then331
340 print:print" Wenn fertig dann ";za$zv$zb$:print
341 print" M = Menue"
342 gosub709
343 ifw$="m"thenreturn
344 ifw$<>chr$(13)then331
345 printzd$za$z8$zb$:print:print:print
346 print" Daten werden von Diskette geladen"
347 print:print" Bitte warten":print
348 print:print" ";za$" L{$a0}a d e n "zb$:print
349 gosub 738:close1:open1,8,3,ln$+",s,r"
350 input#1,a:gosub571
351 input#1,ln$
352 fori=1toa
353 input#1,m$(i)
354 nexti
355 fori=1tob
356 input#1,ds$(i)
357 forj=1toc
358 input#1,d(i,j)
359 input#1,e(i,j)
360 input#1,n$(i,j)
361 input#1,dn$:ifdn$<>"......198."thendn$(i,j)=dn$
362 nextj
363 nexti
364 fori=1tob
365 forj=1toa
366 input#1,g$(i,j)
367 input#1,h$(i,j)
368 nextj
369 nexti
370 close1:gosub739
371 gosub604
372 gosub571
373 return
374 printzd$za$z9$zb$:print:print:print
375 print" Richtige Diskette einlegen":print
376 print " Dateiname = ";ln$:print
377 print " Wenn fertig dann ";za$zv$zb$:print
378 print " M = Menue"
379 gosub 709
380 if w$="m" then return
381 ifw$<>chr$(13)then374
382 printzd$za$z9$zb$:print:print:print
383 print" Daten werden auf Diskette gespeichert"
384 print:print" Bitte warten":print
385 gosub 587
386 print:print" ";za$" Speichern "zb$:print
387 gosub 738:close1:open1,8,3,"@:"+ln$+",s,w"
388 print#1,a;chr$(13)
389 print#1,ln$;chr$(13)
390 fori=1toa
391 print#1,m$(i);chr$(13)
392 nexti
393 fori=1tob
394 print#1,ds$(i);chr$(13)
395 forj=1toc
396 print#1,d(i,j);chr$(13)
397 print#1,e(i,j);chr$(13)
398 print#1,n$(i,j);chr$(13)
399 print#1,dn$(i,j);chr$(13)
400 nextj
401 nexti
402 fori=1tob
403 forj=1toa
404 print#1,g$(i,j);chr$(13)
405 print#1,h$(i,j);chr$(13)
406 nextj
407 nexti
408 close1:gosub 739
409 gosub604
410 return
411 printzd$za$y9$zb$:print:print
412 print"{$a0} Sind alle Daten auf Diskette":print
413 print" gesichert ?????????? (J/N)":print
414 input" ";w$:print
415 ifw$<>"j"thenreturn
416 print" ";za$" W{$a0}I{$a0}R{$a0}K{$a0}L{$a0}I{$a0}C{$a0}H{$a0} ???? "zb$;
417 input" ";w1$
418 ifw1$<>"j"thenreturn
419 print:print:print:wx$=""
420 print" N = Neue Liga":print
421 print" E = Programmende"
422 get wx$:ifwx$=""then422
423 ifwx$<>"e"thenclr:goto3
424 sys64738
425 print#2,chr$(14);" N a c h h o l s p i e l e ";chr$(15):print#2
426 fori=b1tob2
427 forj=1toc
428 ifn$(i,j)<>"n"then432
429 print#2,"Vom";:ifi<10thenprint#2," ";
430 print#2,i;".Spieltag ";ds$(i);" ";m$(d(i,j));" - ";
431 print#2,m$(e(i,j));" neu am ";dn$(i,j)
432 nextj
433 nexti
434 goto289
435 gosub571
436 printzd$za$z6$zb$:print
437 print" Druckerausgabe":print:print
438 print" Spielplan einer Mannschaft"
439 print:print" Stand : ";da$:print
440 print" Welcher Manns. ( 1 - ";ze$;a;ze$;" ) ";:inputmn:print
441 ifmn<1ormn>athenprintzh$zh$zh$:goto440
442 print" ";m$(mn):print
443 printza$z0$zb$
444 gosub709
445 ifw$<>"j"then435
446 printzh$zh$
447 print" "za$" M "zb$" = Menue "za$" D "zb$" = Drucken "
448 gosub709
449 ifw$="m"thenreturn
450 ifw$<>"d"then448
451 close2:open2,4,7
452 print#2,chr$(14);"****** Spielplan ";m$(mn);" ******";chr$(15):print#2
453 print#2,chr$(14);ln$" Stand : ";da$;chr$(15)
454 print#2:gosub711
455 print#2,chr$(14);"{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}{SHIFT-*}";chr$(15)
456 print#2
457 fori=1tob
458 forj=1toc
459 ifm$(mn)<>m$(d(i,j))andm$(mn)<>m$(e(i,j))then462
460 print#2,i;".";chr$(16)chr$(48)chr$(55);ds$(i);" ..... Uhr ";
461 print#2,m$(d(i,j));" {SHIFT-*} ";m$(e(i,j));" ";g$(i,d(i,j));":"h$(i,d(i,j))
462 nextj
463 nexti
464 print#2:print#2:print#2:close2
465 print:print:print" Moechten Sie einen weiteren Ausdruck"
466 print:print" von Mannschaft ";m$(mn) "
467 gosub709
468 ifw$="j"then451
469 ifw$<>"n"then467
470 printzh$zh$zh$zh$
471 print" Moechten Sie einen Ausdruck einer "
472 print:print" anderen Mannschaft ( J/N ) "
473 gosub709
474 ifw$="j"then435
475 ifw$<>"n"then473
476 return
477 printzd$za$z3$zb$:print
478 print:print" Bitte Datum in der Form":print
479 print" > TT.MM.JJJJ < eingeben":print
480 fori=1tobstep2
481 printi;ze$;". ":printzh$zf$zf$zf$zf$zf$zf$;ds$(i)
482 printzh$;:forx=1to20:printzf$;:nextx:print i+1;ze$;". "
483 printzh$;:forx=1to27:printzf$;:nextx:printds$(i+1)
484 nexti
485 print:printza$z0$zb$
486 gosub709
487 ifw$="j"thenreturn
488 ifw$<>"n"then486
489 printzc$zg$zg$zg$zg$zg$zg$
490 ifa=17ora=18thenprintzh$zh$zh$
491 ifa=19ora=20thenprintzh$zh$zh$zh$zh$
492 fori=1tobstep2
493 printzf$zf$zf$zf$;:inputds$:ds$(i)=left$(ds$,10):printzh$;
494 forx=1to25:printzf$;:nextx:inputds$:ds$(i+1)=left$(ds$,10)
495 nexti
496 goto485
497 foram=1toa
498 ifleft$(m$(am),5)="....."then500
499 an=an+1
500 nextam
501 printzh$" "
502 printzh$zh$zh$" "
503 ifan-1<3thenprintzh$"Nicht zulaessig ! Mannschaftsanzahl < 3"
504 ifan-1<3thenan=0:gosub709:return
505 an=0
506 printzh$" Welche Mannschaft 1 -";a;:input " ";mw
507 printzh$" "za$" Ich korrigiere die Daten von "mw;ze$" "zb$
508 gosub571
509 fori=1tob
510 forj=1toc
511 ifd(i,j)<>mwande(i,j)<>mwthen515
512 g$(i,d(i,j))="":h$(i,d(i,j))=""
513 g$(i,e(i,j))="":h$(i,e(i,j))=""
514 d(i,j)=0:e(i,j)=0
515 nextj
516 nexti
517 m$(mw)="..............."
518 return
519 fori=int(b/2)+1tob
520 forj=1toc
521 d(i,j)=e(i-b/2,j)
522 e(i,j)=d(i-b/2,j)
523 nextj
524 nexti
525 return
526 printzh$" "
527 printzh$zh$zh$" "
528 ifa+1>20thenprintzh$"Nicht zulaessig ! Mannschaftsanzahl >20"
529 ifa+1>20thengosub709:return
530 a=a+1:gosub571
531 printzh$zh$:print" Neue Mannschaft ...............";
532 printze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$ze$;:inputm$(a)
533 ifint(a/2)=a/2thenreturn
534 fori=b-2toa+1step-1
535 ds$(i)=ds$(i-2)
536 nexti
537 ds$(a)="......198."
538 ds$(a-1)="......198."
539 ds$(b-1)="......198."
540 ds$(b)="......198."
541 :print:print
542 fori=1to150
543 printza$" Spieltage und Ergebnisse neu setzen "zb$
544 ifi=150then550
545 printzh$;
546 print" "zh$
547 print" "zh$
548 print" "zh$
549 nexti
550 gosub709
551 return
552 printzc$:forx=1to7:printzg$:nextx
553 ifa>15thenprintzh$zh$
554 ifa>16thenprintzh$
555 ifa>17thenprintzh$zh$
556 ifa>18thenprintzg$zh$
557 ifa>19thenprintzh$zh$
558 forj=1toc
559 gg$="":hh$="":n$(i,j)="":g$(i,d(i,j))="":h$(i,d(i,j))=""
560 g$(i,e(i,j))="":h$(i,e(i,j))="":forx=1to17:printzf$;:nextx
561 inputgg$:ifleft$(gg$,3)="..."thengg$="..."
562 ifleft$(gg$,1)="n"thenn$(i,j)=left$(gg$,1):gg$="..."
563 ifgg$<>"..."theng$(i,d(i,j))=str$(val(left$(gg$,3)))
564 printzh$;:forx=1to25:printzf$;:nextx
565 inputhh$:ifleft$(hh$,3)<>"..."thenh$(i,d(i,j))=str$(val(left$(hh$,3))):hh$=""
566 ifn$(i,j)="n"thenh$(i,d(i,j))="":ifn$(i,j)="n"theng$(i,d(i,j))=""
567 g$(i,e(i,j))=h$(i,d(i,j))
568 h$(i,e(i,j))=g$(i,d(i,j))
569 nextj
570 return
571 ifint(a/2)=a/2thenb=(a*2)-2:c=a/2
572 ifint(a/2)<>a/2thenb=a*2:c=(a-1)/2
573 return
574 print:print" ";za$" Formatieren "zb$:print
575 fori=1to20
576 ifm$(i)=""thenm$(i)="..............."
577 nexti
578 fori=1to38
579 ifds$(i)=""thends$(i)="......198."
580 nexti
581 fori=1to38
582 forj=1to10
583 ifdn$(i,j)=""thendn$(i,j)="......198."
584 nextj
585 nexti
586 return
587 print:print" ";za$" Formatieren "zb$:print
588 fori=1tob
589 forj=1toc
590 d(i,j)=d(i,j)+10
591 e(i,j)=e(i,j)+10
592 ifn$(i,j)=""thenn$(i,j)="h"
593 nextj
594 nexti
595 fori=1tob
596 forj=1toa
597 ifg$(i,j)=""theng$(i,j)="800"
598 ifh$(i,j)=""thenh$(i,j)="800"
599 g$(i,j)=str$(val(g$(i,j))+100)
600 h$(i,j)=str$(val(h$(i,j))+100)
601 nextj
602 nexti
603 return
604 print:print" ";za$"Reformatieren"zb$:print
605 gosub571
606 fori=1tob
607 forj=1toc
608 d(i,j)=d(i,j)-10
609 e(i,j)=e(i,j)-10
610 ifn$(i,j)="h"thenn$(i,j)=""
611 nextj
612 nexti
613 fori=1tob
614 forj=1toa
615 g$(i,j)=str$(val(g$(i,j))-100)
616 h$(i,j)=str$(val(h$(i,j))-100)
617 ifg$(i,j)=" 800"theng$(i,j)=""
618 ifh$(i,j)=" 800"thenh$(i,j)=""
619 nextj
620 nexti
621 return
622 fori=1toa
623 sm$=str$(1000+l(i,3))
624 ifl(i,3)<0thensm$=chr$(48)+sm$
625 ifl(i,3)>=0thensm$=chr$(49)+right$(sm$,3)
626 z(i)=i
627 sr$(i)=str$(l(i,8)+100)+str$(999-l(i,9))+sm$+str$(100+l(i,1))+str$(l(i,2))
628 nexti
629 n1=1:n2=a
630 i=1
631 j1=n1:j2=n2
632 ifsr$(j1)>=sr$(j2)then640
633 x=z(j1):z(j1)=z(j2):z(j2)=x
634 x$=sr$(j1):sr$(j1)=sr$(j2):sr$(j2)=x$
635 j1=j1+1
636 ifj1=j2then642
637 ifsr$(j1)>=sr$(j2)then635
638 x=z(j1):z(j1)=z(j2):z(j2)=x
639 x$=sr$(j1):sr$(j1)=sr$(j2):sr$(j2)=x$
640 j2=j2-1
641 ifj2<>j1then632
642 j2=j2+1
643 ifj2>=n2then646
644 k1(i,1)=j2:k1(i,2)=n2
645 i=i+1
646 j1=j1-1
647 ifn1>=j1then650
648 n2=j1
649 goto631
650 i=i-1
651 ifi<1then654
652 n1=k1(i,1):n2=k1(i,2)
653 goto631
654 return
655 za$=chr$(18):zb$=chr$(146):zc$=chr$(19):zd$=chr$(147)
656 ze$=chr$(157):zf$=chr$(29):zg$=chr$(17):zh$=chr$(145)
657 zz$="B{$a0}I{$a0}L{$a0}D{$a0}S{$a0}C{$a0}H{$a0}I{$a0}R{$a0}M"
658 zy$="D{$a0}R{$a0}U{$a0}C{$a0}K{$a0}E{$a0}R{$a0}"
659 zx$="D{$a0}I{$a0}S{$a0}K{$a0}E{$a0}T{$a0}T{$a0}E"
660 zv$="Return"
661 zw$="Mannschaften -e-s-k-"
662 zt$="Spieltage -e-s-k-"
663 zs$="Tabellen -s- "
664 zr$="Mannschaftsliste -d- "
665 zq$="Spieltage -d- "
666 zp$="Tabelle -d- "
667 zo$="Daten laden von Diskette "
668 zn$="Daten speichern auf Diskette"
669 zm$=" Neue Liga / PROGAMMENDE "
670 zl$=" e=eingeben s=sichten k=korrigieren"
671 zk$=" M=Menue K=korrigieren CRSR=blaettern "
672 z1$="ligatab{CBM-L} M{$a0}E{$a0}N{$a0}U{$a0}E{$a0} {CBM-J}by heuser"
673 z2$="ligatab{CBM-L}Mannschaften -e-s-k- {CBM-J}by heuser"
674 z3$="ligatab{CBM-L} Spieltage -e-s-k- {CBM-J}by heuser"
675 z4$="ligatab{CBM-L} Tabellen -s- {CBM-J}by heuser"
676 z5$="ligatab{CBM-L}Mannschaftsliste -d- {CBM-J}by heuser"
677 z6$="ligatab{CBM-L} Spieltage -d- {CBM-J}by heuser"
678 z7$="ligatab{CBM-L} Tabellen -d- {CBM-J}by heuser"
679 z8$="ligatab{CBM-L} Daten von Disk. la. {CBM-J}by heuser"
680 z9$="ligatab{CBM-L} Daten auf Disk. sp. {CBM-J}by heuser"
681 y9$="ligatab{CBM-L} Neue Liga/Prg.-Ende {CBM-J}by heuser"
682 z0$="ligatab{CBM-L} Eingabe ok (J/N) {CBM-J}by heuser"
683 nz$="ligatab{CBM-L}Nachholspiele -e-s-k-{CBM-J}by heuser"
684 return
685 gosub571
686 fori=1tob
687 printzd$za$nz$zb$:print
688 printi;". Spieltag vom ";ds$(i):print:nz=0
689 forj=1toc
690 ifn$(i,j)<>"n"then692
691 printm$(d(i,j));" - ";m$(e(i,j)):nz=1:print"^^ Neues Datum : ";dn$(i,j)
692 nextj
693 ifnz=0thenprint" Keine Nachholspiele !!!"
694 print:printza$zk$zb$
695 gosub709
696 ifw$=zh$theni=i:ifi=btheni=0
697 ifw$=zg$theni=i-2:ifi<0theni=b-1
698 ifw$="k"thengosub702
699 ifw$="m"thenreturn
700 nexti
701 return
702 printzc$zg$zg$zg$zg$
703 forj=1toc
704 ifn$(i,j)<>"n"then706
705 input"^^ Neues Datum : ";dn$(i,j):printzg$zh$
706 nextj
707 return
708 gosub723
709 gosub723:gosub730
710 return
711 print#2,"ligatab";chr$(16)chr$(54)chr$(57);"by heuser":return
712 printzd$za$z3$zb$:print
713 forx=1toastep2
714 printx;
715 ifx<10thenprint" ";
716 printm$(x);
717 ifx+1<=athenprintx+1;
718 ifx+1<=aandx+1<10thenprint" ";
719 ifx+1<=athenprintm$(x+1)
720 nextx
721 print:ifx+1>aandx+1<20thenprint
722 return
723 si=54272:fl=si:fh=si+1:tl=si+2:th=si+3:wt=si+4:at=si+5:ht=si+6:lt=si+24
724 pokelt,15:poketh,15:poketl,15:pokeat,0*16+0:pokeht,15*16
725 poke wt,65
726 for xt=50to0step-2:pokefh,40:pokefl,xt:next
727 for xt=50to0step-4:pokefh,40:pokefl,xt:next
728 pokewt,0
729 return
730 getw$:ifw$=""then730
731 return
732 ifg$(i,d(i,j))=""theng$(i,d(i,j))=" ..."
733 ifh$(i,d(i,j))=""thenh$(i,d(i,j))=" ..."
734 return
735 ifg$(i,d(i,j))=" ..."theng$(i,d(i,j))=""
736 ifh$(i,d(i,j))=" ..."thenh$(i,d(i,j))=""
737 return
738 poke 56334,peek(56334)and 254:return
739 poke 56334,peek(56334) or 1:return
740 close15:close2:printchr$(147);za$z8$zb$:print
741 open15,8,15,"i0":open2,8,2,"#"
742 t=18:s=1
743 print#15,"u1";2;0;t;s
744 print#15,"b-p";2;0
745 get#2,xx$:ifxx$=""thenxx$=chr$(0)
746 t=asc(xx$)
747 get#2,xx$:ifxx$=""thenxx$=chr$(0)
748 s=asc(xx$)
749 forxy=0to7
750 print#15,"b-p";2;xy*32+2
751 get#2,xx$:ifxx$=""thenxx$=chr$(0)
752 ifasc(xx$)=0then762
753 print#15,"b-p";2;xy*32+5
754 ff$=""
755 foryx=0to15
756 get#2,xx$:ifxx$=""thenxx$=chr$(0)
757 ifasc(xx$)=160then760
758 ff$=ff$+xx$
759 nextyx
760 ifaa=0thenaa=1:print" ";ff$:goto762
761 aa=0:print" ";ff$
762 nextxy
763 ift<>0then743
764 close2:close15
765 return
1 POKE 53280,0:POKE 53281,0:PRINTCHR$ (14):REM POKE788,52:POKE792,193 3 PRINTCHR$ (147):PRINT 4 PRINT "{8SPACE}BITTE WARTEN" 5 GOSUB 655 6 PRINTZD$ZH$ 7 PRINTZH$"{5SPACE}"ZA$"{27SPACE}"ZB$" 8 PRINT"{5SPACE}"ZA$" "ZB$"{25SPACE}"ZA$" "ZB$ 9 PRINT"{5SPACE}"ZA$" "ZB$"{6SPACE}L{SHIFT-SPACE}I{SHIFT-SPACE}G{SHIFT-SPACE}A{SHIFT-SPACE}T{SHIFT-SPACE}A{SHIFT-SPACE}B{SHIFT-SPACE,5SPACE}"ZA$" "ZB$ 10 PRINT"{5SPACE}"ZA$" "ZB$"{25SPACE}"ZA$" "ZB$ 11 PRINT"{5SPACE}"ZA$" "ZB$"{2SPACE}BY HEUSER FRANZ-JOSEF{2SPACE}"ZA$" "ZB$ 12 PRINT"{5SPACE}"ZA$" "ZB$"{25SPACE}"ZA$" "ZB$ 13 PRINT"{5SPACE}"ZA$" "ZB$"{2SPACE}IN DEN ATZENBENDEN 74{2SPACE}"ZA$" "ZB$ 14 PRINT"{5SPACE}"ZA$" "ZB$"{25SPACE}"ZA$" "ZB$ 15 PRINT"{5SPACE}"ZA$" "ZB$"{4SPACE}5100 AACHEN-HAAREN{3SPACE}"ZA$" "ZB$ 16 PRINT"{5SPACE}"ZA$" "ZB$"{25SPACE}"ZA$" "ZB$ 17 PRINT"{5SPACE}"ZA$" "ZB$"{4SPACE}TELEFON 0241/16737{3SPACE}"ZA$" "ZB$ 18 PRINT"{5SPACE}"ZA$" "ZB$"{25SPACE}"ZA$" "ZB$ 19 PRINT"{5SPACE}"ZA$"{27SPACE}"ZB$" 20 PRINT:PRINT:PRINT"{5SPACE}BITTE GEBEN SIE DAS HEUTIGE" 21 PRINT:PRINT"{5SPACE}DATUM IN DER FORM TT.MM.JJJJ" " 22 PRINT"{23SPACE}↑↑ ↑↑ ↑↑↑↑" " 23 PRINT"{5SPACE}EIN.{14SPACE}.........."; 24 PRINTZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$;:INPUTDA$ 25 PRINT:PRINT:PRINTZA$Z0$ZB$ 26 GOSUB 709 27 IF W$<>"J" THEN6 28 DIM M$(20),M(20),D(38,10),E(38,10),L(20,9),G$(38,20),SR$(20),Z(20) 29 DIM H$(38,20),K1(20,2),DS$(38),N$(38,10),DN$(38,10) 30 GOSUB 575 31 PRINTZD$ZA$Z1$ZB$:PRINT 32 PRINT"-------- "ZZ$" ----------" :PRINT 33 PRINT"{3SPACE}"ZA$" 1 "ZB$" = "ZW$ 34 PRINT"{3SPACE}"ZA$" 2 "ZB$" = "ZT$ 35 PRINT"{3SPACE}"ZA$" 3 "ZB$" = "ZS$:PRINT 36 PRINT"--------{4SPACE}"ZY$"{3SPACE}----------":PRINT 37 PRINT"{3SPACE}"ZA$" 4 "ZB$" = "ZR$ 38 PRINT"{3SPACE}"ZA$" 5 "ZB$" = "ZQ$ 39 PRINT"{3SPACE}"ZA$" 6 "ZB$" = "ZP$:PRINT 40 PRINT"--------{3SPACE}"ZX$"{3SPACE}----------":PRINT 41 PRINT"{3SPACE}"ZA$" 7 "ZB$" = "ZO$ 42 PRINT"{3SPACE}"ZA$" 8 "ZB$" = "ZN$:PRINT 43 PRINT"***************************************":PRINT 44 PRINT"{3SPACE}"ZA$" 9 "ZB$" = "ZA$ZM$ZB$ 45 PRINT:PRINTZL$ 46 GOSUB 709 47 W=VAL (W$):IF W<1OR W>9 THEN46 48 ON WGOSUB 50,88,147,194,219,291,331,374,411 49 GOTO 31 50 PRINTZD$:PRINTZA$Z2$ZB$:PRINT 51 IF LN$="" THENLN$="................" 52 IF A=0 THENPRINT:PRINT"{8SPACE}E{SHIFT-SPACE}R{SHIFT-SPACE}S{SHIFT-SPACE}T{SHIFT-SPACE}E{SHIFT-SPACE}I{SHIFT-SPACE}N{SHIFT-SPACE}G{SHIFT-SPACE}A{SHIFT-SPACE}B{SHIFT-SPACE}E{SHIFT-SPACE,SHIFT-SPACE,SPACE}":PRINT:PRINT 53 IF A=0 THENPRINT" LIGANAME ={3SPACE}";LN$:PRINTZC$ZG$ZG$ZG$ZG$ZG$ 54 IF A=0 THENPRINT:FOR X=1 TO12:PRINTZF$;:NEXT X 55 IF A=0 THENINPUTLN$:LN$=LEFT$ (LN$,16):PRINT 56 IF A=0 THENINPUT" WIEVIELE MANNSCHAFTEN (3-20) ";A:GOSUB 571:Y=1 57 IF A<3OR A>20 THENA=0:GOTO 50 58 PRINTZD$ZA$Z2$ZB$:PRINT 59 FOR I=1 TOA 60 IF I<10 THENPRINTZF$; 61 PRINTI;ZE$;". MANNSCHAFT{5SPACE}";M$(I) 62 NEXT I 63 IF Y=1 THENGOSUB 82 64 PRINTZG$ZA$Z0$ZB$ 65 GOSUB 709 66 IF W$="J" THENY=0:RETURN 67 IF W$<>"N" THEN65 68 PRINTZH$;:PRINT"{8SPACE}"ZA$"N"ZB$"AME{2SPACE}"ZA$"A"ZB$"NZAHL FALSCH ?"; 69 PRINT"{10SPACE}" 70 GOSUB 709 71 IF W$="N" THENY=1:GOSUB 82:GOTO 80 72 IF W$="A" THENPRINTZH$ZH$ 73 PRINT"{8SPACE}"ZA$"-"ZB$" = EINE MANNSCHAFT WENIGER" 74 PRINT:PRINT"{8SPACE}"ZA$"+"ZB$" = EINE MANNSCHAFT MEHR" 75 GOSUB 709 76 IF W$="-" THENGOSUB 497:Y=0:GOTO 58 77 IF W$="+" THENGOSUB 526:Y=0:GOTO 58 78 GOTO 75 79 W$="A" 80 IF W$="N" THENPRINTZH$:GOTO 64 81 IF W$<>"N"OR W$<>"A" THEN70 82 PRINTZC$ZG$ 83 FOR I=1 TOA 84 FOR X=1 TO18:PRINTZF$;:NEXT X 85 INPUTM$:M$(I)=LEFT$ (M$,15):M$="" 86 NEXT I 87 RETURN 88 PRINTZD$ZA$Z3$ZB$:PRINT:PRINT 89 PRINT"{3SPACE}"ZA$" E "ZB$" = SPIELPLAN{7SPACE}EINGEBEN":PRINT 90 PRINT"{3SPACE}"ZA$" S "ZB$" = SPIELE{10SPACE}SICHTEN":PRINT 91 PRINT"{9SPACE}ERGEBNISSE{6SPACE}-E-S-K-":PRINT 92 PRINT"{3SPACE}"ZA$" N "ZB$" = NACHHOLSPIELE{3SPACE}-E-S-K-":PRINT 93 PRINT"{3SPACE}"ZA$" M "ZB$" = MENUE" 94 GOSUB 709 95 IF W$="M" THENRETURN 96 IF W$="E" THEN101 97 IF W$="S" THENPRINT:PRINT:PRINT"{3SPACE}START BEI SPIELTAG (1-";B;")";:INPUTBS 98 IF W$="S" THEN120 99 IF W$="N" THEN685 100 GOTO 88 101 GOSUB 571 102 GOSUB 477 103 FOR I=1 TOINT (B/2) 104 GOSUB 712 105 PRINTZA$I;ZE$;"TAG WER SPIELTE GEGEN WEN (1 -"A;:PRINTZE$"){3SPACE}"ZB$:PRINT 106 FOR J=1 TOC 107 PRINTZF$;D(I,J) 108 PRINTZH$ZF$ZF$ZF$ZF$ZF$" - ";:PRINT E(I,J):PRINTZH$ZH$ 109 INPUTD$ 110 D(I,J)=VAL (LEFT$ (D$,2)):D$="" 111 PRINTZH$ZF$ZF$ZF$ZF$" - ";:INPUT E$:E(I,J)=VAL (LEFT$ (E$,2)):E$="" 112 NEXT J 113 PRINTZA$Z0$ZB$ 114 GOSUB 709 115 IF W$="M" THENRETURN 116 IF W$<>"J" THEN104 117 NEXT I 118 GOSUB 519 119 GOTO 88 120 GOSUB 571:IF BS<1OR BS>B THEN88 121 FOR I=BS TOB 122 GOSUB 712 123 PRINTZC$:FOR X=1 TO6:PRINTZG$:NEXT X 124 PRINTZA$I;ZE$;"TAG{7SPACE}E{SHIFT-SPACE}R{SHIFT-SPACE}G{SHIFT-SPACE}E{SHIFT-SPACE}B{SHIFT-SPACE}N{SHIFT-SPACE}I{SHIFT-SPACE}S{SHIFT-SPACE}S{SHIFT-SPACE}E{SPACE,6SPACE}"ZB$:PRINT 125 FOR J=1 TOC 126 GOSUB 732:PRINTD(I,J) 127 PRINTZH$ZF$ZF$ZF$ZF$" - ";:PRINTE(I,J):PRINTZH$ZH$ 128 IF N$(I,J)="N" THENPRINT:PRINTZH$;:FOR X=1 TO18:PRINTZF$;:NEXT X 129 IF N$(I,J)="N" THENPRINT" NACHHOLSPIEL":GOTO 137 130 IF G$(I,D(I,J))<>"" THENPRINT:PRINTZH$;:FOR X=1 TO18:PRINTZF$;:NEXT X 131 IF G$(I,D(I,J))<>"" THENPRINTG$(I,D(I,J)); 132 IF G$(I,D(I,J))<>"" THENPRINT:PRINTZH$;:FOR X=1 TO23:PRINTZF$;:NEXT X:PRINT"*"; 133 IF H$(I,D(I,J))<>"" THENPRINT"{2SPACE}";H$(I,D(I,J)) 134 IF G$(I,D(I,J))=""AND H$(I,D(I,J))="" THENPRINT:PRINTZH$; 135 IF G$(I,D(I,J))=""AND H$(I,D(I,J))="" THENPRINT;:FOR X=1 TO23:PRINTZF$;:NEXT X 136 IF G$(I,D(I,J))=""AND H$(I,D(I,J))="" THENPRINT"*" 137 GOSUB 735 138 NEXT J 139 IF A<19 THENPRINT 140 PRINTZA$ZK$ZB$:GOSUB 709 141 IF W$=ZH$ THENI=I:IF I=B THENI=0 142 IF W$=ZG$ THENI=I-2:IF I<0 THENI=B-1 143 IF W$="K" THENGOSUB 552 144 IF W$="M" THENRETURN 145 NEXT I 146 GOTO 88 147 GOSUB 571 148 PRINTZD$ZA$Z4$ZB$:PRINT 149 PRINT"{6SPACE}BIS ZU WELCHEM SPIELTAG ?" 150 IF B=0 THENRETURN 151 PRINT:PRINT"{6SPACE}1 - ";B;:INPUT K 152 IF K<1OR K>B THEN148 153 GOSUB 738:PRINT:PRINT"{6SPACE}ICH BERECHNE DIE TABELLE !" 154 PRINT:PRINT"{13SPACE}BITTE WARTEN " 155 FOR I=1 TO20 156 FOR J=1 TO9 157 L(I,J)=0 158 NEXT J 159 NEXT I 160 FOR I=1 TOA 161 FOR J=1 TOK 162 IF G$(J,I)=""OR H$(J,I)="" THEN169 163 L(I,4)=L(I,4)+1 164 L(I,1)=L(I,1)+VAL (G$(J,I)) 165 L(I,2)=L(I,2)+VAL (H$(J,I)) 166 IF VAL (G$(J,I))>VAL (H$(J,I)) THENL(I,5)=L(I,5)+1 167 IF VAL (G$(J,I))=VAL (H$(J,I)) THENL(I,6)=L(I,6)+1 168 IF VAL (G$(J,I))<VAL (H$(J,I)) THENL(I,7)=L(I,7)+1 169 NEXT J 170 NEXT I 171 FOR I=1 TOA 172 L(I,3)=L(I,1)-L(I,2) 173 L(I,8)=(L(I,5)*2)+L(I,6) 174 L(I,9)=(L(I,7)*2)+L(I,6) 175 NEXT I 176 GOSUB 622:GOSUB 739 177 IF R1=1 THENR1=0:RETURN 178 GOSUB 738:PRINTZD$ZA$Z4$ZB$:PRINT 179 PRINT"{4SPACE}TABELLE EINSCHL.";K;ZE$". SPIELTAG":PRINT:PRINT 180 IF A>17 THENPRINTZH$ZH$ 181 PRINT"PL.- NAME{10SPACE}- TORD. - +PU.- -PU." 182 PRINT"****************************************":TY=0 183 FOR I=1 TOA 184 IF M$(Z(I))="..............." THEN190 185 TY=TY+1:PRINTTY; 186 PRINT:PRINTZH$ZF$ZF$ZF$;LEFT$ (M$(Z(I)),15) 187 PRINTZH$;:FOR X=1 TO21:PRINTZF$;:NEXT X:PRINT L(Z(I),3) 188 PRINTZH$;:FOR X=1 TO28:PRINTZF$;:NEXT X:PRINT L(Z(I),8) 189 PRINTZH$;:FOR X=1 TO34:PRINTZF$;:NEXT X:PRINT L(Z(I),9) 190 NEXT I 191 GOSUB 739:IF R1=1 THENR1=0:RETURN 192 GOSUB 709 193 RETURN 194 PRINTZD$ZA$Z5$ZB$:PRINT:PRINT 195 PRINT"{3SPACE}DRUCKERAUSGABE MANNSCHAFTSLISTE":PRINT 196 PRINT"{8SPACE}STAND :{6SPACE}";DA$:PRINT 197 PRINT"{9SPACE}DRUCKER EINGESCHALTET ?":PRINT 198 PRINT"{9SPACE}WENN FERTIG DANN ";ZA$ZV$ZB$ 199 PRINT:PRINT:PRINT "{15SPACE}M = MENUE" 200 GOSUB 709 201 IF W$="M" THEN RETURN 202 IF W$<>CHR$ (13) THEN194 203 CLOSE 2:OPEN 2,4,7 204 PRINT#2 205 PRINT#2,CHR$ (14);"********** MANNSCHAFTSLISTE ***********";CHR$ (15) 206 PRINT#2 207 PRINT#2,CHR$ (14);LN$"{5SPACE}STAND : ";DA$;CHR$ (15) 208 PRINT#2:GOSUB 711 209 PRINT#2,CHR$ (14);"***************************************";CHR$ (15) 210 PRINT#2 211 FOR I=1 TOASTEP 4 212 PRINT#2,M$(I);"{6SPACE}"; 213 PRINT#2,M$(I+1);"{6SPACE}"; 214 PRINT#2,M$(I+2);"{5SPACE}"; 215 PRINT#2,M$(I+3) 216 NEXT I 217 PRINT#2:PRINT#2:PRINT#2:CLOSE 2 218 RETURN 219 PRINTZD$ZA$Z6$ZB$:PRINT:PRINT:PRINT:PRINT 220 PRINT" "ZA$" A "ZB$" = KOMPLETTER SPIELPLAN":PRINT 221 PRINT" "ZA$" B "ZB$" = EIN BESTIMMTER SPIELTAG":PRINT 222 PRINT" "ZA$" C "ZB$" = VON / BIS ZU EINEN SPIELTAG ":PRINT 223 PRINT" "ZA$" D "ZB$" = ERGEBNISSE EINER MANNSCHAFT":PRINT 224 PRINT" "ZA$" N "ZB$" = NACHHOLSPIELE":PRINT 225 PRINT" "ZA$" M "ZB$" = MENUE":PRINT:PRINT:PRINT 226 GOSUB 709 227 IF W$="M" THENRETURN 228 IF W$="A" THENB1=1:B2=B 229 IF W$="A" THENB3=1:GOTO 240 230 IF W$="B" THENPRINT" WELCHER SPIELTAG 1 - ";ZE$;B;:INPUTB1:B2=B1 231 IF W$="B" THENB3=2:GOTO 240 232 IF W$="C"OR W$="N" THENPRINT" VON WELCHEM SPIELTAG 1 - ";ZE$;B;:INPUTB1:PRINT 233 IF W$="C"OR W$="N" THENPRINT" BIS WELCHEM SPIELTAG";B1;"- ";ZE$;B;:INPUTB2 234 B4=0:IF W$="N" THENB4=1 235 IF W$="C"OR W$="N" THENB3=3:GOTO 240 236 IF W$="D" THENGOSUB 435 237 GOTO 219 238 IF B1<1OR B1>B THEN219 239 IF B2<B1OR B2>B THEN219 240 PRINTZD$ZA$Z6$ZB$:PRINT:PRINT:PRINT 241 PRINT"{11SPACE}DRUCKERAUSGABE":PRINT:PRINT 242 IF W$="A" THENPRINT "{8SPACE}KOMPLETTER SPIELPLAN" 243 IF W$="B" THENPRINT "{11SPACE}";B1;ZE$;". SPIELTAG" 244 IF W$="N" THENPRINT"{11SPACE}NACHHOLSPIELE":PRINT:PRINT 245 IF W$="C"OR W$="N" THENPRINT "{3SPACE}VOM";B1;"BIS EINSCHL.";B2;ZE$;". SPIELTAG" 246 PRINT:PRINT:PRINT"{8SPACE}STAND :{3SPACE}";DA$:PRINT:PRINT 247 PRINT"{6SPACE}"ZA$" M "ZB$" = MENUE "ZA$" D "ZB$" = DRUCKEN" 248 GOSUB 709 249 IF W$="M" THENRETURN 250 IF W$<>"D" THEN219 251 GOSUB 571 252 GOSUB 738:CLOSE 2:OPEN 2,4,7 253 PRINT#2,CHR$ (14);"********** S P I E L P L A N **********"CHR$ (15) 254 PRINT#2 255 PRINT#2,CHR$ (14);LN$;"{6SPACE}";"STAND :";DA$;CHR$ (15) 256 IF B3=1 THEN261 257 PRINT#2 258 IF B3=3 THENPRINT#2,CHR$ (14);"{3SPACE}VOM";B1;". BIS EINSCHL."; 259 IF B3=3 THENPRINT#2,B2;". SPIELTAG";CHR$ (15) 260 IF B3=2 THENPRINT#2,CHR$ (14);"{13SPACE}";B2;". SPIELTAG";CHR$ (15) 261 PRINT#2:GOSUB 711 262 PRINT#2,CHR$ (14);"***************************************";CHR$ (15) 263 PRINT#2:IF B4=1 THENGOTO 425 264 FOR I=B1 TOB2STEP 2 265 PRINT#2,"*";I;". SPIELTAG ";DS$(I); 266 IF I+1>B2 THENPRINT#2 267 IF I+1<=B2 THENPRINT#2,CHR$ (16)CHR$ (52)CHR$ (48);"*";I+1; 268 IF I+1<=B2 THENPRINT#2,". SPIELTAG ";DS$(I+1) 269 PRINT#2 270 J=1:X=1 271 FOR YY=J TOC 272 IF D(I,YY)=0 THENJ=J+1 273 IF D(I,YY)>0 THEN275 274 NEXT YY 275 PRINT#2,M$(D(I,J));"-";M$(E(I,J));" ";G$(I,D(I,J));":";H$(I,D(I,J)); 276 J=J+1 277 IF B2=B1 THENPRINT#2:GOTO 284 278 FOR XX=X TOC 279 IF D(I+1,XX)=0 THENX=X+1 280 IF D(I+1,XX)>0 THEN282 281 NEXT XX 282 PRINT#2,CHR$ (16)CHR$ (52)CHR$ (48);M$(D(I+1,X));"-";M$(E(I+1,X));" "; 283 PRINT#2,G$(I+1,D(I+1,X));":";H$(I+1,D(I+1,X)) 284 X=X+1 285 IF X>C THEN287 286 GOTO 271 287 PRINT#2 288 NEXT I 289 PRINT#2:PRINT#2:PRINT#2:CLOSE 2:GOSUB 739 290 GOTO 219 291 PRINTZD$ZA$Z7$ZB$:PRINT 292 R1=1:GOSUB 149 293 PRINTZD$ZA$Z7$ZB$:PRINT 294 R1=1:GOSUB 179 295 PRINT:PRINT"{3SPACE}"ZA$" D "ZB$" ={2SPACE}DRUCKEN{2SPACE}"ZA$" M "ZB$" = MENUE" 296 GOSUB 709 297 IF W$="M" THENRETURN 298 IF W$<>"D" THEN296 299 GOSUB 738:CLOSE 2:OPEN 2,4,7 300 PRINT#2 301 PRINT#2,CHR$ (14);"************ T A B E L L E ************" 302 PRINT#2 303 PRINT#2,LN$;"{5SPACE}STAND : ";DA$ 304 PRINT#2 305 PRINT#2,"{8SPACE}EINSCHL.";K;". SPIELTAG";CHR$ (15) 306 PRINT#2:GOSUB 711 307 PRINT#2,CHR$ (14);"***************************************";CHR$ (15) 308 PRINT#2 309 PRINT#2 310 PRINT#2,"{7SPACE}PL.{3SPACE}VEREIN{10SPACE}SP.{3SPACE}G{3SPACE}U{3SPACE}V{4SPACE}+T{2SPACE}"; 311 PRINT#2," -T{3SPACE}TD{4SPACE}+P{3SPACE}-P{2SPACE}" 312 PRINT#2,"{6SPACE}Q***+****************+****+****+***+***+*****+"; 313 PRINT#2,"****+****+*****+****W":TY=0 314 FOR I=1 TOA 315 IF M$(Z(I))="..............." THEN327 316 TY=TY+1:PRINT#2,CHR$ (16)CHR$ (48)CHR$ (55);TY; 317 PRINT#2,CHR$ (16)CHR$ (49)CHR$ (50);M$(Z(I)); 318 PRINT#2,CHR$ (16)CHR$ (50)CHR$ (56);L(Z(I),4); 319 PRINT#2,CHR$ (16)CHR$ (51)CHR$ (52);L(Z(I),5); 320 PRINT#2,CHR$ (16)CHR$ (51)CHR$ (56);L(Z(I),6); 321 PRINT#2,CHR$ (16)CHR$ (52)CHR$ (50);L(Z(I),7); 322 PRINT#2,CHR$ (16)CHR$ (52)CHR$ (55);L(Z(I),1); 323 PRINT#2,CHR$ (16)CHR$ (53)CHR$ (50);L(Z(I),2); 324 PRINT#2,CHR$ (16)CHR$ (53)CHR$ (55);L(Z(I),3); 325 PRINT#2,CHR$ (16)CHR$ (54)CHR$ (51);L(Z(I),8); 326 PRINT#2,CHR$ (16)CHR$ (54)CHR$ (56);L(Z(I),9) 327 NEXT I 328 PRINT#2 329 PRINT#2:PRINT#2:PRINT#2:CLOSE 2:GOSUB 739 330 PRINTZH$ZH$ZH$:GOTO 295 331 PRINTZD$ZA$Z8$ZB$:PRINT:PRINT:PRINT 332 PRINT"{6SPACE}RICHTIGE DISKETTE EINLEGEN":PRINT 333 IF LN$="" THENLN$="................" 334 GOSUB 709 335 GOSUB 740 336 PRINT:PRINT"{6SPACE}DATEINAME ={3SPACE}";LN$ 337 PRINTZH$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$ZF$;:INPUTLN$ 338 PRINT:PRINTZA$Z0$ZB$:GOSUB 709 339 IF W$<>"J" THEN331 340 PRINT:PRINT"{6SPACE}WENN FERTIG DANN ";ZA$ZV$ZB$:PRINT 341 PRINT"{14SPACE}M = MENUE" 342 GOSUB 709 343 IF W$="M" THENRETURN 344 IF W$<>CHR$ (13) THEN331 345 PRINTZD$ZA$Z8$ZB$:PRINT:PRINT:PRINT 346 PRINT"{3SPACE}DATEN WERDEN VON DISKETTE GELADEN" 347 PRINT:PRINT"{12SPACE}BITTE WARTEN":PRINT 348 PRINT:PRINT"{11SPACE}";ZA$"{2SPACE}L{SHIFT-SPACE}A D E N{SPACE,SPACE}"ZB$:PRINT 349 GOSUB 738:CLOSE 1:OPEN 1,8,3,LN$+",S,R" 350 INPUT#1,A:GOSUB 571 351 INPUT#1,LN$ 352 FOR I=1 TOA 353 INPUT#1,M$(I) 354 NEXT I 355 FOR I=1 TOB 356 INPUT#1,DS$(I) 357 FOR J=1 TOC 358 INPUT#1,D(I,J) 359 INPUT#1,E(I,J) 360 INPUT#1,N$(I,J) 361 INPUT#1,DN$:IF DN$<>"......198." THENDN$(I,J)=DN$ 362 NEXT J 363 NEXT I 364 FOR I=1 TOB 365 FOR J=1 TOA 366 INPUT#1,G$(I,J) 367 INPUT#1,H$(I,J) 368 NEXT J 369 NEXT I 370 CLOSE 1:GOSUB 739 371 GOSUB 604 372 GOSUB 571 373 RETURN 374 PRINTZD$ZA$Z9$ZB$:PRINT:PRINT:PRINT 375 PRINT"{6SPACE}RICHTIGE DISKETTE EINLEGEN":PRINT 376 PRINT "{6SPACE}DATEINAME = ";LN$:PRINT 377 PRINT "{6SPACE}WENN FERTIG DANN ";ZA$ZV$ZB$:PRINT 378 PRINT "{14SPACE}M = MENUE" 379 GOSUB 709 380 IF W$="M" THEN RETURN 381 IF W$<>CHR$ (13) THEN374 382 PRINTZD$ZA$Z9$ZB$:PRINT:PRINT:PRINT 383 PRINT" DATEN WERDEN AUF DISKETTE GESPEICHERT" 384 PRINT:PRINT"{12SPACE}BITTE WARTEN":PRINT 385 GOSUB 587 386 PRINT:PRINT"{11SPACE}";ZA$"{2SPACE}SPEICHERN{2SPACE}"ZB$:PRINT 387 GOSUB 738:CLOSE 1:OPEN 1,8,3,"@:"+LN$+",S,W" 388 PRINT#1,A;CHR$ (13) 389 PRINT#1,LN$;CHR$ (13) 390 FOR I=1 TOA 391 PRINT#1,M$(I);CHR$ (13) 392 NEXT I 393 FOR I=1 TOB 394 PRINT#1,DS$(I);CHR$ (13) 395 FOR J=1 TOC 396 PRINT#1,D(I,J);CHR$ (13) 397 PRINT#1,E(I,J);CHR$ (13) 398 PRINT#1,N$(I,J);CHR$ (13) 399 PRINT#1,DN$(I,J);CHR$ (13) 400 NEXT J 401 NEXT I 402 FOR I=1 TOB 403 FOR J=1 TOA 404 PRINT#1,G$(I,J);CHR$ (13) 405 PRINT#1,H$(I,J);CHR$ (13) 406 NEXT J 407 NEXT I 408 CLOSE 1:GOSUB 739 409 GOSUB 604 410 RETURN 411 PRINTZD$ZA$Y9$ZB$:PRINT:PRINT 412 PRINT"{SHIFT-SPACE,3SPACE}SIND ALLE DATEN AUF DISKETTE":PRINT 413 PRINT"{4SPACE}GESICHERT{2SPACE}??????????{2SPACE}(J/N)":PRINT 414 INPUT"{16SPACE}";W$:PRINT 415 IF W$<>"J" THENRETURN 416 PRINT"{4SPACE}";ZA$" W{SHIFT-SPACE}I{SHIFT-SPACE}R{SHIFT-SPACE}K{SHIFT-SPACE}L{SHIFT-SPACE}I{SHIFT-SPACE}C{SHIFT-SPACE}H{SHIFT-SPACE,SPACE}???? "ZB$; 417 INPUT"{2SPACE}";W1$ 418 IF W1$<>"J" THENRETURN 419 PRINT:PRINT:PRINT:WX$="" 420 PRINT"{4SPACE}N = NEUE LIGA":PRINT 421 PRINT"{4SPACE}E = PROGRAMMENDE" 422 GET WX$:IF WX$="" THEN422 423 IF WX$<>"E" THENCLR :GOTO 3 424 SYS 64738 425 PRINT#2,CHR$ (14);" N A C H H O L S P I E L E ";CHR$ (15):PRINT#2 426 FOR I=B1 TOB2 427 FOR J=1 TOC 428 IF N$(I,J)<>"N" THEN432 429 PRINT#2,"VOM";:IF I<10 THENPRINT#2," "; 430 PRINT#2,I;".SPIELTAG ";DS$(I);" ";M$(D(I,J));" - "; 431 PRINT#2,M$(E(I,J));" NEU AM ";DN$(I,J) 432 NEXT J 433 NEXT I 434 GOTO 289 435 GOSUB 571 436 PRINTZD$ZA$Z6$ZB$:PRINT 437 PRINT"{11SPACE}DRUCKERAUSGABE":PRINT:PRINT 438 PRINT"{5SPACE}SPIELPLAN EINER MANNSCHAFT" 439 PRINT:PRINT"{5SPACE}STAND :{9SPACE}";DA$:PRINT 440 PRINT"{5SPACE}WELCHER MANNS.{2SPACE}( 1 - ";ZE$;A;ZE$;" ) ";:INPUTMN:PRINT 441 IF MN<1OR MN>A THENPRINTZH$ZH$ZH$:GOTO 440 442 PRINT"{10SPACE}";M$(MN):PRINT 443 PRINTZA$Z0$ZB$ 444 GOSUB 709 445 IF W$<>"J" THEN435 446 PRINTZH$ZH$ 447 PRINT"{6SPACE}"ZA$" M "ZB$" = MENUE "ZA$" D "ZB$" = DRUCKEN{8SPACE}" 448 GOSUB 709 449 IF W$="M" THENRETURN 450 IF W$<>"D" THEN448 451 CLOSE 2:OPEN 2,4,7 452 PRINT#2,CHR$ (14);"****** SPIELPLAN ";M$(MN);" ******";CHR$ (15):PRINT#2 453 PRINT#2,CHR$ (14);LN$"{5SPACE}STAND : ";DA$;CHR$ (15) 454 PRINT#2:GOSUB 711 455 PRINT#2,CHR$ (14);"***************************************";CHR$ (15) 456 PRINT#2 457 FOR I=1 TOB 458 FOR J=1 TOC 459 IF M$(MN)<>M$(D(I,J))AND M$(MN)<>M$(E(I,J)) THEN462 460 PRINT#2,I;".";CHR$ (16)CHR$ (48)CHR$ (55);DS$(I);"{4SPACE}..... UHR{5SPACE}"; 461 PRINT#2,M$(D(I,J));" * ";M$(E(I,J));"{2SPACE}";G$(I,D(I,J));":"H$(I,D(I,J)) 462 NEXT J 463 NEXT I 464 PRINT#2:PRINT#2:PRINT#2:CLOSE 2 465 PRINT:PRINT:PRINT" MOECHTEN SIE EINEN WEITEREN AUSDRUCK" 466 PRINT:PRINT" VON MANNSCHAFT{7SPACE}";M$(MN) " 467 GOSUB 709 468 IF W$="J" THEN451 469 IF W$<>"N" THEN467 470 PRINTZH$ZH$ZH$ZH$ 471 PRINT" MOECHTEN{2SPACE}SIE{2SPACE}EINEN{2SPACE}AUSDRUCK EINER{2SPACE}" 472 PRINT:PRINT" ANDEREN{2SPACE}MANNSCHAFT{10SPACE}( J/N ){2SPACE}" 473 GOSUB 709 474 IF W$="J" THEN435 475 IF W$<>"N" THEN473 476 RETURN 477 PRINTZD$ZA$Z3$ZB$:PRINT 478 PRINT:PRINT"{8SPACE}BITTE DATUM IN DER FORM":PRINT 479 PRINT"{8SPACE}> TT.MM.JJJJ < EINGEBEN":PRINT 480 FOR I=1 TOBSTEP 2 481 PRINTI;ZE$;". ":PRINTZH$ZF$ZF$ZF$ZF$ZF$ZF$;DS$(I) 482 PRINTZH$;:FOR X=1 TO20:PRINTZF$;:NEXT X:PRINT I+1;ZE$;". " 483 PRINTZH$;:FOR X=1 TO27:PRINTZF$;:NEXT X:PRINTDS$(I+1) 484 NEXT I 485 PRINT:PRINTZA$Z0$ZB$ 486 GOSUB 709 487 IF W$="J" THENRETURN 488 IF W$<>"N" THEN486 489 PRINTZC$ZG$ZG$ZG$ZG$ZG$ZG$ 490 IF A=17OR A=18 THENPRINTZH$ZH$ZH$ 491 IF A=19OR A=20 THENPRINTZH$ZH$ZH$ZH$ZH$ 492 FOR I=1 TOBSTEP 2 493 PRINTZF$ZF$ZF$ZF$;:INPUTDS$:DS$(I)=LEFT$ (DS$,10):PRINTZH$; 494 FOR X=1 TO25:PRINTZF$;:NEXT X:INPUTDS$:DS$(I+1)=LEFT$ (DS$,10) 495 NEXT I 496 GOTO 485 497 FOR AM=1 TOA 498 IF LEFT$ (M$(AM),5)="....." THEN500 499 AN=AN+1 500 NEXT AM 501 PRINTZH$"{37SPACE}" 502 PRINTZH$ZH$ZH$"{37SPACE}" 503 IF AN-1<3 THENPRINTZH$"NICHT ZULAESSIG ! MANNSCHAFTSANZAHL < 3" 504 IF AN-1<3 THENAN=0:GOSUB 709:RETURN 505 AN=0 506 PRINTZH$"{5SPACE}WELCHE MANNSCHAFT 1 -";A;:INPUT " ";MW 507 PRINTZH$"{2SPACE}"ZA$" ICH KORRIGIERE DIE DATEN VON "MW;ZE$"{3SPACE}"ZB$ 508 GOSUB 571 509 FOR I=1 TOB 510 FOR J=1 TOC 511 IF D(I,J)<>MWAND E(I,J)<>MW THEN515 512 G$(I,D(I,J))="":H$(I,D(I,J))="" 513 G$(I,E(I,J))="":H$(I,E(I,J))="" 514 D(I,J)=0:E(I,J)=0 515 NEXT J 516 NEXT I 517 M$(MW)="..............." 518 RETURN 519 FOR I=INT (B/2)+1 TOB 520 FOR J=1 TOC 521 D(I,J)=E(I-B/2,J) 522 E(I,J)=D(I-B/2,J) 523 NEXT J 524 NEXT I 525 RETURN 526 PRINTZH$"{37SPACE}" 527 PRINTZH$ZH$ZH$"{37SPACE}" 528 IF A+1>20 THENPRINTZH$"NICHT ZULAESSIG ! MANNSCHAFTSANZAHL >20" 529 IF A+1>20 THENGOSUB 709:RETURN 530 A=A+1:GOSUB 571 531 PRINTZH$ZH$:PRINT"{2SPACE}NEUE MANNSCHAFT{3SPACE}..............."; 532 PRINTZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$ZE$;:INPUTM$(A) 533 IF INT (A/2)=A/2 THENRETURN 534 FOR I=B-2 TOA+1STEP -1 535 DS$(I)=DS$(I-2) 536 NEXT I 537 DS$(A)="......198." 538 DS$(A-1)="......198." 539 DS$(B-1)="......198." 540 DS$(B)="......198." 541 :PRINT:PRINT 542 FOR I=1 TO150 543 PRINTZA$" SPIELTAGE UND ERGEBNISSE NEU SETZEN "ZB$ 544 IF I=150 THEN550 545 PRINTZH$; 546 PRINT"{37SPACE}"ZH$ 547 PRINT"{37SPACE}"ZH$ 548 PRINT"{37SPACE}"ZH$ 549 NEXT I 550 GOSUB 709 551 RETURN 552 PRINTZC$:FOR X=1 TO7:PRINTZG$:NEXT X 553 IF A>15 THENPRINTZH$ZH$ 554 IF A>16 THENPRINTZH$ 555 IF A>17 THENPRINTZH$ZH$ 556 IF A>18 THENPRINTZG$ZH$ 557 IF A>19 THENPRINTZH$ZH$ 558 FOR J=1 TOC 559 GG$="":HH$="":N$(I,J)="":G$(I,D(I,J))="":H$(I,D(I,J))="" 560 G$(I,E(I,J))="":H$(I,E(I,J))="":FOR X=1 TO17:PRINTZF$;:NEXT X 561 INPUTGG$:IF LEFT$ (GG$,3)="..." THENGG$="..." 562 IF LEFT$ (GG$,1)="N" THENN$(I,J)=LEFT$ (GG$,1):GG$="..." 563 IF GG$<>"..." THENG$(I,D(I,J))=STR$ (VAL (LEFT$ (GG$,3))) 564 PRINTZH$;:FOR X=1 TO25:PRINTZF$;:NEXT X 565 INPUTHH$:IF LEFT$ (HH$,3)<>"..." THENH$(I,D(I,J))=STR$ (VAL (LEFT$ (HH$,3))):HH$="" 566 IF N$(I,J)="N" THENH$(I,D(I,J))="":IF N$(I,J)="N" THENG$(I,D(I,J))="" 567 G$(I,E(I,J))=H$(I,D(I,J)) 568 H$(I,E(I,J))=G$(I,D(I,J)) 569 NEXT J 570 RETURN 571 IF INT (A/2)=A/2 THENB=(A*2)-2:C=A/2 572 IF INT (A/2)<>A/2 THENB=A*2:C=(A-1)/2 573 RETURN 574 PRINT:PRINT"{11SPACE}";ZA$" FORMATIEREN "ZB$:PRINT 575 FOR I=1 TO20 576 IF M$(I)="" THENM$(I)="..............." 577 NEXT I 578 FOR I=1 TO38 579 IF DS$(I)="" THENDS$(I)="......198." 580 NEXT I 581 FOR I=1 TO38 582 FOR J=1 TO10 583 IF DN$(I,J)="" THENDN$(I,J)="......198." 584 NEXT J 585 NEXT I 586 RETURN 587 PRINT:PRINT"{11SPACE}";ZA$" FORMATIEREN "ZB$:PRINT 588 FOR I=1 TOB 589 FOR J=1 TOC 590 D(I,J)=D(I,J)+10 591 E(I,J)=E(I,J)+10 592 IF N$(I,J)="" THENN$(I,J)="H" 593 NEXT J 594 NEXT I 595 FOR I=1 TOB 596 FOR J=1 TOA 597 IF G$(I,J)="" THENG$(I,J)="800" 598 IF H$(I,J)="" THENH$(I,J)="800" 599 G$(I,J)=STR$ (VAL (G$(I,J))+100) 600 H$(I,J)=STR$ (VAL (H$(I,J))+100) 601 NEXT J 602 NEXT I 603 RETURN 604 PRINT:PRINT"{11SPACE}";ZA$"REFORMATIEREN"ZB$:PRINT 605 GOSUB 571 606 FOR I=1 TOB 607 FOR J=1 TOC 608 D(I,J)=D(I,J)-10 609 E(I,J)=E(I,J)-10 610 IF N$(I,J)="H" THENN$(I,J)="" 611 NEXT J 612 NEXT I 613 FOR I=1 TOB 614 FOR J=1 TOA 615 G$(I,J)=STR$ (VAL (G$(I,J))-100) 616 H$(I,J)=STR$ (VAL (H$(I,J))-100) 617 IF G$(I,J)=" 800" THENG$(I,J)="" 618 IF H$(I,J)=" 800" THENH$(I,J)="" 619 NEXT J 620 NEXT I 621 RETURN 622 FOR I=1 TOA 623 SM$=STR$ (1000+L(I,3)) 624 IF L(I,3)<0 THENSM$=CHR$ (48)+SM$ 625 IF L(I,3)>=0 THENSM$=CHR$ (49)+RIGHT$ (SM$,3) 626 Z(I)=I 627 SR$(I)=STR$ (L(I,8)+100)+STR$ (999-L(I,9))+SM$+STR$ (100+L(I,1))+STR$ (L(I,2)) 628 NEXT I 629 N1=1:N2=A 630 I=1 631 J1=N1:J2=N2 632 IF SR$(J1)>=SR$(J2) THEN640 633 X=Z(J1):Z(J1)=Z(J2):Z(J2)=X 634 X$=SR$(J1):SR$(J1)=SR$(J2):SR$(J2)=X$ 635 J1=J1+1 636 IF J1=J2 THEN642 637 IF SR$(J1)>=SR$(J2) THEN635 638 X=Z(J1):Z(J1)=Z(J2):Z(J2)=X 639 X$=SR$(J1):SR$(J1)=SR$(J2):SR$(J2)=X$ 640 J2=J2-1 641 IF J2<>J1 THEN632 642 J2=J2+1 643 IF J2>=N2 THEN646 644 K1(I,1)=J2:K1(I,2)=N2 645 I=I+1 646 J1=J1-1 647 IF N1>=J1 THEN650 648 N2=J1 649 GOTO 631 650 I=I-1 651 IF I<1 THEN654 652 N1=K1(I,1):N2=K1(I,2) 653 GOTO 631 654 RETURN 655 ZA$=CHR$ (18):ZB$=CHR$ (146):ZC$=CHR$ (19):ZD$=CHR$ (147) 656 ZE$=CHR$ (157):ZF$=CHR$ (29):ZG$=CHR$ (17):ZH$=CHR$ (145) 657 ZZ$="B{SHIFT-SPACE}I{SHIFT-SPACE}L{SHIFT-SPACE}D{SHIFT-SPACE}S{SHIFT-SPACE}C{SHIFT-SPACE}H{SHIFT-SPACE}I{SHIFT-SPACE}R{SHIFT-SPACE}M" 658 ZY$="D{SHIFT-SPACE}R{SHIFT-SPACE}U{SHIFT-SPACE}C{SHIFT-SPACE}K{SHIFT-SPACE}E{SHIFT-SPACE}R{SHIFT-SPACE}" 659 ZX$="D{SHIFT-SPACE}I{SHIFT-SPACE}S{SHIFT-SPACE}K{SHIFT-SPACE}E{SHIFT-SPACE}T{SHIFT-SPACE}T{SHIFT-SPACE}E" 660 ZV$="RETURN" 661 ZW$="MANNSCHAFTEN{9SPACE}-E-S-K-" 662 ZT$="SPIELTAGE{12SPACE}-E-S-K-" 663 ZS$="TABELLEN{15SPACE}-S-{2SPACE}" 664 ZR$="MANNSCHAFTSLISTE{7SPACE}-D-{2SPACE}" 665 ZQ$="SPIELTAGE{14SPACE}-D-{2SPACE}" 666 ZP$="TABELLE{16SPACE}-D-{2SPACE}" 667 ZO$="DATEN LADEN VON DISKETTE{4SPACE}" 668 ZN$="DATEN SPEICHERN AUF DISKETTE" 669 ZM$=" NEUE LIGA{2SPACE}/{3SPACE}PROGAMMENDE " 670 ZL$="{3SPACE}E=EINGEBEN S=SICHTEN K=KORRIGIEREN" 671 ZK$=" M=MENUE K=KORRIGIEREN CRSR=BLAETTERN{2SPACE}" 672 Z1$="LIGATABL{7SPACE}M{SHIFT-SPACE}E{SHIFT-SPACE}N{SHIFT-SPACE}U{SHIFT-SPACE}E{SHIFT-SPACE,4SPACE}JBY HEUSER" 673 Z2$="LIGATABLMANNSCHAFTEN -E-S-K- JBY HEUSER" 674 Z3$="LIGATABL{3SPACE}SPIELTAGE -E-S-K- JBY HEUSER" 675 Z4$="LIGATABL{4SPACE}TABELLEN{3SPACE}-S-{3SPACE}JBY HEUSER" 676 Z5$="LIGATABLMANNSCHAFTSLISTE -D- JBY HEUSER" 677 Z6$="LIGATABL{3SPACE}SPIELTAGE{3SPACE}-D-{3SPACE}JBY HEUSER" 678 Z7$="LIGATABL{4SPACE}TABELLEN{3SPACE}-D-{3SPACE}JBY HEUSER" 679 Z8$="LIGATABL DATEN VON DISK. LA. JBY HEUSER" 680 Z9$="LIGATABL DATEN AUF DISK. SP. JBY HEUSER" 681 Y9$="LIGATABL NEUE LIGA/PRG.-ENDE JBY HEUSER" 682 Z0$="LIGATABL EINGABE OK (J/N){4SPACE}JBY HEUSER" 683 NZ$="LIGATABLNACHHOLSPIELE -E-S-K-JBY HEUSER" 684 RETURN 685 GOSUB 571 686 FOR I=1 TOB 687 PRINTZD$ZA$NZ$ZB$:PRINT 688 PRINTI;". SPIELTAG VOM ";DS$(I):PRINT:NZ=0 689 FOR J=1 TOC 690 IF N$(I,J)<>"N" THEN692 691 PRINTM$(D(I,J));" - ";M$(E(I,J)):NZ=1:PRINT"↑↑ NEUES DATUM :{3SPACE}";DN$(I,J) 692 NEXT J 693 IF NZ=0 THENPRINT" KEINE NACHHOLSPIELE !!!" 694 PRINT:PRINTZA$ZK$ZB$ 695 GOSUB 709 696 IF W$=ZH$ THENI=I:IF I=B THENI=0 697 IF W$=ZG$ THENI=I-2:IF I<0 THENI=B-1 698 IF W$="K" THENGOSUB 702 699 IF W$="M" THENRETURN 700 NEXT I 701 RETURN 702 PRINTZC$ZG$ZG$ZG$ZG$ 703 FOR J=1 TOC 704 IF N$(I,J)<>"N" THEN706 705 INPUT"↑↑ NEUES DATUM : ";DN$(I,J):PRINTZG$ZH$ 706 NEXT J 707 RETURN 708 GOSUB 723 709 GOSUB 723:GOSUB 730 710 RETURN 711 PRINT#2,"LIGATAB";CHR$ (16)CHR$ (54)CHR$ (57);"BY HEUSER":RETURN 712 PRINTZD$ZA$Z3$ZB$:PRINT 713 FOR X=1 TOASTEP 2 714 PRINTX; 715 IF X<10 THENPRINT" "; 716 PRINTM$(X); 717 IF X+1<=A THENPRINTX+1; 718 IF X+1<=AAND X+1<10 THENPRINT" "; 719 IF X+1<=A THENPRINTM$(X+1) 720 NEXT X 721 PRINT:IF X+1>AAND X+1<20 THENPRINT 722 RETURN 723 SI=54272:FL=SI:FH=SI+1:TL=SI+2:TH=SI+3:WT=SI+4:AT=SI+5:HT=SI+6:LT=SI+24 724 POKE LT,15:POKE TH,15:POKE TL,15:POKE AT,0*16+0:POKE HT,15*16 725 POKE WT,65 726 FOR XT=50 TO0STEP -2:POKE FH,40:POKE FL,XT:NEXT 727 FOR XT=50 TO0STEP -4:POKE FH,40:POKE FL,XT:NEXT 728 POKE WT,0 729 RETURN 730 GET W$:IF W$="" THEN730 731 RETURN 732 IF G$(I,D(I,J))="" THENG$(I,D(I,J))=" ..." 733 IF H$(I,D(I,J))="" THENH$(I,D(I,J))=" ..." 734 RETURN 735 IF G$(I,D(I,J))=" ..." THENG$(I,D(I,J))="" 736 IF H$(I,D(I,J))=" ..." THENH$(I,D(I,J))="" 737 RETURN 738 POKE 56334,PEEK (56334)AND 254:RETURN 739 POKE 56334,PEEK (56334) OR 1:RETURN 740 CLOSE 15:CLOSE 2:PRINTCHR$ (147);ZA$Z8$ZB$:PRINT 741 OPEN 15,8,15,"I0":OPEN 2,8,2,"#" 742 T=18:S=1 743 PRINT#15,"U1";2;0;T;S 744 PRINT#15,"B-P";2;0 745 GET #2,XX$:IF XX$="" THENXX$=CHR$ (0) 746 T=ASC (XX$) 747 GET #2,XX$:IF XX$="" THENXX$=CHR$ (0) 748 S=ASC (XX$) 749 FOR XY=0 TO7 750 PRINT#15,"B-P";2;XY*32+2 751 GET #2,XX$:IF XX$="" THENXX$=CHR$ (0) 752 IF ASC (XX$)=0 THEN762 753 PRINT#15,"B-P";2;XY*32+5 754 FF$="" 755 FOR YX=0 TO15 756 GET #2,XX$:IF XX$="" THENXX$=CHR$ (0) 757 IF ASC (XX$)=160 THEN760 758 FF$=FF$+XX$ 759 NEXT YX 760 IF AA=0 THENAA=1:PRINT"{3SPACE}";FF$:GOTO 762 761 AA=0:PRINT"{3SPACE}";FF$ 762 NEXT XY 763 IF T<>0 THEN743 764 CLOSE 2:CLOSE 15 765 RETURN