C 64
Listing des Monats

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:
  • Anzahl der Mannschaften minimal 3, maximal 20
  • Anzahl der Spieltage minimal 4, maximal 38
  • Ergebnisse maximal dreistellig
Autor:
Heuser, Franz-Josef In den Atzenbenden 74 5100 Aachen-Haaren
Die technischen Daten von »Ligatab«

»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.

BildschirmausgabeAuswahl 1,2,3
DruckerausgabeAuswahl 4,5,6
DiskettenoperationenAuswahl 7,8
Neue Liga/ProgrammendeAuswahl 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:

  1. bei gerader Anzahl Mannschaften:
    (Anzahl der Mannschaften * 2) — 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:

  1. bei gerader Anzahl Mannschaften:
    Anzahl der Mannschaften/2
  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:

  1. M = Menü
  2. K = Korrigieren
  3. 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.

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

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?

  1. — Sie wählen im Hauptmenü »2 = Spieltage -e-s-k-«
  2. — Sie wählen im Untermenü »s = Ergebnis -e-s-k-«.
  3. — Sie wählen für den Start den 12. Spieltag.
  4. — Sie wählen »K« für korrigieren.
  5. — Bei nicht zu korrigierenden Ergebnissen: RETURN
  6. — 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:

Bildschirmausgabe der Nachholspiele und eintragen des Datums

Was tun:

  1. — Sie wählen im Hauptmenü »2 = Spieltage -e-s-k-«.
  2. — Sie wählen im Untermenü »N = Nachholspiele«.
  3. — Sie sehen auf dem Bildschirm die Nachholspiele des 1. Spieltages oder die Meldung »Keine Nachholspiele!«
  4. — Sie können nun mit den Cursor-Tasten blättern.
  5. — 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:

  1. — Sie wählen im Hauptmenü »5 = Spieltage -d-«.
  2. — Sie wählen im Untermenü »N = Nachholspiele«.
  3. — Sie beantworten die Frage von/bis zu welchem Spieltag.
  4. — 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:

  1. — Sie wählen im Hauptmenü »1 = Mannschaften -e-s-k-«.
  2. — Sie verneinen die Frage »EINGABE OK« mit »N« für Nein.
  3. — Sie geben »A« für »ANZAHL FALSCH« ein.
  4. — Sie geben »—« für »EINE MANNSCHAFT WENIGER« ein.
  5. — 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:

Mannschaften nachmelden

Hier müssen Sie drei verschiedene Voraussetzungen unterscheiden.

  1. Sie haben eine Liga mit ungerader Anzahl von Mannschaften, und alle Plätze sind bereits besetzt.
  2. Sie haben eine Liga mit gerader Anzahl von Mannschaften, und alle Plätze sind bereits besetzt.
  3. 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:

  1. — Sie wählen im Hauptmenü »1 = Mannschaften -e-s-k-«.
  2. — Sie verneinen die Frage »EINGABE OK« mit »N« für Nein.
  3. — Sie geben »A« für »ANZAHL FALSCH« ein.
  4. — Sie geben »+«für »EINE MANNSCHAFT MEHR« ein.
  5. — Sie geben den Mannschaftsnamen ein.
  6. — Sie bestätigen »EINGABE OK« mit »J« für Ja.
  7. — Sie wählen im Hauptmenü »2 = SPIELTAGE -e-s-k-«.
  8. — Sie wählen »E« im Untermenü.
  9. — Sie starten mit dem 1. Spieltag.
  10. — Sie setzen die Spiele der neuen Mannschaft gegen die, die bisher spielfrei war.
  11. — 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:

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:

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:

  1. — Sie legen eine Liga mit 16 Mannschaften, einschließlich komplettem Spielplan und Spieltagsdatum an.
  2. — Wie vor, jedoch mit 14 Mannschaften.
  3. — 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)
Beispielausdruck einer Tabelle
Hardcopy des Hauptmenüs von »Ligatab«
|
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 
Listing »Ligatab«
PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →