Nr. 2/86 /Februar dm 5,50 / ös 46 / srf 5,50
Listings für TI 99/4A
Assembler leicht gemacht
Drucker-Geheimnisse
enthüllt
6 Seiten Kleinanzeigen
rund um den TI
Service de Kaufberatung
Tips 6c Tricks
Wir lassen den TI-USER nicht im Stich! KARTEN FÜR
atlonic
• CPS 99: Das kompakte System!
2 x RS 232, 1 x Parallel Interface
32 KByte, Speichererwerterung
Disketten-Controller/Disk-Drive
• 32 K RAM Erweiterung
• Centronics Interface
• V24 (RS 232) Interface
• 32 K RAM + Centronics
• Exterrie Disk-Laufwerke
• RS 232/Centronics Karte
PERIPHERIE-BOX:
Neu: 256 K-Speichererweiterung
(RAM-Disc)
• Bis 1 MB ausbaubar, umfangreiche Software
implementiert * Für Basic + Ext + Assembler
• 32 K RAM Erweiterung
• Disk-Controller (bis zu 4 X 360 KByte)
• Interface Karte mit 32 K RAM
• Controller Karte mit 32 K RAM
FORDERN SIE DIE PREISLISTE AN!
atronic-Produkte bekommen Sie bei jedem guten Tl-Händler oder direkt bei.
Wie immer steht unseren Lesern unser Telefon-Service
zur Verfügung! Jeden Dienstag von 15 bis 19 Uhr.
Für technische Fragen: 0731/33220 und
für Listings/Programme: 0 89 /129 8013
IMPRESSUM
TI-REVUE, die Zeitschrift für den TI
PC und den TI 99/4A erscheint
monatlich in der AKTUELL¬
GRUPPE
Elisabethstraße 1,8044 Lohhof.
Redaktion: Senator-Presse-Service.
Verantwortlich für den Inhalt:
Heiner Martin. .....
Verantwortlich für Anzeigen:
Bruno Redase.
Verantwortlich für Listings:
Hartmut König.
Alle: Postfach 1107, 8044 Lohhof.
Anfragen bitte nur schriftlich.
Druck: Maier und Söhne
Es gilt die Honorarliste des Verlages.
Für unaufgefordert eingesandte Ma¬
nuskripte und Listings keine Haftung
Bei Einsendung von Texten, Fotos
und Programmträgern erteilt der
Autor dem Verlag die Genehmigung
für einen einmaligen Abdruck sowie
die Aufnahme in den Programm-
Service nach den Verlags-Sätzen!
Alle in dieser Zeitschrift veröffent¬
lichten Beiträge sind urheberrecht¬
lich geschützt. Jedwede Verwertung
ist untersagt, Nachdruck nur mit
ausdrücklicher schriftlicher Zustim¬
mung des Verlages. Namentlich ge¬
zeichnete Artikel geben nicht unbe¬
dingt die Meinung der Redaktion
wieder.
Kein Anspruch auf Lieferung bei
Ausfall durch höhere Gewalt.
Gerichtsstand: München
Geschäftsführer: Werner E. Seibt
Abo- und Kassetten-Service:
Henny Rose Seibt
e by TI/CBM Verlag
SPS und Autoren.
TI - 99/4A
Compact Peripherie System 99
MSX-Computer
NEU - NEU - NEU - NEU - NEU - NEU
CPS 99 mit einem Laufwerk 1.698,-
DS DD = 360 K mit 32 K-RAM,
2xRS 232, Centronics Interface
Disk-Controller DS DD
MSX-Zubehör
698,-
Disk-System 2,8“ QDM-01 398,-
2,8“ Diskette 2x64 K (Quick-Disk)
umfangreiche Software
1 Jahr Garantie
Software auf Modul
oder Quick-Disk
256 K Byte RAM-Expansion
(RAM-Disk) 598,-
- Ausbaubar bis 1 Megabyte
- Betrieb mit vorb. 32K Byte Erweiterung möglich
- Unterstützt Basic, Extended Basic u. Assembler
- Erweiterter Befehlsvorrat für Basic u. Ext. Basic
- Ultraschneller Zugriff auf bis zu 8 Programme
durch RAM-Banklng (bei 256K-Version)
- Wesentlich schnellere Bearbeitung von Disk-Files
- Schnittstelle für Softcard eingebaut
Für weiteres Zubehör und Software
fordern Sie unsere kostenlose Preis¬
liste.
Sanyo mpc 64
deutsche Tastatur, Resettaste
und Einschalter obenliegend,
2 Modulslot
Externe Erweiterungen
Disketten 2,8“ (10 Stück)
Alle Preise inci. MwSt. zuzügl. 5,- DM
Versandkosten. Lieferung per Nach¬
nahme oder Vorkasse.
Ab 200,- DM versandkostenfrei.
Fordern Sie kostenlos
unsere Sonderpreisliste an.
MSX-Einsteiger-System
bestehend aus:
1 MSX Computer Yashica YC-64
1 Disk-System 2,8“ (Quick-Disk)
898,-
Programm-Service
lll£
D-5584 Bullay
Bergstraße 80 '
Telefon 06542/2715
CPS 99 mit zwei Laufwerken
DS DD = 720 K mit 32 K-RAM
2xRS 232, Centronics Interface
Disk-Controller DS DD
2.198,-
Die nächste
TI REVUE
am 28.2.1986
Nr. 2/86
Februar
HALT
DIALOG
Ich habe da eine Frage:
Sind I nterface und Schnittstelle das
Gleiche?
Funktioniert das Programm Aparaks
auch mit der Diskettenversion von
Apesoft-Grafik?
Was mache ich beim Kull-Compiler
mit den überlangen Programmen?
Wie formatiere ich Breitschrift
beim Tl-Writer?
Warum kann ich bei angeschlossener
Disk-Station nicht mehr alle Programme
von Kassette laden?
Pin 1 habe ich immer noch nicht ent¬
deckt
So wurde unser Club gegründet
Ab Seite 4
; Kamekaze:
Für Freunde der Ballerspiele
Ab Seite 37
Thomas-Verfahren:
Wissen Sie, wie Stahl gewonnen wird?
Ein Lernspiel sagt es Ihnen
Ab Seite 41
Statik:
Komplizierte Rechenoperationen —
kein Problem
Auf Seite 45
Soundwriter:
Der TI macht Musik — und wie
Ab Seite 46
Division:
Wieder ist Mathe gefragt
Ab Seite 48
Morse-Trainer:
Für Funkamateure und solche, die es
werden wollen
Ab Seite 50
Drucker formatieren leicht gemacht
Auf Seite “ 9
Der Igel lernt Deutsch - oder, wie
man Logo die deutsche Sprache bei¬
bringt
Auf Seite 10
Abgestürzt? Kein Problem - So ver¬
meiden Sie Datenverlust beim Computer¬
absturz
Auf Seite 11
Grafikroutinen in X-Basic. Eine Alter¬
native zu Apesoft-Grafik?
Ab Seite 12
So definieren Sie Ihren Cursor neu
Auf Seite 20
Inverser Zeichensatz — ganz einfach
Auf Seite 23
Laden von der Kassette mit Programm¬
name
Auf Seite - 36
Mensch, ärgere Dich nicht —
Eine Beschreibung ist wohl nicht not¬
wendig
AbSeite 17
Lingua:
Scrabble ist dagegen ein Kinderspiel
AbSeite 21
Kanalbau:
Lassen Sie den TI doch mal angestrengt
rechnen
AbSeite 35
Assembler leicht gemacht
Ab Seite 52
Das Buch zu Assembler
Auf Seite 55
Ein Kobold wird geboren
Auf Seite 57
Die Service-Coupons finden Sie auf
den Seiten 31—34
Börse:
Sechs Seiten Kleinanzeigen rund um den
TI 99/4A
Ab Seite 58
Grüß Gott-
Gruezi-Guten Tag
Den Jahreswechsel hat die ganze
Redaktionsmannschaft kräftig zur
Erholung genutzt, und wir hoffen,
daß auch Sie frohe Festtage verlebt
haben. Wir haben neuen Taten¬
drang gesammelt. Der ist auch not¬
wendig, denn jetzt gilt es, das in
der Zwischenzeit Liegengebliebene
aufzuarbeiten. Wir bemühen uns
aber, die Verzögerung in der Be¬
antwortung Ihrer Zuschriften so
klein wie möglich zu halten.
Die Gerüchteküche brodelt mo¬
mentan ganz schön, geleitet wohl
mehr von den Wünschen mancher
TI-User denn von Tatsachen.
Viele wollen den in der letzten
TI-REVUE angesprochenen Nach¬
folge-Computer für den TI 99/4A
schon in Kürze auf den Markt
kommen sehen. Hier müssen wir
leider nochmal zu den Tatsachen
zurückkommen. Auch in den USA
hat bis heute niemand ein funk¬
tionsfähiges Muster gesehen. Rück¬
sprachen mit amerikanischen Händ¬
lern ergaben auch eine sehr vorsich¬
tige Beurteilung über die Marktein¬
führung dieses Computers. Alle
wollen an diese neue Maschine erst
glauben, wenn sie ein Exemplar
gesehen haben, so sehr sie sich auch
eine Produktion wünschen.
Das allein ist aber nicht ausschlag¬
gebend. Wichtig für uns alle, uns
TI 99/4A-User, ist, daß es weiterhin
neue Produkte für unseren Com¬
puter gibt. Und dies steht, wie man
hierzulande sieht, gar nicht schlecht.
Diverse noch kurz vor Weihnachten
angekündigte Produkte sind kurz
vor der Auslieferung und auch bei
der Software kommen neue Pro¬
gramme. In den nächsten Ausgaben
werden wir uns bemühen, mehr über
die ganzen Neuheiten zu berichten.
Bis dahin die besten Grüße von
Eurem
TI-REVUE-Team
Nicht vergessen: Seid Ihr mit dem
Heft zufrieden, sagt es weiter, seid
Ihr unzufrieden, sagt es uns.
Und: Jeden Dienstag von 15 bis 19
Uhr stehen Ihnen unsere Lesertele¬
fone zur Verfügung.
Für technische und Assembler-Fra¬
gen Tel.-Nr. 0731/33220 und zu
den Listings bzw. Fragen zu den
Abonnements und dem Kassetten¬
service Tel.-Nr. 089/1298013.
UNTERSCHIEDLICHE
32K-ERWEITERUNG
Ich habe folgende Fragen
zum TI 99/4A und wäre
Ihnen dankbar, wenn Sie
sie mir beantworten
würden:
-Was ist der Unterschied
zwischen einer Centronics-
schnittstelle und einem
Centronicsinterface?
Inzwischen gibt es ja von
verschiedenen Herstellern
32KByte-Erweiterungen,
die sich im Preis teilwei¬
se deutlich unterscheiden.
Bestehen auch Unter¬
schiede in der Bauweise
oder kann ich alle gleicher¬
maßen für die Program¬
mierung in Maschinen¬
sprache nutzen?
Ich habe da auch noch ei¬
ne Frage zur Maschinen¬
sprache:
Wenn ich es richtig ver¬
standen habe, sind in der
32K-Erweiterung ca. 8000
Bytes für Maschinenpro¬
gramme vorgesehen. Oder
etwa nicht, denn ich lese
zum Beispiel immer wie¬
der, daß MC-Programme
aus Gründen der Oberlän¬
ge nicht auf Kassette ge¬
liefert werden können.
Wie ist das genau.
Dietmar Augustin,
Frechen
Interface ist der englische
Ausdruck für Schnittstelle.
Ein Unterschied in der
Bedeutung von Centro-
nicsschnittstelle besteht
also nicht. Alle uns bekann¬
ten 32K-Byte-Erweiterun-
gen für den TI 9914A un¬
terscheiden sich in der
Funktion bezüglich Ma-
schinensprache nich t.
Unterschiede zwischen
den einzelnen Herstellern
sind natürlich im Aufbau
vorhanden, aber wie gesagt
nicht in der Funktion. Es
gibt allerdings auch batte¬
riegepufferte Speicherer¬
weiterungen, bei denen das
Extended Basic Programm
und auch abgelegte Ma¬
schinenprogramme nach
dem Abschalten des Com¬
puters erhalten bleiben.
Bei allen Speichererweite¬
rungen, bei denen diese
Eigenschaft nicht ausdrück¬
lich erwähnt ist, ist der ge¬
BRIEFE
samte Inhalt beim Aus¬
schalten des TI 99/4A
verloren. Der Grund, war¬
um Maschinenprogramme
bisher nur für das Mini-
Memory auf Kassette ge¬
liefert werden, liegt im
LOADER des Extended
Basic-Moduls. Prinzipiell
ist dies aber durch unsere
Veröffentlichung in der
TI-RE VUE 8/85 möglich
geworden.
Auch existieren bei User-
Clubs schon einige Spei¬
cher- und Laderoutinen
für Maschinensprache-Pro¬
gram m e auf Fassette.
APESOFT FÜR MINI-
MEMORY AUCH
FÜR X-BASIC
In einer Ihrer letzten Aus¬
gaben veröffentlichten
Sie das Kurvendiskus¬
sionsprogramm APARAK
5, das auf die Apesoft-
Grafik, allerdings in Ex¬
tended Basic, zu rück greift.
Ich besitze die Apesoft-
Grafik in der Version für
das Mini-Memory und
Kassettenrekorder. Be¬
steht die Möglichkeit, die
Kassettenversion von Ape-
soft-Grafik für das Mini-
Memory in Extended
Basic in den Rechner ein¬
zulesen, wobei die entspre¬
chenden Grafik-Unterpro¬
gramme in dem 8KByte-
Sektor der Speichererwei¬
terung abgelegt werden, so
daß ich dann in Extended
Basic auf die Apesoft-
Grafik zurückgreifen kann?
Alexander Rupp,
Saarbrücken
Das Mini-Memory stellt ja
einige Hilfsroutinen zur
Verfügung, die auch von.
der Apesoft-Grafik genutzt
werden.
Wenn Sie nun die Grafik-
Routinen in die Speicher¬
erweiterung laden, was
mit einem entsprechenden
Hilfsprogramm durchaus
möglich wäre, finden die
Grafik-Routinen die ent¬
sprechenden Hilfsprogram¬
me nicht mehr. Wir sehen
deshalb keine Möglichkeit,
die Apesoft-Routinen für
das Mini-Memory auch
für das Extended Basic
zu verwenden.
BASIC-COMPILER
Ich besitze eine Compiler-
Diskette Verson 1.0 von
Peter Kuli, die Ihnen si¬
cher nicht unbekannt ist.
Leider habe ich nun ein
Programm, das “too big“
für eine Compilierung ist.
Es ist textmäßig ziemlich
lang und enthält außer¬
dem einige große Arrays.
Ist es möglich, so ein
Programm in zwei oder
drei Abschnitte zu unter¬
teilen, diese getrennt zu
compilieren und dann die
compilierten Programme
wieder zusammenzufügen
und zu starten? Ein com-
piliertes Programm, das
zwar unter die Bezeich¬
nung “PROGRAM“ auf
der Diskette gespeichert
wird, läßt sich ja leider
weder mit OLD laden,
noch mit MERGE verbin¬
den. Ich hoffe, Sie wissen
Rat.
Reinhard Menthey,
Kiel
Die Bezeichnung
PROGRAM im Disketten¬
katalog bezeichnet nur
das Format der Speiche¬
rung. Es muß sich dabei
nicht um ein Basic-Pro-
gramm handeln. Sie kön¬
nen aber beim Kull-Com-
.piler einzelne Programme
mit dem Befehl RUN
‘VSK1.XXX“ nacheinan¬
der auf rufen. Die Werte
der Variablen müßten Sie
dann über den Umweg ei¬
ner Datei auf Diskette an
das neue Programm über¬
geben. Wenn dies bei
Ihrem Programm nicht
möglich sein sollte, da es
sich aus mehreren Teil-
Programmen zusammen¬
setzt, so sollten Sie prüfen,
ob nicht diverse Daten
oder Texte in einer Disk-
Datei untergebracht wer¬
den können, statt in di¬
rekten PRINT- oder
DA TA-An Weisungen.
Auch so läßt sich ein Pro¬
gramm kürzen, und im
allgemeinen kommt es
beim Bildschirmaufbau ja
nicht so stark auf Ge¬
schwindigkeit an, beson¬
ders dann, wenn anschlie¬
ßend auf Eingaben ge¬
wartet wird.
RICHTIGER RANDAUS¬
GLEICH BEI
BREITSCHRIFT
Können Sie mir ein paar
Fragen beantworten:
Zum TI-W RI TER: Ich
habe zum TI einen Epson
FX 80+ mit paralleler
Schnittstelle. Der Aus¬
druck mit dem Formatter
funktioniert soweit wun¬
derbar im Normalschrift¬
modus, d.h., mit 80 Zei¬
chen je Zeile. Aber wie
kann ich den Formatter
veranlassen, Elite, Breit¬
schrift u.ä. richtig zu for¬
matieren. Bei mir war es
bisher immer so, daß völ¬
lig merkwürdige linke
und rechte Ränder her-
auskamen. Zum Teil
schreibt er über den Rand
hinausgehende Buchsta¬
ben wieder in dieselbe
Zeile darüber. Muß ich
hier die Umkodierfunk¬
tion benutzen oder kann
ich direkt eingeben?
Können Sie mir die rich¬
tigen Werte für die Rand¬
einstellung sagen?
Im Heft 8/85 steht das
Programm Aparak 5, was
mich sehr interessiert.
Diese Lösung suche ich
schon lange. Im Begleit¬
text steht, das Programm
wäre lauf fähig mit ExB
II plus. Ich habe eine
Diskette ExB II von Peter
Kuli. Ist dies gemeint?
Was muß evtl, geändert
werden?
Gebhard Oerter,
Mainz
LESERBRIEFE UND FRAGEN SIND UNS STETS
WILLKOMMEN. WIR BEANTWORTEN SIE ENTWEDER
DIREKT ODER AUF DER LESERBRIEFSEITE
4
BRIEFE
Der Formatter des TI-
Writer geht bei allem von
den eingestellten Rand¬
werten aus. Eine andere
Schriftbreite etwa kann
er anhand der Steuerzei¬
chen nicht erkennen, so
vornehm ist er eben nun
auch nicht. Also müssen
Sie die Randeinstellung
selber vorher entspre¬
chend umstellen. Für das
eben genannte Beispiel
ergibt sich bei Breit-
schrift (genau doppelte
Breite) dann .LR 5; RR
35;FL. Etwas Rechenar¬
beit bleibt Ihnen dabei lei¬
der nicht erspart. Der
Formatter geht immer 0
auf der linken Seite.
Im genannten Beispiel gibt
er mit LR 10 erst einmal
10 Leerstellen an den
Drucker aus. Nach Um-
Schaltung auf Breitschrift
sind es mit der neuen
linken Einstellung .LR 5
nur 5 Leerstellen. Der
Drucker arbeitet jetzt
aber mit doppelter Breite,
fängt also an der gleichen
Stelle wie vorher mit
dem Druck an.
Das Programm Aparak 5
benötigt die Apesoft-
Grafik-Routinen oder
das Modul Extended
Basic II plus von Mecha-
tronic. Dies ist nicht mit
dem ExB II von Peter
Kuli funktionsgleich. Eine
Änderung des Programms
Aparak 5 auf das ExB II
von Peter Kuli ist nur be¬
dingt und mit sehr großen
Änderungen möglich. Uns
ist aber noch niemand
bekannt, der das Pro¬
gramm umgeschrieben hat.
CALL FILES
Nach dem Kauf einer
Peripheriebox mit Disket¬
tenlaufwerk und 32K-
Erweiterung tauchen eini¬
ge Probleme auf, die ich
gerne von Ihnen beant¬
wortet hätte.
Verschiedene Programme
mit über 11 KByte ließen
sich nach Anschluß der
Box vom Kassettenrekor¬
der nicht laden. Die Feh¬
lermeldung ERROR
DETECTED IN DATA
kam bereits nach dem Ein¬
lesen des Vorspannsignals.
Nach Eingabe von CALL
FILES(1) und NEW lie¬
ßen sich die Programme
einiesen. Welche Funktion
haben die beiden Befehle,
wird die K-Zahl des Pro¬
gramms bereits im Vor¬
spann abgespeichert und
abgefragt?
Programme, die den
Befehl !P-
P-
P-
P-
beinhalten lassen sich zwar
laden, nach RUN erscheint
jedoch eine Fehlermel¬
dung “SUBPROGRAM
NOT FOUND IN...“.
Nach Löschen dieser Zei¬
len läuft das Programm
auch mit Box einwandfrei.
Welche Funktion haben
diese Rem-Befehle in Ex¬
tended Basic-Programmen
und warum laufen sie
nach der Löschung?
Können Original-TI-Mo-
dule die 32KByte-ErWei¬
terung nicht nutzen?
Mit dem Modul Datenver¬
waltung und Analyse kön¬
nen weniger Sätze bei an-
geschlossener Speicherer¬
weiterung eingelesen wer¬
den, als mit Konsole und
Kassettenrekorder.
Rolf Schwalbe,
Oer-Erkenschwick
CALL FILES legt die An¬
zahl der Dateien fest, die
gleichzeitig auf dem Dis¬
kettensystem offen sein
dürfen. Für jede dieser
Dateien und auch zur
Speicherung bestimmter
Werte des Diskettensy¬
stems reserviert sich der
Disk-Controller einen ge¬
wissen Platz im VDP-
RAM. CALL FILES(l) be¬
grenzt die Anzahl der of¬
fenen Dateien auf 1, da¬
mit benötigt der Disk-
Controller also auch den
geringsten Speicherplatz.
Das anschließende NEW
sorgt nur dafür, daß das
Basic (Extended Basic)
die Änderung auch er¬
kennt und alle wichtigen
Zeiger daraufhin ändert.
Die Länge einer Kasset¬
tenaufzeichnung ist direkt
nach dem Vorspann auf
der Kassette aufgezeich¬
net. Ist das zu ladende
Programm für den VDP-
RAM zur Verfügung ste¬
henden Platz zu lang,
wird direkt nach dem Le¬
sen der Ladevorgang mit
der Fehlermeldung
ERROR DETECTED IN
DA TA abgebrochen.
Der Befehl !<®P— schaltet
das Befehl !<®P—
Befehl !^P—
Ab tasten des Programms
vor dem eigentlichen Start
ab. Damit kann die Dau¬
er, bis das Programm läuft,
verkürzt werden.
Während des Abtastern
werden aber diverse Listen
gebildet, so auch eine
Liste für alle verwendeten
Subprogramme.
Werden diese nicht minde¬
stens einmal abgetastet,
so befinden sich in der
Liste dann kein Eintrag,
und es kommt zu der ent¬
sprechenden Fehlermel¬
dung. Durch einen Fehler
im Extended Basic kommt
es aber, wenn keine Spei¬
chererweiterung ange¬
schlossen ist, zu keiner
Fehlfunktion.
Auch von den Original-
TI-Modulen können nur
einige auf die Speicherer¬
weiterung zurückgreifen.
Dies ist dann jeweils be¬
sonders angegeben, wie
z.B. beim Extended Basic,
TI-WR1TER, Mini-Me¬
mory usw. Daß Sie beim
Modul Dateiverwaltung
und A nalyse weniger Da¬
tensätze einiesen können,
liegt nicht an der Spei¬
chererweiterung, sondern
an dem Platz, den der
Disk-Controller im
VDP-RAM benötigt.
PINBELEGUNG
I/O-PORT
Nachdem ich Heft 9/85
gelesen habe, bin ich
gleich zu meinem Elek¬
tronik-Dealer gefahren
und habe mir die nötigen
Bauteile für die Speicher¬
erweiterung besorgt.
1. Problem: Wie bekom¬
me ich das Layout auf
meine Platine?
Da auch die Rückseite be¬
druckt war, kam ein
Durchbelichten nicht in
Frage, also Fotokopie.
Aufgrund des schlechten
Kontrastverhältnisses der
Belichtungsmaske ist lei¬
der auch die'Platine dürf¬
tig ausgefallen. Die Leiter¬
bahnen zwischen IC 5
sind völlig weggeätzt. Al¬
so mein Tip: Die Rück¬
seite eines Platinenlay¬
outs nicht bedrucken.
2. Problem: Ihr habt zwar
in Heft 3/85 die Pinbele- _^
gung am I/O-Port abge- MW
ACHTUNG DATENSCHUTZ!
Immer wieder fragen Leser nach den
Adressen unserer Autoren. Wir wei¬
sen ausdrücklich darauf hin, daß bei
uns Datenschutz sehr ernst genom¬
men wird und bereits bei der Adresse
der Autoren oder Leserbriefschreiber
beginnt. Wir geben daher telefonisch
darüber keine Auskunft! Haben Sie
an einen Mitarbeiter eine Frage, sen¬
den Sie uns diese bitte schriftlich —
notfalls in einem verschlossenen
Umschlag. Wir leiten Ihre Frage
dann weiter, das Porto zahlen wir!
Wenn dann der Angeschriebene sich
mit dem Frager in Verbindung setzt,
o.k. Einverstanden?
5
SERVICE
druckt, doch wo ist Pin 1?
Oben oder unten? Nach¬
dem ich mir die Pinbele¬
gung im Speech-Synthi
angeschaut hatte und die
fehlenden Leiterbahnen
durch Kabel ersetzt hatte,
kam der große Augen¬
blick - und - nichts!
Warum? Ich hatte die Pla¬
tine an den Speech Syn-
thi angesteckt und mu߬
te feststellen, daß Pin 1,
2,43 und 44 nicht durch¬
geschleift sind. Da mit
Pin 1 auch die SV Betriebs¬
spannung fehlen, konnte
der 1. Versuch nicht glük-
ken. Nachdem ich mit ei¬
nem Kabel Pin 1 durch¬
geschleift hatte, arbeitete
die Schaltung einwandfrei.
Warum aber fehlen am
Ausgang des Speech
Synthi die 4 Pins?
Produktionsfehler oder
Gemeinheit?
Kay Sievert,
Norderstedt
Beider Veröffentlichung
von Selbstbau-Anleitun¬
gen bemühen wir uns na¬
türlich, möglichst voll¬
ständig zu sein. Dennoch
ist die TI-REVUE keine
Zeitschrift für Elektronik-
Bastler, sondern wir wol¬
len im wesentlichen An¬
regungen geben, was alles
gemacht werden kann.
So würde ein Freihalten
der Rückseite von Plati¬
nenlayouts wohl doch von
den Lesern, die an den
Selbstbauvorschlägen nicht
interessiert sind, als unnö¬
tige Platzverschwendung
betrachtet. Die Pin-Anord¬
nung wurde in der TI-
REVUE 3/85 leider ver¬
gessen. Pin 1 ist unten
links, wenn Sie auf den
Stecker schauen, Pin 2 dar¬
über, Pin 3 rechts neben
Pin 1 und Pin 4 über Pin
3 bzw. rechts neben Pin 2
usw. Die beim Speech-
Synthesizer nicht durch¬
geführten Leitungen sind
nur für diesen vorgesehen,
auch die 5 V- Versorgungs¬
leitung. Eigentlich dürf¬
ten keine zusätzlichen
Verbraucher mehr ange¬
schlossen werden.
Üblicherweise kann aber
eine statische Ram-Erwei-
terung noch betrieben
werden.
CLUBS ONLY
Hallo Tl-User Clubs!
In einer der letzten Aus¬
gaben veröffentlichten wir
die Anregung, auch ein¬
mal Erfahrungsberichte
von Clubgründern bzw.
Berichte aus dem Leben
von User-Clubs zu veröf¬
fentlichen. Diesen Hin¬
weis wollen wir heute auf¬
greifen und einen Erlebnis-
Bericht von der Gründung
eines Clubs veröffentli¬
chen. Geschrieben hat
diesen, wie kann es an¬
ders sein, der Tl-Work-
shop Rheinland. Da er
etwas lang ausgefallen ist,
müssen wir heute auf die
normalen Clubnachrichten
verzichten. Diese folgen
dann das nächste Mal,
die betroffenen Clubs, die
jetzt auf ihre Veröffent¬
lichung warten, mögen
uns verzeihen. Nun aber
zur Entwicklungsgeschich¬
te des TI 99er Workshops
Rheinland:
Erfahrungsbericht eines
Clubgründers
Wie an dieser Stelle
schon des öfteren berich¬
tet wurde, besteht seit
März ’85 der TI 99er
Workshop Rheinland.
Wie wohl allen Clubgrün¬
dungen ging auch hier
das Gefühl des Alleinge¬
lassenseins mit dem TI 99/
4A voraus. Denn mit der
Zeit verabschiedeten sich
immer mehr Hersteller
und auch Computerzeit¬
schriften von unserem
Oldie (but Goldie).
Was also tun? Nun, als
erstes mal die Zeitschriften
durchforstet, ob es hier
im Rheinland nicht viel¬
leicht einen Club oder so
etwas ähnliches gibt. Gibt
es nicht! Nächster Schritt:
In einem Blatt, das kosten¬
lose Anzeigen veröffent¬
licht, eine Kontaktanzeige
eingebracht. Und siehe da,
es melden sich zwei Leute.
So weit so gut. Der Kon¬
takt beschränkt sich in
der ersten Zeit auf den
Austausch von Program¬
men und das Ausdrucken
von Listings o.ä.
Zwischendurch ist hier
Karneval, man verliert sich
fast wieder aus den Augen
bzw. Ohren, denn gesehen
hat man sich noch nicht.
Durch eine Zufallsbegeg¬
nung sowie eine Anzeige
in der TI-REVUE erwei¬
tert sich der Kreis auf nun¬
mehr fünf Leute. Eines
Tages ist es dann so weit,
die bisherigen Telefonbe¬
kanntschaften treffen sich
zum ersten Mal. Abseiti¬
ges Abtasten, aber dann
kommt man sehr schnell
zur Sache, d.h. auf den TL
Tips und Tricks werden
ausprobiert, die Zeit ver¬
geht wie im Flug. Schnell
noch den nächsten Termin
vereinbart, dann ist der
Spuk vorbei. Am nächsten
Tag fragt mich der Haus- .
meister, ob denn bei mir
ein Treffen der Mafia
stattgefunden habe, we- .
gen der vielen Leute mit
Aktenkoffem in der Hand.
In der Zeit bis zum näch¬
sten Treffen wird der Ge¬
danke geboren, einen
Club zu gründen. Außer¬
dem werden weitere Kon¬
takte geknüpft und das
nächste Treffen naht.
Und da geht’s dann los.
Zusammenarbeit, unbe-,
dingt ja, aber Club, mit
Präsident, Kassenwart,
Schriftführer und Beitrag,
nein Danke.
Vereinsmeierei ist fast al¬
len ein Greuel. Aber wie
dann. Der Name Work¬
shop fällt. Und auf ein¬
mal ist die Organisations¬
form gefunden. Eine freie
Computerinitiative wird
ins Leben gerufen, auf
rein freiwilliger Basis.
Erste Ziele werden ge¬
steckt. Als erstes muß je¬
mand her, der Kontakte
herstellt, mit Zeitschrif¬
ten, aber auch als Anlauf¬
adresse für andere inter¬
essierte Tl-User. Mit der
Zeit stellt sich heraus, daß
einige User auch noch
andere gemeinsame Inter¬
essen teilen, und die Mit¬
gliederzahl wächst.
Auch dabei leisten die
Artikel in der TI-REVUE
wertvolle Hilfe.
Bei den nächsten Treffen
steigt die Zahl der Inter¬
essenten immer weiter an,
ebenso wie die Userliste,
die bei jedem Treffen er¬
neuert wird. Um die Sa¬
che nicht übermäßig auf¬
zublähen, wird folgender
Weg eingeschlagen: Wer
als User auf einem Tref¬
fen erscheint, wird ohne
Verpflichtungen in die
Userliste aufgenommen,
wer danach zweimal hin¬
tereinander nicht er¬
scheint, wird wieder ge¬
strichen. Kommt der Be¬
treffende dann irgend¬
wann mal wieder, wieder¬
holt sich die Prozedur.
So ist gewährleistet, daß
sich die Liste immer auf
dem neuesten Stand be¬
findet. Dann gibt es aber
doch ein großes Problem:
Dem Kontaktmann wach¬
sen die Kosten langsam
über das Portemonnaie
hinaus. Also muß eine
Form der Finanzierung
gefunden werden. Nach
langen Debatten einigt
man sich. Es wird eine
Portokasse geschaffen, die.
bei jedem Treffen auf der
Theke oder dem Tisch
steht. In diese Kasse wirft
dann jeder nach seinen
Möglichkeiten einen mehr
oder weniger hohen Be¬
trag. Aus diesen Spenden
werden dann die laufen¬
den Kosten gedeckt.
Durch das Anwachsen
der User-Liste ist der
Workshop nun auch in
der Lage, mit verschiede¬
nen Anbietern von Hard-
und Software besondere
Liefer- und Zahlungsbe¬
dingungen auszuhandeln.
Es ist erstaunlich, wie zu¬
vorkommend man auf ein¬
mal behandelt wird, wenn
die Kaufkraft von ca. 20
Leuten gemeinsam auf-
tritt. Das soll natürlich
nicht heißen, daß man als
Einzelkunde nicht auch
6
I
m
CE
freundlich bedient und
beliefert wird, aber durch
Großeinkäufe lassen sich
auch Preisnachlässe aus¬
handeln. Mittlerweile sind
auch sehr gute Kontakte
in die USA geknüpft wor¬
den. Dort ist man sehr er¬
freut aber auch erstaunt,
daß es in Good old Ger-
many so viele Aktivitäten
mit dem TI gibt. Die
User in den USA halten
sich nämlich ein wenig
für den Nabel der Tl-Welt,
sind aber im großen und
ganzen sehr freundlich.
Und mit diesen Aktivitä¬
ten sind unsere Möglich¬
keiten noch lange nicht
ausgeschöpft. Es sind
Hardware-Erweiterungen
in Arbeit, und auch auf
dem Software-Sektor tut
sich so einiges. Aber
davon an anderer Stelle
mehr.
Abschließend läßt sich
sagen, keiner von uns hat
den Schritt bereut, sich
unserer Initiative anzu¬
schließen. zumal das kei¬
nerlei Verpflichtungen
mit sich bringt. Wer keine
Lust mehr hat, bleibt ein¬
fach zuhause, und damit
hat es sich. Wir sind da¬
von überzeugt, daß es für
unseren User-Kreis auch
keine andere Organisa¬
tionsform geben kann,
dafür sind wir zu sehr
Individualisten. Aber für
welche Form Ihr Euch
auch entscheidet, die
Hauptsache ist es, ein
Ziel vor Augen zu haben,
denn ohne ein Ziel zu
haben, verspüren die we¬
nigsten überhaupt Lust,
an den Start zu gehen.
Für weitere Auskünfte
über den TI 99er Work¬
shop Rheinland stehe ich
gerne zur Verfügung, sei
es schriftlich oder tele¬
fonisch.
Deshalb zum wiederhol¬
ten Mal die Kontakt¬
adresse für allgemeine
Auskünfte:
TI 99er Workshop
Rheinland
Dept. Allgemein
&: Software
c/o Mike Heuser
Karl-Marx-Allee 18
5000 Köln 71
Tel.: 0221/703979
Für „Umsteiger!“
REVUE
DAS MAGAZIN
FÜR FREUNDE
DER KOMPATIBLEN
3 .'’••• • J, / -
DM 5,80/ÖS 49/SFR 5,80
" TEST:
REVUE.S
CP/M beim
Commodore
128: Was
kann dieses
Betriebs¬
system?
Im Test:
Roos-
Interface
SM-Kit-
Philips 8020
Spectravideo 728
Sony
Creative Graphics
Yashica 64
Philips Printer 0020
Ackobase
Ackotext
Sony Plotter C 41
Quickdisk QDM/01
das Basic, LISTINGS:
das dem 64er T« 32 seiten
noch fehlt.
Lautsprecher
im VC 20
Btx-Decoder
für den C 64
MSX-Programme
MÄRKTÜBER-
SICHT:
|Das komplette
MSX-Software-
Angebot!
Alle Fachbücher!
7
Achtung!
Das große
TI-Assembler
Sonderheft
Nur im
Bahnhofsbuchhandel
oder beim Verlag!
DANKE!
...für den Kauf von
Wohlfahrtsbriefmarken,
Ihrem Porto
Herz & Verstand. JlSrsr
Arbeiterwohlfahrt
Deutscher Paritätischer
Wohlfahrtsverband
HS
Diatonisches Werk
derEKD
Deutscher Caritasverband
Deutsches Rotes Kreuz
Zentralwohlfahrtsstelle
der Juden in Deutschland
Die nächste
TI REVUE
am 28.2.1986
TI99/4A
PHERIPHERIE
Discontroller (Orig. TI) 399,—
RS 232 Karte (Orig. TI) 399 —
RS 232 Karte (Atronic) 359,—
P-Code-Karte (Orig. TI) 749,—
32 K-Karte (Atronic) 379,—
Discontroller DSDD
(Atronic) 489,—
Discontroller DSDD
(Corcomp) 629,—
Compact Peripherie System
CPS 99 mit 1 Diskettenlaufwerk
DSDD + 10 Disketten 1598,—
Diskettenlaufwerk intern DSDD
(Epson) mit Einbausatz 429,—
Externe 256 K-Erweiterung 589,—
Externe 32 K-Erweiterung 239,—
dto. + l Centronicsschnittst. 289,—
Externe 32 K-Erweiterung +
Centronicsschnittstelle + Kabel
+ Epsondrucker LX 80 1259,—
dto. + Epsondrucker FX 85 1759,—
dto. + Stardrucker SG 10 1279,—
Sprachsynthesizer 189,—
Modulexpander 3fach 125,—
RGB-Modulator 179,—
Akustikkoppler Dataphon S 21 d
+ externe V-24-Schnittstelle
+ Verbindungskabel 559,—
Tl-Maus anschlußfertig 295,—
Joystickinterface + 2 Joysticks
Quickshot II 89,—
Cassettenrecorderkabel 29,—
MBX-Sprachsteuereinheit +
Baseballmodul anschlu߬
fertig 349,—
Grafiktablett Supersketch +
Dig Dug + Defender +
Statistik 199.—
BÜCHER
Editor/Assembler Handbuch
dt. 98-
Tl-Basic & Extended Basic
dt. 48-
Mini Memory Spezial dt. 55,—
TMS 9900 Assemblerhandbuch
für das Mini Memory dt. 78,—
TI-99/4 A Intern dt. 38,—
MODULSOFTWARE •
Extended Basic
(dt. Nachbau) 199,—
Extended Basic II Plus 289,—
Mini Memory + Assemblerhand-,
buch Mini Memory dt. 269,—
Editor/Assembler (32 K _.*.
notw.) 179,—
Tl-Writer (32 K notw.) 299,—
Tl-Logo II (32 K notw.) 299,—
Miltiplan (32 K notw.) 259,—
Diskfixer (Navarone) 149,—
Terminal Emulator II 85,—
Connect four, Yahtzee, Attack je
Alpiner, Car Wars, Chisholm
Trail, Othello, Invaders, Munch
Man je 39,—
Blackjack, Fathom, Hopper, Dig
Dug, Defender, Soccer, Parsec
je 49,—
Burgertime, Congo Bongo, Espial,
Moonsweeper, Treasure Island,
Microsurgeon, Bigfoot,
Statistik je 59,—
Star Trek, Tunnels of doom,
Touch Typing Tutor je 69,—
Buck Rogers, Return-to Pirat's
Isle, Adventuremodul, Video
Chess je 75,—
Datenverwaltung + Analyse 79,—
Popeye, Jungle Hunt, Moon
Patrol, Ms. Pacman, Pole Position,
Donkey Kong, Protector II,
Shamus je 89,—
Video Chess + Defender +
Dig Dug nur 129,—
Alpiner + Munch Man + Micro- •
surgeon nur 119,—
DISKETTEN-UND
CASSETTENSOFTWARE
Superbasic, Exbasic II + Painter,
Extended Basic Compiler,
Graphicmaster, 3D-World, Forth,
Apesoft-Programme, Flug¬
simulation, Skat, „Der schwarze
Kristall. J : A.
CPS99 m. 1 Laufw. 1698,—
Fun Pac 1, 2, 3 je 18,—
ExBasic deutsch 235,—
ExBasic 11 plus 310,—
Terminal-Emulator II 135,—
TE-II Handbuch deutsch 18,—
Text-Sprachausgabe deutsch
mit Diskette 49,—
Robopods 18,—
Akustikkoppler Sonic 3cl 198,—
UCSD Pascal komplett 998,—
Tl-Writer deutsch 320,—
Konsole TI 99/4A 345,—
Modul Expander 3-fach 135,—
32 KB-Centr. ext. 369,—
Assemblerkurs ASEM-4 98,—
Disketten 10 Stück. DD 29,—
Wendedisketten 10 Stück.
1 DS DD 38,—
| Editor Assembler 189,—
ASM-Handbuch deutsch 98,—
TI 99/4A intern 38,—
Freddy Disk 59,—
: Mat'ix-Drucker Citizen
120 D 998,—
LOGO II 320,—
CSV RIEGERT
Schloßhofstr. 5,7324 Rechberghausen, Tel. (07161) 52889
IMMER NEU UND AKTUELL FÜR TI 99/4A
EXTENDED-BASIC (Mechatronic) ,o QQ n
mit deutschem Handbuch 90
EXTENDED-BASIC II PLUS mit deutschem Handbuch 299.—
= Extended-Basic + Grafik Extended-Basic (Apesoft) in 1 Modul
Umtauschaktion
Bei Bestellung eines EXTENDED-BASIC II PLUS vergüten wir Ihnen DM 70.—
bei kostenfreier Zusendung eines original amerikanischen Extended-Basic-
Moduls (elektrisch/mechanisch einwandfreier Zustand!!)
Sie zahlen nur noch 229.—
Umbauaktion (gilt nur für deutschen Lizenznachbau „Mechatronic"). Wir ma¬
chen aus Ihrem EXTENDED-BASIC ein EXTENDED-BASIC II PLUS mit deut¬
schem Handbuch für nur 98.—
32-k-RAM-ERWEITERUNG mit Centronic-Interface. Kunststoffgehäuse 190
x 110 x 60 mm zum seitlichen Anstecken an den Bus, der Bus wird nach
rechts durchgeschleift, mit 5-V-Steckernetzteil 289.50*
Unser Paketpreis-Angebot
EXTENDED-BASIC II PLUS + 32-k-RAM-ERWEITERUNG. ohne
Centronic-Interface für nur 499.50*
128 ' k ‘ RAM ‘ ERWEITERUNG ' mit Centronic-Interface und
NEU! 5-V-Steckernetzteil 499,50
Dl« Weitneuheit: 128 kB —GRAM Preis ca. 745,—
Lieferbar etwa Janur 1986
Preise in DM/Stück inkl. MwSt. • Technische Änderungen Vorbehalten
Versand gegen Nachnahme oder Vorauskasse.
SEHR
NEU
4-FARBEN-PRINTER-PLOTTER PP-A 4, Centronic-Schnittstelle,
DlN-A 4-Format, Direktanschluß an 32-k- oder 128-k-RAM-Er-
weiterung 699.—
ANSCHLUSSKABEL
von 32-k- oder 128-k-RAM an PP-A 4 68.—
SLIM-LINE-LAUFWERK 5.25", 500-k-Byte-DS/DD
(z. B.TEACFT55B) 399,90 —
EINBAUSATZ für 2 Laufwerke in original Tl-P-Box 95.—
DISC-STEUERKARTE (CorComp), DS/DD, für max.
4 Laufwerke 635.—
QUICK-DISC-FLOPPY (im Gehäuse), zum Direktanschluß an die
Konsole, keine Steuerkarte erforderlich, 128-k-Byte-DS, für
2.8"-Disketten, mit 5-V-Steckernetzteil. identisch mit der bekann¬
ten MSX-Version 598.—
DISKETTEN 2.8". lOer-Pack 95.—
TI-MAUS — die schnelle und komfortable Cursorsteuerung mit
Software auf 5,25“-Diskette, mit 5-V-Steckernetzteil 296.—
EPROMMER — zürn ßrennen von EPromms bis
27128, alle Funktionen Software gesteuert,
Programm auf 5 1/4 Zoll Diskette mit
Steckernetzteil 278,90
TI 99/4A Intern von Heiner Martin
(englische Ausgabe) 34,9£
albs-Alltronic G. Schmidt - Postfach 1130 • 7136 Otisheim
Tel. 0 70 41 / 27 47 • Telex 7 263 738 albs
TIPS & TRICKS
Drucker*
F ormatierung
leicht
gemacht
Drucker ohne Geheimnisse
Haben Sie sich auch
schon oft über die vielen
CHR$ geärgert, die zur
Formatierung des Druk-
kers manchmal notwendig
sind und leicht zu
SYNTAX ERROR IN
XXXX führen?
Der TI bietet ungeahnte
und undokumentierte
Möglichkeiten!
Was bei meinem EPSON
RX80 möglich ist, muß
auch bei anderen Druk-
kern funktionieren. Ma- .
chen Sie es sich mit der
CTRL-Taste einfacher!!!
Probieren Sie: ‘PRINT
#1. CTRL, “Der Drucker
piepst jetzt“ \
Die beiden Tasten CTRL
und G müssen gleichzeitig
gedrückt werden. Auf
dem Bildschirm sieht man
nur eine Leerstelle. Das
geht doch schneller als
‘PRINT #1:CHR$(7)“
Der Drucker piepst jetzt 4 “.
Die mit CTRL eingegebe¬
nen Steuerzeichen müssen
in “ “ stehen, da sonst der
TI UNRECOGNIZED
CHARACTER schreit. Der
zu druckende Text kann
unmittelbar folgen. Nun
die wichtigsten Steuer¬
zeichen:
CH R$(8)=CTR LH=
Rückwärtsschritt f. 1.
Zeichen
CHR$(9)=CTRLI=
Horizontaltabulator
CHR$(10)=CTRLJ=
Zeilenvorschub
CHR$(11)+CTRLK
JVfcrtikaltabulator
CHR$(12)=CTRLL
Seitenvorschub
CHR$(13)=CTRL'M
Wagenrücklauf
CHR$(14)=CTRLN
gedehnte Schrift
f. 1. Zeile
CHR$(15)=CTRLO .
Schmalschrift
CHR$(18)=CTRLR=
Schmalschrift löschen
CHR$(20)=CTRLT=
gedehnte Schrift löschen
CHR$(27)=CTRL.=
ESC
CH R$(27);CH R$( 14)
=CTRL.CTRLN=
Breitschrift f. 1 Zeile
CH R$(27);CH R$( 15):
=CTRL.CTRLO=
Schmalschrift f. 1 Zeile
Nun wird es noch inter¬
essanter:
CHR$(27);“-“;CHR$(n)
=CTRL.-1 bzw.
CTRL.-0= Unterstrei¬
chung ein- bzw. ausschal¬
ten. Wichtig: -1 bzw. -0
ohne CTRL eingeben —
daher auf dem Bildschirm
sichtbar.
Ebenso wird mit CHR$
(27);“0“;1,2,3,4,5,8,9,
<,§ verfahren.
CHR$(27);“A“;CHR$(n)
- CTRL.An — wobei n die
Taste mit dem entspre¬
chenden ASCII-Code ist,
z.B. CTRLA=1,4=52.
Wenn Sie keine Lust zum
Nachsehen haben, können
Sie auch “CTRL.A“;
CHR$(n);“Text...“ einge¬
ben.
Genauso verhält es sich
bei CHR$(27);“C“;CHR$
(n) =CTRL.Cn.
Anders bei CHR$(27):
“C“;CHR$(0);CHR$(n)
= CTRL.C“;CHR$(0);
CHR$(n); “ “.
Hier müssen leider die letz¬
ten beiden Strings einge¬
geben werden.
CHR$(27);“E“;,F,G,H
=CTRL.E bzw. F,G,H.
CHR$(27);“J“;CHR$(n);
=CTRL.J“;CHR$(n);
Nun nochmal alles schön
übersichtlich - wobei
der immer mit CTRL
eingegeben werden muß.
Ich gehe davon aus, daß
vor dem Punkt irgendwo
ein “ steht:
.-1
Unterstreichung ein¬
schalten
.-0
Unterstreichung aus¬
schalten
.0
1/8" Zeilenabstand
.1
7/72" Zeilenabstand
.2
1/6" Zeilenabstand
.3“;CHR$(n);“Text“
n/216" Zeilenabstand
.4
Kursivschrift
.5
zurück zur Normalschrift
.8
Papierenderekennung aus
Papierenderkennung ein
1 Zeile unidirektional
•§
Drucker normieren
.An
n/72" Zeilenabstand
.Cn
Formularlänge in Zeilen
setzen
.C“;CHR$(0);CHR$(n)
Formularlänge in n Zoll
setzen
.E
Fettdruck
.F
Fettdruck löschen
.G
Doppeldruck
.H
Doppeldruck löschen
.J“;CHR$(n);
Papiervorschub um n/216"
.M
Schönschrift
.Nn
Überspringen der
Perforation
,o
Überspringen der Perfo¬
ration löschen
.P
Normalschrift
.Q“;CHR$(n)“....“
rechten Rand setzen
.Rn
Auswahl internat. Zeichen¬
satz (n=z.B. CTRLA bis
CTRLJ
.Sl
Indizierung
.SO
Potenzierung
.T
Löschen Sl bzw. SO
.UO
bidirektionaler Druck
.Ul
unidirektionaler Druck
.W1
gedehnte Schrift
.WO
gedehnte Schrift aus
■eO“;CHR$(n);“....“
Horizontaltabulator
setzen
-el“;CHR$(n);“....“
Vertikaltabulator
setzen
.fO“;CHR$(n);“....“
horizontaler Vorschub
•fl“;CHR$(n);“....“
vertikaler Vorschub
.l“;CHR$(n);“....“
linken Rand setzen
.m“;CHR$(n);“....“
Sonderzeichen wählen
.sl
Druck mit halber
Geschwindigkeit
.s0
Druck mit normaler
Geschwindigkeit
Frohes'Drucken wünscht
Ihnen
/. Imkcmeyer
TIPS & TRICKS
Kaum jemand zweifelt an
der Prophezeihung von
Prof. Seymour Papert,
daß man die Kinder schon
ab 4 Jahren an eine ver¬
nünftige Beschäftigung
mit dem Computer mit¬
tels LOGO heranführen
könnte. Aber welches
Kind spricht schon in die¬
sem Alter englisch?
Und wenn es diese Spra¬
che dann schließlich in
der Schule lernt, ist der
LOGO-Zug mit Sicherheit
schon lange abgefahren.
Also nur noch Frust?
Spätestens, als ich den Ent¬
wurf für die Anleitung für
LOGO 111 (!) in den Hän¬
den hielt, erwachte mein
Interesse erneut. Auch
wenn LOGO III (deutsche
Version für den TI 99/4A)
nicht mehr auf dem
Markt erschien, versuchte
ich alles, dem Igel in
LOGO II - der eigentlich
Schildkröte heißen mußte
- deutsche „Grundwor-
ter“ zu lehren. Die globale
Übersetzungsformel, von
•THING?
Harald Abelson publiziert,
scheitferte an einem einzi¬
gen Grundwort, nämlich
THING? , was soviel
(nicht zu verwechseln mit
THING ohne Fragezei¬
chen) wie WERT? bedeu¬
tet und in TI-LOGO II lei¬
der nicht vorhanden ist.
Es hat lange gedauert, bis
ich mich von dieser
THING?-Formel löste.
Dann war es nur noch ei¬
ne Frage der Zeit, bis
mein Igel deutsche
„Grundwörter“ verstand.
Meine Lösung ist verblüf¬
fend einfach, denn das
Zauberwort heißt
DEFINE. In der engli¬
schen Anleitung heißt es
nämlich zur Erklärung
von DEFINE:
DEFINE “procedure
name [list]
Gives a procedure name
to a list of commands
(gibt einen Prozedurna¬
men an eine Liste von
Anweisungen).
Und dieses Prinzip funk¬
tioniert einwandfrei. Man
muß nur auf einige Be-
Sonderheiten der jeweili¬
gen Definitionsliste ach-
Der
Igel
ebenfalls ein Space gesetzt
werden. Überhaupt die
eckigen Klammem, sie be¬
sitzen ihre Tücken und so
einige Zusätze. Da wir
aber nicht ins Theoreti¬
sche abrutschen wollen,
hier einige Zeilen, die
nach Wahl von LOGO II
Zeile für Zeile einzugeben
lernt
deutsch
Kann deutsch sprechen: Igel
ten. Hinter DEFINE muß
immer ein Space gesetzt
werden, und das neue zu
wählende deutsche Grund¬
wort muß mit einem An¬
führungszeichen begin¬
nen. Vor der ersten ecki¬
gen Klammer (!) muß
IGEL EIN
sind. Nach jeder Zeile ein¬
fach Taste ENTER drük-
ken, und danach können
Kinder, die gerade Lesen
und Schreiben gelernt ha¬
ben, an den TI 99/4A ge¬
setzt werden und sich mit
dem Igel anfreunden.
DEFINE “AN [[:N]
TELL :N]J
DEFINE “IGEL [[ ]
OUTPUT TURTLE]]
3EFINE “IGELAUS
[ ][NOTURTLE]]
Damit läßt sich schon der
Igel-Modus einschalten,
denn statt bisher TELL
TURTLE ist jetzt AN
IGEL einzugeben. Nach
ENTER ist der Igel
schon zu sehen. Da wir
aber weitere deutsche
Grundwörter definieren
wollen, geben wir jetzt
ein IGELAUS und drük-
ken Taste ENTER. Der
ursprüngliche Zustand
ist wieder hergestellt.
DEFINE “GROSS
DEFINE “KLEIN
[ ][SMALL]]
DEFINE “RECHTS
[N][RIGHT :N]]
DEFINE “LINKS
[N [LEFT :N]]
DEFINE “MITTE
[ ] HOME]]
DEFINE “RADIERE
[[ ] PENERASE]]
DEFINE “RUECKWAERTS
[[N][BACK :N]]
DEFINE “STIFTHOCH
[ ] [PENUP]]
DEFINE “STIFTAB
[ ][PENDOWN]]
DEFINE “VORWAERTS
[N][FORWARD :N]
DEFINE “VERSTECKIGEL
[ RHIDETURTLE]]
DEFINE “ZEIGIGEL
[[ ][SHOWTURTLE]]
DEFINE “LOESCHEBELD
[[ ]] CLEARSCREEN]]
TIPS & TRICKS
Definitionen mit N in der
ersten eckigen Klammer
erfordern nach der Einga¬
be des deutschen Worts
die Eingabe einer Zahl,
voneinander getrennt
durch ein Space. Bei
RECHTS und LINKS im
Bereich von 1 bis 360,
bei VORWAERTS und
RUECKWAERTS in belie¬
biger Höhe.
Für Kinder, die noch nicht
zur Schule gehen, ist es
zweckmäßiger, nur jeweils
ein Tastensymbol zu defi¬
nieren. Bei Grundwörtern,
die eine Parametereinga¬
be verlangen, muß dies
schon bei der Definition
erfolgen. Hierzu fünf
Beispiele:
DEFINE “V
[[ ][FORWARD 15]]
DEFINE “R
[[ ][RIGHT45]]
DEFINE “G
[[ ][BIG]]
DEFINE “I
[[ ][TELL TURTLE]]
DEFINE “A
[[ ][NOTURTLE]]
Hierbei entspricht:
Taste V und Taste ENTER
Vorwärts um 15 Schritte
(Igel zeichnet einen Strich)
Taste R und Taste ENTER
Rechtsdrehung um 45°
(Igel dreht sich um 45°)
Taste G und Taste ENTER
Großer Igel (Igel wird
3mal so groß)
Taste I und Taste ENTER
Igel einschalten (Igel-
Modus einschalten)
Taste A und Taste ENTER
Igel ausschalten (Igel-
Modus ausschalten)
Für das Einschalten'des
Igel-Modus wäre dann nur
Taste I und Taste ENTER
zu drücken. Dies bekom¬
men die Kleinen ganz
schnell mit.
BESONDERS FÜR
KINDER •
Besonders interessant ist
für Kinder der nur in TI-
LOGO vorhandene Feen¬
zustand (Feen-Modus).
Auch Feen können deut¬
sche Wörter lernen. Und
natürlich läßt sich alles
ausdrucken und ab-
speichem. Dr. Arnim Tölke
ABSTURZ OHNE PRO-
GRAMMVERLUST UND >
FREIE WAHL VON
BILDSCHIRM- UND
ZEICHENFARBEN IM
DIREKTMODUS
Konsole TI 99/4A
+32k-Speichererweiterung
+XBasic-Modul _
Das folgende Programm
soll zwei störende Übel aus¬
schalten. Erstens verhin¬
dert es den Programmver¬
lust, wenn man nach stun¬
denlangem Eingeben eines
Programms — das Zwi¬
schenspeichern hat man
seit einer halben Stunde
immer wieder hinausge¬
schoben — plötzlich statt
*+* die FCTN-Taste er¬
wischt und somit QUIT
eingibt, oder der Computer
einfach mal aussteigt oder
man nach langen Korrek-
' turen aufatmend die Kon¬
sole abschaltet — ohne ab¬
gespeichert zu haben,
oder, oder... Solange die
Speichererweiterung noch
nicht abgeschaltet ist, wer¬
den selbst nach dem Ab-
und Wiedereinschalten der
Konsole XBasic-Program-
me gerettet. Wem dies nie
passiert, hat sich vielleicht
wie ich an der ungünstig¬
sten Bildschirm färbe im
Direktmodus schon gestört.
Nun, mit diesem Pro¬
gramm kann man sich
ganz nach Lichtverhältnis¬
sen, Lust und Laune
Bildschirm- und Character-
farbe frei wählen. Wenn
ein Programm abläuft, wer¬
den natürlich dessen Farb-
befehle nicht beeinflußt,
nach Programmende schal¬
ten sich jedoch die gewähl¬
ten Farben sofort wieder
ein.
Mit CALL LINK (“EIN“,
Characterfarbe, Bildschirm¬
farbe) wird das Programm
gestartet, wobei für die
Farben die üblichen Zahlen¬
codes (1 — 16) einzusetzen
sind. Mit CALL LINK
(“AUS“) kann die Routine
abgeschaltet werden. Mit
CALL LINK(“REPAIR“)
wird ein verschwundenes
XBasic-Programm wieder
hergestellt. Danach ist der
erste Befehl einzugeben,
um die Routine wieder
einzuschalten.
10 !************************
20 {Freie Wahl von Char.-
30 !und Bildschirm-Farbe im
40 !Edit-Mode, sowie Wieder-
50 {Herstellung eines Basic-
60 {Programms nach ’Absturz’
70 IFuer XBasic mit 32K-Erw.
80 !(c) Dr.H.Greiner 4/84
90 J ************************
100 ADR=9492
110 READ A : : IF AO-1 THEN
CALL LOAD(ADR,A)!: ADR-ADR+1
GOTO 110
120 CALL LOAD(8194,37,22S,63
,232)
130 FOR 1=16360 TO 16383 ::
READ A :: CALL LÜAD(I,A):: N
EXT I
140 DATA 135,0,0,0,2,224,36,
244,2,0,37,122,200,0,131,196
150 DATA 4,192,2,1,0,1,6,160
,37,202,192,224,131,74,10,67
160 DATA 5, 129,6,160,37,202,
160,224,131,74,6,195,216,3,3
7,21
170 DATA 216,3,37,22,216,3,3
7,23,2,2,255,231,2,4,0,100
180 DATA 2,224,131,224,4,96,
0,106,2,224,36,244,200,6,131
,48
190 DATA 200,7,131,50,4,197,
212,132,16,243,2,224,36,244,
4,192
200 DATA 200,0,131,196,16,23
7,2,224,36,244,4,192,208,32,
131,68
210 DATA 22,31,2,0,140,2,192
,96,37,20,6,160,37,218,2,1
220 DATA 72., 14,6, 160,37,218,
2,3,0,8,192,96,37,22,2,0
230 DATA 140,0,6,160,37,218,
6,3,22,252,6,4,24,9,2,4
240 DATA 0,100,136,2,131,48,
19,4,193,160,131,48,193,224,
131,50
250 DATA 2,224,131,224,4,91,
4,32,32,12,4,32,32,24,18,184
260 DATA 6,32,131,74,4,91,6,
193,212,1,6,193,212,1,4,91
270 DATA -1
280 DATA 82,69,80,65,73,82,3
7,92,65,85,33,32,32,32,3?,11
0
290 DATA 69,73,78,32,32,32,3
7,24
11
Subprogramme
XBasic+ ist eine Samm¬
lung von SUBprogram-
men, die das XBasic in
3 Bereichen erweitern:
1. Mittelauflösungs-
grafik (MRG)
2. Hochauflösende
Grafik (HRG)
3. Utilities
Zuerst noch ein Wort zur
Programmierung: Die
einzelnen Routinen ma¬
chen ausgiebig von „be¬
rechneten“ Abfragen Ge¬
brauch, d.h. sie sparen
IF/THEN ein. Dies ge¬
schieht dadurch, daß der
TI Wahrheitswerten Zah¬
len zuordnet:
Wahr entspricht -1, und
Falsch 0.
Beispiel:
Die Zeile IF B>3 THEN
A = 0 ELSE A =25
wird durch A=0-(B<=3)*-25
ersetzt.
Dies ist insofern von Vor¬
teil, da die so umgestell¬
ten Abfragen sowohl
schneller bearbeitet wer¬
den, als auch die Zei¬
le linear weiterbearbei¬
tet werden darf. (Nach
IF darf z.B. kein FOR in
der gleichen Zeile folgen!)
Beim Eintippen sollte
man beachten, daß die
SUBroutinen für Plotten
und Löschen bis auf den
eigentlichen Ausgabebe¬
fehl gleich sind.
Die Routinen arbeiten,
das trifft besonders auf die
Plott : Routinen zu, etwas
langsam, eine Lösung in
Maschinensprache wäre je¬
doch nur von einem gerin¬
gen Teil der TI User zu
benutzen. (Im übrigen
sind die Plottroutinen die
schnellsten, die ich in
XBasic gesehen haben!)
Natürlich könnte man
auch Kreise mit dem Ellips-
Befehl plotten; die Kreis-
Routine ist jedoch ge¬
nauer und schneller.
Genug der Vorrede, hier
folgt die Beschreibung:
(Anmerkung: alle Koor¬
dinaten sind in der Form
Senkrecht, Waagerecht
mit X,Y gegeben, wie bei
TI üblich.)
1. MRG Grafik _
Der MRG Modus hat eine
Auflösung von 44 (Ver¬
tikal) mal 64 (Horizontal)
Punkten, die einzeln an¬
sprechbar sind. Hierfür
sind die Zeichensätze
13 und 14, also die Zei¬
chen 128-143 reserviert.
Die anderen Zeichen kön¬
nen jedoch noch ohne
weiteres dargestellt wer¬
den.
Mit CALL IG wird der
Modus aufgerufen, und
der Bildschirm gelöscht.
CALL PUNKT(X,Y)
plottet einen Punkt;
CALL LOESCH(X,Y)
löscht ihn wieder
CALL GZ(X,Y,A)
setzt an die angegebene
Stelle das Zeichen Num¬
mer A.
2. HRG Grafik _
Der HRG Modus hat eine
Auflösung von 192 mal
256 Punkten, also die
gleiche Auflösung wie
Sprites. Dieses geschieht
über Umdefinition der
einzelnen Zeichen. (Der
Rechner beginnt mit [ ,
geht über die Kleinbuch¬
staben bis zu CHR$(143),
setzt dann mit ! fort,
über Satzzeichen, Zahlen
und Großbuchstaben,
worauf er wieder neu be¬
ginnt. Dadurch bleiben
die Buchstaben lange Un¬
definiert, und können
z.B. für Achsenbeschrif¬
tung verwendet werden.)
Dies geschieht wie folgt:
Befindet sich an der Stelle,
an der geplottet werden
soll, ein Leerzeichen, so
wird ein Zeichen neu ge¬
nommen und mit diesem
Punkt definiert, andern¬
falls wird das betreffende
Zeichen mit dem Punkt
“verort“, das heißt der
Punkt wird dem Zeichen
hinzugefügt. Daraus folgt,
daß der Bildschirm keine
nicht definierbaren Zei¬
chen enthalten darf; der
HRG Modus wird am
besten mit CALL CLEAR
aufgerufen. (Vorsicht
mit PRINT und DISPLAY
AT; diese Befehle setzen
außerdem noch CHR$
(31) an den Rand!)
Aufruf wie gesagt mit
CALL CLEAR; um da¬
nach wieder zu schreiben
CALL CLEAR; CALL
CHARSET.
Fortsetzung auf Seite 14
10 REM ********************
11 REM * DEMO FUER *
12 REM * XBASPLUS *
13 REM ********************
100 CALL IG ! AUFRUF MODUS
110 A$="DEMO" :: X=i ! DRUCK
STRING UND DRUCKZEILE
120 -GOSUB 1000 «DRUCKEN
130 CALL CHAR(96,"0044004444
444433"):: A$="F'R" :: X-6 :
: GOSUB 1000
140 A$="XBasic+" :: x=ll ::
GOSUB 1000
150 CALL SCREEN(16):: FOR 1=
0 TO 14 :: CALL COLOR(1,3,1)
:: NEXT I
160 DISPLAY AT(16,1)I"Dies w
urde im Mittelauf- lcesun
gsmodus gedruckt.Man kann m
it dem CALL PUNKT Befehl
48*64 Punkte an-"
170 DISPLAY AT(20,1):"sprech
en,und mit CALL GZ grosse
Zeichen setzen.Auch selbst
definierte Zeichen werden
Gedruckt."
180 GOSUB 1100 ! WARTE AUF T
ASTE
190 CALL CLEAR
200 DISPLAY AT(20,1):"Jetzt
wird mit CALL PUNKT eine 1
i n i e gemal t. . "
210 FOR 1 = 1 TO 40 : .* CALL PU
NKT(INT<I/2>*3,1+4):: NEXT I
! MALE LINIE
220 DISPLAY AT(20,1):"... un
d mit CALL LOESCH wieder
ge 1oescht." '* .
230 FOR 1=1 TO 40 :: CALL LO
ESCH(INT(I/2)+3,1+4):I NEXT
I iLOESCHE LINIE
240 DISPLAY AT(1,1)ERASE ALL
:"CALL JOYST fragt nun die
Tastatur ab:(mit dem
’Button’ geht’s weiter)"
250 CALL JOYST(1,A,B):: CALL
JOYST(2,C,D)
260 DISPLAY AT <10,1):USING "
CALL JOYST<1,##,##)J
CALL J0YST<2,##,##)":A,B r C,D
270 FOR 1=1 TO 2 :: CALL KEY
n,K,s):: if k=is then 290 !
WENN BUTTON 1 ODER BUTTON 2
GEDRUECKT,DANN WEITER
280 NEXT I :: GOTO 250 ! SON
ST ZURUECK •
290 DISPLAY AT(1,1)ERASE ALL
:"Und nun kommt die Umwandlu
ngHEX-DEZ und umgekehrt.": :
"Gib abwechselnd eine Hex,
oder eine Dezzahl ein."
300 DISPLAY AT(8,i):"Mit 0 w
ird die Demo beendet."
310 DISPLAY AT<10,.1> : "Gib ei
ne Hexzahl ein:" :: ACCEPT A
T(10,24)VALIDATE<DIGIT,"ABCD
EF>"):AS :: IF AS="" THEN 31
0 ELSE IF AS="0" THEN ^00
320 CALL DEZ(A,AS):: DISPLAY
AT C12 5 1):USING "Dezimal = #
##### und als Adresse = #
A, A + 65536* (A >32767)
330 GOSUE 1100
340 CALL HCHAR(10,1,32,200)
350 DISPLAY AT(10,1):"Gib ei
r. e Dezzahl ein:" :: ACCEPT A
T(10,24)VALIDATE(DIGIT) : A ::
IF A=0 THEN 400
360 CALL HEX(A,AS)-:: DISPLAY
AT (12, 1) : "Hexzahl = > ,S &AS
370 GOSUE 1100
380 CALL HCHAR(10,1,32,200)
390 GOTO 310 •'
400 CALL CLEAR
410 PRINT "Und zum Abschluss
noch einige Spieiereie
n im Hoch- au-f 1 oesenden Modul
s. ": : :"Wenn es ’beept’,dan
n druecLebi tt.e eine Taste.":
• • • •
420 GOSUE 1200
430 CALL CLEAR
440 A=49-:: E=79 :: c=90 ::
D=120
450 CALL LINE(A,E,C,D):: CAL
L LINE(A,E,A,D):I CALL LINE(
A,B,C,B):: CALL LINE(C,B,C,D
):: CALL LINE(C,B,A,D):: CAL
L LINE(A,D,C,D)! QUADRAT + K
REUZ
460 CALL KREIS(70,100,20)! K
REIS HINEINPLOTTEN
470 GOSUB 1200 ! WARTE AUF T
ASTE
480 CALL CLEAR
490 FÜR 1=0 TO 120 STEP 60 :
I CALL ELLIPS(96,128,30,10,I
*pi/180):: next i :: call kr
EIS< 96,128,6)! MALE ATOM
500 w=0 :: dw=. l :: x=96 ::
Y=128 :: Ai,31=1
510 A=X+SIN(W)*40 :: B=Y + COS
(W)*40 :: w=w+dw :: call plg
T(A,E):: CALL UNPLOT(Al,Bi):
: Ai=A :: Ei=E :: goto 510 !
’ELEKTRONBEWEGUNG’
990 ! DRUCKT AS IN DIE MITTE
VON ZEILE X IM MITTELMODUS
1000 E-LEN(AS):: N=INT((32-B
*4)/2>:: IF N<1 THEN RETURN
-1010 FOR 1 = 1 TO B : : CALL GZ
(X,I*4+N-4,ASC(SEGS(AS,1,1))
):: NEXT I
1020 RETURN
1100 DISPLAY AT(24,1):" <D
RUECKE EINE TASTE>"
1110 CALL KEY(0,K,S>:: IF S=
0 THEN 1100 ELSE DISPLAY AT(
24,1):"" :: return
1200 CALL SOUND(-100,440,0);
: CALL KEY(0,K,S):I IF S=0 T
HEN 1200 ELSE RETURN
32741 ! **4(-*lHf**************
* ACW X-BASIC PLUS *
* VERSION 1.7 *
*<C)’84 ALICOMPUTER*
******Hf*************
32742 SUE IG AS ( 1 )="00000
000" :: AS(2)="0F0F0F0F" ::
AS(3)="F0F0F0F0' :: AS(4)="F
FFFFFFF" :: FOR 1=1 TO 4 ::
FOR J=i TO 4 :: CALL CHARC12
8+N, A$ (J) &<as (I)):: n=n+ i ::
NEXT 3 :I NEXT 1
32743 CALL CLEAR :: SUBEND
32744 SUB GZ(X,Y,Z):: CALL C
HARPAT(Z,AS):: FOR 1=1 TO 13
STEP 4 :: FOR J=0 TO 1 :: B
s=segs(as, i+ j, i):: cs=segs(A
S, I+J+2,i):: B=ASC(ES) + (B$>"
=")*7-48 :: C=ASC(CS)+(CS>"=
" >#7-48
32745 D=INT(B/4>:: E=INT(C/4
):: CALL HCHAR(X+(lM)-.25, .
+ J*2, 123+D + E#-4) : : CALL HCHAR
<X+(1/4)-.25,Y+l+J*2,128+<E-
D*4) + <C-E*4)#4):: NEXT J ::
NEXT I :: SUBEND
32746 SUB PUNKT(Q,R):: X=INT
<p):s Y=INT(R):: A=INT(X/2+.
9):: E=INT(Y/2+.9):: C=l+X-2
#A :: B=1+Y-2#B :: CALL GCHA
R (A,B,E)I: E=E-(E=32>*96
32747 CALL HCHAR(A,B,128+((E
-128)0R(3*C+1)*(2-D))):: SUB
END
3274S SUE LOESCH(G,R):: X=IN
T(Q):: Y=INT(R):: A=INT(X/2+
.9):: B=INT(Y/2+.9):: C=i+X-
2#A :: D=i+Y-2*B :: CALL 6CH
AR(A,E,E):: E=E-(E=32)*96
32749 D=(3*C+i)#(2-D):: CALL
HCHAR(A,B,128+( (E-128)OR D)
-D):: SUBEND
32750 SUB JOYST ( X, Y, Z ) : CAL
L KEY(X,A,B):: Y=(A=2 OR A=4
OR A=15)*4-(A=6 OR A=3 OR A
=14)*4 :: Z=(A=15 GR A=0 OR
A= 14 ) #4 - < A >3 AND A<7)#4 :: S
ÜBEND
32751 SUB PLOT(S,T):; X=INT(
»
13
y—». ' ' _ ' ’
TIPS & TRICKS
S):: Y=INT(T):: IF X<1 OR X>
191 OR Y<1 OR Y>255 THEN SUB
EXIT ELSE A=INT(X/8)+1 :: B*
INT(Y/3)+1 :: D=Y-(B-l)*3+i
:: CALL GCHAR(A, B, F)
32752 CALL CHARPAT<F,B$):: G
=(X-(A~i)*3+l)*2+lNT(D/4. 1) -
1 :: H=F :: A$=SEG$<B$,G, 1.):
: I= ASC < A$)-48+(A$ > " ="> #7 l\
IF F=32 THEN H=91+R :: R=R +
1 :: IF R=53 THEN R=-53
32753 1=1 OR 2 A (4-INT((D/4.1
-INT(D/4.1)) *4.1 +. 5))I: CALL
CHAR(H,SEG$(B$,1,G-1)kCHR*(
1+43- < I >9) *7) kSEGS (B$, G + i , 15
)>;: CALL HCHAR<A,B,H>:: SUB
END
32754 SUB UNPLOT(S,T):: X = IN
T(S):: Y-INT(T):: IF x<l OR
X>191 OR Y<1 OR Y>255 THEN 3
UEEXIT ELSE A=INT(X/8)+l ::
B=INT(Y/S)+i :: D=Y-(B-i)*8+
1 :: CALL GCHAR( A, B , H)
32755 CALL CHARPAT(H,B$) : : G
= <X-(A-i)*3 + i)*2+INT(D/4.1)-
1 :: A$=SEG$(B*,G, 1) : I=ASC
(A*5-48+ (A$>"=")*7
32756 J=2 A (4-INT((D/4.1-INT(
D/4.1)>*4.1+.5))i; I=(I OR J
) -J
32757 CALL CHAR(H,SEG$(B$,1,
G-l) &<CHR$ (I +48- (I >9) *7) kSEG$
<B$,G+i,15)):: CALL HCHAR(A,
B,H > S S SUBEND
32758 SUB ELLIPS(X,Y,R,S,W):
: for F=i to 2 :: n=sin(W)::
m=cos(W):: for t=0 to r ::
E=SQR(R-"2-T A 2)*S/R :: A=N*T
:: b=m*t :: c=N*E :: E=E*M :
: CALL PLOT(X-A-E,Y+B-C):: c
ALL PLOT(X+A+E,Y-B+C)
32759 CALL PLOT(X+A-E,Y-B-C)
:: CALL PLOT(X-A+E,Y+B+C);:
NEXT T :: E=s :: s=R : : .R=E
:: W=w+?l/2 :: NEXT F iC W=W
-PI :: SUBEND
3276.0 SUB KREIS (X, Y,Z) : : FOR
B=0 TO Z :: IF B >A THEN SUB
EXIT ELSE A-SQR(Z#Z-B#B )•\ C
ALL PLOT(X-A,Y-B) : : CALL PLÜ
T(X+A,Y-B):: CALL PLOT(X-A,Y
+ B)
32761 CALL PLOT(X +A, Y + B) : : C
ALL PLOT(X-B,Y-A) : : CALL PLO
T(X+B,Y-A):: CALL PLOT(X-B,Y
+A):: CALL PLOT(X+B,Y+A):; N
EXT B :: SUBEND
32762 SUB LINE(A,B,C,D):: IF
(A-C)AND(B=D)THEN CALL PLOT
(A,B):: SUBEXIT ELSE IF ABS(
C-A)>ABS(D-B)THEN 32764
32763 FOR I=B TO D STEP SGN(
D-B):: CALL PLOT(A+(C-A)/(D-
B5*(I-B),I)I; NEXT I :: SUBE
XIT
32764 FOR I=A TO C STEP SGN(
C-A):: CALL PLOT(I,B+(D-B)/ (
c-A)#< i-A)):: NEXT I :: sube
ND
32765 SUB HEX(D l A$):: A=D ::
A$="" :: B=4096 :: C=0 :: F
OR 1=1 TO 4 :: A=A-C*B*16 ::
C = INT(A/B):: A$=AS&CHR$(4S+
c-(C>9)*7):: b=b/16 :: NEXT
I :: SUBEND
32766 SUB DEZ(A,A$):: A$=SEG
$(”000 u S<A$,LEN(A$) ,4) : : A=0
:: b=4096 :: for 1=1 TO 4 ::
B$=SEG*(A$,I,1);: A=A+B*(AS
C(B$)-4S+(B$> ,, = ")*7):: B=B/i
6 :: NEXT I :: SUBEND
32767 REM IG,G2, PUNKT,LOESCH
,JOYST,PLOT,UNPLOT,ELLIPS,KR
EIS,LINE,HEX,DEZ ' '
Fortsetzung von Seite 12
CALL PLOT(X,Y) plot-
ten ein Pixel;
CALL UNPLOT(X,Y)
löscht es!
CALL KREIS(X,Y,R)
zeichnet einen Kreis mit
dem Mittelpunkt X,Y;
und dem Radius R. Die
Berechnung geschieht
über die Kreisfunktion
Y=%/R 2 -X 2 '
CALL ELLIPS (X,Y,A,
B,PHI) zeichnet eine
Ellipse mit dem Mittel¬
punkt X,Y; den Halbach¬
sen A und B; und dem
Drehwinkel PHI.
Berechnet wird die Ellip¬
se über die Kreisformel, •
und die Sinus, bzw.
Cosinus-Definition. Da¬
bei wird die Ellipse als
abgeplatteter, gedrehter
Kreis betrachtet.
CALL LINE(A,B,C,D)
zeichnet eine Linie von
Pixel A,B nach Pixel C,D
3. Utilities _
CALL JOYST funktioniert
wie bisher, nur wird die
Tastatur abgefragt:
JOYSTICK 1 JOYSTICK 2
1 Q I
1 Y 1
WER
U 1 o
S D
J K
Z X c
N M ,
CALL HEX (Dezzahl,
Hex) wandelt eine Dezi¬
malzahl in eine Hexadezi¬
malzahl um.
CALL DEZ (Dezzahl,.
Hex) wandelt einen Hex¬
string von mindestens 1
Zeichenlänge (sonst wird
ein Fehler gemeldet), wo¬
bei Führende Nullen auto¬
matisch vorgesetzt werden,
in eine Dezimalzahl um.
Soll eine Adresse berech¬
net werden, so ist, falls die
Dezimalzahl größer 32767
ist, 65536 abzuziehen,
wie in Zeile 320 des Demo¬
programms geschehen.
Die 3 Bereiche arbeiten
unabhängig voneinander,
und die Utilities können
sogar einzeln verwendet
werden.
REM’s und !’s können so¬
wohl in XBasic+, als auch
in der Demo wegfallen.
Alexander Hulpke
14
LISTINGS
Mensch ärgere
dich nicht
Gelungene Graphik und schneller Verlauf zeich¬
nen dieses Spiel für 1—4 Personen aus, das wegen
seines Bekanntheitsgrades sicherlich keiner aus¬
führlichen Anleitung bedarf. Nach dem Start kön¬
nen bis zu vier Spielemamen statt der vorgegebe¬
nen “C“ (=Computer) eingegeben werden. Falls
weniger als vier Spieler beteiligt sind, müssen die-
restlichen “C“ belassen werden. Diese Farben
spielt dann der Computer. Somit kann man na¬
türlich auch den TI alle Farben spielen lassen, also
ohne „menschliche“ Beteiligung. Eine hübsche
Demo! Bei Aufforderung zum Würfeln ist die
ZUfl UUERFELN ERUECKE TfiSTEI
Feuertaste des Joysticks zu drücken. Danach wählt
man mit dem Knüppel des Joysticks diejenige Fi¬
gur, mit der man ziehen will (ALPHA-LOCK-
Taste ausrasten!). Nach erneutem Druck auf die
Feuertaste wird der Zug ausgeführt. Falls man nur
mit einer Figur laufen kann, wird der Zug ohne
„Rückfrage“ sofort ausgeführt. Es herrscht Schlag¬
zwang, d.h., wenn eine Figur schlagen kann, führt
der Computer diesen Zug aus. Nur wenn mehrere
Figuren schlagen können, läßt der Computer dem
Spieler die Wahl. Das Programm hat einige sehr
„harte“ Regeln eingebaut. Ein Tip: Verlassen Sie
so schnell als möglich nach einem „Sechser“ Ihr
Ausgangsfeld (A)! Und nicht vergessen: Mensch
ärgere Dich NICHT! Dr. h. Greiner
(zu Seite 17)
Lingua I + II
Dieses anspruchsvolle Spiel für bis zu sechs Perso¬
nen besteht aus zwei Programmteilen, LINGUA 1
und LINGUA 2. Im ersten Teil sind die ausführliche
Spielanleitung und Characterdefinitionen, im
zweiten Teil das eigentliche Spiel untergebracht,
das sicherlich in seinen Grundzügen vielen von
Ihnen bekannt ist (Lingua, Kreuzwort-Pulock,usw.).
Cassettenbesitzer müssen Zeile 730 des Programm¬
teils Lingua in RUN “CS1“ ändern.
Diskettenbesitzer dürfen den Programmkopf von
LINGUA 1 (Zeile 10 bis 29) nicht mit eingeben,
da der Speicherplatz vom Programm voll genutzt
wird. Dr. H. Greiner
(zu Seite 21)
Kanalbau
Wiederum zeigt sich der TI 99 als äußerst nützliches
Werkzeug. Und zwar diesmal im Kanalbau,bei der
Bemessung von Abwasserkanälen.
Wo bisher umfangreiche Tabellen werke gewälzt
werden mußten, genügt nun ein Knopfdruck, um
die gesuchten Werte zu erhalten.
Ein zentrales Problem im Kanalbau ist die Frage,
wieviel Abwasser je Zeiteinheit (1/s) durch einen’
Rohrquerschnitt im freien Gefälle (d.h. nicht unter
Druck) abfließen kann.
Als Eingabedaten sind hierzu notwendig:
— die Profilart
— die Profilrauhigkeit
— das Gefälle
Wird nach Starten des Programms Menüpunkt 1
(Vollfüllung von Profilen) angewählt, so stehen fol¬
gende Profilarten zur Verfügung:
1. Kreisprofil
2. Eiprofil — normal
3. Eiprofil - überhöht
4. Eiprofil — breit
5. Eiprofil - gedrückt
6. Maulprofil — normal
7. Maulprofil — überhöht
8. Maulprofü - gedrückt
9. Profil mit einseitigem Auftritt
10. Profil mit beidseitigem Auftritt
Am rechten Rand wird neben der Profilbezeichnung
das Verhältnis von Profilbreite zu Profilhöhe (B/H)
angegeben. Beim Kreis z.B. B/H=l/1.
Als Rauhigkeit werden in der Regel 0.25, 0.40, 1.00
oder 1.50 mm verwendet. Zwischenwerte oder größe¬
re Rauhigkeiten sind jedoch auch möglich.
Das Gefälle schließlich wird in der dimensionslosen
Form 1/... eingegeben (z.B. 1/200 = 5 Promille).
Die Berechnung der Wassermenge bei Vollfüllung des
Profils erfolgt nach den Algorithmen von Prandtl-
Colebrook. Ausgegeben wird schließlich die abführ-
bare Wassermenge und die zugehörige Fließgeschwin¬
digkeit bei Vollfüllung.
Als Option erscheint am unteren Bildschirmrand ei¬
ne Befehlsleiste mit den Möglichkeiten weitere
Berechnungen durchzufuhren, einen Protokollaus¬
druck vorzunehmen oder den Abschnitt zu beenden.
Als Vorteile der Programmierten Lösung des Pro¬
blems gegenüber Tabellenwerken sind zu nennen:
— kein langes Suchen
— genaue Lösung auch für Zwischenwerte
— schnelles Durchspielen verschiedener
Parameter
Zum Schluß noch ein kleines Beispiel:
Für ein Kreisprofil mit einem Durchmesser von
300 mm, einer Rauhigkeit von 1.5 mm und einem
Gefälle von 1/300 ergibt sich eine Durchflußleistung
bei Vollfüllung von 56.3 Liter pro Sekunde und ei¬
ne Fließgeschwindigkeit von 0.80 Meter pro
Sekunde.
15
LISTINGS
Kanalbau
Für die Lösung werden nuT Sekundenbruchteile
benötigt. Im übrigen soll hier noch auf die einschlä¬
gige Fachliteratur verwiesen werden.
Programmbeschreibung:
Zeilennummer Aktion ___
100-320
330-440
450-720
730-850
860
870-960
970-1140
Bildschirmfarbe, Titelbild, Profilkenn¬
daten, Druckoption
Bildschirmaufbau des Menübildes
Ein- und Ausgabebild zur Profil¬
berechnung
Druckroutine
Programmende
Unterprogramm zur Berechnung der
Vollfüllung nach Prandtl-Colebrooke
Unterprogramm zum Aufbau des
Titelbildes.
Kamikaze III
Das Spiel ist, sich mit dem Flugzeug auf den
Feind zu stürzen, um ihn so zu vernichten.
Bei Ihnen melden sich die Kamekazeflieger;
am Anfang sind es 15; damit Sie sie im nchtigen
Augenblick auf den Feind stürzen lassen.
Ihnen stehen dazu 4 Sturzarten zur Verfügung:
1. Sturzart Taste 1 2 vor 1 runter
2. Sturzart Taste 2 1 vor 1 runter
3. Sturzart Taste 3 1 vor 2 runter
4. Sturzart Taste 4 senkrecht runter
Die Punktzahl hängt davon ab, was man trifft; ob
den Teil eines Schiffes, ein U-Boot, eine Kanone,
einen Panzer, ein Haus oder sonstiges und mit wel¬
cher Sturzart der Angriff erfolgte.
Wenn Sie das Festland 2 Runden erfolgreich ver¬
teidigt haben und Ihnen immer noch Kamekaze¬
flieger zur Verfügung stehen, müssen Sie die Insel
des Gegners 2 Runden lang angreifen.
Haben Sie die 3 Tageszeiten, Morgengrauen, Mittag
und Nacht, überstanden, dürfen Sie am nächsten
Tag wieder erneut die Flieger steuern.
Das Spiel hat 2 komplett gestaltete Bilder und ins¬
gesamt 12!! Spielstufen. Die Spielstufen unterschei¬
den sich unter anderem durch Angriffsstärke des
Feindes, Geschwindigkeit und Höhe des Flugzeu¬
ges. Manchmal stehen Sie auch unter Beschuß.
Ab Spielstufe 6 ist dann auch eine Kollision mit
den Vögeln tödlich.
Ein verfehlter Sturz ins Grüne kostet dazu noch
Punkte., . .. ‘
Die Anzeigetafel am oberen Rand gibt Auskunft,
über die noch zur Verfügung stehenden Flieger,
die Punktzahl und der Trefferquote in %.
Um gut über die Runden zu kommen, braucht man
ungefähr eine TQ von 75%. Nach jeder Runde er¬
halten Sie 10 neue Kamekazeflieger, außerdem
noch welche nach Erreichen bestimmter Punkt¬
zahlen. Weiter hat das Spiel eine Pausetaste, die
eine kurze Unterbrechung zuläßt. Mit P wird die
Pause aktiviert; mit ‘0‘ kann weitergespielt
werden.
Einige Spieltips:
Um möglichst hohe Punktzahlen zu erreichen, soll¬
te man Sturzart 4 so selten wie möglich benutzen.
Durch Probieren und Orientieren an den Vögeln,
der Sonne oder dem Mond, kann man leicht meh¬
rere Einschläge hintereinander ins Wasser ver¬
hindern.
Aber spielen und probieren Sie selbst und verzwei¬
feln Sie nicht gleich, wenn Sie am Anfang nicht
weiter als zu den ersten Spielstufen kommen.
(zu Seite 37) Thorsten Rauer
Statik
Das Programm berechnet die Schwerpunkt-Haupt¬
achsen mit Imax und Imin, sowie die Trägheits¬
momente ly, 12 und Iy 2 einer bzw. beliebig vieler
zusammengesetzter Flächen.
Zuerst muß die Anzahl der Flächen (Profile) einge¬
geben werden, anschließend die Flächengrößen, die
Y- und Z-Werte der Schwerpunkte bezogen auf ein
beliebig positioniertes Y-Z-Koordinatensystem und
die Eigenträgheitsmomente dieser Flächen (der
Profile).
Für alle Eingaben ist die Vorzeichenregelung zu be¬
achten, da auch „negative Flächen“ möglich sind.
Die Maßeinheiten erscheinen auf dem Display.
Als Ergebnis erscheint:
> Gesamtfläche [cm 2 ]
> Schwerpunkt (y;z)[cm]
> ly
> Iz
> Iyz
> Imax
> Imin
> Winkel a [Grad]
crrr
cirf
cnV
cnV
cnY
Thomas-
Verfahren
Dieses kleine Lemprogramm demonstriert am Bei¬
spiel des sogenannten „Thomasverfahrens“ die
Stahlerzeugung.
Der Lernstoff wird durch die vereinfachte grafische
Darstellung einer Thomasbirne unterstützt und
leichter begreiflich gemacht.
Das Programm simuliert unter Textbegleitung den
gesamten Ablauf der Stahlerzeugung, anschließend
gibt der Rechner zwei Seiten Lückentext aus.
Die Leerstellen im Text entsprechen in ihrer Länge
genau den einzusetzenden Wörtern und erleichtern
Ihnen damit etwas die Lemkontrolle.
Sollten Sie über einen Sprachsynthesizer verfügen,
wird der Lernstoff noch durch zusätzliche Sprach-
ausgabe aufgelockert und Ihr TI sagt Ihnen bei der
Vervollständigung des Textes gleich, ob Sie das
richtige Füllwort eingesetzt haben oder nicht.
Verfügen Sie über keinen Sprachsynthesizer, müs¬
sen die entsprechenden Befehle aus dem Listing
gelöscht werden. Der Lehrgang erfolgt dann zwar
kommentarlos, aber deshalb nicht weniger an¬
schaulich.
Etwa in der sechsten Schulklasse wird im Rahmen
des Erdkundeunterrichtes die Stahlerzeugung
durchgesprochen. Mit diesem Programm können
Sie Ihren Teil dazu beitragen, daß der trockene
Bitte lesen Sie weiter auf Seite 57
16
10
1
**********************
11
1
*
MENSCH AERGERE
*
12
i
*
DICH NICHT
*
13
j
*
*
14
1
*
Copyright by
*
15
1
*
*
16
;
*
Roger Hueser
*
17
i
*
*
19
i
*
Benoetigte Geraete
*
20
i
*
TI99/4A Konsoie
*
21
i
*
Ext. Basic
*
22
i
*
JoysticU
*
23
i
*
*
26
i
*
Speicherbelegung
*
27
i
*
9996 Bytes
*
28
1
*
*
29
i
********* ****** *******
100 OPTION BASE 1
110 DIM SK<40),FK(44),WF<4,4
),KF(4,4),X(40),Y<44>,SX(4,e
),SY(4,8),S$(4>,KENF(4),W$<7
),ER(4),ER*(4),HS*(4)
120 CALL CLEAR :: CALL SCREE
N(4):: RANDOMIZE :: CALL CHA
R(60,"000010307E301")
130 DISPLAY AT(6,1):"SPIELER
...FARBE...NAME" :: DISPLAY
at( 9,7):"1..GRyEN - C" :: D
ISPLAY AT (12 ,_7 ) : "2. .ROT.
.C“
140 DISPLAY AT(15,7):"3..BLA
u. C" :: DISPLAY AT(18,7)
;"4..MAGENTA..C" H FOR S=1
TO 4 :: ACCEPT AT(6+3*S,19)V
ALI DATE(UALPHA)SI2E(-10) : S$ (
S);; NEXT S I: CALL CLEAR
150 CALL CLEAR :: FOR H=3 TO
6 :; CALL COLOR(H,2, 16):: N
EXT H :: HI = 1 :: FOR H=6 TO
12 STEP 2 :: IF H=6 THEN HI=
13
160 IF H=S THEN HI=10
170 IF H=10 THEN HI=5
180 IF H= 12 THEN HI = 14
190 FOR HIL=1 TO 2 :: CALL C
OLOR(H+HIL,HI,16):: NEXT HIL
:: NEXT H
200 CALL CHARPAT(82,M1*,83,M
2*,84,M3S,85,M4$,87,M5*,90,M
6$,33,M7$,60,M8$):: CALL CHA
R(48,M1$&M2$&M3$&M4$):: CALL
CHAR ( 52, M5$iLM6$ß<M7$8<:"0" )
210 Y(l),Y<39),Y(40),SY(1,1)
,SY(1,2),SY(4,1),SY(4,2)=3
220 Y(2),Y(38),SY(1,3),SY(1,
4),SY(4,3),SY(4,4),SY(1,5)=5
230 Y < 3) , Y ( 37 ) , SY (1,6) =7
Y(4),Y(36),SY(1,7),SX(3,1>,S
X(3,3),SX(4,1),SX(4,3),X(29)
,X(30),X(31)=9
240 Y(5) , Y(6) , Y<7) ,Y(8) ,Y(9)
,Y(31),Y(32),Y(33),Y (34), Y (3
5) , X(28)|X(32) n li
250 SY <1,8),SX(3,2) ,SX(3,4),
SX (4,2) ,SX(4,4) ,SX(4,5)=11
260 SY(2,5),SY(2,6),SY(2,7) ,
SY(2,8),SY(4,5),SY(4,6),SY(4
,7),SY(4,8),SX(4,6)= 13
270 Y(10),Y(30),X(27),X(33)=
13 :: SX(4,7),SY( 3,8) = 15
280 Y(ll) ,Y(12),Y <13) ,Y(14),
Y(15),Y(25),Y(26),Y(27),Y(28
),Y(29),X(26),X(34)=15 :: Y(
41)=16
290 Y(16),Y(24),X(21),X(22),
X(23),X(24),X(25),X(35),X(36
),X(37),X(38),X(39),SX(4,8),
SY(3,7)=17 :: Y(42)=1S
300 SX(1,5),SX(1,6),SX(1,7),
SX(1,8),SX(3,5),SX(3,6),SX(3
,7),SX(3,S),SY(3,6),Y(17),Y(
23),X(20),X(40)=19 :: Y(43)=
20
310 Y(18) ,Y(22) ,X <1) ,X(2) ,X(
3),X(4),X(5),X(15), X (1 6 ),X(i
7) , X < 1 S ) ,X(19) , SX (2,3) =21 : :■
Y (44)»22
320 SY(2,1),SY(2,2),SY(3,1),
SY(3,2),SY(3,5)=21 :: SY(2,3
),SY(2,4),SY(3,3),SY(3,4),SX
(2,7),X(6),X(14)=23
330 Y(19),Y(20),Y(21)=23 ::
X (7) ,X(13),SX(2,6)=25 i! X(S
),X(12)=27 :: X(9),X(10),X(1
1 ) =29
340 SX(1,1),SX<1,3),SX(2,1),
SX(2,3),SX < 2,5)=27 :: SX(1,2
) ,SX'(1,4) ,SX<2,2) ,SX(2,4)=29
350 CALL CHAR(60,"3C7EE7C3C3
E77E3C1818181818181818000000
FFFFFF" ) *. : H3$=" 3C7EFFFFFFFF
7E3C" :: CALL CHAR(64,M8$)
360 H$="3C7EC3DBDBC17E3C3C5E
C3DBDBC37E3C3C7EC3DFDFC37E3C
3C7AC3DBDBC37E3C"
370 Hl$="3C66D7F7F7F77E3C3C4
2FBE7DFCS7E3C3C42FBE3FBC37E3
C3C5ED7D7C3F77E3C 11 :: H2$="7
EC3DBDBC3DBDB7E"
380 FOR H=80 TO 128 STEP 16
:: CALL CHAR(H,H2$):: CALL C
HAR(H+1,H1*):: CALL CHAR(H+5
,H$):: CALL CHAR(H+9,H3$)::
NEXT H
390 H4$="0000000000000001000
00000000000FF000000000000003
08080808080808080" :: CALL C
HAR(34,H4$)
400 H5^="8000000000000000FF0
0000000000000010000000000000
2 #
17
00101010101010101 " :: CALL c
HAR(38,H5$)
410 W$<1)=" 000000000000000 1 0
1 000000000000000000000000000
0808" :: W$(2 )="000030300000
0000000000000000000000000000
00000000000000000C0C "
420 W$(3)="00003030000000010
1000000000000000000000000000
080300000000C0C" :: w$(4)="0
0003030000000000000000030300
00000000C0C00000000000000000
C0C"
430 W$(5)="00003030000000010
10000003030000000000C0C00000
080300000000C0C" :: w$(6)="0
0003030000000303000000030300
00000000C0C0000000C0C0000000
C0C "
440 W$(7)="00000000000000000
0000000000000000000000000000
0000" :: CALL CHAR(90,"00221
4082A1C080808080808082A1C08"
)
450 CALL CHAR(122,"103854101
010101010103854102844"):: CA
LL CHAR(106,"00002040FF40200
000001224F82412")
460 CALL CHAR(56,W$(7)):: CA
LL CHAR(139,"0048241F2448000
0000402FF0204")
470 FOR H=9 TO 29 :: CALL VC
HAR(3,H,55,21):: NEXT H :: C
ALL HCHAR(2,8,34):I CALL HCH
AR(2,9,35,21):: CALL HCHAR(2
,30,36):: CALL VCHAR(3,30,37
,21)
480 CALL HCHAR(24,30,38):: C
ALL HCHAR (24,9,39,21) : : *CALL
HCHAR(24,8,40):: CALL VCHAR
(3,8,41,21):: CALL HCHAR(4,3
,40):: CALL HCHAR(3,3,41)
490 CALL HCHAR(2,3,34):: CAL
L HCHAR(2,4,35):: CALL HCHAR
(2,5,36):: CALL HCHAR(3,5,37
):: CALL HCHAR(4,5,38):: CAL
L HCHAR(4,4,39)
500 CALL HCHAR(5,3,34):: CAL
L, HCHAR (5,4,35,2) : : CALL HCH
AR(5,6,36):: CALL VCHAR(6,6,
37,2):: CALL HCHAR(8,6,38)::
CALL HCHAR(8,4,39,2)
510 CALL HCHAR(8,3,40):: CAL
L VCHAR(6,3,41,2):: CALL HCH
AR(6,4,56):: CALL HCHAR(7,4,
57):: CALL HCHAR(6,5,58):: C
ALL HCHAR(7,5,59)
520 FOR H=17 TO 21 STEP 4 ::
CALL VCHAR(4,H,61,19)I: CAL
L HCHAR(H-6,10,62,19):: NEXT
H :: CALL HCHAR(3,4,55)
530 FOR H=3 TO 23 STEP 20 ::
CALL HCHAR(H,18,62,3):: CAL
L VCHAR(12,H+6,6i,3):: NEXT
H
540 FOR H=1 TO 40 :: CALL HC
HAR(Y(H),X(H),60):: NEXT H :
: FOR H=12 TO 14 STEP 2 :: C
ALL HCHAR(H,17,55,5):I CALL
VCHAR(li,H+6,55,5):: NEXT H
:: fcr s=i to 4 :: for f=i t
O 8
550 CALL HCHAR(SY(S,F),SX(S,
F) ,64 + F + 16*S) :: NEXT F : .* NE
xt s :: for h=i to 31 step i
0 :: CALL HCHAR(Y (H) ,X <H), ((
H-l)/10+i)#16+64):: NEXT H
560 CALL VCHAR(15,4,55,9)::
CALL VCHAR(15,5,55,9):: CALL
HCHAR(14,3,34):: CALL HCHAR
(14,4,35,2):: CALL HCHAR(14,
6,36)
570 CALL VCHAR(15,6,37,9) : :
CALL HCHAR(24,6,38):: CALL H
CHAR(24,4,39,2):: CALL HCHAR
(24,3,40):: CALL VCHAR(15,3,
41,9)
580 DISPLAY AT(8,7)SI2E(6):"
MENiCH" :: DISPLAY AT(8,21)S
IZE(7):"AE0GE0E" :: DISPLAY
AT(18,7)SIZE(4):"DICH" 11 DI
SPLAY AT(18,23)SIZE(5)I"NICH
2 M
590 CALL HCHAR(3,22,90):: CA
LL HCHAR(4,22,91):: CALL HCH
AR(22,16,122):: CALL HCHAR(2
3,16,123):: CALL HCHAR(16,28
, 106)
600 CALL HCHAR(16,29,107) : :
CALL HCHAR(10,9,139):: CALL
HCHAR(10,10,140):: FOR H=10
TO 28 STEP 18 :: CALL HCHAR(
4,H,66):: CALL HCHAR(22,H,66
):: NEXT H
610 FOR S=i TO 4 :: IF ER(S)
>0 THEN 1440
620 CALL HCHAR(3,4,64 + 17*S) :
: kenw=0 :: P=0 :: for h=i t
0 4 :: IF WF(S,H)>0 AND WF(S
,H)<41 THEN 690 ELSE IF WF(S
,H)=0 THEN P=P+1
630 NEXT H :: FOR H=1 TO 4 :
: IF WF (S, H.' <41+ P AND WF(S,H
)>0 THEN 690
640 NEXT H :: FOR H=1 TO 3 :
: IF S*(S)="C" THEN 670
650 DISPLAY AT(1,1)BEEP:"53M
743E0FELN7D03ECKE72A12E76"
660 CALL KEY(1,K,ST):: IF K<
>18 THEN 660
670 DISPLAY AT(1,1):: W=INT<
IR
RND*6)+i :: CALL CHAR(56,W$<
W) ) : .* IF W=6 THEN 730
680 NEXT H :: FOR P=1 TO 100
:: next p :: goto 1440
690 IF S$(8)="C" THEN 720
700 DISPLAY AT(1,1)BEEP:"53M
743E0FELN7D03ECKE72A12E76"
710 CALL KEY(1,K,ST) I : IF K<
>18 THEN 710
720 DISPLAY AT(1,1):: W=INT(
RND*6)+i :: CALL CHAR(56,W$(
W) ) I : IF W<6 THEN 790
730 FOR F= 1 TO 4 :: IF WF(S,
F) =0 THEN 750
740 NEXT F :: GOTO 790
750 H=1+(S-1)*10 :: IF SK(H)
=0 THEN HKEN=1 :: HN=H :: H=
0 w=l :: KENW=l :: GOTO 1
220
760 IF SK(H)< >S THEN HKEN=2
:: hn=H :: H=0 :: w=i :: KEN
W=1 :: GOTO 1220
770 IF KENW=0 THEN HN=H :: H
KEN=2 : : GOTO' 1220
780 F=FK(H):: KENW=0 :: IF S
K < H +W )=0 THEN HKEN=1 :: HN = H
+6 :: GOTO 1220 ELSE HKEN=2
:: HN=H + 6 :: GOTO 1220
790 KENW=0 :: FOR F=1 TO 4 :
: IF WF < S,F) -3 DR WF(S,F)+W>
44 THEN KENF(F)-0 :: GOTO 66
0
800 IF WF(S,F)+ W >40 THEN 840
810 FOR H=1 TO 4 :: IF WF(S,
F)+ W=WF(S,H)THEN KENF(F) =0 :
.* GOTO 860
820 NEXT H :: H=KF(S,F)+W ::
IF H>40 THEN H=H-40
830 IF SK( H ) =0 THEN KENF ( F ) =
1 :: GOTO 860 ELSE KENF(F)-2
:: GOTO 860
840 FOR H=1 TO 4 :: IF ( < WF (
S, H)>40 AND WF(S,H)>WF(S,F)A
ND WF(S, H)<(WF(S,F)+W)))OR W
F(S,H)=(WF(S, F)+W)THEN KENF(
F )=0 :: GOTO 860
850 NEXT H :: KENF(F) =1
860 NEXT F : : FOR H=1 TO 4 I
: IF KENF(H)>0 THEN 880
870 NEXT H :: GOTO 1300
880 FOR H=1 TO 4 :: IF KENF (
H)=2 THEN HKEN=2 :: GOTO 920
890 NEXT H :: HKEN=i :: IF <
1=KENF(1)AND(1=KENF(2)OR 1=K
ENF(3)OR i=KENF(4)))OR(i=KEN
F(2)AND(1“KENF(3)OR i=KENF(4
)))0R(1=KENF(3)AND 1=KENF<4)
)THEN 950
900 FÜR F=1 TO 4 :: IF KENF(
F)=1 THEN 1190
910 NEXT F
920 IF (2=KENF(1)AND(2=KENF(
2)OR 2=KENF (3)OR 2=KENF<4)))
OR <2=KENF(2)AND(2-KENF (3) OR
2=KENF(4)))OR (2=KENF (3) AND 2
=KENF(4))THEN 950
930 FOR F=1 TO 4 :I IF KENF(
F)=2 THEN 1190
940 NEXT F
950 FOR F=1 TO 4 :: IF HKEN=
KENF(F)THEN CALL HCHAR(Y(F + 4
0),4,64+F+16*S):: FK(40 + F > =F
960 NEXT F :: IF S$(S)="C" T
HEN 1100
970 IF FK(41)>0 THEN HIL1,HI
L2 = 41 :: GOTO 990
980 IF FK(42)>0 THEN HIL1,HI
L2=42 ELSE HIL1,HIL2=43
990 IF FK(44)>0 THEN HIL3=44
:: GOTO 1010
1000 IF FK(43)=0 THEN HIL3=4
2 ELSE HIL3=43
1010 PA=5 :: CALL HCHAR(Y(HI
L2),5,64)
1020 FOR P=1 TO 3+PA :: CALL
KEY(1,K,ST) : : IF K< >18 THEN
1040 ELSE F=HJL2-40
1030 CALL KEY(1,K,ST) : IF K
=18 THEN 1030 ELSE 1190
1040 CALL JOYST(1,XJ,YJ) \ : I
F YJ=0 THEN 1090 ELSE CALL H
CHAR(Y(HIL2),5,55)
1050 CALL JOYST(l,K,ST):: IF
ST< >0 THEN 1050
1060 HIL2=HIL2-YJ/4 :: IF HI
L2<HIL1 THEN HIL2 = HIL3
1070 IF HIL2>HIL3 THEN HIL2 =
HI LI
1080 IF FK(HIL2)=0 THEN 1060
ELSE 1010
1090 NEXT P :: IF PA>0 THEN
PA=0 :: CALL HCHAR(Y(HIL2),5
,55):: GOTO 1020 ELSE 1010
1100 FOR F= 1 TO 4 :: IF 'WF(S
,F)=i AND KENF(F)>0 AND(HKEN
02 OR KENF (F) »2) THEN 1180
1110 NEXT F :: IF FK(41)=0 T
HEN HIL1=0 ELSE HIL1=WF(S,FK
.(41) )
1120 IF FK(42)=0 THEN HIL2=0
ELSE HIL2=WF(S,FK(42))
1130 IF FK < 43)=0 THEN HIL3=0
ELSE HIL3=WF <S,FK(43))
1140 IF FK(44)=0 THEN HIL4=0
ELSE HIL4=WF(S,FK(44))
1150 IF HIL1>HIL2 AND HILi>H
IL3 AND HIL1>HIL4 THEN F=1 :
: GOTO 1180
1160 IF HIL2>HIL3 AND HIL2>H
IL4 THEN F=2 :: GOTO 1180
1170 IF HIL3>HIL4 THEN F=3 E
LSE F=4
1180 CALL HCHAR(Y(F+40),5,64
)
1190 FK <41),FK(42),FK(43),FK
(44)=0 :: IF WF(S,F)>40 THEN
H=WF(S,F>:: HN=H+W-40 :: GO
TO 1220
1200 IF WF(S,F)+ W >40 THEN H=
KF(S,F):: HN=WF(S,F)+W-40 ::
GOTO 1220
1210 H=KF(S,F):: HN=H+W :: I
F HN >40 -THEN HN = HN-40
1220 IF HKEN=2 THEN CALL HCH
AR(SY(SK(HN),FK(HN)),SX(SK <H
N) , FK (HN) ) , 64 + FK(HN)+SK(HN)*
16):: WF(SK(HN),FK(HN)),KF(S
K(HN),FK(HN))=0 :: GOTO 1250
1230 IF WF(S,F)>40 THEN CALL
HCHAR(SY(S,H~36),SX(S,H-36)
,28+H+S*16)ELSE 1250
1240 CALL HCHAR(SY(S,HN + 4) , S
X(S,HN+4),64+F+16*S):: KF(S,
F),WF(S,F)=WF(S,F)+W :: GOTO
1300
1250 IF H=1 OR H=11 OR H=21
OR H=31 THEN CALL HCHAR(Y(H)
,X(H),((H-i)/10+1)*16+64)::
GOTO 1270
1260 IF H=0 THEN CALL HCHAR(
SY(S,F) ,SX(S,F) ,73 + 16^-S) : : G
OTO 1290 ELSE CALL HCHAR(Y(H
),X(H),60):: GOTO 1280
1270 IF HN=H THEN WF(S,FK(H)
),KF(S,FK(H)),SK(H),FK(H)=0
:: GOTO 1300
1280 SK(H),FK(H)=0 :: IF (WF
(S,F)+W)>40 THEN 1240
1290 CALL HCHAR(Y(HN),X(HN),
64+f+16#S):: sk(HN)= s :: FK(
HN) *=F :: KF ( S, F ) =HN :: WF(S,
F) a WF(S,F)+W
1300 IF KENW=1 THEN W=6
1310 FOR H=1 TO 4 :: IF WF(S
,H)<41 THEN 1330
1320 NEXT H :: GOTO 1340
1330 IF W=6 THEN CALL CHAR(5
6,W$(7))i: CALL VCHAR(15,4,5
5,9):: CALL VCHAR(15,5,55,9)
:: GOTO 690 ELSE 1440
1340 IF ERG=0 THEN ERG,ER(S)
=1 :: ER*(S)=" SIEGE R"
:: GOTO 1440
1350 IF ERG=1 THEN ERG,ER(S)
=2 :: ER*(S)=" NOCH ZWEITER"
:: GOTO 1440 ELSE ER(S)=3 :
: ER*(S)=" NUR DRITTER"
1360 FOR S=1 TO 4 :: IF ER(S
)=0 THEN ER(S)=4 :: ER*(S)="
LETZTER" :: GOTO 1380
1370 NEXT S
1380 CALL CLEAR :: FOR H=i T
0 8:: CALL COLOR(H,2,1) I : N
EXT H :: CALL CHARSET
1390 HS* (1 ) = ".1. SPIELER
GRUEN" HS* (2)="..,_2.
SPIELER ROT" :: HS*(3)="_
...3.SPIELER BLAU" :: HS$(4)
= ".4. SPIELER MAGENTA"
1 400 FOR H=1 TO 4 :: FOR S=1
TO 4 :: IF S*(S)="C" THEN S
*(S)="COMPUTER"
1410 IF ER(S)=H THEN DISPLAY
at(h*5-i, l): hs*(S):: displa
Y AT(H*5+l,3):S*(S):: DISPLA
Y AT(H*5+i,15):ER*(S)
1420 NEXT S :: NEXT H
1430 FOR P=1'TO 10000 :: NEX
TP:: RUN
1440 CALL. CHAR(56,W$<7) ) : : C
ALL VCHAR(15,4,55,9):: CALL
VCHAR(15,5,55,9)
1450 NEXT S :: GOTO 610
Cursor
neu
definieren
Bei Programmen mit
Menüstruktur und anderen
Gelegenheiten kann es
sinnvoll sein, Gestalt und/
oder Farbe des Cursors
zu verändern. So wird dem
Benutzer ein Hinweis ge¬
geben, in welcher Pro¬
grammebene er sich jeweils
befindet.
Während die Zeichen mit
den ASCII-Codes >31 am
einfachsten mit CALL
CHAR zu definieren sind,
kann die Form des Cur¬
sors nur mit demPOKEV-
Befehl des Minimems
oder einer der inzwischen
in mehreren Variationen
veröffentlichten CALL
LINK(POKEV“,...)-Rou-
tinen für die Speicherer¬
weiterung beeinflußt wer¬
den.
Das geschieht dadurch,
daß in die Adressen ab
1008 acht Dezimalzahlen
gepokt werden, eine für
jede Punktzeile des 8x8-
Rasters des Cursorzei¬
chens. Es sind dies einfach
die ins Dezimalsystem
umgerechneten 8stelligen
Dualzahlen mit dem Bit¬
muster der einzelnen Zei¬
len, die im vertrauten
CHAR-Statement hexa¬
dezimal verschlüsselt sind.
Nun ist es nicht jeder¬
manns Sache, sich in drei
Zahlensystemen zu bewe¬
gen. Ein praktischer Weg
für eine Neudefinition
des Cursorzeichens be¬
steht darin, daß man äqui¬
valente Funktionen von
CALL CHAR und CALL
POKEV einerseits und
CALL GCHAR sowie
CALL PEEKV anderer¬
seits ausnutzt. CHAR und
GCHAR benutzen die
hexadezimale, POKEV
und PEEKV die dezimale
Codierung.
Die kurze Routine
100 CALL CHAR(143,
A$)
110 CALL PEEKV(1912,
A,B,C,D,E,F,G,H)
120 CALL POKEV(1008,
A,B,C,D,E,F,G,H)
arbeitet folgendermaßen:
In Zeile 100 wird ein Zei¬
chen wie gewohnt durch
den Hex-String A$ defi¬
niert. 110 Peekt die 8
Ziffern des gleichwertigen
dezimalen Codes heraus.
120 pokt dieselben Werte
in die Adressen ab 1008
für den Cursor.
Die PEEK/POKE-Adres-
sen erhält man aus der
ASCCI-CODE-Nr. der
Zeichen durch die Um¬
rechnung ADR=(ASC
+95)*8+8.
Dieter Taube
20
**********************
10 !
11 ! *
12 ! *
13 ! *
14 ! *
15 ! *
16 ! *
17 ! *
19 ! *
20 ! *
21 ! *
22 ! *
23 ! *
24 ! *
26 ! *
27 ! *
28 ! *
29 ! **********************
100 CALL INIT :: CALL LOAD(-
31806,16):: CALL SCREEN(4>:.‘
CALL CHARSET :: ON BREAK NE
XT
110 DISPLAY AT(12,3)ERASE AL
L BEEP:"IST EINE SPIELANLEIT
UNG-: : ".. ERWUENSCHT ?
LINGUA
(Teil 1)
Copyright by
Roger Hueser
Benoetigte Geraete
TI99/4A Konsole
Ext. Basic
32K-Erw.
Joystick
Speicherbelegung
5095 Bytes
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
120 FOR P=1 TO 1000 :: CALL
KEY(0,K,S):: IF K=74 OR K=10
6 THEN 140 ELSE IF S<>0 THEN
640
130 NEXT P :: GOTO 640
140 DISPLAY AT(1,1)ERASE ALL
:"BEI DIESEM SPIEL BEKOMMT":
:"JEDER MITSPIELER 12 BUCH-
:"STABEN PRO DURCHGANG."
150 DISPLAY AT(8,1):"DIESE W
ERDEN IN EINEM FELD": :"NEBE
N DEM SPIELFELD": :"ANGEZEIG
T.": : :"1 - 12 BUCHSTABEN M
UESSEN SO"
160 DISPLAY AT(17,1):"AUF DA
S SPIELFELD GESETZT": :"WERD
EN, DASS EIN SINNVOLLES": :"
WORT ENTSTEHT.": : :"WEITER
DRUECKE TASTE !"
170 FOR P=1 TO 1500 :: CALL
KEY (0, K, S) : : IF SO0 THEN 19
0
180 NEXT P
190 DISPLAY AT<1,1)ERASE ALL
:"ZUR BILDUNG EINES WORTES,"
: .'"MUESSEN EIN ODER MEHRERE
": :"AUF DEM SPIELFELD VORHA
NDENE"
200 DISPLAY AT(7,1):"BUCHSTA
BEN EINBEZOGEN WERDEN": : :"
WENN NEU GESETZTE BUCHSTABEN
": :"AN VORHANDENE BUCHSTABE
N"
210 DISPLAY AT(14,1):"GRENZE
N, SO MUSS IMMER EIN": :"SIN
NVOLLES WORT ENTSTEHEN.": :
: : : : : :"weiter druecke t
ASTE !"
220 FOR P=1 TO 1500 :: CALL
key(0,k,s):: if s<>0 then 24
0
230 NEXT P
240 DISPLAY AT(1,1)ERASE ALL
: "JEDES WORT SOLLTE NUR EINM
AL": :"AUF DEM SPIELFELD VOR
HÄNDEN": :"SEIN."
250 DISPLAY AT(9,1):"WELCHE
WOERTER ERLAUBT SIND,": :"MU
SS VOR SPIELBEGINN": :"GEREG
ELT WERDEN.": :"z.B. NUR WOE
RTER AUS DEM"
260 DISPLAY AT( 17,1 ):"DUDEN,
ODER AUCH BESTIMMTE": :"FRE
MDWOERTER, ODER/UND AUCH": :
"EIGENNAMEN, VORNAMEN usw.":
: :"WEITER DRUECKE TASTE !"
270 FOR P=1 TO 1500 :: CALL
KEY (0, K, S) : : IF SO0 THEN 29
0
280 NEXT P
290 DISPLAY AT<1,1)ERASE ALL
:"DER WERT EINES GESETZTEN":
:"BUCHSTABEN RICHTET SICH N
ACH": :"SEINER FARBE. ": :"GE
LB..= 1 PUNKT"
300 DISPLAY AT<8,1):"ROT...=
2 PUNKTE":"GRUEN = 3 PUNKTE
":"BLAU..= 4 punkte": : : :"
BESTEHT EIN WORT NUR AUS"
310 DISPLAY AT<16,1):"BUCHST
ABEN EINER FARBE, SO": :"ZAE
HLT JEDER BUCHSTABE": :"25 P
UNKTE ZUSAETZLICH.": ': : : "W
EITER DRUECKE TASTE ! "
320 FOR P=i TO 1500 CALL
KEY(0,K,S):: IF SO0 THEN 34
0
330 NEXT P
340 DISPLAY AT<1,1)ERASE ALL
:"HAT EIN BUCHSTABE DIE": :"
GLEICHE FARBE WIE DAS FELD":
. :"AUF DAS ER GESETZT WURDE,
SO"
350 DISPLAY AT<7,1):"ZAEHLT
ER ALS AS, UND ZAEHLT": :"10
PUNKTE ZUSAETZLICH.": : : "H
AT EIN SPIELER BESTIMMTE"
360 DISPLAY AT(14,1):"ANZAHL
EN AN ASSEN GESAMMELT,": :"D
ANN ZAEHLEN DIE GESETZTEN":
:"WOERTER MEHR.": :"AB 10 AS
SE DOPPELT"
370 DISPLAY AT(21,1):"AB 15
ASSE DREIFACH":"AB 20 ASSE V
21
IERFACH": :“WEITER DRUECKE T
ASTE ! "
380 FOR P=1 TO 1500 :: CALL
KEY(0,K,S):: IF SO0 THEN 40
0
390 NEXT P
400 DISPLAY AT(1,1 JERASE ALL
:"AB 10 ASSEN DARF EIN BUCH-
": :"STABE AUSGETAUSCHT WERD
EN,": :"WENN DADURCH EIN FAR
BWORT"
410 DISPLAY AT(7,1):"GEBILDE
T WERDEN KANN.": : :"DAZU DA
RF DER SPIELER DEN": :"BUCHS
TABEN IN DER FALSCHEN": :"FA
RBE GEGEN DEN BUCHSTABEN"
420 DISPLAY AT(16,1):"IN DER
RICHTIGEN FARBE": :"TAUSCHE
N, WENN DIESER AUF": :"DEM S
PIELFELD VORHANDEN IST.": .'
.* : "WEITER DRUECKE TASTE !"
430 FOR P=1 TO 1500 :: CALL
KEY (0, K, S) : IF SO0 THEN 45
0
440 NEXT P
450 DISPLAY AT<1,1 JERASE ALL
.•"BEI SPIELBEGINN MUSS DAS":
:"ERSTE WORT WAAGERECHT IN
DIE": :"ZWEITE ZEILE VON OBE
N"
460 DISPLAY AT <7, 1):"GESETZT
WERDEN, UND MUSS AM": I"LIN
KEN SPIELFELDRAND": .'"BEGINN
END MINDESTENS 4 BUCH-": :"S
TABEN LANG SEIN."
470 DISPLAY AT(15,3):"DAS ZW
EITE WORT MUSS SENK-": :"REC
HT GEBILDET WERDEN.": I"..DA
NACH IST DIE AUSWAHL DEM": :
"SPIELER UEBERLASSEN. "
480 DISPLAY AT<24,1):"WEITER
DRUECKE TASTE !" :: FOR P=1
TO 1500 :: CALL KEY(0,K,S):
: IF SO0 THEN 500
490 NEXT P
500 DISPLAY AT(1,1 JERASE ALL
I"EIN BUCHSTABE WIRD GESETZT
,": :"INDEM MIT DEM JCYST DE
R": :"PFEIL AUF DEN AUSGEWAE
HLTEN"
510 DISPLAY AT(7,1):"BUCHSTA
BEN BEWEGT WIRD, UND": I"ANS
CHLIESSEND DIE FEUERTASTE":
:"BETAETIGT WIRD.": :"DANACH
WIRD MIT JOYST UND"
520 DISPLAY AT( 15, 1) .'"FEUERT
ASTE DIE SPIELFELD-": :"KOOR
DINATE AUF DIE DER AUS-": :"
GEWAEHLTE BUCHSTABE GESETZT"
: "WERDEN SOLL BESTIMMT."
530 DISPLAY AT(24,1):"WEITER
DRUECKE TASTE !" :: FOR P=1
TO 1500 :: CALL KEY(0,K,S):
: IF SO0 THEN 550
540 NEXT P
550 DISPLAY AT(1,1)ERASE ALL
:"DIE AUSWAHL DER JEWEILS":
:"ANGEZEIGTEN OPTIONEN ERFOL
GT": :"IN GLEICHER WEISE MIT
TELS"
560 DISPLAY AT(7,1):"JOYST U
ND FEUERTASTE. " : .* :"OPTION
ANZEIGEN MUSS AUSGE-": :"WAE
HLT WERDEN, WENN EIN WORT":
.'"FERTIG GESETZT IST."
570 DISPLAY AT(17,1):"ALLE A
NDEREN OPTIONEN": :"ERKLAERE
N SICH SELBST."
580 DISPLAY AT(24,1):"WEITER
DRUECKE TASTE !" :: FOR P=1
TO 1500 :: CALL KEY(0,K,S):
.' IF SO0 THEN 600
590 NEXT P
600 DISPLAY AT(1,1 JERASE ALL
:"DAS SPIEL IST BEENDET, WEN
N": :"EIN BUCHSTABE AUF EINS
DER": :"ZAHLENFELDER GESETZ
T WIRD"
610 DISPLAY AT(10,1):"SOLL I
CH DAS SPIEL NOCHMALS".' :"..
.ERKLAEREN ?": : .' :"D
ANN DRUECKE TASTEJ"""
620 DISPLAY AT(24,1):"WEITER
DRUECKE TASTE !" :: FOR P=1
TO 1500 :: CALL KEY(0,K,S):
: IF K=74 OR K=106 THEN 140
ELSE IF S< >0 THEN 640
630 NEXT P
640 DISPLAY AT(5,8)ERASE ALL
BEEP:"BITTE WARTEN." :: DIS
PLAY AT(8,8):"ICH ARBEITE . u
650 DISPLAY AT(13,3):"GLEICH
BEGINNT DAS SPIEL": : :"> >
> >LINGUA< < <•<"
660 CALL CHAR(37,"0000000F0F
0F0F0F0F0F0F0F0F000000000000
F0F0F0F0F0F0F0F0F0F"):: CALL
CHAR(41,"FF818181818181FF")
670 CALL CHAR(33,"FFFFFFFFFF
000000F0F0F0F0F0F0F0F00F0F0F
0F0F0F0F0F000000FFFFFFFFFF"J
680 CALL CHAR(140,"007754172
1457700007714171115170000774
5751555770000775577115577")
690 CALL CHAR<137,"FFFFFF818
1FFFFFFFFE7E7E7E7E7E7FF"): :
CALL CHAR(42,"FFFFFFFFFFFFFF
FF" )
700 CALL CHARPAT(48,A$):: CA
LL CHAR(79,A$)
710 FOR P=65 TO 87 :: CALL C
22
TIPS & TRICKS
HARPAT(P,P$):: CALL CHAR(P+3
2,p$>:: next p :: call char<
101,"007C407840407C7C",108,“
0040404040407C7C")
720 CALL C0L0R<9,2,6,10,2,6,
11,2,6,12,2,11,13,2,11,14,2,
16)
730 RUN "DSK1.LINGUA!"
Inverser
100 ! INVERSER ZEICHENSATZ
110 !
120 1 (TI EXTENDED BAISC)
130 '
140 CALL INVERS
150 ! REM WEITERES PROGRAMM
160 END
5000 SUB INVERS
5010 CALL CHAR(96,"")!LEERZE
ICHEN MIT FCTN C
5020 FOR 1=96 TO 126 :: CALL
CHARPAT(I,1$):: CALL CHAR(I
,SEG$(1$,3,14)):: NEXT I
5030 CALL CGL0RC9,16,5,10,16
,5,11,16,5,12,16,5):: SUBEND
100 ! BALKENDIAGRAMM STUFENL
OS
110 !
120 !
130 CALL CHAR(143,"FFFFFFFFF
FFFFFFFF")
140 !
150 ! DEMONSTRATIONSPROGRAMM
160 CALL CLEAR :: FOR 1=0 TO
15 :: CALL BALKEN<I,RND*21)
:: NEXT I
170 CALL KEY(0,K,S)s: IF NOT
S THEN 170 ELSE 180
180 f
190 END
8000 SUB BALKEN(X,P)
8010 Pi=INT(P):: P2*INT(<P-P
i)*S)
8020 IF P2 THEN B$=SEG$<"000
0000000000000FFFFFFFFFFFFFFF {
F",2#P2+1,16)ELSE B$=""
8030 CALL CHAR(127+X,B$):: I
F Pi=0 THEN 8050
8040 FOR K=22 TO 22-Pl+i STE
P -1 :: CALL VCHAR(K,2+2*X,1
43):: NEXT K
8050 CALL VCHAR(22-P1,2+2*X,
12 7 + X )
8060 SUBEND
1 (TI EXTENDED BAI SC)
i
CALL INVERS
! REM WEITERES PROGRAMM
Das erste invertiert alle
Kleinbuchstaben und
setzt sie gleichzeitig eine
Pixelzeile nach oben, so
daß die Zeichen auch
wirklich im Inneren des
invertierten Feldes er¬
scheinen:
*
Wenn die deutschen Son¬
derzeichen gebraucht wer¬
den, ist Zeile 5010 zu er¬
weitern:
5010 CALL CHAR(96,
“ “,123,“00004438447C
4440000443844444438
00004400444444380000
38447844784“)
BALKENDIAGRAMM
STUFENLOS
Die zweite Routine er¬
zeugt mit wenigen Anwei¬
sungen ein schnelles Bal¬
kendiagramm mit Pixel¬
weise variierten Balken¬
höhe:
Bfll- UEHP T fiGPfiMME '•
BflLKEHDIflGRflmiE
23
10
i
**********************
11
i
*
LINGUA1
*
12
i
*
(Teil 2)
*
13
i
*
*
14
i
*
Copyright by
*
15
i
*
*
16
i
*
Roger Hueser
*
17
i
*
*
19
;
*
Benoetigte Geraete
*
20
i
*
TI99/4A Konsole
*
21
;
*
Ext. Basic
*
22
;
*
32K-Erw.
*
23
j
*
Joystick
*
24
i
*
*
26
i
*
Speicherbelegung
*
27
i
*
15943 Bytes
*
28
i
*
*
29
|
**********************
100
ON
BREAK NEXT :: CALL
I
IT :: CALL LOAD(-31806,16)::
ON WARNING NEXT :: OPTION B
ASE i :: RANDOMIZE :: CALL c
LEAR
110 DIM SPIELERS(6),F(17,17)
,ASSE(6) ,ERG ( 6) ,BU(336) , A<12
),W(12),XA(150),YA(150),XB(1
2),YB(12),BSET(12):: GOTO 33
0
120 Q=Q +1 :: IF ALAS=0 THEN
RETURN ELSE IF ALAS=1 THEN 1
40 ELSE IF Q>ALAS THEN Q=i
130 CALL SPRITE(#10,42,2,3*Y
A<Q)-7,8*XA(Q)-7):: RETURN
140 Q=1 :: t=t +1 :: IF T>1 T
HEN T=0 :: CALL DELSPRITE(#1
0):: RETURN ELSE 130
150 H=HILF :: T=F(XXX-13,YYY
-1)
160 IF H>51 AND H<72 AND T=4
1 THEN 170 ELSE IF H>72 AND
H<96 AND T=72 THEN 170 ELSE
IF H>96 AND H<120 AND T=96 T
HEN 170 ELSE IF H>120 AND H<
136 AND T=120 THEN 170 ELSE
IF H=HILF THEN H=HIL :: GOTO
160 :: ELSE RETURN
170 IF H=HIL THEN ALAS=ALAS+
1 :: YA<ALAS)=YYY :: XA < ALAS
)=XXX :: RETURN
180 FOR T=1 TO ALAS :: IF YA
(T)OYYY OR XA<T)OXXX THEN
190 ELSE IF T=1 THEN 200 ELS
E YA < T)=YA(1):: XA(T)=XA(1):
: RETURN
190 NEXT T
200 IF YA(1)=YA(ALAS)AND XA(
i)=XA(ALAS)THEN ALAS=ALAS-1
:: GOTO 200
210 FOR T=ALAS TO 1 STEP -1
:: IF YA(1)=YA(T)AND XA(1)=X
A(T)THEN YA(T)=YA(ALAS):: XA
(T)=XA(ALAS)
220 NEXT T :: RETURN
230 YY=Y :: IF U<2 THEN DISP
LAY AT(9,3)BEEP SI2E(5):"A89
" :: DISPLAY AT(10,3)SI2E(6)
:"F8G=8A "
240 IF U=1 THEN DISPLAY AT(1
4,3)SIZE(8):"G49F6J8A" '
250 DISPLAY AT(12,3)SIZE(5):
"3A78" :: DISPLAY AT(17,3)SI
ZE(5):"D8EG" :: Y=12
260 CALL HCHAR(Y,4,137):: H=
6
270 FOR P=1 TO 3 + H :: CALL J
OYST(1,K,ST):: IF ST=0 OR U>
1 THEN CALL KEY(1,K,ST): : GO
TO 300 ELSE CALL HCHAR(Y,4,3
2):: Y=Y-ST/2 :: IF Y=16 THE
N Y=9 :I GOTO 290
280 IF U=1 AND Y=7 THEN Y=14
.* : GOTO 290 ELSE IF U=0 AND
Y=7 THEN Y=12 :: GOTO 290 E
LSE IF Y=10 THEN Y=9 :: GOTO
290 ELSE IF Y=11 THEN Y=12
:: GOTO 290 ELSE IF U=0 AND
Y=14 THEN Y=9
290 CALL JOYST(l,K,ST):: IF
ST=0 THEN 260 ELSE 290
300 IF K=18 THEN 320
310 NEXT P : : IF H=6‘ THEN H=
0 :: CALL HCHAR(Y,4,32):: GO
TO 270 ELSE 260
320 CALL KEY(1,K,ST):: IF K=
18 THEN 320 ELSE IF Y<13 THE
N 1960 ELSE U=2 Y=YY :: G
OTO 1260
330 F(l,1),F(l,17), F(17,1),F
(8,3),F(8,15),F(10,3),F(10,1
5)=96 :: FOR P=l TO 5 :: F(P
,6-P),F(P,12 + P),F(P+2,9-P),F
(P + 2,P + 9)=96
340 F(P+10,P+3),F(P+10,15-P)
,F(P+12,P),F(P+12,18-P)=96 :
: NEXT P :: F(9,9)=96
350 FOR P=1 TO 3 I: F(P,4-P)
,F(P,14+P),F(P+5,9-P),F(P+5,
9+P),F(P+9,5+P),F(P+9,13-P),
F(P+14,P),F(P+14,18-P)=72 ::
NEXT P
360 FOR P=1 TO 8 :: F(P,9-P)
,F(P,9+P),F(P+9,P),F(P+9,18-
P)=72 :: NEXT P
370 FOR P=1 TO 7 :: F(P,8-P)
,F(P,10+P),F(P+10,P),F(P+10,
18-P) =120 F(P+l f 9-P),,F(P +
1,9+P),F(P+9,1+P),F(P+9,17-P
)=4l :: NEXT P
380 FOR P=i TO 4 :: F(P,5-P)
,F(P,13+P),F(P+13,P),F(P+13,
ie-p)«=4i :: f <p+4,9-p) , f <p+4
,9+P),F(P + 9,4 + P),F(P+9,14-P)
=120 :: NEXT P
390 F(1,2),F<2,1),F<1,16),F<
2,17), F < 16, 1),F(17,2),F<8,9)
,F(9,8),F(10,9),F<9,10)=120
400 F(7,8),F(8,7),F(7,10),F(
10,7),F<8,11),F(11,8),F(10,1
1),F<11,10)=41 :: F(16,16)=4
2
410 DISPLAY AT(13,1)BEEP ERA
SE ALL:"WIEVIELE MITSPIELER
?" :: ACCEPT AT<13,24)VALIDA
TE("123456")SIZE(1)I SPIELER
:: FÜR P=i TO SPIELER
420 DISPLAY AT(10,1)BEEP ERA
SE ALL:"NAME DES ";STR$(P);"
. MITSPIELERS" :: ACCEPT AT(
12,1)VALIDATE(UALPHA)SIZE(15
) : SPIELER* <P) : IF SPIELER**
P)="R" THEN 2130
430 NEXT P :: CALL CLEAR ::
CALL CHAR<90,"007C040810207C
7C " )
440 FOR P=6 TO 8 : : CALL COL
or <p,2,9):: NEXT P :: call c
HARPAT <83,A$,89,B*,90,C$)
450 FOR P=49 TO 57 :: CALL C
HARPAT(P,P$):: CALL CHAR(P-6
,P$):: NEXT P :: FOR P=97 TO
116 :: CALL CHARPAT <P,P$)::
CALL CHAR(P-45,PS,P-24,P*):
: NEXT P
460 FOR P=97 TO 111 :: CALL
CHARPAT<P,P$):: CALL CHAR(P+
24,p*):: NEXT p :: call char
PAT<41,P$):: CALL CHAR(72,P*
,96,P*,120,P$,136,P$)
470 CALL CHAR <106,A*,113,B*,
102,C*,61,C*) I: CALL CHAR < 93
,A*,94,B$,95,C*):: CALL CHAR
PAT(119,P*,117,A*)!: CALL CH
AR <68,P*,57,A*)
480 CALL HCHAR<1,13,37):: CA
LL HCHAR<1,14,36,17):: CALL
HCHAR <1,31,39):: CALL VCHAR <
2,31,34,17):: CALL HCHAR<19,
31,40)
490 CALL HCHAR<19,14,33, 17) :
: CALL HCHAR<19,13,38)i: CAL
L VCHAR<2,13,35,17)I: CALL H
CHAR <3,13,137):: FOR Y=i TO
17 :: FOR X=1 TO 17
500 IF X>15 AND Y>15 THEN F<
Y,X)=42 :: GOTO 510 ELSE IF
F <Y,X)=0 THEN F <Y,X)=136
510 CALL HCHAR(Y+1,X+13,F(Y,
X)):: NEXT x :: NEXT Y :: Dl
SPLAY AT <1,1)SIZE(8) :"FC<8?8
E" :: DISPLAY AT<3,1)SIZE(8)
: "4FF8" :: DISPLAY AT < 5,1)SI
ze <8):"C9A>G8" :: begin=i ::
GOSUB 2060
520 FOR S=1 TO SPIELER :: XX
,YY=0 :: DISPLAY AT<1,9)BEEP
SIZE <1):CHR* <S + 42):: FOR P=
1 TO LEN<STR$<ASSE<S))):: A*
=CHR* < 42 + VAL < SEG* < STR* < ASSE <
S)),P,1))):: IF A$="*" THEN
A*="B"
530 DISPLAY AT <3,5 + P)SIZE(3)
: A* :: NEXT P
540 FOR P=1 TO LEN<STRS<ERG<
S) ) ) : : A*=CHR*(42+VAL(SEG*(S
TR*(ERG(S)),P,1))):: IF A*="
*" THEN A*="B"
550 DISPLAY AT(6,P)SIZE(4):A
* :: NEXT P
560 NS=0 :: FOR P=1 TO 12
570 B=1+INT<RND*336):: IF BU
(B)=1 THEN 570 ELSE BH=5i+IN
T <(3 + B)/4): : IF BH = 72 OR BH=
96 OR BH=120 THEN BU<B)=i ::
GOTO 570 ELSE A(P)=BH :: W(
p)=B :: BU < B)=1
580 NEXT P :: FOR P=i TO 12
:: BU < W < P ))=0 :: NEXT P
590 FOR H= 1 TO 11 :: FOR P=H
+1 TO 12 :: IF A( H )>A( P ) THEN
HI=A(H):: A<H)=A(P):: A<P)=
Hi :: hil=w<H):: w<H)=w<P)::
W(P)=HIL
600 NEXT P :: NEXT H
610 GOSUB 2070 :: CALL HCHAR
<7,3,37):: CALL HCHAR<7,4,36
,3):: CALL HCHAR <7,7,39) : : C
ALL VCHAR(8,7,34,12):: CALL
HCHAR <20,7,40):: CALL HCHAR<
20,4,33,3)
620 CALL HCHAR<20,3,38):: CA
LL VCHAR<8,3,35,12)::.CALL V
CHAR<8,4,139,12):: CALL VCHA
R<8,5,139,12):: CALL VCHAR<8
,6,139,12):: GOSUB 2050
630 FOR P=1 TO 12 :: CALL HC
HAR (7 + P,5,A <P)):: NEXT P
640 Y=19 :: AG=0 :: CALL VCH
AR(21,4,32,4)
650 IF BU(W(Y-7))=0 THEN 660
ELSE Y=Y-1 :: IF Y<8 THEN Y
=21 ELSE 650
660 CALL HCHAR<Y,4,137):: H=
6
670 FOR P=1 TO H+3 :: GOSUB
120 :: CALL JOYST(1,K,ST)::
IF ST=0 THEN 710 ELSE IF Y>1
9 THEN CALL HCHAR<Y,4,32)ELS
E CALL HCHAR(Y,4,139)
680 Y=Y-ST/4 :: IF Y=20 THEN
680 ELSE IF Y=25 THEN Y=8 :
: GOTO 690 ELSE IF Y=7 THEN
25
Y=24 :: GOTO 700 ELSE IF Y>1
9 THEN 700
690 IF BU(W(Y-7))=1 THEN 680
700 CALL JOYST(l,K,ST):: IF
ST=0 THEN 660 ELSE Z=Z + i ::
IF Z>10 THEN 660 ELSE 700
710 Z=0 :: CALL KEY(1,K,ST):
: IF K-6 THEN 2130 ELSE IF K
=18 THEN 730
720 NEXT P :: IF H=0 THEN 66
0 ELSE H=0 :: IF Y>19 THEN C
ALL HCHAR(Y,4,32):: GOTO 670
ELSE CALL HCHAR(Y, 4,139)::
GOTO 670
730 CALL KEY(1,K,ST):: IF K=
13 THEN 730 ELSE CALL HCHAR(
Y,4,137):: IF Y<20 THEN HI=Y
-7 ELSE IF Y=21 THEN 920 ELS
E IF Y=23 AND ASSE(S)>9 AND
SET >1 THEN U=1 :: GOTO 1020
ELSE IF Y=23 THEN 640 ELSE I
F Y=22 THEN U=0 :: GOTO 1020
ELSE 1990
740 SET=SET +1 :: IF BEGIN=1
THEN YY=3 :: GOTO 810 ELSE Y
Y= 10
750 H=6 CALL HCHAR (YY, 13,
137):: CALL HCHAR(YY,31,137)
:: GOTO 760
760 FOR P=1 TO 3+H :: GOSUB
120 :: CALL JOYST(1,K,ST)::
IF ST=0 THEN 780 ELSE CALL H
CHAR(YY,13,35):: CALL HCHAR(
YY,3i,34):: YY=YY-ST/4 :: IF
YY=19 THEN YY=2 ELSE IF YY=
1 THEN YY=18
770 CALL JOYST<1,K,ST):: IF
ST=0 THEN 750 ELSE Z=Z + 1 ::
IF Z>10 THEN 750 ELSE 770
780 Z=0 :: CALL KEY(1,K,ST):
: IF K=18 THEN 800
790 NEXT P :: IF H=0 THEN 75
0 ELSE H=0 :: CALL HCHAR(YY,
13,35):: CALL HCHAR(YY,31,34
):: GOTO 760
800 CALL KEY(1,K,ST):: IF K=
18 THEN 800
810 CALL HCHAR<YY,13,137)::
CALL HCHAR(YY,31,137):: XX=2
2
820 CALL HCHAR(1,XX,138):: C
ALL HCHAR(19,XX,138):: H=6
830 FOR P=1 TO 3+H :: GOSUB
120 :: CALL JOYST <1,K,ST)::
IF K=0 THEN 850 ELSE CALL HC
HAR(1,XX,36):: CALL .HCHAR(19
,xx,33):: xx=xx+K/4 :: if xx
=13 THEN XX=30 ELSE IF XX=31
THEN XX=1 4
840 CALL JOYST<1,K,ST):: IF
K=0 THEN 820 ELSE Z=Z+1 :: I
F Z>10 THEN 820 ELSE 840
850 Z=0 :: CALL KEY(1,K,ST):
: IF K=18 THEN 870
860 NEXT P :: IF H=0 THEN 82
0 ELSE H=0 :: CALL HCHAR(1,X
X,36):: CALL HCHAR(19,XX,33)
:: GOTO 830
870 CALL KEY(1,K,ST):: IF K=
18 THEN 870 ELSE CALL HCHAR(
1,XX,133):: CALL HCHAR(19,XX
,138):: CALL GCHAR(YY,XX,K)
880 IF K<52 OR K=72 OR K=96
OR K=120 OR K >135 THEN YB(HI
)=YY-l :: XB(HI)=XX~13 :: BS
ET(SET)=hi :: bu( w(Hl))=1 ::
CALL HCHAR(YY,XX,A(HI))ELSE
set=set- l :: ns= l :: goto 9
10
890 IF YY=17 AND XX=29 THEN
CALL DELSPRITE(#1)ELSE IF YY
=13 AND XX=29 THEN CALL DELS
PRITE(#2)ELSE IF YY=17 AND X
X=30 THEN CALL DELSPRITE(#3)
ELSE IF YY=18 AND XX=30 THEN
CALL DELSPRITE(«4)
900 CALL HCHAR(HI+7,5,139)
910 CALL HCHAR(YY,13,35):: C
ALL HCHAR(YV,3i,34) : CALL H
CHAR(1,XX,36):: CALL HCHAR(1
9,XX,33):: CALL HCHAR(HI+7,4
, 139) : GOTO 640
920 IF SET< 1 -THEN CALL VCHAR
(21,4,32,4):: GOTO 640
930 IF NS=1 THEN 1010 ELSE C
ALL DELSPRITE(#10):: CALL HC
HAR(21,1,32,128):: Y=21 :: D
ISPLAY AT(21,3)BEEP:"?8G=G8A
8<AGE4:": :"..'4??8F A89"
940 CALL HCHAR(Y,4,137):: H=
6
950 FOR P=1 TO 3+H :: CALL J
OYST(1,K,ST):: IF ST=0 THEN
970 ELSE CALL HCHAR(Y,4,32):
: IF Y=2i THEN Y=23 ELSE Y=2
1
960 CALL JOYST(1,K,ST):: IF
ST=0 THEN 940 ELSE 960
970 CALL KEY(1,K,ST):: IF K=
18 THEN 990
980 NEXT P :: IF H=0 THEN 94
0 ELSE H-0 :: CALL HCHAR(Y,4
,32):: GOTO 950
990 CALL KEY(1,K,ST):: IF K=
18 THEN 990 ELSE IF Y<>21 TH
EN 1010 ELSE IF HI=0 THEN GO
SUB 2050 :1 GOTO 640
1000 IF YY>16 AND XX>28 THEN
1010 ELSE SET = SET-i :: CALL
HCHAR < YY,XX,F(XB(HI),YB(HI)
)):: bu( w( hi))=0 :: call hch
oc
AR(HI+7,5,A(HI)):: HI=0 :: G
OSUB 2050 :: GOTO 640
1010 NS=0 :: FOR P=1 TO SET
:: hi=bset(P):: call hchar(Y
B(HI)+1,XB(HI)+13,F(XB(HI),Y
B(Hi))):: bu( w(Hi))=0 :: gos
ub 2060 :: next P :: set=0 :
: GOTO 610
1020 X,Y=0 :: IF SET=0 THEN
CALL VCHAR(21,4,32,4):: GOTO
640 ELSE IF BEGIN=1 AND SET
<4 THEN 1010 ELSE IF SET=1 T
HEN 1120
1030 FOR P=2 TO SET :: IF XB
(BSET(l))<>XB(BSET(P))THEN X
= X +1
1040 IF YB(BSET(1) )< >YB(BSET
(P))THEN Y=Y + 1
1050 NEXT P :: IF BEGIN=2 AN
D X>0 THEN 1010 ELSE IF X>0
AND Y >0 THEN 1010
1060 FOR H~1 TO SET-1 :: FOR
P=H +1 TO SET
1070 IF (Y=0 AND XB(BSET(H))
>XB(BSET(P)))OR(X=0 AND YB(B
SET(H))>YB(BSET(P)))THEN HI=
XB(BSET(H)):: XBIBSET(H))=XB
(BSET(P)):: XB(BSET(P))=HI :
: HI-YB(BSET(H))ELSE 1090
1080 YB(BSET(H))=YB(BSET(P))
:: YB(BSET(P))=HI :: goto 10
70
1090 NEXT P :: NEXT H :: FOR
H=1 TO SET-l-S: IF Y=0 AND
XB(BSET(H) )+1=XB(BSET (H+l))T
HEN 1100 ELSE IF X=0 AND YB(
BSET(H))+ i = YB(BSET(H+l))THEN
1100 ELSE IF BEGIN=1 THEN 1
010 ELSE 1200
1100 NEXT H :: IF BEGIN=i AN
D XB(BSET(SET))=SET THEN 154'
0 ELSE IF BEGIN=1 THEN 1010
ELSE IF X=0 THEN CALL GCHAR <
YB(BSET(1)),XB(BSET(1))+13,H
)ELSE 1180
1110 IF H>51 AND H< >72 AND H
096 AND H< >120 AND H<136 TH
EN 1540 ELSE CALL GCHAR(YB(B
SET(SET))+2,XB(BSET(1))+13,H
):: IF H<52 OR H=72 OR H=96
OR H=120 OR H>135 THEN 1010
ELSE 1540
1120 IF BEGIN=2 AND YB(BSET(
1)X>1 AND YB (BSET (1) ) < >3 TH
EN 1010 ELSE CALL GCHAR(YB(B
SET (1) ) , XB (BSET (1) )+13,H)-S :
IF H>51 AND H< >72 AND H<>96
AND H< >120 AND H<136 THEN Y=
1
1130 CALL GCHAR(YB(BSET(1))+
2,XB(BSET(1))+13,H):: IF H>5
1 AND H< >72 AND H<>96 AND H<
>120 AND H<136 THEN Y=1
1140 CALL GCHAR(YB(BSET<1))+
1,XB(BSET(1))+12,H)
1150 IF H>51 AND H<>72 AND H
096 AND HO120 AND HC136 TH
EN X= 1
1160 CALL GCHAR(YB(BSET(1))+
1,XB(BSET(1))+14,H):I IF H>5
1 AND H< >72 AND H<>96 AND H<
>120 AND H<136 THEN X=1
1170 IF X=0 AND Y=0 THEN 101
0 ELSE 1540
1180 CALL GCHAR(YB(BSET(1))+
1,XB(BSET(1))+12,H):I IF H>5
1 AND H< >72 AND H<>96 AND H<
>120 AND H<136 THEN 1540 ELS
E CALL GCHAR(YB(BSET(1))+1 ,X
B (BSET(SET) )+14,H>
1190 IF H< 52 OR H=72 OR H = 96
OR H=120 OR H>135 THEN 1010
ELSE 1540
1200 Q=100 :: FOR P=1 TO SET
-1 :: IF Y=0 AND XB(BSET(P))
+1=XB(BSET(P+i))OR X=0 AND Y
B (BSET(P) )+1=YB(BSET(P+i))TH
EN 1250
1210 IF Y=0 THEN XX=XB(BSET(
P))+i :: YY=XB (BSET (F' + l ) )-1
ELSE XX=YB(BSET(P))+1 :: YY=
YB(BSET(P+1))-l
1220 FOR H=XX TO YY :: IF Y=
0 THEN CALL GCHAR(YB(BSET(1)
)+1,H+13,K)ELSE CALL GCHAR(H
+1,XB(BSET(1))+13,K)
1230 IF K<52 OR K=72 OR K=96
OR K=120 OR K >135 THEN GOTO
1010
1240 NEXT H
1250 NEXT P :: GOTO 1540
1260 z=i :: gosub 120 :: IF
YO0 THEN XX=YB (BSET (1) ) +1 :
: GOTO 1310 ELSE XX=XB(BSET(
1) ) +13
1270 GOSUB 120 :: xx=xx-l ::
CALL GCHAR(YB < BSET(1))+1,XX
,H):: IF H<52 OR H=72 OR H=9
6 OR H=120 OR H>135 THEN YY=
XB(BSET(SET))+13 ELSE 1270
1280 GOSUB 120 :: YY=YY +1 ::
CALL GCHAR(YB(BSET<1))+l,YY
,H):: IF H>51 AND H<>72 AND
H< >96 AND HO120 AND H<136 T
HEN 1280
1290 CALL GCHAR(YB(BSET(1))+
l,xx+z,H):: GOSUB 120 :: gos
UB 2080 :: ST=0 :: FOR P=xx +
1 TO YY-1 :: CALL GCHAR(YB(B
SET(l))+1,P,K):: IF K<H OR K
>HI THEN ST = ST +1 :: HIL=K ::
»
27
HILF=P
1300 NEXT P :: IF ST=i THEN
M=xx :: n=yy :: YY=YB(BSET(i
))+i :: xx=hilf :: goto
1350 ELSE IF YY-20XX + ST THE
N 1010 ELSE Z=Z + 1 :: IF Z<3
THEN 1290 ELSE 1010
1310 GOSUB 120 :: XX=XX-i ::
CALL GCHAR(XX,XB < BSET <1))+1
3,H) :: IF H<52 OR H = 72 OR H=
96 OR H=120 OR H>135 THEN YY
=YB(BSET(SET))+1 ELSE 1310
1320 GOSUB 120 :: YY = YY +1 II
CALL GCHAR(YY,XB(BSET(1)) +1
3,H) :: IF H>51 AND H<>72 AND
H< >96 AND H< >120 AND H<136
THEN 1320
1330 CALL GCHAR(XX+Z,XB(BSET
(i))+13,H):: GOSUB 120 :: GO
sub 2030 :: st =0 :: for P=xx
+1 TO YY- 1 :: CALL GCHAR(P, X
B(BSET(1))+13,K):: IF K<H OR
K >HI THEN ST = ST + 1 :: HI L=K
:: HILF=P
1340 NEXT P :: IF ST=1 THEN
M=XX :: N=YY :: yy=HILF :: X
X=XB(BSET(1))+13 :: GOTO 135
0 ELSE IF YY-20XX + ST THEN 1
010 ELSE Z = Z + i :: IF Z< 3 THE
N 1330 ELSE 1010
1350 FOR P=1 TO SET :: IF YY
-1=YB(BSET(P))AND XX-13=XB(B
SET(P > )THEN 1370
1360 NEXT P :: GOTO 1010
1370 GOSUB 2070 :: DISPLAY A
T(23,3)BEEP:":8:8A D876J8A 5
96} FG458A49FG49F6 i 8A " :
: YYY=10
1380 CALL HCHAR(YYY,13,137):
: CALL HCHAR(YYY,31,137):: H
I LF=6
1390 FOR P=1 TO 3+HILF :: GO
SUB 120 :: CALL JOYST(1,K,ST
):: IF st= 0 THEN z=0 :: call
KEY< i,K,ST)ELSE CALL HCHAR(
YYY,13,35):i CALL HCHAR(YYY,
31,34):: GOTO 1420
1400 IF K=18 THEN 1440
1410 NEXT P :: IF HILF=6 THE
N HILF=0 :: CALL HCHAR(YYY,1
3,35):: CALL HCHAR(YYY,31,34
):: GOTO 1390 ELSE 1380
1420 YYY=YYY-ST/4 :: IF YYY=
19 THEN YYY=2 ELSE IF YYY=i
THEN YYY=18
1430 CALL JOYST(1,K,ST):: IF
ST=0 THEN 1380 ELSE Z=Z + i :
: IF Z>10 THEN 1380 ELSE 143
0
1440 CALL KEY(1,K,ST):: IF K
=18 THEN 1440 ELSE CALL HCHA
R(YYY,13,137):: CALL HCHAR <Y
YY,31,137):: XXX=22
1450 CALL HCHAR(1,XXX,138) : :
CALL HCHAR(19,XXX,138):: HI
LF=6
1460 FOR P=i TO 3+HILF :: GO
SUB 120 :: CALL JOYST(1,K,ST
):: IF KO0 THEN 1480 ELSE Z
=0 :: CALL KEY(1,K,ST):: IF
K=18 THEN 1500
1470 NEXT P :: IF HILF=6 THE
N HILF=0 :: CALL HCHAR(1,XXX
,36):: CALL HCHAR(19,XXX,33)
I: GOTO 1460 ELSE 1450
1480 CALL HCHAR(1,XXX,36) : :
CALL HCHAR(19,XXX,33):: XXX=
XXX+K/4 :: IF XXX=13 THEN XX
X=30 ELSE IF XXX=31 THEN XXX
= 14
1490 CALL JOYST(1,K,ST):: IF
K=0 THEN 1450 ELSE Z=Z+1 ::
IF Z>10 THEN 1450 ELSE 1490
1500 CALL KEY(i,K,ST):: IF K
=18 THEN 1500 ELSE CALL GCHA
R(YYY,XXX,HILF):: CALL HCHAR
(1,XXX,36):: XALL HCHAR(19,X
XX,33):: CALL HCHAR(YYY,13,3
5):: CALL HCHAR(YYY,31,34)
1510 IF HILF<H OR HILF>HI TH
EN 1010 ELSE IF Y=0 AND YYY=
YB(BSET(1))+1 AND XXX>M AND
XXX< N THEN 1010 ELSE IF X=0
AND XXX=XB(BSET(1))+13 AND Y
YY>M AND YYY<N THEN 1010
1520 CALL CHARPAT(HIL,A$,HIL
F,B*):: IF A$OB$ THEN 1010
ELSE GOSUB 150 :: CALL HCHAR
(YY,XX,HILF):: CALL HCHAR(YY
Y,XXX,HIL)
1530 H=HIL :: HIL=HILF :: HI
LF=H :: yyy=yy :: xxx=xx ::
GOSUB 150
1540 CALL DELSPRITE(#10):: H
ILF,ASS,ER=0 :: GOSUB 2070 :
: IF Y>0 THEN 1730
1550 XX=XB(BSET(1))+13 :: C=
YB(BSET(1))+1
1560 XX=XX-1 :: CALL GCHAR<C
,XX,H):: IF H<52 OR H=72 OR
H=96 OR H=120 OR H>135 THEN
YY=XB(BSET(SET))+13 ELSE 156
0
1570 YY=YY+1 :: CALL GCHAR(C
,YY,H):: IF H<52 OR H=72 OR
H=96 OR H=120 OR H>135 THEN
CALL GCHAR < C,XX +1,H):: GOSUB
2080 :: AA-3 ELSE 1570
1580 FOR P=XX+1 TO YY-1 :: C
ALL GCHAR(C,P,K):: CALL HCHA
R(20,AA,K):: AA=AA+1 :: IF K
<H OR K>HI THEN HILF=HILF+1
1590 B=F(C-l,P-13):: 60SUB 2
100 :: IF DOl THEN 1620
1600 FÜR ST=1 TO SET :S IF P
-13=XB(BSET(ST))THEN ALAS=AL
AS+i :: AG-AG+l :: YA(ALAS)=
c :: xa(alas)=P :: goto 1620
1610 NEXT ST
1620 NEXT P :: IF HILF=0 THE
N ER=ER+25#(YY-XX-1)ELSE HIL
F=0
1630 3=0 :: AA=2 :: AB=2i ::
for p=xx+i to yy-1 :: for z
=1 TO SET :: IF P-13=XB(BSET
(Z))THEN 1650
1640 next z :: J=J + i :: goto
1720
1650 CALL HCHAR(AB,AA,32)::
AA = AA +1 :: IF AA >23 THEN AA =
3 :: AB=AB+1
1660 XXX=YB(BSET(P-XX-J))+1
1670 XXX=XXX-1 :: CALL GCHAR
(XXX,P,H) : : IF H< 52 OR H = 72
OR H=96 OR H=120 OR H>135 TH
EN YYY=YB(BSET (P-XX-J) )+l EL
SE 1670
1680 YYY=YYY +1 : : CALL GCHAR
(YYY, P, H) I : IF H>51 AND H< >7
2 AND H< >96 AND HO120 AND H
<136 THEN 1680 ELSE IF XXX+1
=YYY-1 THEN AA=AA-1 :: GOTO
1720
1690 CALL GCHAR(XXX+1,P,H)::
GOSUB 2080 :: FOR HIL=XXX+i
TO YYY-1 :: CALL GCHAR(HIL,
P,K):: CALL HCHAR(AB,AA,K)I:
AA=AA+1 :: IF AA>31 THEN AA
=3 :: AB=AB+1
1700 IF K<H OR K>HI THEN HIL
F=HILF +1
1710 B=F(HIL-l,P-13):: GOSUB
2100 :: NEXT HIL :: IF HILF
=0 THEN ER=ER+25*(YYY-XXX-1)
ELSE HILF=0
1720 NEXT P :: GOTO 1910
1730 XX=YB(BSET(1))+1 :: C = X
B(BSET(1))+13
1740 xx=xx-i :: call gchar(X
X, C,H):: IF H<42 OR H=72 OR
H=96 OR H=120 OR H>135 THEN
YY=YB(BSET(1))+1 ELSE 1740
1750 YY=YY+1 :: CALL GCHAR(Y
Y, C,H) :: IF H<52 OR H=72 OR
H=96 OR H=120 OR H>135 THEN
CALL GCHAR(XX+1,C,H):: AA=3
:: GOSUB 2080 ELSE 1750
1760 FOR P=XX+i TO YY-i :: C
ALL GCHAR(P,C,K):: CALL HCHA
R(20,AA,K):: AA=AA+1 :: IF K
<H OR K >HI THEN HILF=HILF+i
1770 B=F(P-l,C-13):: GOSUB 2
100 :: IF DOl THEN 1800
1780 FOR ST=1 TO SET N IF P
-i=YB(BSET(ST))THEN ALAS=ALA
s+i :: ag=ag+i :: ya<alas)=p
:: xa(alas)= c :: goto 1800
1790 NEXT ST
1800 NEXT P :: IF HILF=0 THE
N ER=ER+25*(YY-XX-i)ELSE HIL
F=0
1810 J=0 :: AA=2 :: AB=2l ::
FOR P=XX+1 TO YY-1 :: FOR Z
=1 TO SET :: IF P-1 =YB(BSET(
Z))THEN 1830
1820 NEXT z :: J=J+1 :: goto
1900
1830 CALL HCHAR(AB,AA,32) : :
AA=AA+1 :: IF AA >23 THEN AA =
3 :: AB=AB+1
1840 XXX=XB(BSET(P-XX-J))+13
1850 XXX=XXX-1 :: CALL GCHAR
(P , XXX , H) : : IF H< 52 OR H=72
OR H=96 OR H=120 OR H>135 TH
EN YYY=XB(BSET(P-XX-J))+13 E
LSE 1850
1860 YYY=YYY+1 :: CALL GCHAR
(P,YYY,H): : IF H >51 AND H<>7
2 AND H< >96 AND HO120 AND H
<136 THEN 1860 ELSE IF XXX+1
= YYY -1 THEN AA=AA-1 :: GOTO
1900
1870 CALL GCHAR(P,XXX + 1,H) I :
GOSUB 2080 :: FOR HIL=XXX+1
TO YYY-1 :: CALL GCHAR(P,HI
L,K)I : CALL HCHAR(AB,AA,K) : !
AA=AA +1 :: IF AA>31 THEN AA
=3 :: AB=AB+1
1880 IF K<H OR K>HI THEN HIL
F=HILF+1
1890 B=F(P-1,HIL-13):: GOSUB
2100 :: NEXT HIL :: IF hilf
=0 THEN ER=ER+25*(YYY-XXX-1)
ELSE HILF=0
1900 NEXT P
1910 FOR P=1 TO SET :: IF YB
(BSET(P))=16 AND XB(BSET(P))
=16 THEN ER=ER+25 ELSE IF YB
(BSET(P))=17 AND XB(BSET(P))
=16 THEN ER=ER+75 ELSE IF YB
(BSET(P))=16 AND XB(BSET(P))
=17 THEN ER=ER+50
1920 IF YB(BSET < P) )=17 AND X
B(BSET(P))=17 THEN ER=ER+100
1930 NEXT P :: ER=ER+ASS*10
:: c=ASSE (S)+ASS :: IF 019
THEN ER=ER*4 ELSE IF 014 TH
EN ER=ER*3 ELSE IF 09 THEN
ER=ER*2
1940 FOR P=1 TO LEN(STR$(ER)
):: A$=CHR$(42+VAL(SEG$(STR$
(ER),P,1>)):: IF A$="*" THEN
29
r
EMMA
A$= "B"
1950 DISPLAY AT(18,2+P)SI2E(
l):A$ :: next p :: goto 230
1960 IF Y=9 THEN ALAS=ALAS-A
G :: gosub 2070 :: goto 1010
ELSE ERG(S)=ERG(S)+ER :: AS
SE(S)=ASSE(S)+ASS
1970 IF XB(BSET(SET))>15 AND
YB(BSET(SET))>15 THEN 2000
ELSE SET=0 :: IF BEGIN>0 THE
N BEGIN=BEGIN+1 :: IF BEGIN=
3 THEN BEGIN=0
1980 GOSUB 2070 :: NEXT S ::
GOTO 520
1990 CALL DELSPRITE<#10):: I
F SET=0 THEN 1980 ELSE 1010
2000 CALL CLEAR :: CALL DELS
PRITE(ALL):: CALL CHARSET ::
FOR P=i TO SPIELER-1 :: FOR
H=P+1 TO SPIELER
2010 IF ERG(P)<ERG(H)THEN B=
ERG(P):: ERG(P)=ERG(H):: ERG
(H)=B :: A$=SPIELER$(P):: SP
IELER$(P)=SPIELER$(H):: SPIE
LER$(H)=A$
2020 NEXT H :: NEXT P :: FOR
P=1 TO SPIELER :: CALL HCHA
R(2*P,5,P+48):: DISPLAY AT<2
*p,4):". " 5 spieler$(P):: dis
PLAY AT(2*P,22):USING "#####
":ERG(P):: next p
2030 DISPLAY AT<24,1)BEEP:"N
OCH EIN SPIEL? (J/N)" :.: FOR
P=1 TO 1500 :: CALL KEY(0,K
,S)2: CALL KEY(1,X,Y)N IF X
=18 OR K=74 OR K=107 THEN RU
N "DSKl.LINGUA" ELSE IF X=6
OR K=78 OR K=110 THEN 2130
2040 NEXT P :: GOTO 2130
2050 CALL VCHAR(21,4,32,4)::
DISPLAY AT(21,3)BEEP:"A89 F
8G=8A": . 4A=8C8A": ". .49FG4
9F6J8A 45 +B 4FF8":"..>4AA A
< 6 J G F8G=8A" :: RETURN
2060 CALL SPRITE(#1,140,16,1
29,224,#2,141,16,137,224,#3,
142,16,129,232,#4,143, 16,137
,232):: RETURN
2070 FOR P=3 TO 12 :: CALL V
CHAR(7,P,32,14):: NEXT P ::
CALL HCHAR(20,1,32,160):: RE
TURN
2080 IF H>51 AND H<72 THEN H
=51 :: HI=72 ELSE IF H>72 AN
D H< 96 THEN H=72 :: HI = 96 EL
SE IF H>96 AND H<120 THEN H=
96 :: HI=120 ELSE H=120 :: H
1 = 136
2090 RETURN
2100 IF K>51 AND K<72 THEN E
=3 ELSE IF K>72 AND K<96 THE
N E=2 ELSE IF K>96 AND K<120
THEN E=4 ELSE E=1
2110 ER=ER+E :: IF B=41 AND
E=3 OR B=72 AND E=2 OR B=96
AND E=4 OR B=120 AND E=1 THE
N ASS=ASS+1 :: D=1 ELSE D=0
2120 RETURN
2130 CALL DELSPRITE(ALL):: C
ALL CLEAR :: END
10
;
**********************
11
;
*
*
12
1
*
KANALBAU
*
13
|
*
*
14
1
*
Copyright by
*
15
|
*
*
16
j
*Dipl.-Ing. W. Zacher*
17
;
*
*
19
;
*
Benoetigte Geraete
*
20
1
*
TI99/4A Konsole
*
21
1
*
Ext. Basic
*
22
;
*
*
26
;
*
Speicherbelegung
*
27
;
*
3457 Bytes
*
28
;
*
*
29
1
**********************
100 CALL CLEAR
110 CALL SCREEN’(5):: FOR 1=0
TO 14 :: CALL COLOR(1,16,5)
:: NEXT I
120 OPTION BASE 1
130 ON WARNING NEXT
140 CALL TITEL
150 IMAGE Qvol1=#####.## (1/
s) . . .Vvol1=###.## (m/s)
160 DATA 48,80,K,48,104,A,48
,128,N,48,152,A
170 DATA 80,80,P,80,104,R,80
,128,0,80,152,G
180 DATA Kreis... 1:1,
3.141593.. 500
190 DATA Ei-Normal ...... 1:1.
5,4.594, .579,Ei-ueberhoeht..
1:1.75,5.492,.621,Ei-breit..
.l:1.25,3.823,0.544,Ei-g
edrueckt...1:1,3.097,.493
200 DATA Maul-normal.... 1:.7
5.2.378.. 424,Maul-ueberhoeht
1:1,3.378,.512,Maul-gedrueck
t l:.625,1.937,.375
210 DATA Au-ftr. einseit.i:l.
3,3.929, .518, Au-ftr. bei dseitl
:1,2.933,.447
220 DIM PR$(10),F(10),R(10)
230 FOR P=i TO 10
240 READ PR$(P),F(P),R(P)
250 NEXT P
30
NUTZEN SSE UNSEREN BEQUEMEN POSTSERVICE
KOMMT REGELMÄSSIG
TU IHMFM Finden sie lhre Ti REVUE nicht am Kiosk?
Weil sie schon ausverkauft ist? Oder „Euer"
■II* U AIIC Kiosk nicht beliefert wurde? Kein Problem! Für
INv liMUJ ganze 60 DM liefern wir Euch per Post zwölf
Hefte ins Haus (Ausland 80 DM). Einfach den
Bestellschein auf der nächsten Seite ausschneiden
- fotokopieren oder abschreiben, in einen Brief¬
umschlag und ab per Post (Achtung: Porto nicht
vergessen). TI REVUE kommt dann pünktlich
ins Haus.
WICHTIGE RECHTLICHE Verlag widerrufen— Postkarte ge-
GARANTIE! nügt. Ansonsten läuft dieser Auf¬
trag jeweils für zwölf Ausgaben,
Sie können diesen Abo-Auftrag wenn ihm nicht vier Wochen
binnen einer Woche nach Eingang vor Ablauf widersprochen wird,
der Abo-Bestätigung durch den weiter.
DAS SUPER-SONDER¬
ANGEBOT:
PRIVATE
KLEINANZEIGEN
KOSTENLOS!
Das bietet Ihnen ab sofort die TI-REVUE: KLEIN¬
ANZEIGEN SIND KOSTENLOS FÜR PRIVATAN¬
BIETER! Suchen Sie etwas, haben Sie etwas zu ver¬
kaufen, zu tauschen, wollen Sie einen Club gründen?
Coupon ausfüllen, auf Postkarte kleben oder in Brief¬
umschlag stecken und abschicken. So einfach geht
das. Wollen Sie das Heft nicht zerschneiden, können
Sie den Coupon auch fotokopieren. Oder einfach den
Anzeigentext uns so schicken, auf Postkarte oder im
Brief. Aber bitte mit Druckbuchstaben oder in
Schreibmaschinenschrift!
Und: Einschließlich Ihrer Adresse und/oder Tele¬
fonnummer sollten acht Zeilen a 28 Anschläge nicht
überschritten werden.
- ACHTUNG: WICHTIGER HINWEIS!
Wir veröffentlichen nur Kleinanzeigen privater In¬
serenten, keine gewerblichen Anzeigen. Die kosten
pro Millimeter DM 3,50 plus Mehrwertsteuer!
Wir versenden für Privat-Inserenten keine Beleg-
Exemplare!
Chiffre-Anzeigen sind nicht gestattet! Wir behalten
juns vor, Anzeigen, die gegen rechtliche, sittliche oder
sonstige Gebote verstoßen, abzulehnen!
Anzeigenabdruck in der Reihenfolge ihres Eingangs,
kein Rechtsanspruch auf den Abdruck in der nächsten
Ausgabe!
Die Insertion ist nicht vom Kauf des Heftes ab¬
hängig!
Wir behalten uns vor, Anzeigen, die nicht zum The¬
menkreis des Heftes - Computer - gehören, nicht ab¬
zudrucken oder sie nur insoweit zu berücksichtigen,
wie es der Umfang des kostenlosen Anzeitenteils zu¬
läßt.
31
I
N 2
O |
3.
n
I
n|I
iS . 3
• r* —
3 3
n> < a
03 - o
> • 3
3
s
Jfj
N 3
3 5
* I
II
9 7
a o
KASSETTEN¬
SERVICE
. Wollt Ihr nicht mehr seitenlange Listings eintip¬
pen? Dann benutzt unseren Kassetten-Service: Für
ganze zehn DM - nur Vorkasse, keine Rechnung -
keine Nachnahme - erhalten Sie alle angebotenen
Listings des jeweiligen Heftes auf Kassette per Post
ins Haus. Achtung: Bestellungen ohne Geld werden
nicht bearbeitet! Lieferzeit: In der Regel zwei bis drei
Wochen! Wichtig: Unsere Kassetten werden digital in
einem Profistudio von einem Masterband gezogen,
nicht irgendwie per Recorder runtergenudelt. Selbst¬
verständlich volles Umtauschrecht bei Nichtfunktio-
nieren.
ABO SERVICE-KARTE
K
Ich n9hme zur Kenntnis,
daß die Belieferung
erst beginnt, wenn die Abo
Gebühr dem Verlag
zugegangen ist
TI REVUE
Abo-Service 2/86
Postfach 1107
8044 UNTERSCHLEISSHEIM
Coupon
Ja, ich möchte von Ihrem Angebot zwölf Ausgaben an untenstehende
Gebrauch machen. Anschrift. Sollte ich nicht vier
Wochen vor Ablauf schriftlich
Bitte senden Sie mir bis auf Wider* kündigen, läuft diese Abmachung
ruf ab sofort jeweils die nächsten automatisch weiter.
Name_———-
Vorname-—-
Straße/Hausnr.------
Ptz/Ort__:_
Ich bezahle:
□ per beiliegendem Verrechnungsscheck
□ gegen Rechnung
□ bargeldlos per Bankeinzug von meinem Konto
bei (Bank) und Ort-
Kontonummer___—-
Bankleitzahl ---—
(stehtauf jedem Kontoauszug) .
Unterschrift ____:- T —
Von meinem Widerspruchsrecht habe ich Kenntnis genommen.
Unterschrift--
32
RESERVIERUNGS-
SERVICE
Assembler bietet dem, der damit umgehen kann, viele
Möglichkeiten. Andererseits aber sind Assembler-Pro¬
gramme beim Abdruck im Heft sehr platzraubend. Aus
diesem Grund erarbeitet die Redaktion gerade ein As¬
sembler-Special für alle Freunde dieser Programmier¬
sprache.
*
Dieses Heft wird nur an ganz gezielt ausgewählten
Verkaufsstellen angeboten — Bahnhofskiosken —
Computershops usw.
Damit Sie nicht auf die Suche gehen müssen, können
Sie sich dieses Heft schon jetzt reservieren lassen. Ein¬
fach den Coupon ausfüllen und — im Briefumschlag als
Drucksache oder auf eine Postkarte geklebt — absen¬
den.
Als Gegenleistung für diese Ihre Mühe erhalten Sie
das Heft als Subskriptionsangebot sogar noch zehn Pro¬
zent billiger — einschließlich unserer Versandspesen.
Nämlich für DM 17,80 statt zum Ladenpreis von DM
19,80.
ACHTUNG! Bitte kein Geld mitsenden, wir melden
uns, wenn das Heft versandbereit ist.
LETZTER SUBSKRIPTIONSTAG:
10.2.1986
Auf besonderen Wunsch versenden wir auch über
Nachnahme. Wir weisen aber ausdrücklich darauf hin,
daß dadurch Mehrkosten von etwa DM 5,— Mark im In-
und etwa DM 10,— im Ausland (Postgebühren!) entste¬
hen.
I ui
PROGRAMMSERVICE
Hiermit bestelle ich in Kenntnis Ihrer Verkaufsbedingungen
die Listings dieses Heftes auf
□ Kassette (10 DM)
□ Diskette (25 DM) 7 b
Zutreffendes bitte ankreuzenl
Ich zahle:
per beigefügtem Scheck / Schein ( )
Gegen Bankabbuchung am Versandtag ( )
Meine Bank (mit Ortsname) ...
Meine Kontonummer...
Meine Bankleitzahl.(steht auf jedem Bankauszug)
Vorname...Nachname.
Str./Nr.PLZ/Ort .
Hiermit bestätige ich mit meiner Unterschrift, Ihre Verkaufsbedingungen
gelesen zu haben und zu akzeptieren.
Unterschrift..
Bitte ausschneiden und einsenden an
TI-REVUE
KASSETTENSERVICE 2/86
Postfach 1107
8044 Unterschleißheim
X
33
■ ■ ■ . v ' - .
pecial ASSEMBLER
|TI 99/4A|
SPECIAL
Über 90 Selten
Alles über
Assembler für
den TI 99/4A
MACHEN SIE MEHR AUS
IHREM TI MIT ASSEMBLER
Aus dem Inhalt:
DELETE FASTCOPY
BILDSCHIRM SPEICHERN BIT MAP MODE
SCROLL IN AUSSCHNITTEN ASSEMBLER IN TI BASIC
HILFE FÜR DAS MINI MEM ZEICHENDEFINITION
Ein Muß für jeden
Assembler- Anwender!
NUR IM
BAHNHOFSBUCH-HANDEL
ODER BEIM VERLAG!
Subskriptionsangebot für
Schnellentschlossene!
snecial Assembler snecfia
LISTINGS
260 CALL DELSPRITE(ALL)
270 CALL CLEAR :: HL*=■
280 PRINT HL$:TAB(8)J"DRUCKE
roption":hl$; :
290 INPUT "Drucker <J/N):":D
R$
300 IF DR$="N" THEN 330
310 IF DR$<>"J" AND DR*<>"N"
THEN 290
320 INPUT "Drucker-Name : ": D
RNA*
330 CALL .CLEAR
340 DISPLAY AT(i,i):HLS
350 DISPLAY AT (2,-10) : "MENUE.
„ ZUR"
360 DISPLAY AT<3,8):"KANALBE
RECHNUNG"
370 DISPLAY AT(4, 1 ) :HL*
380 DISPLAY AT(8,1):"1 -> Vo
11-fuellung einze1ner...... Pr
o-f i 1 e"
390 DISPLAY AT(13,1)!"2 -> P
rogrammende"
400 DISPLAY AT(17,1):"* BITT
E WAEHLEN SIE !"
410 CALL KEY(0,TASTE,STA)
420 IF STA=0 THEN 410
430 IF TASTE-48<1 OR TASTE-4
8 >2 THEN 410
440 ON TASTE-48 GOTO 450,860
450 CALL CLEAR :: DISPLAY AT
<1,2) : "Vol 1-fuel lung von Pro-f
i len"
460 DISPLAY AT(2,i):HL*
470 FOR 1=1 TO 10
480 DISPLAY AT <I+2,1)SI»" ->
" \ PR*(I)
490 NEXT I
500 DISPLAY AT < 14,1): "Pro-f i 1
art ?" .
510 DISPLAY AT(17,1):"Rauhig
keit..(mm) kb="
520 DISPLAY AT (18, 1) : "Pro-f il
breite(mm) b ="
530 DISPLAY AT(19,1) : "Ge-fael
le_ (--) 1 /"
540 ACCEPT AT(14,13)SIZE(-2)
BEEP;ART
550 IF ART<1 OR ART>10 THEN
540
560 DISPLAY AT(15,8)IPR*(ART
)
570 ACCEPT AT(17,2i)SIZE<-5)
beep:kbeinz
580 ACCEPT AT(18,21)SIZE(-5)
BEEPIDEINZ
590 ACCEPT AT(19,21)SIZE(-5) •
BEEP:IEINZ
600 IF KBEINZ<=0 OR DEINZ<=0
OR IEINZ< =0 THEN 570
610 FK=F(ART)II FR=R(ART)
620 CALL QV(KBEINZ,DEINZ,FR,
FK,IEINZ,QEINZ,VEINZ)
630 DISPLAY AT(21,1):"Q="JQE
INZ;"(1/S)" :: DISPLAY AT(22
, 1): "v=" JVEINZJ"(m/s)"
640 DISPLAY AT(23,1):HL*
650 DISPLAY AT(24,1):"D)ruck
en..W)eit e r..E)nde"
660 DISPLAY AT(24,28)SIZE(1)
:
670 CALL KEY(0,TASTE,STA)
680 IF STA=0 THEN 670
690 IF TASTE=68 THEN DISPLAY
AT(24,1)SIZE(1)::: disp
LAY AT(24,28)SIZE(1) : G
OTO 730 .'DRUCKEN
700 IF TASTE = 87 THEN DISPLAY
AT(24,li)SiZE(i)::: dis
PLAY AT(24,28)SIZE(1): "" ::
GOTO 540 !WEITER
710 IF TASTE=69 THEN 330 !EN
DE
720 GOTO 670
730 REM DRUCK
740 IF DR*<>"J" THEN 640
750 OPEN #10:DRNA$
760 HL2*=RPT$("-“,80)
770 PRINT #10:HL2*
780 PRINT #10: "Pro-f ilart: "}
PR*(ART)
790 PRINT #10
800 PRINT #10:TAB(12)i"Rauhi
gkeit..(mm) kb=" i KBEINZ } TAB<
12) f "Pro-f i lbrei te (mm) b ="fD
EINZ( TAB (12) J "Ge-fael le. . . . <-
-) 1 /"JIEINZ
810 PRINT #10
820 PRINT #10,USING 150:QEIN
Z,VEINZ
830 PRINT #10:HL2$
840 CLOSE #10
850 GOTO 650
860 CALL CLEAR END
870 SUB QV(KB,D,FHR,FFK,I,Q,
V)
880 DEF LG(X)=LOG(X)/LOG(10)
890 HR=FHR*D/1000/2
900 WUR=SQR(8*9.80665*HR/I)
910 KL=(0.63*1.31E-6/HR/WUR+
KB/1000/HR/14.84)
920 V=~2*LG<KL)*WUR
930 F=FFK*(D/1000/2)^2
LISTINGS
940 Q=F*V
AMM..ZUR"
950 Q=1000*Q
1060 DISPLAY AT<18,7):"KANAL
960 SUBEND
BERECHNUNG"
970 SUB TITEL
1070 DISPLAY AT(20,3):"<C> D
980 CALL CHAR(128,"FFFFFFFFF
ipl.Ing. W.Zacher"
FFFFFFF")
1080 CALL HCHAR<2,2,128,28)
990 CALL MAGNIFY(2)
1090 CALL HCHAR<23,2,128,28)
1000 FOR 1=1 TO 8
1100 CALL VCHAR(2,2,128,21>
1010 READ A,B,Z$
1110 CALL VCHAR(2,30,128,22)
1020 CALL SPRITE(#1,ASC < Z$),
1120 DISPLAY AT(24,1):" * bi
16,A,B)
tte taste druecken *"
1030 NEXT I
1040 DISPLAY AT(14,12):"V 1.
1130 CALL KEY(0,K,S)i: IF S=
0"
0 THEN 1130
1050 DISPLAY AT(16,8):"PROGR
1140 SUBEND
Kassetten-
Hilfen
Ein ziemlich mißlicher
Zustand am TI ist die Tat¬
sache, daß man weder ein
Programm von der Cas-
sette mit Namen aufru-
fen, noch von einem zum
anderen Programm ohne
Memory-Expansion
Variablen übergeben kann.
Beides mpglich machen
sollen die folgenden bei¬
den Miniroutinen. Sie ba¬
sieren auf der Tatsache,
daß bei einem RUN
“CS 1 “-Befehl zwar alle
vom Anwender mühsam
gesetzten Variablen ge¬
löscht werden, nicht aber
die Zeichenmatrizen der
selbstdefinierten Charak¬
ter mit einem ASO127!
Also codiert die Laderou¬
tine einen String in einen
maximal 1 östelligen Hex-
Code, definiert damit das
Zeichen 143 und ruft das
nächstbeste Programm auf
der Cassette mit RUN
CS1“ auf.
Die ersten Zeilen eines je¬
den auf der Cassette be¬
findlichen Programmes
müssen nun wie folgt aus-
sehen:
1 b$=codierter Programm¬
name
2 CALLCHARPAT
(143,a$)
3 IF a$Ob$ then RUN
“CS1“
100 ! OLD MIT NAME
110 ! <C> HANSI LANG
120 ! 1000 BERLIN
130 ! *********************
140 CALL CLEAR
150 HEX*="01 234 56789 ABC DEF"
160 PRINT "Name des Cassette
nprocrsmE?"
170 INPUT "":NAME$
180 NAME$=SEG$ <NAME$&RPT$("
", 8 >, 1 , 8 )
190 FÜR 1=0 TO 7
200 C0DE=ASC(SEG$(NAME$,I+1,
2 ) )
210 GOSUB 260
220 NEXT I
230 CALL CHAR(143,CGDE$)
240 RUN "CS1"
250 REM UMWANDLUNG IN HEX-WE
RTE
260 HINIBBLE=INT(CODE/16)
270 CQDE$=CODE$&SEG$<HEX$,HI
NIBBLE,1)
280 LGNTBBLE=CCDE-HINIBELE*1
6
290 CODE$=CODE$-8cSEG$<HEX$,LO
NIBBLE,1)
300 RETURN
Und hier das eigentliche Ladeprogramm:
b$ in Zeile 1 muß genauso
codiert sein wie der vom
Ladeprogramm in Zeichen
143 übergebene a$, also
z.B. b$=“5445535421
323232)“ wenn der Pro¬
grammname “TEST!“
sein soll.
Die Variablenübergabe
zwischen 2 Programmen
kann prinzipiell auf die¬
selbe Art und Weise vor
sich gehen, nur daß dabei
natürlich keine Strings
übergeben werden, son¬
dern entweder ein Zei¬
chen direkt aus einer In¬
tegerzahl definiert wird,
oder nach weiß der Kuk-
kuck welcher Art der
Codierung. Der löstellige .
String, mit dem ein Zei¬
chen definiert werden
kann, langt zur Übergabe
von insgesamt acht 8-
Bit-Werten, und damit
läßt sich ja wohl so eini¬
ges anstellen.
Aufpassen muß man frei¬
lich beim Auslesen der
Zeichenmatrix vom Ziel¬
programm. Übergibt man
zum Beispiel den Wert
Dezimal 2076 auf diese
Art: CALL CH AR (143,
“2076“), so sieht der
vom Zielprogramm mittels
CHARPAT ausgelesene
String so aus:
2076000000000000!
Also tut man gut daran,
die Zeichen mit Führungs¬
nullen zu definieren,
etwa so:
a$=RPT$(“0“, 16-LEN
(STR$(wert)))&STR$
(wert).
Hans-Jürgen Lang
36
LISTINGS
10 REM********************
11 REM* KAMIKAZE III *
12 REM* - *
13 REM* Copyright by *
14 REM* *
15 REM* Thorsten Rauer *
16 REM* *
17 REM*Benoetigte Geraete*
18 REM* TI99/4A Konsole *
19 REM* *
23 REM* Speicherbelegung *
24 REM* 11892 Bytes *
25 REM********************
26 REM
100 RANDOMIZE
110 CALL'CLEAR
120 CALL SCREEN(9)
130 RESTORE 3110
140 READ D, F, J, K, N, 0, S, X
150 RESTORE 3130
160 FOR AA=1 TO 41
170 READ II,
180 CALL CHAR(II,B$)
190 NEXT AA
200 ON D GOTO 1420,980,1420,
1020,1440,1060,1440,1100,146
0,1140,1460,1180
210 IF J=0 THEN 2450
220 A=32
230 T=C
240 FOR U=3i TO 1 STEP -1
250 CALL SOUND<-4250,-6,19)
260 IF Y=0 THEN 280
270 GOSUB 2010
280 FOR AA=1 TO E
290 CALL KEY(0,KK,SS)
300 IF (KK=80)+(KK=112)THEN
310 ELSE 330
310 CALL KEY(0,JJ,LL)
320 IF (JJ = 79) + <JJ = ill)THEN
350 ELSE 310
330 IF (KK>52) + (KK<49)THEN 3
50
340 ON KK-48 GOTO 2160,2180,
2200,2220
350 NEXT AA
360 CALL HCHAR(T, U + l, 32,2)
370 CALL HCHAR<T,U,35)
380 CALL HCHAR(T,U+l,40)
390 NEXT U
400 CALL HCHAR(T,1,A,3)
410 F=F+1
420 IF F>3 THEN 2450 ELSE 24
0
430 X=X+1
440 J=J-1
450 W=950
460 U=U+1
470 CALL HCHAR(T,1,32,32)
480 FOR AA=1 TO 20
490 U=U-H
500 T=T + G
510 IF U<1 THEN 750
520 IF T>23 THEN 780
530 CALL GCHAR(T, U,I)
540 IF (I>95)*(I<104)+(1=110
)+<I*iii)+(I*153) THEN 1730
550 IF (1=120)+(I=12i)THEN 1
590
560 IF (I>103)*(I<110)THEN 1
620
570 IF (I>144)*(I<149)THEN 1
560
580 IF D<6 THEN 600
590 IF 1=64 THEN 1700
600 IF 1091 THEN 680
610 CALL HCHAR(T,U,92)
620 FOR MM=0 TO 30 STEP 4
630 CALL SOUND(-1600,110,MM,
110,MM,-5,MM)
640 NEXT MM
650 CALL HCHAR(T,U,91)
660 A=122
670 GOTO 740
680 CALL HCHAR(T,U,V)
690 FOR MM=1 TO 3
700 W=W-9
710 CALL SOUND(-600,W,3)
720 NEXT MM
730 CALL HCHAR(T,U,A)
740 NEXT AA
750 GOSUB 2400
760 GOSUB 820
770 GOTO 210
780 RESTORE 3330
790 GOSUB 1790
800 GOSUB 820 •
810 GOTO 210
820 CALL HCHAR(1,5,42,4)
830 FOR AA=i TO LEN(STR$(J))
840 CALL HCHAR(1,4+AA,ASC(SE
G$(STR$(J),AA,1)))
850 NEXT AA
860 CALL HCHAR(1,16,42,6)
870 FOR AA=i TO LEN(STR*(S))
880 CALL HCHAR(1,15+AA,ASC(S
EG$(STR$(S),AA,1)))
890 NEXT AA
900 CALL HCHAR(1,27,42,3)
910 NN=INT(O/X*100)
920 FOR AA=i TO LEN(STR$(NN)
>
930 CALL HCHAR(1,26+AA,ASC(S
EG*(STR$(NN),AA,1)))
940 NEXT AA
950 RETURN
960 RESTORE 2620
970 GOTO 1190
980 RESTORE 2630
990 GOTO 1190 W
1000 RESTORE 2650
1010 GOTO 1190
1020 RESTORE 2660
1030 GOTO 1190
1040 RESTORE 2670
1050 GOTO 1190
1060 RESTORE 2690
1070 GOTO 1190
1080 RESTORE 2710
1090 GOTO 1190
1100 RESTORE 2730
1110 GOTO 1190
1120 RESTORE 2750
1130 GOTO 1190
1140 RESTORE 2770
1150 GOTO 1190
1160 RESTORE 2790
1170 GOTO 1190
1180 RESTORE 2810
1190 READ E,L,Y,Z,C
1200 FOR AA=1 TO 2
1210 READ AB,AC,AD
1220 CALL HCHAR(AB,AC,AD)
1230 NEXT AA
1240 K=0
1250 GOTO 210
1260 RESTORE 2830
1270 GG=4
1280 HH=76
1290 GOTO 1330
1300 RESTORE 2950
1310 GG=8
1320 HH=73
1330 FOR AA=1 TO GG
1340 READ II,B$
1350 CALL CHAR(II,B$)
1360 NEXT AA
1370 FOR AA=1 TO HH
1380 READ AB,AC,AD,AE
1390 CALL HCHAR(AB,AC,AD,AE)
1400 NEXT AA
1410 ON D GOTO 960,980,1000,
1020,1040,1060,1080,1100,112
0,1140,1160,1180
1420 RESTORE 3230
1430 GOTO 1470
1440 RESTORE 3240
1450 GOTO 1470
1460 RESTORE 3250
1470 FOR AA=1 TO 16
1480 READ AB,AC
1490 CALL COLOR(AA,AB, AC)
1500 NEXT AA
1510 ON D GOTO 1260,1260,130
0,1300,1260,1260,1300,1300,1
260,1260,1300,1300
1520 FOR AA=1 TO LEN(A$)
1530 CALL HCHAR(Q,R-l+AA,ASC
<SEG$(A$,AA,1)))
1540 NEXT AA
1550 RETURN
1560 RESTORE 3270
1570 GOSUB 1790
1580 GOTO 1930
1590 RESTORE 3280
1600 GOSUB 1790
1610 GOTO 1880
1620 RESTORE 3290
1630 GOSUB 1790
1640 GOTO 1930
1650 RESTORE 3340
1660 U=U+1
1670 GOSUB 1790
1680 GOSUB 820
1690 GOTO 210
1700 RESTORE 3300
1710 GOSUB 1790
1720 GOTO 210
1730 RESTORE 3310
1740 GOSUB 1790
1750 CALL HCHAR(T,U,I)
1760 S=S-M-I
1770 GOSUB 820
1780 GOTO 210
1790 READ DD,CC,BB,RR
1800 IF T<24 THEN 1820
1810 T=24
1820 FOR AA=1 TO EB
1830 READ EE
1840 CALL HCHAR(T,U,EE)
1850 CALL SOUND(-500,DD,CC+A
A*RR)
1860 NEXT AA
1870 RETURN
1880 CALL HCHAR<T,U-1,123,3)
1890 GOSUB 2400
1900 CALL HCHAR(T,U-i,122,3)
1910 S=S+(M*2)+I
1920 GOTO 1940
1930 S=S+M+I
1940 K=K+1
1950 0=0+1
1960 IF S<N THEN 1990
1970 N=N+2000
1980 J=J+(N/1000)
1990 GOSUB 820 •
2000 IF K=L THEN 2250 ELSE 2
10
2010 FF=INT(RND*31+1)
2020 CALL GCHAR(T,FF,XX)
2030 IF XX=35 THEN 2120
2040 RESTORE 3320
2050 READ DD,CC,BB,RR
2060 FOR AA=1 TO BB
2070 READ EE
2080 CALL HCHAR(T,FF,EE)
2090 CALL SOUND(-500,DD,CC+A
A*RR)
2100 NEXT AA
2110 RETURN
2120 CALL HCHAR(T,U+2,A)
38
2130 3 = 3-1
2140 X=X + 1
2150 GOTO 1650
2160 RESTORE 3070
2170 GOTO 2230
2180 RESTORE 3080
2190 GOTO 2230
2200 RESTORE 3090
2210 GOTO 2230
2220 RESTORE 3100
2230 READ G,H,M,V
2240 GOTO 430
2250 J = J +8
2260 GOSUB 820
2270 FOR AA=1 10 9 STER- 3
2280 RESTORE* 3260
2290 FOR'00=1 TO 4
2300 READ AB,AC,AD,AE,AF
2310 CALL SCREEN ( AB)
2320 CALL SOUND(AD,AE,AF-AA,
AE+110,AF+l-AA)
2330 CALL SCREEN(AC)
2340 NEXT 00
2350 NEXT AA
2360 D=D+1
2370 IF D>12 THEN 2380 ELSE
200
2380 D=0
2390 GOTO 2270
2400 FOR AA=1 TO 30 STEP 2
2410 CALL SOUND(-500,-7,AA)
2420 CALL SOUND(-60,-6,AA-1)
2430 NEXT AA
2440 RETURN
2450 GOSUB 820
2460 FOR AA=3 TO 8
2470 CALL COLOR(AA,2,8)
2480 NEXT AA
2490 RESTORE 3120
2500 FOR 00=1 TO 2
2510 READ A$,Q,R
2520 GOSUB 1520 *
2530 NEXT 00
2540 RESTORE 3110
2550 READ D, F, J , K, N, 0, S, X
2560 CALL KEY(0,KK,SS)
2570 IF SS=0 THEN 2560
2580 IF KK=6 THEN 100
2590 IF KK=15 THEN 2610
2600 GOTO 2560
2610 END
2620 DATA 3,6,0,7,12,18,11,1
07,18,12,108,18,13,109,18,18
,105,18,19,106,21,3,120,21,4
,121
2630 DATA 2,9,1,10,12,18,4,1
07,18,5,108,18,6,109,18,15,1
07,18,16,108,18,17,109
2640 DATA 18,23,105,18,24,10
6,23,21,120,23,22,121
2650 DATA 2,6,0,6,11,19,8,14
7.18.17.145.19.18.146.19.20,
148.21.2.105.21.3.106
2660 DATA 3,7,1,8,13,19,11,1
48.18.17.145.19.19.147.18.23
,145,19,25,146,21,30,104,23,
2.120.23.3.121
2670 DATA 2,9,1,10,8,18,1,10
7.18.2.108.18.3.109.18.8.105
,18,9,106
2680 DATA 18,14,104,18,19,10
5,18,20,106,21,24,120,21,25,
121
2690 DATA 2,11,0,12,10,18,2,
105,18,3,106,18,7,104,18,10,
104,18,15, 107,18,16,108,18,1
7, 109
2700 DATA 18,21,104,18,23,10
5,18,24,106,20,18,120,20,19,
121
2710 DATA 2,9,1,10,9,21,28,1
43,19,25,147,19,19,146,19,20
,148,19,10,146,19,8,147
2720 DATA 21,1,105,21,2,106,
23.29.120.23.30.121
2730 DATA 1,8,1,10,9,19,20,1
48,19,9,146,18,17,145,18,23,
145.21.2.107.21.3.108.21.4.1
09
2740 DATA 23,30,120,23,31,12
1
2750 DATA 1,11,0,12,8,18,2,1
07,18,3,108,18,4,109,18,8,10
5.18.9.106.18.17.105
2760 DATA 18,18,106,18,21,10
7,18,22,108,18,23,109,22,14,
120.22.15.121
2770 DATA 1,11,1,13,8,18,23,
104.18.20.104.18.17.109.18.1
6.108.18.15.107.18.10.106
2780 DATA 18,9,105,18,5,106,
18.4.105.21.15.120.21.16.121
,22,24,120,22,25,121
2790 DATA 1,9,1,10,11,19,18,
146.19.9.146.17.16.145.19.24
,146,19,20,147,21,3,104,21,3
0, 105
2800 DATA 21,31,106,23,2,120
,23,3,121
2810 DATA 1,13,1,15,9,17,16,
146.19.18.145.19.20.147.19.2
4.145.19.8.147.19.10.148.21,
29,107,21,30,108
2820 DATA 21,31,109,23,30,12
0,23,31,121,23,2,120,23,3,12
1.21.2.105.21.3.106
2830 DATA 98,01030F1F3F3FFFF
F,96,010307070F1F3FFF,97,FFF
FFFFFFFFFFFFF,99,01010404070
F0F1F
2840 DATA 1,1,42,64,3,1,32,5
»
12,19,1,122,192,1,3,33,1,1,9
,60,1,1,10,83,1,1,11,78,1,1,
12.73.1
2850 DATA 1,13,84,1,1,14,69,
1,1,24,84,1,1,25,81,1,4,7,11
2,1,4,8,113,1,4,9,114,1,4,10
2860 DATA 4,20,64,1,4,28,138
,1,5,7,116,1,5,8,117,1,5,9,1
18.1.5.10.119.1.5.14.64.1.5,
22 . 112.1
2870 DATA 5,23,113,1,5,24,11
4,1,5,25,115,1,6,3,64,1,6,22
,116,1,6,23,117,1,6,24,118,1
2880 DATA 6,25,119,1,6,30,64
,1,7,20,64,1,8,7,64,1,8,16,6
4,1,8,26,64,1,13,28,64,1,13,
32.98.1
2890 DATA 14,2,64,1,14,16,64
,1,14,22,64,1,14,31,98,1,14,
32.97.1.15.5.64.1.15.12.64.1
,15,30,96,1
2900 DATA 15,31,97,2,16,26,6
4.1.16.29.96.1.16.30.97.3.17
,28,98,1,17,29,97,4,18,1,91,
26.18.27.99.1
2910 DATA 18,28,97,5,19,27,1
31.1.19.28.97.5
2920 DATA 17,28,98,1,17,29,9
7.4.18.1.91.26.18.27.99.1.18
,28,97,3,19,27,131,1,19,28,9
7.5
2930 DATA 20,27,130,1,20,28,
97.5.21.27.130.1.21.28.97.5,
22,27,131,1,22,28,97,5,23,27
, 130, 1
2940 DATA 23,28,97,5,24,1,12
4.26.24.27.131.1.24.28.97.5
2950 DATA 96,00000000C0E1F3F
F,98,80C0C0E0F8FCFEFF,97,FFF
FFFFFFFFFFFFF,99,0103030F1F1
F3FFF
2960 DATA 100,000000000D1F7F
• FF,101,00000000B0F8FEFF,102,
01030F1FFFFFFFFF,103,80C0F0F
CFFFFFFFF
2970 DATA 3,1,32,608,22,1,12
2.96.3.24.64.1.4.3.138.1.4.7
,64,1,4,14,64,1,5,17,64,1,5,
20 , 112,1
2980 DATA 5,21,113,1,5,22,11
4.1.5.23.115.1.5.30.64.1.6.7
,112,1,6,8,113,1,6,9,114,1,6
,10,115,1
2990 DATA 6,20,116,1,6,21,11
7,1,6,22,118,1,6,23,119,1,6,
30,64,1,7,7,116,1,7,8,117,1,
7,9,118,1
3000 DATA 7,10,119,1,7,15,64
,1,8,4,64,1,8,30,112,1,8,31,
113,1,8,32,114,1,9,19,64,1,9
,30,116,1
3010 DATA 9,31,117,1,9,32,11
8,1,10,11,64,1,10,27,64,1,15
,3,64,1,15,31,64,1,16,9,64,1
,16,14,110,1
3020 DATA 16,15,111,1,17,13,
99,1,17,14,153,2,17,16,98,1,
17.19.64.1.17.26.64.1
3030 DATA 18,2,64,1,18,12,99
,1,18,13,97,4,18,17,98,1,18,
22,99,1,18,23,98,1,18,29,64,
1.19.7.100.1
3040 DATA 19,8,96,3, 19,.11, 10 .
2.1.19.12.97.6.19.18.103.1.1
9, 1*9,96,2, 19,21,102,1, 19,22,
97.2
3050 DATA 19,24,103,1,19,25,
96.1.19.26.101.1.20.6.99.1.2
0,7,97,20,20,27,98,1,21,1,91
,4,21,5,99,1
3060 DATA 21,6,97,22,21,28,9
8,1,21,29,91,4,24,1,124,32
3070 DATA 1,2,90,36
3080 DATA 1,1,50,36
3090 DATA 2,1,75,36
3100 DATA 1,0,25,37
3110 DATA 1,0,15,0,1000,0,0,
0
3120 DATA GAME OVER,10,12,PR
ESS REDO OR BACK,12,8
3130 DATA 35, 000331 7FDF7D 38,
36,18040E3D785C788,37,7C581C
1E3E361C08,38,240192442iaS28
9
3140 DATA 39,914A2D9C5AA549A
4 , 40,0060707C7E786,41 , 81C3C3
66663C7EFF,42,FFFFFFFFFFFFFF
FF ’
3150 DATA 91,00000000060C183
C,92,00814242243C7EFF,104,00
10181F3C3C7EFF,105,02070F0F1
F3FFFFF
3160 DATA 106,0408D0E0F0F8FF
FF,107,000000003F3FFFFF,108,
103C7EFFFFFFFFFF*109,1020408
0F0FCFFFF
3170 DATA 112,000000010F1F3F
7F,113,001C7EFFFFFFFFFF,114,
000C3FFFFFFFFFFF,115,000000E
0F0F8FCFE
3180 DATA 116,7F7F3F0F03,117
,FFFFFFFFFF7E18,118,FFFFFFFF
FF71,119,FEFEFCF8F8F0E,64,00
44AA1
3190 DATA 120,0000077FFFFF7F
1F,121,80E0FEFFFFFFFEFC,122,
00,123,914A2D9C5AA549A4,34,0
00024183814
3200 DATA 130,0F1F3F7F7F7F3F
0F,131,0F1F07030101070F,124,
125C301418FFFFFF,145,028489D
2E4E8F0F8
3210 DATA 146,0001020408D0E0
F8,147,0001323C7C7EFFB5,148,
00081C3E7F557F55,138,387CFEF
EFE7C38
3220 DATA 110,0307070F3F7FFF
FF,111,80C0E0E0F0F8FEFF,153,
00000183C3E7FFFF
3230 DATA 2,15,9,15,5,9,5,9,
2,15,2,15,2,15,16,15,4,15,16
,15,16,15,2,5,4,5,15,15,2,15
,4,16
3240 DATA 2,8,9,8,2,9,2,9,2,
8,2,8,2,8,16,8,3,8,15,8,16,8
,2,5,3,5,11,8,13,8,3,15
3250 DATA 16,2,9,2,16,9,16,9
,11,2,16,2,16,2,16,2,13,2,15
,2,16,2,2,5,13,5,16,2,11,2,1
3, 15
3260 DATA 2,16,290,392,13,3,
5,290,492,12,14,11,290,592,1
0,13,9,740,563,9
3270 DATA -7,5,8,2,38,38,39,
39,41,41,41, 96
3280 DATA -7,2,4,4,38,38,39,
39
3290 DATA -6,0,9,3,34,34,38,
38,39,39,41,41,91
3300 DATA -7,0,7,4,39,39,38,
38,34,34,32
3310 DATA -7,1,9,3,34,34,38,
38,39,39,41,41,41
3320 DATA -5,11,3,4,34,38,32
3330 DATA -7,2,7,4,34,34,38,
38,39,39,122
3340 DATA -7,0,10,3,34,38,38
,39,39,39,38,34,34,32
UNSER
LESER-SERVICE:
LISTINGS
Tel. 0 89/1 29 8013
Jeden Dienstag, 15—19 Uhr
TECHNIK
Tel. 07 31 / 3 32 20
Jeden Dienstag, 15—19 Uhr
Abo- & Kassetten-Service:
Tel. 0 89/1 29 8011
— jeden Dienstag
& Mittwoch, 15—18 Uhr!
10
i
**********************
11
;
*
THOMAS-VERFAHREN
*
12
i
*
(Graphik-Lernprog.
)*
13
i
*
*
14
i
*
Copyright by
*
15
i
*
*
16
i
*
Arnd Noack
*
17
i
*
*
19
;
*
Benoetigte Geraete
*
20
i
*
TI99/4A Konsole
*
21
i
*
Ext. Basic
*
22
;
*
Sprach-Synth.
*
23
i
*
*
26
;
*
Speicherbelegung
*
27
i
*
9049 Bytes
*
28
i
*
*
29
I
**********************
100 CALL CLEAR :: CALL SCREE
N(5):: FOR 1=0 TO 8 :: CALL
COLORU, 16,9) : : NEXT I
110 DISPLAY AT(4,1):..DAS
THOMAS-VERFAHREN"
120 DISPLAY AT(8,1) : ".
...24.9.1985"
130 DISPLAY AT(16, 1 ) : ".
...BY A.NOACK"
140 CALL SAY("YOUR «TEXAS IN
STRUMENTS « IS «READY TO STA
RT«" )
150 CALL SAY ("PLEASE PRESS E
NTER FOR START")
160 CALL KEY(0,K,S):: IF S=0
THEN 160 ELSE 170
170 CALL CHARSET :: CALL DEL
SPRITE(ALL):: CALL CLEAR ::
FOR C=0 TO 14 :: CALL COLOR(
C,13,l):: NEXT c :: CALL SCR
EEN < 2)
180 CALL CHAR(59,"8040201008
040201")
190 GOSUB 550 :: GOSUB 1380
:: GOSUB 230
200 CALL SPRITE(«1,84,5,99,1
20,«2,85,5, 99 ,128,«3,86,5,99
,136,«4,87,5,99,144)
210 CALL SPRITE(«5,88,5,107,
121,«6,89,5,107,129,«7,90,5,
107,137,«8,91,5,107,145)
220 CALL SPRITE(«10,92,16,12
0,126,-5,0,«11,92,16,124,132
,-5,0,«12,92,16,120,140,-5,0
)
230 DISPLAY AT(1,1):"der tho
mas-konverter" :: CALL WAIT
:: CALL SPRITE(«15,59,16,80,
120,«16,59,16,72,112)
240 DISPLAY AT(7,5):" basisc
he. ..ausmau
erung"
250 CALL SPRITE(«17,59,16,12
M -4
0,151,#18,59,16,128,159)
260 DISPLAY AT <17,21):".
.............windkasten"
270 DISPLAY AT<10,14):".
.< = >?.
.@ABC.
.DEFG.
.HIJ K"
280 DISPLAY AT(15,14):"LMNO"
290 DISPLAY AT(1,1)BEEP\"der
thomas-konverter..
-" ;: for i =
l to 300 :: next i :: call c
300 DISPLAY AT(1,1)BEEP:"1.d
er konverter wird in.....-fue
llstellung gebracht und..das
-fluessige roheisen mit..kal
kzusatz eingegossen." :: CAL
L WAIT :: gosub 450 :: call
waIt :: call c
310 DISPLAY AT <1, 1)BEEP:"2.v
om windkasten her wird...sau
ersto-f-f oder lu-ft...ein
geblasen." :: CALL WAIT :: 6
OSUB 480 :: CALL C
320 DISPLAY AT(1,1)BEEP:"3.d
er durch das schme1zbad..str
oemende wind verbrennt... den
koh 1 ensto-f-f und die.....bei
mengungen." :: CALL WAIT ::
GOSUB 650 :: CALL WAIT :: CA
LL C
330 DISPLAY AT (1, 1)BEEP:"4.d
er kalk verbindet sich...mit
dem phosphor im roheisen" :
: CALL WAIT :: gosub 670 ::
CALL WAIT :: CALL C
340 DISPLAY ATU, 1) BEEP! "5. d
er Verbrennungsvorgang... dau
ert 15-20 minuten. ......die
temperatur wird bis au-f 160
0 c gesteigert." SS CALL WAI
T :: gosub 730 :: call wait
•. CALL C
350 DISPLAY ATU, 1) BEEP: "6.d
ie au-f dem stahl...sch
wimmende schlacke wird...abg
eschoep-ft und das schmelzgut
in die bereitgestellten gie
sswagen ge-fuellt." :: GOSUB
740
360 CALL WAIT :: CALL C :: D
ISPLAY ATU, 1)BEEP: "7.die we
itere verarbeitung..des stah
ls er-folgt im stahl-werk dur¬
ch giessen und..walzen."
370 DISPLAY AT(24,1):"nochma
1..j...weiter..m " :: CALL K
EY <2,K,S) :: IF S=0 THEN 390
380 IF K=2 THEN 170 ELSE 800
390 FOR 1=1 TO 8 :: CALL COL
OR(#1,7):: NEXT I
400 FOR 1=1 TO 8 :: CALL COL
OR(#I,ll):: NEXT I
410 CALL POSITION(#10,XfY) : :
IF X<112 THEN CALL DELSPRIT
E(#10)
420 CALL POSITION(#11,XI,Y1)
:: IF XI<112 THEN CALL DELSP
RITE(#11)
430 CALL POSITION(#12,X2,Y2)
:: IF X<112 THEN CALL DELSPR
ITE(#12):: GOSUB 480
440 GOTO 370
450 CALL SPRITE(#1,84,5,99,1
20,#2,85,5,99,128,#3,86,5,99
,136,#4,87,5,99,144)
460 CALL SPRITE(#5,88,5,107,
121,#6,89,5,107,129,#7,90,5,
107,137,#8,91,5,107,145)
470 RETURN
480 CALL SPRITE(#10,92,16,12
0,126,-5,0,#11,92,16,124,132
,-5,0,#12,92,16,120,140,-5,0
)
490 FOR 1=1 TO 8 :: CALL COL
GR(#I,7):: NEXT I
500 FOR 1=1 TO 8 :: CALL COL
OR(#1,9)::'NEXT I
510 CALL POSITION ( #10, X, Y ) *. :
IF X<112 THEN CALL DELSPRIT
E(#10)
520 CALL POSITION(#11,XI,Y1)
:: IF X<112 THEN CALL DELSPR
ITE(#11)
530 CALL POSITION(#12,X2,Y2)
:: IF X<112 THEN CALL DELSPR
ITE (#12):: RETURN
540 RETURN
550 RESTORE 560 I: FOR 1=1 T
0 12 :: READ A,B$ :: DISPLAY
AT(A, 1) *.B* :: NEXT I ::
560 DATA 1,VERARBEITUNG DES
ROHEISENS,3,ZU STAHL,6,ROHEI
SEN HAT EINE HOHEN,8,KÖHLENS
TOFFGEHALT (3-5 %•)., 10, ZUDEM
ENTHAELT ROHEISEN
570 DATA 12,UNERWUENSCHTE OD
ER ZU HOHE,14,"BEIMENGUNGEN
AN SILICIUM,",16,"MANGAN,SCH
WEFEL UND",18,PHOSPHOR.
580 DATA 20,BEI DER ROHEISEN
UMWANDLUNG,22,WERDEN DIE BEI
MENGUNGEN,24,FAST GANZ BESEI
TIGT. (enter >
590 CALL KEY(0,K,S):: IF S=0
THEN 590
600 CALL CLEAR :: RESTORE 61
0 :: FOR 1=1 TO 7 :: READ A,
B$ :: DISPLAY AT(A,l):B$ ::
NEXT I
42
610 DATA 1,DIESEN UMWANDLUNG
SVORGANG,3,NENNT MAN FRISCHE
N., 5, ES GIBT VERSCHIEDENE FR
ISCH-,7,VERFAHREN:,10,ALS BE
ISPIEL DIENT HIER DAS
620 DATA 12,THOMAS-VERFAHREN
.,16,bitte <enter> druecken
630 CALL KEY(0,K,S):: IF S=0
THEN 630
640 RETURN
650 FOR 1=1 TO 3 :: FOR A=1
TO 8 :: CALL COLOR(#A,13)::
CALL SOUND(-200,-5,10):: NEX
TA:: NEXT I
660 FOR 1 = 1 .TO 8 :: CALL COL
QR<#I,10):: next i :: return
670 !
680 CALL CHAR(40,"0F0D090B09
0D0B0F",41,"FF99A44591111AFF
",42,"14520941229055A6",43,"
3000209610C05080")
690 FOR 1=1 TO 20
700 CALL PATTERN(#1,40,#2,41
,#3,42,#4,43)
710 CALL PATTERN(#1,84,#2,85
,#3,86,#4,87)
720 CALL SOUND(-1,-6,10):: N-
EXT I :: RETURN
730 CALL SOUND(500,-5,5):: F
OR 1=1 TO 8 :: FOR C=12 TO 1
6 :: CALL COLOR(#I,C):: NEXT
c :: NEXT I :: RETURN
740 CALL WAIT :: FOR C=1 TO
4 :: call color (#c, 5):: next
c
750 FOR 1=1 TO 10 :: FOR C=i
TO 4 :: CALL COLOR(#C,11)::
CALL COLOR(#C,5):: NEXT c :
: NEXT I
760 CALL CHAR(123,"00FFFFFFF
FFFFFFF",124,"0000FFFFFFFFFF
FF",125,"000000FFFFFFFFFF",1
26,"00000000FFFFFFFF",127,"0
000000000FFFFFF",128,"000000
000000FFFF")
770 CALL CHAR(129,"000000000
00000FF",130,"")
780 P=123 :: FOR Q=1 TO 8 !l
for 1=1 to 4 :: :: call pat
tern<#i,P):: NEXT I :: p=p+i
:: next Q
790 CALL WAIT :: CALL c :: R
ETURN
800 CALL CHARSET :: CALL SCR
EEN(5):: for 1=1 to 14 :: ca
ll COLOR<i,11,1):: NEXT i ::
CALL DELSPRITE(ALL):: CALL
CLEAR
810 FOR 1=9 TO 12 :: CALL CO
LOR(I,16,9):: NEXT I
820 !
830 DISPLAY AT(2,l): n .**
INFORMATION***"
840 DISPLAY AT(6,1):"BEI DEM
NUN FOLGENDEN TEST..HANDELi
ES SICH UM EINEN....LUECKEN
TEST. "
850 DISPLAY AT(10,1):"SCHALT
EN SIE BITTE DIE KLEINSCHRIF
T EIN."
860 DISPLAY AT(14,1):"AN JED
ER LUECKE IM TEXT.ERSCHE
INT DER CURSOR."
870 DISPLAY AT(17,1):"ALS KL
EINE HILFE WEISEN DIE LUECKE
N DIE LAENGE DES.LOESUN
GSWORTES AUF."
880 DISPLAY AT(24,1):"BITTE
<eriter> DRUECKEN."
890 CALL KEY(0,K,S):: IF S=0
THEN 890
900 CALL CLEAR :: RESTORE 91
0
910 DATA i,*LUECKENTEST*,3,D
ER KONVERTER WIRD IN,5, _
_ GEBRACHT UND,7,DAS
FLUESSIGE ROHEISEN,9,MIT
_ EINGEGOSSEN.
920 DATA 11, VOM_H
ER WIRD, 13,_ODER L
UFT,15,EINGEBLASEN.
930 DATA 17,DER DURCH DAS SC
HMEL2BAD,19,STROEMENDE WIND
_,21,DEN KOHLENSTOFF
UND DIE,23,BEIMENGUNGEN.
940 DATA 24,<enter>
950 FOR 1 = 1 TO 13 :.* READ A,
a$ :: DISPLAY AT(A,1):A$ ::
NEXT I
960 Z*="-fuel lstel lung" :: AC
CEPT AT(5,1)SIZE(13)BEEP:Zl$
:: IF Zl$OZ$ THEN GOSUB 13
60 :: GOTO 960 ELSE GOSUB 13
70 :: GOTO 980
970 !
980 Zl$="kalkZusatz" :: ACCE
PT AT(9,5)SIZE(10)BEEP:Z2$ :
: IF Z2$OZl$ THEN GOSUB 136
0 :: GOTO 980 ELSE GOSUB 137
0 :: GOTO 1000
990 !
1000 Z3$="windkasten" :: ACC
EPT AT(U,5)SIZE(10)BEEP:Z4$
:: IF Z4$OZ3$ THEN GOSUB 1
360 :: GOTO 1000 ELSE GOSUB
1370 :: GOTO 1020
1010 !
1020 Z5$=" sauersto-f -f " :: ACC
EPT AT(13,1)SIZE(10)BEEP: 76 %
:: IF Z6$OZ5* THEN GOSUB 1
360 :: GOTO 1020 ELSE GOSUB
1370 :: GOTO 1040
1030 !
1040 Z7$="verbrennt" :: ACCE
PT AT(19,17)SIZE(9)BEEP:Z8$
:: IF Z8«OZ7« THEN GOSUB 13
60 :: GOTO 1040 ELSE GOSUB 1
370 :: GOTO 1060
1050 !
1060 CALL KEY(0,K,S):: IF S =
0 THEN 1060
1070 CALL CLEAR :: RESTORE 1
080
1080 DATA 1,*LUECKENTEST*,3,
DER _ VERBINDET SICH,5,MI
T DEM_IM ROHEISEN,7
,DER VERBRENNUNGSVORGANG,9,D
AUERT_MINUTEN.
1090 DATA 11,DIE TEMPERATUR
WIRD BIS AUF,13,_ C GESTE
IGERT.,15,DIE AUF DEM STAHL,
17,SCHWIMMENDE _ WIRD
1100 DATA 19,ABGESCHOEPFT.,2
1, DIE WEITERE VERARBEITUNG,2
2, ERFOLGT IM STAHLWERK DURCH
,23,_UND_.
1110 DATA 24,<enter>
1120 FOR 1=1 TO 14 :: READ A
,a$ :: DISPLAY AT<A,l>:A$ ::
NEXT I
1130 W$="kalk" :: ACCEPT AT(
3,5)SiZE(4)BEEP:wi$ :: if wi
*<>W$ THEN GOSUB 1360 :: GOT
0 1130 ELSE GOSUB 1370 :: GO
TO 1150
1140 !
1150 W2$="phosphor" :: ACCEP
T AT(5,9)SIZE(8)BEEP:W3$ ::
IF W3$OW2* THEN GOSUB 1360
:: GOTO 1150 ELSE GOSUB 1370
:: goto 1170
1160 !
1170 W4$="15-20" :: ACCEPT A
T (9,8) SIZE (5) BEEP-I W5$ :: IF
W5*OW4* THEN GOSUB 1360 ::
GOTO 1170 ELSE GOSUB 1370 ::
GOTO 1180
1180 W6$="1600” :: ACCEPT AT
<13, dsize(4)beep:W7$ :: if
W7*OW6* THEN GOSUB 1360 ::
GOTO 1180 ELSE GOSUB 1370 ::
GOTO 1200
1190 !
1200 W8$="schlacke" :: ACCEP
T AT(17,13)SIZE(8)BEEP:W9$ :
: IF W9*OW8$ THEN GOSUB 136
0 :: GOTO 1200 ELSE GOSUB 13
70 :: GOTO 1220
1210 !
1220 W10$="giessen" :: ACCEP
T AT(23, 1)SIZE(7)BEEP:Wi 1$ :
: IF W11*OW10* THEN GOSUB 1
360 :: GOTO 1220 ELSE GOSUB
1370 :: GOTO 1240
1230 !
1240 Wi2$="walzen" :: ACCEPT
AT(23,13)SIZE(6)BEEP:W13$ :
: IF W13*OW12* THEN GOSUB 1
360 :: GOTO 1240 ELSE GOSUB
1370 :: GOTO 1260
1250 !
1260 CALL CLEAR
1270 DISPLAY AT <4,2) : "DER TE
ST IST BESTANDEN.
.DAS TH
OMA.S-VERFAHREN DUERFTE.
1280 CALL SAY <"THE WORK IS C
OMPLETED")
1290 DISPLAY AT(9,1):"KEIN P
ROBLEM MEHR SEIN."
1300 CALL SAY("THERE IS NO #
PROBLEM# ANY MORE")
1310 DISPLAY AT(12,2):"WOLLE
N SIE TROTZDEM.
.WIEDE
RHOLEN ?"
1320 DISPLAY AT(16,2):"<1>=<
J>. . . ..
. ..< 2 > = <
N >"
1330 CALL SAY("FOR TO #TRY A
GAIN# PRESS ONE"):: CALL SAY
("FOR TO STOP PROGRAM PRESS
TWO " )
1340 CALL KEY <1,K,S):: IF S=
0 THEN CALL SOUND(1,440,10):
: GOTO 1340
1350 IF K=19 THEN RUN ELSE C
ALL CLEAR :: CALL SAYCGOODB
YE"):: END
1360 CALL SAY("UHOH #THAT IS
INCORRECT#")I: RETURN
1370 CALL SAY("#THAT IS RIGH
T#"):: RETURN
1380 RESTORE 1390 :: CALL CL
EAR :: DISPLAY AT < 122,9) : "bi t
te warten"
1390 DATA 0000000000000102,0
00F10204F902040,00FF0000FE01
,0000904020108844,0109122448
909090,80,0000000000000000,2
211090909090909
1400 DATA 9090909090909090,0
000000000000000,000000000000
0000,0909090909090909,909090
884423110A,0000000000FF,0000
000000FF,0909090912E44828
1410 DATA 0A0A0A0A0A0A0A1F,0
0000000000000FF,000000000000
00FF,28282828282828FC
1420 FOR 1=60 TO 80 :: READ
• •
A$ :: CALL CHAR(I,A$):: NEXT
I
1430 !EISENBAD
1440 DATA 0F0F0F0F0F0F0F0F,F
FFFFFFFFFFFFFFF, FFFFFFFFFFFF
FFFF,F0F0F0F0F0F0F0F0,070300
,FFFF00,FFFF,E0C0
1450 CALL CHAR(92,"00081C3E0
80808")
1460 RESTORE 1440 :: FOR 1=8
4 TO 91 :: READ A$ :: CALL c
HAR(I,A$):: NEXT I
1470 CALL CLfAR :: RETURN
1480 SUB -WAIT
1490 FOR 1=0 TO 15 STEP 3 ::
CALL SOUND<-10,110, 1,111,1,
H2,i):: next i :: Display a
T(24,i):"" :: Display at<24,
1 ) : "..
nter" . .
1500 CALL KEY(0,K,S):: CALL
SOUND(-1,110,15)
1510 IF S=0 THEN 1500
1520 SUBEXIT
1530 SUBEND
1540 SUB C
1550 FOR 1=6 TO 1 STEP -1 ::
DISPLAY AT(1, 1) :"" :: NEXT
I :: SUBEND
10
i
**********************
11
;
*
STATIK
*
12
;
*
Schwerpunkte und
*
13
;
*
Traegheitsmomente
*
14
j
*
*
15
i
*
Copyright by
*
16
;
*
*
17
i
*
Rudolph Trumbach
*
18
i
*
*
19
;
*
Benoetigte Geraete
‘*
20
i
*
TI99/4A Konsole
*
21
i
*
Ext. Basic
*
22
i
*
*
26
i
*
Speicherbelegung
*
27
;
*
1898 Bytes
*
28
i
*
*
29
i
**********************
100 CALL CLEAR :: CALL SCREE
N(4):: FOR 1=1 TO 12 :: CALL
COLOR(1,2,4):: NEXT I
110 CALL HCHAR(23,4,42,26)::
PRINT :: PRINT ".S
t a t i K": : :: Display bee
<>
p
120 PRINT " BERECHNUNG VON S
CHWERPUNKT.UND FLAECHEN
MOMENTEN": : : :: CALL HCHAR
(23,4,42,26)
130 print drueck
E IRGENDEINE TASTE >"
140 CALL KEY(0,KK,S):: IF S=
0 THEN 140 :: CALL CLEAR
150 CALL CHAR(37,"E020E080E"
,38,"2040F0202")
160 GESA,YS,2S,GJY,GJZ,GJYZ=
0
170 INPUT "ANZAHL DER FLAECH
EN:":anz :: call clear
180 !
190 ! WENN ANZAHL >10 => DIM(
ANZ)
200 !
210 FOR 1=1 TO ANZ
220 PRINT "ZUR"Jli". FLAECHE
": :"***********************
*****'•: : :
230 INPUT "FLAECHENGROESSE:"
:A(i):: print
240 INPUT
"Y-KOORDINATE
Ccm]
:": Y (I)::
PRINT
250 INPUT
"Z-KOORDINATE
Ccm]
:": z ( I)::
PRINT
260 INPUT
"ly (EIGEN)..
C cm&]
:":JY(I)::
PRINT
270 INPUT
" I z.
C cmß<]
:":JZ(I)::
PRINT
280 INPUT
" Iyz.
C cmßc]
:":JYZ(l):
: PRINT
290 CALL CLEAR :: NEXT I :I
PRINT "ERGEBNISSE:": .-"*****
************************* : :
FOR 1=1 TO 200 :: NEXT I
300 !
310 ! GESAMTFLAECHE
320 !
330 FOR 1=1 TO ANZ :: GESA=G
ESA+A(I):: NEXT I
340 !
350 ! SCHWERPUNKTKOORDINATEN
360 !
370 FOR 1=1 TO ANZ :: YS=YS+
<Y(I)*A(I))/GESA :: ZS=ZS+(Z
(I)*A(I))/GESA :: NEXT I
380 !
390 ! TRAEGHEITSMOMENTE
400 ! (SATZ VON STEINER)
410 !
420 FOR 1=1 TO ANZ
430 GJY=GJY+JY(I)+(Z(I)-ZS) A
2*A(I)
440 GJZ=GJZ+JZ(I)+(Y(I)- YS) A
2*A(I)
450 GJYZ=GJYZ+JYZ(I)+(Y(I)-Y
S)*(Z(I)-ZS)*A(I)
460 NEXT I
470 !
480 ! HAUPTFLAECHENMOMENTE
490 !
500 JMAX=(GJY+GJZ)/2 +(((GJY-
GJZ)/2) A 2+GJYZ A 2) A .5
510 JMIN=(GJY+GJZ)/2-<<(GJY-
GJZ)/2) A 2+GJYZ A 2) A .5
520 !
530 ! HAUPTACHSEN
540 !
550 WI=-2*GJYZ/(GJY-GJZ):: W
1= <ATN(WI)*57.295779513079)/
2
560 CALL CLEAR :: FOR 1=1 TO
30 STEP 3 :: CALL SOUND<-10
0,1000,1,1010,1,990,1):: NEX
T I
570 PRINT "> GES.-FLAECHE ="
;GESA;"Ccm%3": :
580 PRINT "> SCHWERPUNKT (Y;
Z) «: : : "..Y="j YS: : : "..Z="
5zs: : :
590 PRINT "> ly...="5GJYJ"Cc
mtcl”: :
600 PRINT "> Iz...="JGJZS"Cc
mßci": :
610 PRINT "> lyz.. =";GJYZ 5"C
cm&3": : :
620 PRINT "> I-MAX. .="5 JMAX J
"Ccm6<3": :
630 PRINT "> I-MIN..="iJMIN;
"c cm&3": :
640 PRINT "> WINKEL ="iWIi"G
RAD"
650 CALL KEY(0,K,S):: IF S=0
THEN 650
660 CALL CLEAR :: END
Haben Sie
ein
gutes
Programm?
Wir
kaufen es!
10
! **********************
11
! *
*
12
! *
SOUND-WRITER
*
13
• *
*
*
14
! *
Copyright by
*
15
! *
*
16
! *
Georg Sommerau
*
17
! *
*
19
! *
Benoetigte Geraete
*
20
! *
TI99/4A Konsole
*
21
! *
Ext. Basic
*
22
! *
Di sk-Lau-f w.
*
23
! *
*
26
! *
Speicherbe 1egung
*
27
! *
3167 Bytes
*
28
! *
*
29
! **********************
100 CAL
.L CLEAR :: CALL SCREE
N <
2) : :
FOR w=0 TO 12 :: CALL
COLOR(Wj16,2):; NEXT W
110 CALL CHAR(45,"FF",35,"04
0605041C3C3C18"): : .CALL MAGN
IFY(2):; FOR L=1 TO 5
120 CALL HCHAR<5+W,7,45,17):
: NEXT W
130 FOR W-l TO 5 :: CALL SPR
ITE(#W,35,6+W,70-W*8,W*20+40
):: CALL SOUND(400,W*10+110,
3):: NEXT W
140 DISPLAY AT (15, 1 ) : ,; ** S 0
U N D W R I T E R **"
150 DISPLAY AT(18,14):"EY":
: : ».GEORG SOMMERAU "
160 DISPLAY AT<23,10):"(c) 1
935"
170 FOR W=1 TO 1000 :: NEXT
W
180 CALL CLEAR : *. CALL DELSP
RITE(ALL)
190 DISPLAY AT'2,1):"** S 0
UNDWRITER **"
200 DISPLAY AT(5,5);"EIN SOU
ND GENERATOR"
210 DISPLAY AT(3,1):"Mit die
sein Programm koenneri": : "Sie
ein CALL SOUND Programm": :
"im Merge Format generieren"
: : : : :"Druecken Sie eine
Taste"
220 CALL KEY(0, W,S):: IF S=0
THEN 220
230 CALL HCHAR<7, 1,32,544) .
240 DISPLAY AT<8,1):"TASTENF
UNKTIONEN...:"
250 DISPLAY AT<10,1):"Sie we
rden mit Menus": :"durchs Pr
ogramm ge-fuehrt .": :"Mit <S
PACE> hoeren Sie das": :"ber
eits geschriebene ."
260 DISPLAY AT<18,1):"Mit <B
AK
ACK> koennen Sie neu": : "an-f
angen : :"bitte Taste dr
uecken" :: CALL k'EY(0,W,S)::
IF S=0 THEN 260
270 CALL HCHAR(7,1,32,544)
280 DISPLAY AT(3,1):"Mit <PR
GC’D> wird das": :"Programm
auf DSK1. generiert": : :"Mi
t <REDO> koennen Sie einen":
:"Tan im Datenfeld zurueck_
": : "gehen. "
290 DISPLAY AT(20,1):"Mit <A
ID> koennen Sie": :"beliebig
springen.": :"bitte taste d
r-uecken" :: -CALL KEY(0,W,S):
: IF S=0>HEN 290
300 CALL HCHAR(7,1,32,576)
310 DISPLAY AT(10,5):"ALLES
KLAR ?...J" :: ACCEPT AT(10,
20)VAL I DATE("JN")SIZE(-1):1$
320 IF IS="N" THEN 230
330 CALL CLEAR
340 DIM D(500),T(500)
350 2=0
360 CALL HCHAR(15,1,32,290)I
: DISPLAY AT(1,5):"NR. " ; Z
370 ON WARNING NEXT :: ON ER
ROR 360 :: GOTO 390
380 GOTO 360
390 DISPLAY AT(5,5):"DAUER>.
....400" :: ACCEPT AT(5,16)S
IZE(-5)DEEP:D(Z)
400 DISPLAY AT(8,5):"TON..>"
:: ACCEPT AT(8,16)BEEP:T(2)
410 CALL SOUND(D(Z),T(2),0)
420 Z=Z+1
430 DISPLAY AT(13,1):"<ENTER
> WEITERE EINGABE"
440 DISPLAY AT(15,1):"<SPACE
> SPIELT MELODIE " \
450 DISPLAY AT(17,1):"<BACK>
..NEUES LIED ANFÄNGEN"
460 DISPLAY AT(19,1):"<PROC *
D >GENERIERT PROGRAMM"
470 DISPLAY AT(21,1):"<REDO>
..KORREKTUR LETZTE NR." *
480 DISPLAY AT(23,1):"<AID>.
..ZU TON >...< ZURUECK"
490 CALL KEY <0,K,S):: IF S=0
THEN 490
500 IF K=6 THEN Z=Z-1 :: GOT
0 360
510 IF K=1 THEN ACCEPT AT(23
,17)SIZE(3)VALIDATE(DIGIT)BE
EP:w :: z=w :: GOTO 360
520 IF K=32 THEN 560
530 IF K=15 THEN 580
540 IF K=12 THEN 600
550 GOTO 360
560 ! SPIELEN
570 FOR Zi=0 TO Z-l :: CALL
SOUND(D(Zi),T(ZI),0):: DISPL
AY AT(1,20):"SNR."J ZI :: NEX
T 21 :: GOTO 440
580 DISPLAY AT(20,1)ERASE AL
L:"LIED WIRD GELOESCHT": :"M
OMENT BITTE "
590 FOR A=0 TO Z-l :: T(A),D
(A)=0 :: NEXT A :: GOTO 350
600 !**CALL SOUND GENERATOR
610 CALL CLEAR
620 DISPLAY AT(15,3):"BITTE
GEBEN SIE PROGRAMMNAME": :"E
IN >> "
630 ACCEPT AT(18,10):W$
640 ON ERROR 760
650 OPEN #1:"DSK1."&WS,VARIA
ELE 163
660 DEF ZEIS(X)=CHR$(INT(X/2
56))kCHRS(X-INT(X/256)*256)
670 ZN=10 :: NULS=CHRS(0)
680 PRINT #1 :2EIS(ZN)ScCHRS(l
3i)k”*MIT SOUNDWRITER ERST.*
"kNULS
690 FOR V=0 TO Z-2
700 ZN=2N+1
710 PRINT #i:ZEIS(ZN) ßcCHRS (1
57 ) kCHRS ( 200) &CHR* (5 ) &" SOUND
" &CHRS (183) &CHRS ( 200) kCHRS (L
EN (STRS (D (V) ) ) )
720 PRINT #l:STR$(D(V))&CHR$
(179) &CHRS ( 200) (kCHRS (LEN (STR
S(T(V) ) ) ) &STRS ( T ( V) ) ßcCHRS (17
9) ftcCHRS (200) &CHRS (1) lc " 5" 8<CHR
$(182)&NULS
730 NEXT V
740 PRINT # 1: CHRS (255) ßcCHRS (
255):: CLOSE #1
750 CALL CLEAR :: DISPLAY AT
(10,1):"PROGRAMM WURDE IM ME
RGE.FORMAT AUF DSK1."8<W$
:"ABGEPEICHSRT." :: END
760 DISPLAY AT(15,2)I"ES IST
EIN FEHLER ENTSTANDEN":. : "B
ITTE KORRIGIEREN !!": I I"WE
ITER MIT ENTER "
770 CALL KEY(0,ß,R):: IF R=0
OR 0013 THEN 770
780 GOTO 610
Die nächste
TI REVUE
am
28 . 2.1986
A~r
10 REM********************
11 REM* DIVISION *
12 REM* *
13 REM* Copyright by *
14 REM* *
13 REM* Jan Kuenen *
16 REM* *
17 REM*Benoetigte Geraete*
18 REM* TI99/4A Konsole *
19 REM* *
23 REM* Speicherbelegung *
24 REM* 2565 Bytes *
25 REM********************
26 REM
100 CALL CLEAR
110 CALL SCREEN(15)
120 PRINT "*****************
***********": :
130 PRINT TABUl) i "DIVISION"
140 PRINT "*****************
***********": :
150 PRINT "MIT DIESEM PROGRA
MM KANN MAN":"EINE DIVISION
AUF DEM BILD-":"SCHIRM SICHT
BAR MACHEN.": :
160 PRINT "AUCH DEZIMALE ZAH
LEN WERDEN AKZEPTIERT.": :"G
EBEN SIE ZUERST DEN DIVISOR"
170 PRINT "UND DANN DIE TEIL
UNGSZAHI_ein.": :
180 PRINT "DRUECKEN SIE BITT
E EINE":"BELIEBIGE TASTE.":
190 PRINT --
_ _ II • •
— — — — — — — — | t
200 CALL KEY(0, K, S)
210 IF S=0 THEN 200
220 CALL CHAR(128,"000000FF"
)
230 CALL CLEAR
240 INPUT "DIVISOR: ":A
• 250 IF A=0 THEN 230
260 PRINT
270 Ai$=STR$(A)
280 IF LEN(Al$)>10 THEN 230
290 IF SEG$(A1$,1,1)<>"." TH
EN 310
300 A1$="0"&A1*
310 PRINT
320 INPUT "TEILUNGSZAHL: ":B
330 GD$=STR*(B/A)
340 FOR 1 = 1 TO LEN <GD$)
350 IF SEG$(GD$,I,1)="E" THE
N 230
360 NEXT I
370 B1$=STR$ i B)
380 IF LEN(B1$)>10 THEN 230
390 IF LEN < Al$8cBl$) >11 THEN
230
400 IF SEG$(Bl$,1,1)<>". " TH
EN 420
410 Bl$="0"&c:Bl$
420 CALL CLEAR
430 IF A=INT < A)THEN 470
440 L=LEN(STR$ <A-INT(A)))-1
450 A=A*10"L
460 B=B*10^L
470 IF A>B THEN 700
480 GOSUB 510
490 IF B< >INT(B)THEN 650
500 IF A$=A1$ THEN 970 ELSE
870
510 C$=STR$(INT(B/A))
520 A$=STR$(A)
530 B$=STR$(B)
540 RETURN
550 C$=STR$(B/A)
560 P=i
570 P=P+1
580 IF SEG$(C$,P,1)="0" THEN
570
590 C*="0"&SEG$<C*,1,P+1>
600 A$=STR$(A)
610 B$=STR$(B)
620 Q$=STR$(10^P)
630 Q$=SEG$(Q$,2,P)
640 RETURN
650 L=LEN(STR$(B-INT(B)))
660 P=LEN(C$)
670 Q$=STR$(B/A)
680 C$=SEG$<Q$,1,P+L)
690 IF A$=Ai$ THEN 970 ELSE
870
700 GOSUB 550
710 IF <B<>INT(B))+(B<1)THEN
740
720 B$=B$&" .
730 GOTO 870
740 IF B<1 THEN 850
750 B$=B$&<Q$
760 M=LEN(STR$(B-INT(B)))-1
770 L=LEN(STR$(INT(B)))+i
780 IF M<P THEN 830
790 P=M
800 C$=STR$<B/A)
810 C$=SEG$(C$,1, P + l)
820 C$="0"&C$
830 B4=SEG$(B$, 1,P+L)
840 GOTO 870
850 B$="0"&B$&Q$
860 B$=SEG$(B$,1,P+2>
870 PRINT TAB(6)J Al$j"/"J Bl$
. " \ "
880 L=LEN(A$kB$kC*)+2
890 P=LEN(A1$&B1$&C$)+2
900 IF P<=L THEN 920
910 L=P
920 PRINT TAB(6);
930 FOR P=1 TO L
48
940 PRINT ""j
950 NEXT P
960 PRINT
970 PRINT TAB (6) i A$i B$J "
\ " f C$
980 AL=LEN(A$)+7
990 CL=LEN(C$)
1000 P=1
1010 IF SEG$(C$,1,1)<>"0" TH
EN 1060
1020 P=P+1
1030 P = P + 1
1040 IF SEG$(C$,P,1)<>"0" TH
EN 1060
1050 GOTO 1030
1060 Q$=SEG$(C$,P, 1)
1070 G=VAL(Q$)
1080 G=Q*A
1090 L=1
1100 Bi$=SEG$(B$,L,1)
1110 B1=VAL(B1$)
1120 IF Q< =B1 THEN 1190
1130 L=L+1
1140 B2$=SEG$(B$,L,1)
1150 IF 32$="." THEN 1130
1160 Bi$=Bi$&B2$
1170 Bl=VAL(Bi$)
1180 IF Q>B1 THEN 1130
1190 Q$=STR$(Q)
1200 PRINT TAB(AL+L-LEN<Q$))
; Q$
1210 PRINT TAB(AL+L-LEN(Bi$)
) J
1220 FOR 1=1 TO LEN(Bi$)
1230 PRINT ""J
1240 NEXT I
1250 PRINT
1260 AF=B1 -*Q
1270 AF$=STR$(AF)
1280 IF CL>P THEN 1310
1290 PRINT TAB(AL+L-LEN(AF$)
) ? AF$
1300 GOTO 1430
1310 L=L+1
1320 B2$=SEG$(B$,L,1)
1330 IF B2$="." THEN 1310
1340 B1$=AF$8«B2$
1350 B1=VAL(B1$)
1360 PRINT TAB(AL+L-LEN(Bl$)
) ;Bi$
1370 P=P + i
1380 Q$=SEG$(C$,P,1)
1390 IF 0$="." THEN 1370
1400 Q=VAL (Q$)
1410 Q=Q*A
1420 GOTO 1190
1430 CALL KEY(0,K, S)
1440 IF S=0 THEN 1430
1450 GOTO 230
10 REM********************
11 REH* MORSEPROGRAMM *
12 REM* *
13 REM* Copyright by *
14 REM* *
15 REM* Jan Kuenen *
16 REM* *
17 REM*Benoetigte Geraete*
18 REM* TI99/4A Konsole *
19 REM* *
23 REM* Speicherbelegung *
24 REM* 5508 Bytes *
25 REM********************
26 REM
100 DIM D (42,5),F(42) ,K$(10)
,B$(43),Z$(43)
110 G'OSUB 1960
120 CALL CLEAR
130 PRINT LN$: :"SOLLEN DIE
ZEICHEN AUF DEM..BILDSCHIRM
GEZEIGT WERDEN?": :"<J-N>":
:LN$: :
140 CALL KEY(0,KW,ST)
150 IF (KW< >74)*(KW< >78)THEN
140
160 CALL CLEAR
170 PRINT LN$: :TAB(7)5"GESC
HWINDIGKEIT":TAB(7)]"-
II • •
• •
lß0 PRINT "WAHL AUS 5 GESCHW
IN'DIGKEITEN" : : " 1 . SCHNELL":
:"5.LANGSAM": :LN$: :
190 CALL HCHAR(23,1,32,32)
200 PRINT "WAHL:"
210 CALL KEY <0,KEY,ST)
220 IF ST=0 THEN 210
230 S=KEY-4S
240 IF (S<1)+(S>5)THEN 190 .
250 CALL CLEAR
260 PRINT LN$: :TAB(13)i"MEN
u": :LN$: :
270 FOR 1=1 TO 7
280 PRINT K$(I): :
290. NEXT I
300 PRINT LN$: :K$(0>
310 CALL KEY(0,K,ST)
320 IF 3T=0 THEN 310
330 IF K=83 THEN 120
340 IF (K<49)+(K>55)THEN 310
350 K=K-48
360 CK=KW
370 SP=S*35+10
380 IF (CK=78) + (K>4)THEN 400
390 SP=S*35
400 IF K<5 THEN 420
410 CK=78
420 CALL CLEAR
430 PRINT LN$: :
440 PRINT K$(K): :
450 PRINT LN$: :
»
49
460 ON K GOTO 800,1110,1630,
1160,1610,1610,1700
470 REM AUSFUEHRUNGSROUTINE
480 IF A0-16 THEN 530
490 CALL SOUND(3#$P,T2,30)
500 IF CK=78-THEN ; 620
510 PRINT : :
520 GOTO 620
530 FOR J=1 TO F(A)
540 IF CK=78 THEN 560
550 PRINT CHR$(D<A,J)+127)j
560 CALL SOUND(D(A,J)*SP,T1,
0 )
570 CALL SOUND(SP,T2,30)
580 NEXT J
590 IF CK=78 THEN 610
600 PRINT "
6i0 CALL SOUND<2*SP,T2,30)
620 RETURN
630 REM EINGABE TESTEN
640 GD-0
650 IF LEN(A$)<42 THEN 690
660 PRINT "MEHR ALS 42 2EICH
EN": :
670 GD=1
680 GOTO 790
690 FOR 1 = 1 TO LEN < A$)
700 B$(I)=SEG$(A$,1,1)
710 AS=ASC(B$(I))-48
720 IF AS=-16 THEN 780
730 IF (AS<0)+(AS>42)THEN 75
0
740 IF <AS<10) + <AS>16)THEN 7
80
750 PRINT "NUR BUCHSTABEN OD
ER ZIFFERN": :
760 GD=i
770 I=LEN(A$)
780 NEXT I
790 RETURN
800 PRINT "SIE HoREN EIN ZEI
CHEN.": :"GEBEN SIE DAS ZEIC
HEN EIN. :
810 PRINT "DAS PROGRAMM KANN
GESTOPPT..WERDEN MIT <ENTER
>.": : :
820 PRINT "SIND SIE SOWEIT,D
ANN DIE....LEERTASTE DRUCKEN
,BITTE.": :ln$: :
830 CALL KEY(0,KL,ST)
840 IF KL<>32 THEN 830
850 CALL CLEAR
860 print ln$: :k*(10): :
870 A=INT(RND*43>
880 IF <A>9)*(A<17)THEN 870
890 FOR W=1 TO 500
900 NEXT W
910 H=0
920 GOSUB 480
930 PRINT : :"WELCHES ZEICHE
N? :";
940 CALL KEY(0,KK,ST)
950 IF ST=0 THEN 940
960 IF KK=13 THEN 250
970 PRINT CHR$(KK)
980 PRINT
990 IF CHR$(A+48)= CHR$(KK)TH
EN 1070
1000 H=H+1
1010 !*=■ H=3 THEN 1040
1020 PRINT "FALSCH! NOCH EIN
MAL, " : :
1030 GOTO 920
1040 PRINT "ES WAR EINE :";C
HR$(A + 48): :
1050 PRINT ln$: :
1060 GOTO 870
1070 PRINT "DAS WAR RICHTIG.
n. •
1080 PRINT lns: :
1090 GOTO 870
1100 CALL HCHAR(23,1,32,32)
1110 INPUT "WIEVIELE ZEICHEN
?: ".‘ZT
1120 IF ZT>42 THEN 1100
1130 CALL CLEAR
1140 PRINT : ;
1150 GOTO 1290
1160 PRINT "WELCHE ZEICHEN M
ACHEN MIT?:": :
1170 INPUT "":A$
1180 PRINT
1190 GOSUB 640
1200 IF GB=1 T HEN 1170
1210 PRINT
1220 FOR 1=1 TO LEN(A$)•
1230 B*(I)=SEG$(A$, I, 1)
1240 NEXT I
1250 CALL HCHAR(22,1,32,32)
1260 INPUT "WIEVIELE ZEICHEN
ZUGLEICH:":ZT
1270 IF ZT>42 THEN 1250
1280 PRINT
1290 PRINT LN$: :K$<10): :
1300 FOR W=i TO 800'
1310 -NEXT W
1320 H$=""
1330 FOR 1=1 TO ZT
1340 IF K< >4 THEN 1380
1350 X=INT(RND*LEN(A$))+l
1360 A=ASC(B*(X))-48
1370 GOTO 1400
1380 A=INT(RND*43)
1390 IF (A>9>#(A<17)THEN 138
0
1400 GOSUB 480
1410 IF INT <1/5)01/5 THEN 1
440
1420 IF CK=78 THEN 1440
1430 PRINT : :
50
1440 Z*(I)=CHR$(A+4S)
1450 H$=H$8<Z$(I)
1460 NEXT I
1470 PRINT : :
1480 INPUT "WAS HABEN SIE GE
HcRT?:": T $
1490 PRINT : :
1500 IP T$=H$ THEN 1530
1510 PRINT "FALSCH! ES WAR :
"; : :
1520 GOTO 1540
1530 PRINT “DAS WAR RICHTIG.
ii • •
1540 PRINT :LN$: :"W=WIEDERH
ÖLEN..M=MENu"
1550 CALL' KEY (0, KEY, ST)
1560 IF ST=0 THEN 1550
1570 IF KEY=87 THEN 1590
1580 IP KEY< >77 THEN 1550 EL
3E 250
1590 CALL HCHAR<23,1,32,32)
1600 GN K GOTO 870,1300,1630
,1300,1610,1610,1300
1610 A$=K$(K + 3)
1620 GOTO 1770
1630 PRINT "WELCHEN SATZ NoC
UTEN SIE....HüREN? <MAX. 42
ZEICHEN >": :
1640 INPUT "SATZ: " : A$
1650 PRINT
1660 GOSUB 640
1670 IF GD=1 THEN 1640
1680 PRINT
1690 GOTO 1770
1700 INPUT "WELCHES RUFZEICH
EN? : ":A$
1710 PRINT
1720 GOSUB 640
1730 IF GD=1 THEN 1700
1740 INPUT "NACH WIEVIEL MIN
UTEN SOLL ESWIEDERHOLT WERDE
N?:":MIN
1750 PRINT
1760 PRINT LN$: :"LEERTASTE=
ENDE"
1770 FOR 1=1 TO LEN(A$)
1780 A=ASC(SEG$(A$,I,1))-48
1790 GOSUB 480
1800 NEXT I
1810 IF K< >3 THEN 1880
1820 PRINT : :"NOCH EINMAL?
< J - N > "
1830 CALL KEY(0,KK,ST)
1840 IF KK=78 THEN 1540
1850 IF KK<>74 THEN 1830
1860 CALL HCHAR(23,1,32,32)
1870 GOTO 1770
1880 IF K=7 THEN 1910
1890 CALL CLEAR
1900 GOTO 260
1910 FOR W=1 TO 1120£MIN
1920,CALL KEY(0,KJ,ST)
1930 IF KJ=32 THEN 250 '
1940 NEXT W
1950 GOTO 1770
1960 CALL CLEAR
1970 CALL SCREEN(15)
1980 PRINT TAB(S)j"MÜRSEPROG
RAMM".:
1990 CALL CHAR(97,"002800384
4704*344" )
2000 CALL CHAR(111,"002S007C
44 44447C")
2010 CALL CHAR(117,"00280044
44444433")
2020 CALL CHAR (1*20, "FF00FF00
FF00FF")
2030 CALL CHAR(128,"00000010
1 " )
2040 CALL CHAR(130,"0000007C
7C")
2050 CALL COLOR(13,2,16)
2060 RANDOMIZE
2070 FOR 1=0 TO 42
2080 READ F(I)
2090 FOR J=i TO F(1)
2100 READ D(I,J)
2110 NEXT J
2120 NEXT I
2130 LN$="xxxxxxxxxxxxxxxxxx
xxxxxxxxxx"
2140 CALL COLOR(12,6,8)
2150 K$(0)="3=GESCHWINDIGKEI
T ÄNDERN"
2160 K$(1)="1.EIN BELIEBIGES
ZEICHEN"
2170 K$(2)="2.MEHRERE BELIEB
IGE ZEICHEN"
2180 K*<3)="3.EINGEGEBENE Sa
TZE MORSEN"
2190 K$(4)="4.MORSELEHRGANG"
2200 K$(5)="5.EIGENES RUFZEI
CHEN"
2210 K$(6) ="6.QTH-LOKATQR"
2220 K$<7)="7.RUFZEICHENGENE
RATOR"
2230 (8)="PE1GNP"
2240 K$(9)="J031IX"
2250 K$<10)="PASSEN SIE AUF!
ES FaNGT AN. " *
2260 TI=1000
2270 T2=20000
2280 RETURN
2290 DATA 5,3,3,3,3,3,5, 1,3,
3,3,3,5, 1, 1,3,3,3
2300 DATA 5,1,1,1,3,3,5,1,1,
1.1.3.5.1.1.1.1.1.5.3.1.1.1,
1
2310 DATA 5,3,3, 1, 1, 1,5,3,3,
3.1, 1,5,3,3,3,3, 1
2320 DATA 1,1, 1,1,1,1,1,1,1,
Sfr
51
SERIE
1j1»1»1»1»2,1,3,4,3,1,1,1,4,
2350 DATA 3,3,3,3,4,1,3,3,1,
3, 1,3, 1
4,3,3,1,3,3,1,3,1,3^1,1,1
2330 DATA 3,3,1,1,1,1,4,1,i ,
2360 DATA 1,3,3,1,i,3,4,1,1,
3,1,3,3,3,1,4,1,1,1,1,251,1
1,3,3,1,3,3,4,3,1,1,3
2370 DATA 4 ,3,1,3,3, 4 ,3,3,1,
2340 DATA 4,1,3,3,3,3,3,1,3,
1
4,1,3,1,1,2,3,3,2,3,1
Assembler leicht gemacht
Im letzten Heft hatten wir uns mit einigen Hilfsroutinen,
die jedes Modul zur Verfügung stellt, welches Maschinensprache auf dem
TI 99/4A möglich macht, beschäftigt. Da sind noch einige übrig
geblieben, so daß wir heute noch bei dieser Thematik bleiben.
*
L i s t i n 0 1 :
PFF
GPLLNK ■¥■ Fuer Assembler u. MM
*
Fuer X-Ba«
ic muss GPLLNK engeh^ not
*
werden
*
Accept-Tnne:
BL UP
i?GPLLMK
DATA
"Ki 03 4
*
Bad-Tone:
BLL'P
PGPL1. NK
DATA
>0036
Zuerst wollen wir uns mit GPLLNK
und DSRLNK beschäftigen. Diese
beiden Routinen fehlen beim Ex-
tended Basic Modul.
Mittlerweile gibt es aber einige Ver¬
öffentlichungen über diese Hilfen
auch bei Extended Basic, so sind
auch Beispiele dafür in unserem
Assembler-Sonderheft enthalten.
Wollen wir diese Routinen also in
einem Assembler-Programm für Ex¬
tended Basic nutzen, so müssen wir
diese einfach an den Schluß des
Programms (oder Anfang) anhängen
und können sie dann genauso wie
beim Assembler-Modul oder beim
Mini-Memory aufrufen.
GPLLNK ist in seiner Wirkung und
der Handhabung dem XMLLNK
sehr ähnlich. Im Gegensatz zu
XMLLNK, welches Routinen aus
dem ROM aufruft, können mit
GPLLNK Routinen, die in den
GROM’s der Konsole bzw. des ein-
gesteckten Moduls enthalten sind,
abgearbeitet werden. Hier stehen in
der Konsole diverse mathematische
Funktionen für Fließkommazahlen
und Routinen zum Laden der Zei¬
chensätze, sowie zur Ausgabe von
Tönen zur Verfügung. Ein Beispiel
für die Benutzung der Routinen zum
Laden der Zeichensätze in den VDP
hatten wir schon im Heft 9/85. Die
Benutzung der im Betriebssystem
vorhandenen Routinen für “Beep“
und “Onk“, die Töne für richtige
und falsche Eingabe, finden Sie in
Listing 1.
Das geht doch wirklich einfach und
kann in jedes Assembler-Programm
eingebunden werden, ohne großes
Programmieren von Soundlisten.
Eigentlich ist es doch auch nicht
einzusehen, warum nicht auch in
Assembler-Programmen der Benut¬
zer akustisch auf richtige und fal¬
sche Eingaben oder das Ende des
Programms u.ä. hingewiesen wird.
Bei den Ton-Routinen muß hier
noch angemerkt werden, daß es
einige Vorschläge für GPLLNK un¬
ter Extended Basic gibt, die hier nur
einmal richtig funktionieren.Dazu
gehört auch das Listing, welches
TI/USA auf Anforderung verschick¬
te. Die in unserem Assembler-Son¬
derheft ab ged ruckte Version arbei¬
tet einwandfrei.
Kommen wir nun zum DSRLNK,
und hier wird es etwas komplizier¬
ter. DSRLNK in seiner ursprüng¬
lichen Form, wie es im Betriebs¬
system des TI 99/4A enthalten ist,,
ist wohl der eigentliche Schlüssel
des gesamten Betriebssystems.
Darüber werden alle Haupt-Pro¬
gramme, Unterprogramme (auch
die Basic-CALL’s) und die Be¬
triebssysteme der Peripheriegeräte
wie z.B. Disk-Controller aufgeru-
fen. Das DSRLNK für Assembler
ist dagegen etwas ab gemagert. Es er¬
laubt nur den Zugriff auf die Peri¬
pheriegeräte. Damit kann über die¬
se Routine nicht auf den Kassetten¬
rekorder zugegriffen werden. Das
muß über GPLLNK erfolgen, wie
es im Editor-Assembler-Handbuch
und auch schon in der TI-REVUE
kurz beschrieben wurde.
Um nun ein DSRLNK ausführen zu
können, benötigen wir zuerst ein
sogenannten PAB (Peripheral
Access Block, was soviel heißt wie
Zugriffs-Block für die Peripherie¬
geräte). Dieser muß wie folgt auf¬
gebaut werden:
1. Byte: I/O Opcode (legt die Funk¬
tion fest) im Einzelnen:
> 01 OPEN
> 02 CLOSE
> 03 READ
> 04 WRITE
> 04 RESTORE
> 05 LOAD
> 06 SAVE
> 07 DELETE
> 08 SCRATCH RECORD
> 09 STATUS
OPEN, CLOSE, RESTORE, SAVE
Fortsetzung auf Seite 54
52
SERIE
* Listing 2:
* PAB fuer Display-Variable 80 Datei
PABVAP BYTE
BYTE
DATA
BYTE
BYTE
DATA
BYTE
BYTE
TEXT
>00 * OPEN
>14 DISPLAY-VARIABLE, INPUT
>1000 * ADRESSE BUFFER
>50 * MAX. S0
>50 * MAX CHARACTER COUNT
>0000 * l. DATENSATZ
>00 * SCRFEN-OFFSET 0
>09 •
V DSK1.TFST’ * Immer diese intelligenten Namen
EVEN
RAMBUF PSS S0 Buffer fuer den Datensatz
* Hier vorher eigenes Programm
-* PAB in das VDP-RAM legen:
LI
R0,>0900
*
Wi 11kuer1iche Adresse
LI
R1,PABVAR
LI
R2, 19
*
Komplette Lsenge
BLWP
OVMRW
MOV
R0, R3
*
Siehern
AI
R3,>0009
*
Zeigt nun auf Laengenbyte
BL
ODSRAUF
JEQ
ERROR
* Nun
ersten Datensatz
1 esen
LI
R0,>0900
LI
PI,>0200
*
OPCODE fuer READ
BLWP
OVSBW
*
In PAB schreiben
BL
ODSRAUF
*
Datensatz lesen
JEQ
FRROR
•
LI
R0,>0905
*
Zeigt auf CHARACTER COUNT
BLWP
OVSBR
*
Byte lesen
MOVB
R1, R2
SRL
R2,8
*
Laenge nun in R2
JEQ
HILF
*
Bei 0 Fehlfunktion VMBR
LI
R0,>1000
*
Buffer im VBP
LI
RI,RAMBUF
*
Buffer im CPU-RAM
BLWP
OVMBR
*
Datensatz nun im Buffer CPU
* Nun
Datei
sch 1iessen
HILF
LI
RI,>0100
*
OPCODE fuer CLOSE
LI
R0,>0900
BLWP
OVSBW
*
In den PAB schreiben
BL
ODSRAUF
*
Datei sch 1iessen
a»
c o
SERIE
* Das wars, das eigene Programm kann weitergehen
* Hier Er ror hand 1 i ng ein.-fuegen, Tn R0 Errorbyte
bei 0 DSR nicht ge-funden
ERROR B 8BEGINN
* Unterprogramm Au-fru-f DSR
DSRAUF MOV R3,P>8356
BLWP PDSRLNK
DATA >0008
RT
Fortsetzung von Seite 52
und DELETE haben die gleichen
Bedeutungen wie in der Dateibe¬
handlung im Basic, READ heißt
Lesen eines Datensatzes, WRITE
schreiben eines Datensatzes, LOAD
ist gleichbedeutend mit OLD im
Basic, SCRATCH RECORD bedeu¬
tet, daß der letzte Datensatz ge¬
löscht werden soll und STATUS gibt
Auskunft über die Form der Datei
und ob irgendein Ende erreicht ist.
Dies wird im Basic z.B. für die EOF-
Funktion verwendet.
2. Byte: Flagbyte, enthält die wich¬
tigen Informationen über den Typ
der Datei.
Bit 0 (niedrigwertigstes Bit): Datei¬
typ (l=Sequentiell, 0=Fixed)
Bit 1 und 2: Art der Eröffnung
(OOOpdate, 01 Output, 10=Input
und ll=Append)
Bit 3: Art der Daten (0=Display,
l=Internal)
Bit 4: Art des Datensatzes (=Fixed,
l=Variable)
Bit 5 bis 7: Errorcode, werden von
der DSR entsprechend gesetzt,
wenn ein Fehler bei der Dateibehand¬
lung auftrat.
Byte 3 und 4: Zeiger zur Adresse
des Puffers im VDP-RAM für den
Datensatz.
Byte 5: Länge des Datensatzes. Bei
Fixed-Dateien steht hier die Länge,
bei Variable-Dateien die maximale
Länge.
Byte 6: Länge des aktuellen Daten¬
satzes, d.h. die Länge des gerade zu
schreibenden oder gelesenen Daten¬
satzes.
Byte 7 und 8: Nummer des Daten¬
satzes. Bei SAVE steht hier die Län¬
ge des zu speichernden Programms,
bei LOAD die max. Länge des Ein¬
gabebuffers, in den das Programm
im VDP-RÄM geladen werden soll.
Ist das Programm länger, erfolgt
eine Fehlermeldung.
Byte 9: Screen Offset: Wird wie im
Basic für die Bildschirmdarstellung
* Versendert nicht Statue
* I. i s t i n g 3:
* Grom-Ad resse sichern vor DSRLNK und
* anschliessend wieder schreiben
SAVEGR DATA >0000
MOVB 0>Q802,PSAVFGR
MOVB 0 >9802,PSAVEGR+1
DEC 0SAVEGR Muss erniedrieat werden
BLWP PDSRLNK
DATA >0008
MOVB 0SAVGP, l?>9C02
MOVB 0SAVFGR+J,0>9C02
Ui
)uuuuuuuuuu
54
Bit im Statusregister der CPU ge¬
setzt, d.h. durch einen einfachen
Sprung, wenn gleich (JEQ), kann zu
einer Routine gesprungen werden,
die dann den Fehler entsprechend
dem Programm behandelt.
Der letzte Hinweis für heute gilt der
Eigentümlichkeit mancher Periphe¬
riegeräte: Sie verändern die GROM-
Adresse. Deshalb sollte vor dem Aus¬
führen von DSRLNK die GROM-
Adresse gelesen und danach wieder
geschrieben werden. Wie das geht,
zeigt das Listing 3. Heiner Martin
DATA das Betriebssystem eines Pe¬
ripheriegerätes aufgerufen werden.
Das folgende Listing 2 zeigt ein Bei¬
spiel dafür. Bitte beachten Sie, daß
hier willkürlich in die Belegung des
VDP-RAM’s eingegriffen wird.
Wenn Basic-Programme vorhanden
sind, muß erst der entsprechende
Speicherplatz für PAB und Daten¬
buffer reserviert werden. Dazu
kommen wir ein anderes Mal.
Wenn nun ein Fehler auftritt, so ist
bei der Rückkehr aus DSRLNK
zum rufenden Programm das Equal
ein Screen-Offset verwendet, muß
hier der Wert stehen.
Byte 10: Länge des Dateinamens.
Dabei ist die gesamte Länge ge¬
meint, also nicht nur die Länge des
Namens des Peripheriegerätes.
Byte 11 folgende: Name
Diesen PAB müssen wir nun in das
VDP-RAM bringen, und dann muß
noch ein Zeiger auf >8356 (ganzes
Wort) gelegt werden, der auf das
Längenbyte des Namens im VDP-
RAM zeigt. Danach kann mit dem
üblichen BLWP mit nachtolgendem
auch die Grundversion ei¬
nes Spieles bei. Dieses ver¬
liert jedoch seine entspan¬
nende Wirkung sehr
schnell, da sich weder der
Schwierigkeitsgrad, noch
der Bildaufbau ändert.
Will man das Spiel kom¬
plett besitzen, so muß man
es sich entweder selbst er¬
weitern oder es sich von
dem Herausgeberverlag be¬
stellen. Betrachtet man
sich jedoch den Kurs im
gesamten, so ist er doch,
trotz seines hohen Preises,
eine sehr nützliche Ein¬
stiegsmöglichkeit für ei¬
nen Anfänger in die Welt
des TMS9900 Assemblers.
Oliver Huber
ches bilden die Erklärun¬
gen aller dem TMS9900
bekannten Assemblerbe¬
fehle. Diese Erklärungen
wurden sehr gut aus dem
Englischen ins Deutsche
übersetzt und sind nach
ihrer Arbeitsweise am
Ende des Buches sortiert.
Diese Erklärungen ermög¬
lichen einen weitergehen¬
den Einstieg in die Ma¬
schinensprache des TI
99/4A., als ihn der Kurs
vermittelt.
Um sich von den Strapa¬
zen, die das Lernen einer
neuen und sehr anwender¬
freundlichen Computer¬
sprache mitsichbringt, zu
erholen, liegt dem Kurs
ASSEMBLERKURb kette als Quellcode und «
VON HAGERA Assemblerfile gespeichert, ;
Eine große Erleichterung so daß man sie sich jeder-
für alle die, denen das zeit anhand des Editor/
Editor/Assembler Hand- Assembler-Moduls ablau-
buch in seiner englischen fen lassen und nach der ei-
Sprache zu schwer zu ver- genen Phantasie und des
stehen ist, bildet der eigenen Wissenstandes ver-
Assemblerkurs 2 von ändern kann. Diese Dis-
Hagera. In diesem Kurs kette hat nur einen klei¬
werden die Befehle er- nen Fehler. Sie wurde
klärt, die es dem Anfänger beim Verpacken, anstatt
ermöglichen, seine ersten dem Buch beigelegt, in die-
Erfolge in der neuen Pro- ses wie ein Lesezeichen
grammiersprache auf dem hineingesteckt. Durch die-
Bildschirm darzustellen sen Druck läuft sie sehr
und diese mit Ton und schwer im Laufwerk, und
Farbe hervorzuheben oder es ist ratsam, sich eine Ar-
zu untermalen. Der Kurs beitskopie anzufertigen,
ist in drei große Themen- Doch hierbei stößt man
bereiche aufgeteilt. Der auf ein unerwartetes Hin-
Kurs als solcher, die do- dernis; die im Buch angege-
kumentierten Lösungen benen Urheberrechte. Die¬
der einzelnen Übungsauf- se untersagen jegliches Ko-
eaben und eine deutsche pieren der Kursdiskette,
Erklärung aller TMS9900 obwohl grundsätzlich jedes
Assemblerbefehle. Der Anfertigen von privaten
Kurs selbst ist in einzelne Arbeitskopien immer er-
Kapitel aufgeteilt, von laubt ist. Sieht man von
denen jedes einen be- dieser Unkenntnis des Her¬
stimmten Themenbereich ausgebers ab so lallt ei-
umfaßt Am Ende eines nem während des Lesens
jeden Kapitels stellt der des Kurses ein unange-
Autor Fragen, die sich auf brachter und meiner Mei-
die bis zu diesem Kapitel nung nach negativ auttal-
einschließlich gelernten liger Punkt ins Auge
Assemblerbefehle bezie^ Ohne besondere Unter-
hen. Die Lösungen dieser Scheidung vom lautenden
Aufgaben sind im zweiten Text taucht plötzlich
Teil des Buches aufgelistet Werbung für Software von
und vollständig kommen- dem Herausgeberverlag aut.
tiert. Dies hat den Vorteü, S 9 wird einem auf eine ge-
daß dem Anfänger durch wisse Art diese Werbung
die Kommentierung eben- indoktriniert, da man sie
falls die Arbeitsweise des automatisch mitliest, oh-
Computers klargemacht ne vorerst die Unterbre-
wird Die meisten Lösun- chung des laufenden 1 ex-
gen sind ebenfalls auf der tes zu bemerken,
dem Kurs beigelegten Dis- Den Abschluß des Kursbu-
TIPS & TRICKS
Ein Kobold
wird geboren
Märchengestalten, Opfern
und Helden.*
Zumal ein Zeichen beacht¬
liche 65536 Möglichkeiten
bietet, ein Sprite aus 4
Zeichen bestehend gar
18 000 000 000 000 000 000
Richard Cloots
Sicherlich gibt es schon
einige Programme (Routi¬
nen), die dem User das
Entwickeln und Katalogi¬
sieren von selbstdefinier¬
ten Zeichen erleichtern
soll. Aber wie sieht oft¬
mals die Praxis aus?
Inmitten des Schaffens¬
drangs am Rechner, muß
plötzlich ein selbstdefinier¬
tes Zeichen her. Suche ich
jetzt das dafür angelegte
Programm? Wohin dann
mit meiner in Arbeit be¬
findlichen Creation? Hier
lag doch eben noch Milli¬
meterpapier. Nun, karier¬
tes Papier erfüllt auch den
Zweck. Flugs werden 8
mal 8 Kästchen abgezählt
und eingerahmt. Wirkt
das Monster oder der Ein¬
zelkämpfer nicht furcht¬
erregender bzw. energi¬
scher, wenn er in der Grö¬
ße von 16 mal 16 Pixel
über den Monitor stürmt?
Also nochmal 1,2, 3...8
abgezählt und eingerahmt.
Jetzt erst kann der neue
Sprite geboren werden.
Mit „computerhafter“
Sicherheit wird der erste
Sprite nicht gleich gelin¬
gen, so daß ich noch öfter
1 ,2,3...8 zählen, einrah¬
men und vergleichen wer¬
de. Jetzt ist Schluß mit
alledem.
Einmal konzentriert und
sauber ein Formblatt ge¬
schaffen und in ausrei¬
chender Stückzahl kopiert,
und man ist in der Lage,
unzählige Kobolde zu kre¬
ieren und sie gegebenen¬
falls geordnet abzulegen.
Deshalb möchte ich den
Lesern mein Formblatt
zwecks Kopierung zum ei¬
genen Gebrauch vorstellen,
und wünsche Ihnen allen,
die Schaffung von vielen,
zweckmäßigen, interessan¬
ten, furchterregenden, raf¬
finierten und lustigen Ko¬
bolden, Raumschiffen,
Muster-Formblatt
sprite-forhI
Datum
Blatt
1. S PR I
Code:.
2 .SPRIT
Code:
c m
mi m
3.SPRITE
Code
4.SPR
Code
5.SPRITE
Code:
6.SPR
TE
Code:
7.SPRITE
INHALTSVERZEICHNIS
Code:_
8.SPRITE
Code:
1.SPRITE
2.SPRITE
3.SPRITE
4.SPRITE.
5.SPRITE
6.SPRITE.
7.SPRITE
8.SPRITE
Anforderung:
R. Cloots
r GlroA Kiincnen
BLZ 70010030
Kto 176762-808
Kennw.:TI — KOHM
l‘> Stk
SO StK
iOO Stk
300 Stk
3.50 DK
9,00 DM
16,00 DM
40,00 DM
inel.Porto ♦ Vera
LISTINGS
Fortsetzung von Seite 16
Thomas*
Verfahren.
Lehrstoff von Ihrem Sohn oder Ihrer-Tochter mit
etwas mehr Begeisterung angegangen und auch viel¬
leicht dauerhaft behalten wird.
(zu Seite 41) Ihre TI-Redaktion
Soundwriter
Ein Programm schreibt ein neues Programm. Diese
Fähigkeit unseres TI wird bei dem vorliegenden Pro¬
gramm genutzt.
Möglich wird dies durch die MERGE-Format-Ab-
speicherung von Daten und Tokens (s. TI-REVUE
9/85 und 1/86 ). Ab Zeile 660 kann man sehen.wie
es geht. Zwar kann das vorliegende Programm bis¬
her nur einstimmige Melodien erstellen, aber sicher
wird bald ein programmierfreudiger „Melodien¬
bastler“ diesen Mangel behoben haben und ein
Programm einsenden, das auch mehrstimmige Mu¬
sikprogramme schreibt. Übrigens: das auf DSK1
gespeicherte Musikprogramm muß (nach NEW!)
mit MERGE DSK1 (Programmname)
geladen werden. Die Zeilennumerierung beginnt ab
10 in Einerschritten. Natürlich kann das Musikpro¬
gramm auch auf einfache Weise in andere Pro¬
gramme eingebunden werden.
(zu Seite 46)
Dr. H. Greiner
Division
Mit diesem Programm kann man eine Division auf
dem Bildschirm sichtbar machen.
Auch dezimale Zahlen sind erlaubt.
Zahlen die größer sind als 10 Zeichen werden nicht
akzeptiert und ebenso wird eine Division, bei der
das Resultat zu klein würde, nicht ausgeführt.
Ich habe mir viel Mühe gegeben, das Programm so zu
schreiben, daß man allerhand Zahlen eingeben kann,
ohne daß der Rechner gleich mit einer Fehlermel¬
dung kommt. Bei einer Division gibt es nämlich sehr
viele Möglichkeiten, z.B.:
— Beide Zahlen sind ganze Zahlen
— Beide Zahlen sind dezimale Zahlen
— Eine von beiden ist eine ganze Zahl
— Der Divisor ist kleiner
— Der Divisor ist größer
— Diese Möglichkeiten kombiniert.
(zu Seite 48) Jan Kuenen
Mörse-Programm
Da dieses Programm speziell für Anfänger gedacht
und geschrieben wurde, habe ich darauf verzichtet,
die Sonderzeichen einzuspeichem. Also: Nur
Großbuchstaben und Ziffern machen mit.
Zuerst wird gefragt, ob die Morsezeichen auf dem
Bildschirm gezeigt werden sollen oder nicht.
Danach kann man die Geschwindigkeit wählen.
(1-5).
Dann erscheint das Menü mit 7 Unterprogrammen.
1. Ein beliebiges Zeichen wird hörbar gemacht und
man wird aufgefordert, die dementsprechende
Taste zu drücken. Falls Sie die richtige Taste nicht
gedrückt haben sollten, gibt es noch zweimal die
Möglichkeit, das zu korrigieren, sonst gibt der
Rechner Ihnen das Zeichen.
Dann fängt es wieder von vorne an, bis die Enter¬
taste gedrückt wird und man wieder ins Menü
zurückkehrt.
2. Mehrere Zeichen werden hörbar gemacht.
Die Zahl der Zeichen können Sie zuerst selber
bestimmen. Dann wird wieder überprüft, ob man
richtig zugehört hat. Danach kann das gleiche
Programm nochmal wiederholt oder zurück ins
Menü gesprungen werden.
3. Sätze morsen
Sie geben einen Satz, bzw. ein Wort ein und der
Rechner läßt es hören (sehen).
Danach wird gefragt: j-n
Bei nein kann man wieder zurück ins Menü
kommen.
1. EIH BELIEBIGES ZEICHEN
2. MEHRERE BELIEBIGE ZEICHEN
3. EINGEGEBENE SÄTZE NGRSEN
4.11QRSELEHR6RNG
5. EIGENES RUFZEICHEN
6. QTH-LDKATGR
7. RUFZEICHEN GE NERFlTDR
S=6ESCHUINBI6KEIT ÄNDERN
4. Morselehrgang
Sie können selber bestimmen, welche von den ge¬
speicherten Zeichen mitmachen sollen und wie¬
viele davon hintereinander.
Dieses Programm ist sehr geeignet für diejenigen,
die gerade damit anfangen wollen, CW zu lernen.
Der Rechner sagt Ihnen, ob Sie nach Ihrer Ein-
Gabe ein Zeichen richtig aufgenommen haben
oder nicht.
5. Ihr Rufzeichen morsen (für Funkamateure)
Wenn Sie die Taste 5 drücken, wird Ihr Rufzei¬
chen gemorst. Selbstverständlich muß zuerst das
Rufzeichen in die bestimmte Programmzeile ein¬
gebracht worden sein. (Zeile: 2230)
6 . Ihren QTH-Kenner morsen
Wie oben (Zeile 2240 ist verantwortlich).
Natürlich können die Programme 5 und 6 auch
für andere Zwecke benutzt werden, z.B. für Na¬
me oder Wohnort oder einen beliebigen Satz.
7. Rufzeichengenerator
Ein Rufzeicnen kann nach einer x-beliebigen
Zeit automatisch wiederholt werden, bis die
Leertaste gedrückt wird.
Vom Menü aus kann man auch wieder die Ge¬
schwindigkeit ändern.
Bei den Programmen 5, 6 und 7 werden die Zeichen
nicht auf dem Bildschirm gezeigt. Jan Kuenen
(zu Seite 50)
57
BÖRSE
TI 99/4A
Wer hat noch Sportspiele?
Bitte kurze Spielbeschrei¬
bung mit Liste der benö¬
tigten Geräte an
K. Wolters, Corneliastr. 9,
43 Essen 1, schicken!!!!
Dt. Handbuch für E/A zu
verkaufen. W. Götz,
0711/864053
Suche: externe ansteckbare
32 k-RAM, Sprachsynthe¬
sizer und Buch Rogers
Modul, K. Wolters' 0201/
772141
Suche:
ext. 32 K-RAM Erweiterung.
Buck Rogers Modul und
Ex.-Basic (Mechatronic)
Zu melden bei K. Wolters,
Tel. 0201/772141
Verkaufe: Schachmodul und
TI-Extendcd Basic. Zu
melden bei
K. Wolters, Telefon:
0201/772141
Suche dringend Kons, mit
Rek. Kabel und Pal. Mod. bis
DM 100. Tel. 3137650
(089) ab 19 Uhr)
Suche günst. Drucker mit
V24-Anschl. incl. Kabel.
Tel. 089/3137650 ab
19.00 Uhr
Günstig abzugeben!!! Ex-B.
dt. Nachbau + 32 K + Cent. +
Soft w. 500 DM.
Tel. 02955/6546
Zu verk. orig. Ti-Ext. Basic
Modul u. Lit-, Spiele in Ext.
Basic VB 190,- DM Tel.
06441/52556
Verkaufe Extended-Basic
Modul mit deutschem Hand¬
buch. Preis: 145 DM
(04554) 6396
Biete: P-Box + Steuerkarte
neu 370 DM. Minimem +
2 Bücher + Prge. 200 DM.
Adventuremodul +11 Cass.
110 DM. Extern. MBI-Inter-
face/Centronics + Drucker-
Prgme. 150 DM. T: 05021/
13700. U. Hustedt, Schippen-
b. Weg 5, 3070 Nienburg 2
Verk. orig. X-Basic-Modul mit
dt. Anletiung DM 200m—,
Apesoft-Grafik DM 100,—,
3D-World DM 70,-
(089)1572559
Verk. T199/4A orig. verp.
+ Rec. Kabel + Recorder
(m. Bandzählwcrk) sehr
guter Zustand gegen Höchst¬
gebot (NP ca. 450,- DM)
Suche original Tl-Joysticks
bis 30 DM
Tel. (030) 7865425
Verkaufe Masch.Progr. (ED/
Ass) auf Kassette) nur EX-
Basic und 32 K. nötig. —
Infos gegen Rückporto —
B. Dusny, Mülldorfer Str. 31,
5205 St. Augsutin 1
Verkaufe:
Speech Synthesizer 120,—
Speech Editor 30,—
Terminal Emulator II 60,—
Mini Memoriy 160,—
Dateiverwaltung Modul 50,—
Invaders 25,—
Munchman 25,—
Parsec 30,—
Michael Strub, Hauptstraße
8774 Leuggelbach (CH)
* * * * ACHTUNG* * * *
Suche Tl-User zwecks Spicle-
Austausch (in Ex-Basci)
Bitte melden bei: Olav Kcith,
Tel. 0221/373530 *ab 19 h*
Tausche Prg. in TI+Ext.
Basci! Liste an: H.-J. Eckers,
Hermann-Hesse-Str. 7, 4050
Mönchengladb. 1, Interes¬
senten für Clubbeitritt
(„TECHNOMANIA" aus MG)
möglichst aus Raum D, MG,
NE, KR; bitte ebenfalls bei
mir schriftlich melden!!!
Wer verkauft günstig Schach-
Modul, Sprachsynthesizer od.
32 k-Erweiterung? Angebote
an: H.-J. Eckers, Hermann-
Hesse-Str. 7, 4050 Mönchen¬
gladbach 1, Tel. 02161/52603
Verkaufe: Komplettes TI-99
System! Weitere Auskünfte:
Oliver Siffrin, Tel. 06821/
7522
Suche für TI-994A günstiges
Extended Basic Modul. Oliver
Jordan, Königsplatz 33,
8540 Schwabach, Tel. 09122/
815271
Wer verschenkt defekten
Computer/Peripherie an
Schüler? U. Wenzel, Over¬
feldweg 76, 5090 Leverkusen
1
Super!!! Klasse!!! Top!!!
Biete Programmkassetten mit
verschiedenen Programmen,
wahlweise Ex. oder TI-Basic,
für nur 8,— DM incl. Porto!
Dirk Biehl, Hyazinthenweg
15, 6680 Neunkirchen 7
Verk. Schachm. 40 DM,
Datenw. 50 DM, Minus,
Plusm., Othello. Demon Att.
Buck-R. 25 DM, Rec-K. 15
DM ** Tel. 07621/84508
Wer mir eine Kassette mit
TI-Basic Programmen schickt,
bekommt genauso viele
andere Programme zurück.
Jürgen Grüttner, Hospital-
str. 36, 4000 Düsseldorf 13
!!!ACHTUNG!!! Verkaufe
Mini-Assembler von Radix
VHB: 100 DM + Modul
Attack (25 DM) Tel. 09973/
1517
Tausche—Kaufe—und verkau¬
fe—Programme* Habe schon
200*Also viel Auswahl!!
Rüdiger Hussy, Edmund-
Rumpler-Weg 13, 85 Nürn¬
berg 10, Tel. 091 1/523162
TI 99/4A: Doppellaufwcrk
extern im Gehäuse + Con¬
troller orig. TI zus. DM 800
Kein VB 06182/26186
TI 99/4A: Rec. Kabel + Da-
tenrec. DM 50, Parsec DM 40.
Bücher: Tips &: Tricks 25,—
Spielen — Lernen — Arb.
20,- 06182/26186
TI 99/4A: Progr. buch von
Chip DM 10,— 7 7 Basic-
Progr. v. Lon Poolc DM
20,— Ex-Basic-Buch engl. 10,—
06182/26186
TI 99/4A: ext. 32 K +
Schnittst, (paral) Atronic
DM 250,- V24 ext. Atronic
(2 Ports) DM 240,-
06182/26186
TI 99 / 4A + Rec. + LIT 190
X-Basic + Lit + 200 Prg
170,— 32 K (Akkugepuffert)
+ Lit + 50 Prg 250,—
Tel. 02245/3983
Suche Sprachsynthesizer
für max. 80 DM. Tel. 06201/
53266 (nach 17 Uhr oder
Wochenende)
TI-99/4A (84) 190,- * Ex
Bas. Mod. 100,— *Exp-Box
(neu) 180,—*
Vollaut. Fernschreib-Morse-
Dekoder-Mod. (Send./Empf.)
m. CENTRONICS Schnitt¬
st. seitl. steckb. 300,—*
10TI Bücher a 25,— * Schach-
mod. 50,—**Tel. 06851-2943
O.3819
Suche Tl-User im Raum
Braunschweig. Evtl. Club¬
gründung. Günther Beveer.
Tel. 0531/62736
Verk. TI-Module: Parsec
(= 50 + Schach = 60 + Earl.
Learng. Fun 10 + Buch.
Journ. 100 + Minus — Mi =
10 DM. Schreiner. Tel.
06103/81815
Sehr günstig! Wegen Hobby¬
aufgabe TI99/4A mit Ex.
Basic nur DM ^50,— ab
19.00 Uhr. 04106/71120
Homecomputer TI 99/4,
Orig. Peri.-Box, 32 k Erwei¬
terung, RS 232, Centronics,
Disk-Controller, 2 Disketten¬
laufwerke, Sprach-Syntesizer,
Grafik-Tableau, 2 Joystick,
Extended Basic, Mini-Memo¬
ry, Terminal Emulator II,
Disketten-Manager und
vieles mehr.
Preis: Fr. 2.000,- M. Melelli,
Luzornstr. 288, 5634 Meren-
schwand (Schweiz)
Tel. 057/44 47 63 (ab 19 h)
TI 99/4A Ext. Achtung, nur
f. Erwachs. Bitte Alt. angeb.
Dieses Sp. wird Sie amüsie¬
ren. incl. Cass. + Porto +
Info-Progr. Nur DM 10,—
in Umschlag an: T. Karbach,
Remscheider Str. 18,
5650 Solingen 1
Wollt ihr Masch-Progr. auf
Cassette? Habt Ihr Ext. +
32K? Dann fordert Info/
Rückporto D. Karbach-
Remscheiderstr. 18-565
Solingen 1
Verkaufe folgende TI-Module
Statistics DM 30
Alpiner DM 30
Tl-Invaders DM 25
Indoor Soccer DM 25
Tombstone City DM 25
BASF-Laufwerk DM 190
Telefon: 0212/43140
Verk. 32K extern DM 180
Tel. 07152/58689
Verkaufe: Mash, Othello,
orig. Tl-Adr.-Modul mit
11 Kassetten. Postkarte mit
Preisvorstellungen an:
Dirk Kronshage, Akazien-
str. 24, 4902 Bad Salzuflen 1
Verkaufe: Original TI-Lauf-
werk zum Einbau in P.-Box
87 KB. Preis: DM 249.
Tel. 02152/501 88 nach 17 h
Original Dynamics-Software
für TI: Zentoria, Monoko,
Digger, Darts: je 20,— DM *
Tel.: 0228/676804
Verkaufe TI-Module: Video-
Games I + Alligator-Mix +
Englischkurs (je 15 DM)
Tel. 07130/7165
Verk. preisgünstig: TI 99/4A,
Cass.-Rec., Joyst., Module:
ExBasic, Tomb. City, Othello,
Videogames 2, Parsec, TI-
Invaders, Schach, Donkey
Kong, Attak, Telefon:
0234/382596
58
BÖRSE
Verkaufe kompl. für
400 DM TI99/4A anschlu߬
fertig + 1 Modul Ex.-Ba. mit
Handbuch + Cas.-Rec. M.
Kabel, 3 Bücher, 6xTI-Jour-
nal + 8xTI-Revue + 1 Moni¬
torkabel. Kl. Entinger,
6650 Homburg, Westring 22,
Tel. 06841/71693 nach 17 h
Verkaufe 20 Tl-Progr. Stck./
8,— DM wie z.B. Flugsimula¬
tor, Star-Strike, Uambler etc.
Ruft an: 06874/6705
TI99/4A Speechsynt. 2 Joy-
st. 12 Module (ext. Bas.,
Parsec, Schach ...) Kassetten - ,
viel Literatur 500,— DM
Tel. 06834/41660 (Klose)
Verkaufe Tl-Writer + Multi¬
plan zus. DM 250,—.
Tel. 04262/1205
T199/4A; neuwertig; Hand¬
buch, orig. Verp. + Recorder¬
kabel: 170 DM.
B. Dobrick, Hohenstaufen-
str. 1 7, 7340 Geislingen
Wer im Raum Hi/H/BS hat
CPS 99 Atronic. Bitte
melden. Tel.: 05069/6538.
Rufe zurück. JORK Warnecke
Suche Bedienungsanleitung
zur Diskvers. des X-Basic II.
Wer kann helfen? Tel. 02051
66950 ab 20 Uhr.
TJ Expannsion Box 11er mit
Netzteil DM 120 Diskge¬
häuse mit Kabel + Netzt.
DM 50 zu verk. 08233/6653
Verk. (orig-. TI) Diagnostic-
Mod + RGB /Modulator
(H4/85) Stulen Roerdomps
7671WL Vriezenveen,
Tel. 0933549962650
Suche PBox + Disklw (ev.
nicht Org. TI) + 32K + RS
232 + evTI Writer + Speech-
Synth + mit Handbüchern
Tel. 0711 843775
Verk. orig. Ex-Basic, unbe¬
nutzt. suche Speech-Synth. +
TE 2, Frank Brengel,
089/1231332 ab 18 Uhr
Suche PAL Modulator PHA
2036 for TI-99A Channel 36
auch Spielprogramme.
Suche TIBox mit Contr/Ext.
DSKContr/Sprachsynthersi-
zer/Avend u. ExModul.
Dieter Wagner, 7750
Konstanz, Leipzigerstr. 9
Verkaufe Module: Speech
Editor, Attack, Ext. Basic,
etc. Tel. 04131-55457 nach
19 Uhr
Tippe Listings ab. 10 DM
(inc. Postg.) in Umschlag mit
Listing abschicken. Schicke
alles + Kass. zurück an:
Aronica Luigi, Deeler Weg
14, 5000 Köln 71
Verkaufe wegen Systemer¬
weiterung 3 original TI-Lauf
werke, einen Diskcontroller
und eine 32-KByte-Speicher-
erweiterung. Liebald Heiko,
Eichenweg 7, 7914 Pfaffen¬
hofen o.d. Roth
Viel Zubehör für TI abzu¬
geben wegen Systemaufgabe.
Z.B.: Printer/Plotter, ex¬
terne Cent. Schnittstelle (mit
Kabel und durchge. Bus),
original Joystick Ext.
Basic, alle Adventure; Mini
Assembler, Schachmeister;
Moon Patrol und vieles mehr.
Informationen bei Thorsten
Rauer, Beetstr. 64,
4902 Bad Salzuflen, 05222/
13182
Assembler-Programme f.
E/A, XB, MM + 32 K: GPL
Disassembler; FAST-COPY
(Sektorkopierer) kopiert
jede Disk in drei Durch¬
gängen. Info gg. Rückum¬
schlag. Alles sofort liefer¬
bar! M. Eichhorn, Ziegel¬
heck 1, 6240 Königstein 4
Verkaufe: TI99/4A Konsole +
Extended-Basic II plus 2
Module (Microsurgeon und
Schachmeister) + Recorder¬
kabel + Joystickadapter +
2 Joysticks + Prgm’s + Hefte
VB: DM 500,- ÖS 3500 -
T.: Österreich / 0662/26671
(Salzburg)
Suche ext. Laufwerk + Disc-
Kontroller günstig. Tel.
06805/8393
Verk. Minimem m. dt. Hand¬
buch 190,— Pers. Rep. gen.
Othello, Parsec, Stat., Ger.,
Householdbudg. Man. je 20,—
J. Kupzig 02208/4165
STOP! Habt ihr ein TI zu¬
hause stehen? Habt Ihr Lust,
mit mir PGM’s zu tauschen?
Oder wollte Ihr sie kaufen?
Oder sucht Ihr andere TI-
User? Dann schreibt mir!
M. Kugelmann, Nassauerstr.
4, 6272 Niederhausen!
Einmalige Chance! Junger TI-
Freak möchte mit dir PGM’s
tauschen! Mords Software in
TI, Ex-Basic oder Exbasic +
RAM-Pack! Stelle auf Wunsch
auch PGM’s her! Adr.: M.
Kugelmann, Nassauerstr. 4,
6272 Niederhausen!
Verkaufe TI99/4A + P-Box +
32K + Controller + Disklw.
+ Ex. Centrois + Joystik +
EIA + d.t. Handb. + Ex-
Basic + dt. Hb. + 6 Sp.
Module + dv. TI Spezialb. +
Super Grafic + d.v. Program¬
me VB 1500,—.Jan Böhme,
Röweland 16, 2000 HH 62
Verk. TI99/4A, P-Box, 32 K
Erw., RS 232, Disk-Contr.,
Disk-Laufwerk, Sprachsyn.,
Ex.-Basic, Editor/Assembler,
Mini-Memory, div. Module,
TOP-Software (M.-Code),
Literatur usw. VB 2000,—
DM. Tel. 07132/37608
Verk. TI-99/4A + Joystick +
Datasette + ca. 120 Program¬
me + 6 Module + Fach¬
literatur. YB 280,— DM.
M. Schreiner. Tel. 06103/
81815
Verk. Disk-Contr., Lauf¬
werk—orig. TI für P-Box.
Suche Peri-Box orig. TL
Angebote an: Richert,
02921/2626
Verkaufe TI 99/4A + X-Basic
+ P-Box m. Laufwerk +
Schnittstellenkarte + Daten-
verw. + Statistik + Recorder
m. Kabel + Literatur für
DM 1500 VB. Telefon:
06403/71104
NEU: Editor / Assembler
auf Kassette: Nur 70 DM!
Super schnell und kom¬
fortabel! Tel. 0561/887129:
Lothar Krauß
Verkaufe TI/Ex-Basic für
Anfänger und Fortgeschrit¬
tene. Tel. 0211/422216
Verkaufe original TI-Ex-
Basic Handbuch (in englisch)
Tel. 0211/422216
Achtung-TI-User. Verkaufe
org. Ex Basic VB 165 DM.
Angebote an Lukas Merten,
Marktstr. 19, 5440 Mayen
Suche Original E/A Hand¬
buch. Reimund Müller,
Buchenstr. 20,4630 Bochum
6, Tel. 02327/83764
Suche Modulexpander u.
ausführliche Bedienungsan-
leit. für ext. 32K-Speicher-
erwe. mit Centronic-Schnitt-
stelle (auch Kopie) Angebote
an: Berth. Fella Hardenberg-
str. 28, 8500 Nbg 20,
Tel. 0911/549804 (rufe
zurück!)
Verk. für TI/99 4A BASF
Laufwerk 6106 VB 300 DM
Tel. 0208/73042
Verk. TI99/4A + Ext. Basd
Modul, Preis VB. Tel.:
02151/405869
Verk. TI99/4A incl. Hand¬
buch für DM 120,-.
Alexander Rupp, Kalmanstr.
45, 6600 Saarbrücken.
Tel.: 0681/45134
Verkaufe TI-99 100 DM
Exd. Basic + d. Handbuch
150 DM
Parsec (Mod.) 30 DM
Tl-Schach (Mod.) 50 DM
Blasto (Mod.) 8 DM
Orig. TI-Recorder + Kabel
60 DM
Joysticks 1 0 DM
Thomas Schmidt, Eiswiese 7,
5160 Düren
Tel. 02421/42488
T199/4A (def) + Orig. XBasic
+ deut. Handbuch + Rec.
Kabel + Literatur. Preiswert!
G. Schulte, 0421/71149 ab
17 h
Verk. TI-Konsole + XBasic +
IMB-Interface + 64K-Dram-
Karte + Zenith-Monitor
VB 950 TI59+PC100C
VB300 Tel. 0941/67884
Suche Peribox f. TI99/
4A Diskettenlaufwerk 32K
Erw. Artur Kasimir, Wes-
larnerweg Nr. 7, 4770 Soest,
Tel. 02921/8591 nach 18 h
Drucke Listings kosten nur
Rückporto beilegen. Ver¬
kaufe Spkel 1+2, Basic Inf.
Marketing Plan Spiel
10,- DM
Suche ext.. Laufwerk + Disc-
Kontroller günstig. Telefon
06805/8393
TI 99/4A * Verk. Super
Sketch (Grafiktablett)
Markus Schenk. Tel. 07136/
4116 ab 17 h
!!!Extended Basic!!! Ver¬
kaufe TI99/4 + Extended
Basic + Handbuch + Recorder-
Kabel (340,- DM) 0711/
537789
Extended Basic Modul 180,—
Disc Manager II Modul 110,—
Parsec 30,—
Siegfried Frankl, 0941/96296
ab 16.30 tägl.
Wer hilft 99/4A-Fan i.d.
DDR? Gesucht: billiges
32K RAM, Konsole z. aus¬
schlachten, Schaltplan und
Bauanltg. f. Hardware, def.
Hardware jed. Art.
Kontaktadresse: Otto 42
OB 1, Feldmannstr. 54,
Tel. (ab 19 h) 0208/860892
59
I
BÖRSE
Sie ist da! Supersoftware zum
Tausch oder Verkauf in TI,
EX-Basic oder Ex-Basic +
RAM-Pack! z.B. Boiler
Shipp, Päc Man, Waling Bass
u.v.a. Das ist doch was oder
nicht? M. Kugelmann,
Nassauerstr. 4, 6272 Nieder¬
hausen! Yeah!
Verk. TI99/4A + Exbasic +
Literatur nur kompl. 400 DM
M. Koops, Froweinstr. 18,
56 Wuppertal 1, Telefon:
0202/443717
DATA BECKER TI Tips &
Tricks Heigenmoser Progr. f.
d. TI (je DM 49,-) für je
DM 23,- Pahlberg Farbe,
Grafik, Ton, Spiele (DM 38,— )
für DM 18,—. Ahl Spiele Bd.
2, engl. DM 15,-.
Kaczmarek, Krummer Kamp
12, 4406 Drensteinfurt
02508/592
Verkaufe TI-Anlage zu echten
Weihnachtspreisen: 2 Konso¬
len mit Zubehör, Original TI-
Recordcr mit Anschlußkabcl,
Assembler Paket viele
Module (30) und Kassetten
mit Programmen.
Rufen sie an: Es lohnt sich.
Tel.: 06222-53407 ab 18 h
Hallo, TI99/4A Anwender
in Österreich. Verkaufe
günstigst wegen System¬
wechsel folgende Posten:
TI99/4A Konsole, Kassetten¬
rekorderkabel, Peripheriebox,
RAM Erweiterungskarte,
Disk Drive, Disk Manager,
TI - LOGO - II Modul,
Editor/Assembler: Handbuch
dt. und Modul, TI Forth:
Handbuch und Disk, Super —
Duper — Kopiermodul,
Extended Basic: Handbuch
und Modul. Mag. Fuchs Karl,
Maria Cebotaristraße 27,
5020 Salzburg
TI 99/4A + PHBox + 32 K +
RS232 + Disk + ExB + E /
Assembl. Orig. TI + Forth +
8 kg Deutsch — 4 kg Engl.
Lit. VP 2000 Telefon:
0814194897
Suche billigen Datenre¬
corder!!! (TI)
Thomas Pfister
Talstraße 49
8770 Lohr /Main
Verkaufe: TI99/4A + Recor¬
der + Joysticks + 3 Module
200,-; X-Basic + 200 Pro¬
gramme + Buch 170,—;
32K (gepuffert) + Buch +
50 Prg. 250,— (1 Monat alt);
Befehlserweiterung (EPROM-
MODUL) 30,-. Telefon:
02245/3983 Rainer
Verk. 10 - TI - Module -
u.a. — Parsec — TI — Invaders
Hallenfußball - 150 DM
H. Engel - Th.-Heuss-14
3180 Wolfsburg, Telefon:
05361/72429
Zu Verkaufen: **TI-99/4A**
Module: Ex.Basic + Donkey
Kong + Pac Man Minus
Mission
Orig. TI Joystick + Kass.
Kabel. Viele Spiele in Kas¬
setten + Bücher,
VB 600,— , Kenan Piskin,
Tel. = 08161/83587 ab
19 h
Sonderangebot
TI-99/4A mit X-Basic, +
PAC MAN + DONKEY
KONG. orig. JOYST! Prog.
auf Kass. + Bücher
VB = 600,- KENAN PISKIN
Tel. 08161/83587
Verkaufe: TI Basic/Ex-Basic
für Anfänger und Fortge¬
schrittene (Buch) 25,—
(neu) Tel. 08851/5528
Verkaufe TI 99/4A + Ex-
Basic + Editor / Ass. + 32 K+
RS232 + P-Box m. Disk.
+ Sprachsyn. + Software +
GP100. Tel. 089/3132514
Suche Logo II
Eric Voigt, Breslauerstr. 20,
4060 Viersen 11,
Telefon: 02162/56520
Verkaufe TI-99/4A + Joyst. +
Recorder + Sprachsynthesizer
+ XBasic + Spielkassetten +
Module + Literatur (Neupreis
ca. 1100,—) alles Top-Zu¬
stand!) Thomas Arend — Tel.
06831/40472
Verk. TI99/4A + Zubehör
200 ,-
Ex.Basic + Handbuch 160,—
Adapter + 2 Joysticks 50,—
Module Schach 50,
Poker 40,-
Minus-Plus Mission je 15,—
150 Ti/Exb. Pgb. + Zeits.
250,-
Ti-99 Tips + Tricks 20,-
zus. 700,— ab 19h
T. 0201/358436
++++++++ACHTUNG++++++
Entferne Listschutz! Nur
1 DM pro Prog.a.Cas. + 2DM
Porto
Christian Sailer
Glückaufstr. 9, 8450 Amberg
****** ACHTUNG * *******
Suche für TI99/4A Funk¬
fernschreib Software
(RTTY) RX + TX
Bacher Werner, 7032 Sindel-
fingen, Tel. 07031/803342
Ich suche TI-Magazine aus
BRD-Österreich und USA.
Ebenso 99er-Programm-
sammlung 1+3 sowie Exb
in Deutsch usw. Angebote
(Postkarte) an
J. Schaller
Glattalstraße 127
CH-8052 Zürich
TI99 Verk. Module Schach,
Parsec, Munch, Invader,
MGR2, Othello, Moons-
weeper, Statistic, usw.
040/6451816
Hallo TI-E/Assembler User.
Wer hat Lust &: Laune, mit
mir Prgs zu tauschen!?!
Habe allerdings nur ca.
70 Prgs. Boffe aber, daß es
bald mehr sind also meldet
Euch bei:
Markus Junghanns, Magde¬
burger Str.: 1,6054 Rodgau 3
Tel.: 06106/74182. Verkaufe
Invader Modul für DM 30,—
u. Super Ski-Spiel in Ext/
Basic auf Disk für DM 25,—
+ Porto
HI-Res-Grafik+Sprites für
TI99/4A + Minime m. 27
neuen Basic-Bef. (Plot, Setto,
Line, Sprite-Bef. etc.). Keine
Einschr. d. TI-Basic! DM
30,—. M. Kausch, Semmel-
weisstr. 151,5 Köln 80
Echt günstig *************
Peribox m. Controler int.
Laufwerk (orig.) Module,
Speech, Bücher
06174/22759 Lauterbach
**ACHTUNG**
Schreibe Ihre Listings auf
Cassette. Preis nach Länge.
Tel. 02992/1219 18-20 h
TI 99/4A + Ext. Basic +
Minimen + Parsec +
Munchman + Bücher +
Joysticks + 2 REC-KABEL
+ viel Software + Zeit¬
schriften + 2 Basic-Lehr-
gänge VB 650,—
040/7547576
Suche Multi-Interface-Box
f. Druckeranschluß
(Olympia-Carrera)
Tel. 02247 - 2611 Robert
Lehmann
Verkaufe: TI 99/4A + Ex-
Basic + P-Box + Interface
+ Disk + Dish-Contr. +
Literatur. VB DM 1750,—
Tel. 02151/774439
Tippe Eure Listings ein
Info g. fr. Rückumschlag;
Schröter, Fraftz-Liszt-Str. 9,
3180 Wolfburg/Fallersleben
TI-99/4A komplett: Kons.,
Peribox, Speech, Exbas-Plus,
P-Code, RS-232, 32K, ED/
Ass, Joy, Disk-Contr. (Cor-
comp), 2 Laufw. DS/DD +
viele Pr. auf Disk. Neupr.
DM 5000,- zus. DM 2500,-
Tel. 02136/38423
Verkaufe V24- (RS232)
Schnittstelle extern mit eig.
Stromversorgung. Tel. 0231/
51 1437 werktags 1 7 — 21 Uhr
Suche Karten für die P.-Box
(RS 232, 32 K, Controller)
oder komplette P-Box,
Tel. 05032/4302 und E/A-
Modul.
Verkaufe F-Box inkl. Contr.
und Disk intern, alle Teile
kaum gebraucht (nur kom¬
plett). Orig. TI, mit Disk-
Manager-2-Modul VB 1000
DM. Holger Spielmann, Tel.
0201/584680, nach 18 Uhr
**** TI-99/4R-Ext ***
Jetzt gibt es P.-Shooting 2.
Nur für Erwachsene. Sie
lachen sieb tot. Wie bisher
nur DM 10,— incl. Porto
und Info-Progr. in Umschi,
an T. Karbach-Remscheidcr
Str. 18 — 5650 Solingen 1
Hallo TI-32K-Besitzer!
Wollt Ihr ED/Ass-Masch-
Progr. auf Cassette? Dann
fordert Info an bei D’
Karbach * Remscheider
Str. 18 * 5650 Solingen 1
TI 99/4A mit PBox, Disk,
RS232 32K, XB, E/A, TI-
Writ, Jultiplan Util 2+3,
Rechnst., Buchjourn.,
Statistik, Datei, Textdatei,
Monitor, Literatur, sonst,
orig. Tl-Progr. zu verkuafen
Angebote an 06423—6229
ALPHA-DATEK Vi.O 99’er
Spitzen Software. Ihre profi
Datenbank für Ihren TI 99/
4A. 468 Zeich. p. Satz
40 Zeich. p. Zeile. Programm-
große ca. 40k. Vorab Info bei
U. Brüsseler ab 20 Uhr.
4050 Mönchengladbach 3,
Wetschewell 125 d
Tel. 02166/53457
Drucke Ihr Prg. für nur 5,—
DM je Listing. Entferne Lisl-
schutz für nur 3,— DM je
CASSETTE!!! Info 50 Pfg.
anfordern oder Geld an:
Matthias Orf, Birkenallee 34,
3507 Baunatal 1, Germany
Verk. Box mit Laufw. +
32 KRAM + RS 232, Assemb.
+ Literatur, div. Prog. auf
Disketten für 900 DM
Tel. 04231-68094
60
BÖRSE
Graphik-Tabl. 150 DM,
Flugsim (Cas) 35 DM, TI-
Modul American Football
Sup Graphik 65 DM Kopf
095116846
TI-Tunnel’s of Doon dt.
Übersetzung für 15,— DM
Vorkasse. M. Redlich,
Eichenweg 3, 4620 Castrop-
Rauxel 2
Suche preisgünstig Tl-Writcr,
Multiplan
Dieter Redlich, Eichenweg 3,
4620 Castrop-Rauxel 2
Suche Anwenderprogramme'.
Verkaufe etliche Module +
Erweiterungen. Morst
Nietowski, 02173/15395
Langenfeld
Verkaufe: original TI-EX-
Basic. Tel. 040/3193417
Anruf nach 1 8 h
Ext.-Basic + XB-Lehrg. +
50 XB-Prgrm. 250 DM,
1 0 Module (Schach, M.-
Maker usw.) ab 15 DM,
TI-Bücher ab 9 DM,
Telefon 02174/40654
T1-99A, RS232 ext. 32k,
P-Box incl. Disk, etl. Module,
einzeln zu v.
K. Berdon, Odenwaldstr. 12,
6056 Heusenstamm
Tel. 0610462185
Verkaufe Ext.-Basic für
VB 160,— DM + Daten¬
verwaltung & Analyse VB
45,- DM + Othello VB 20,-
+ Parsec VB 40,- DM +
Konsole (etwas defekt)
VB 60,- DM!
Matthias Orf, Birkenallee 34,
3507 Baunatal 1,
Tel. 0561/497990
TI-CLUB BAUNATAL bietet:
Clubheft mit 25 Seiten,
Prg.-Speicher (400 Program¬
me!), Entfernen von List¬
schützen, Drucker, toller Aus¬
weis für 2,— DM pro Monat!!
Info gegen 50 Pf. oder ak¬
tuelles Clubheft gegen 3,—
DM anfordern bei: TCB,
Matthias Orf, Birkenallee 34,
D-3507 Baunatal l.Tel.
(0561) 497990
TI-CLUB BAUNATAL sucht
Kontakt zu anderen Ti-User-
Clubs zwecks Info- und
Gedankenaustausch.
TI-CLUB BAUNATAL,
Matthias Orf, Birkenallee 34,
D-3507 Baunatal 1,
Tel. 0561/497990
TI-32K Speichererweiterung
f. Modul Box zu verkaufen
300 DM 06441/74830
HALLO 99’ User! Wie, Sie
sind noch nicht im MON¬
STERVISION Club! Dort
gibt es monatlich ein 32sei-
tiges Magazin mit vielen Vor¬
teilen für alle Mitglieder. Eine
Clubgebühr ist nicht vorhan¬
den! Gratis-Infos bei: MV
Club, Gratis-Info. Uesener
Ring 30, 2807 Achim
TI99/4A + Box + Disk +
Ext Basic + Sp. Synth +
Chess + Invaders + Joysticks
+ Literatur DM 1 100.
Tel. (SA, SO) 09621/85143
Verk. TI+Rec Kabel + Re¬
korder + Joaystick + 5 Mo¬
dule + Basic Lehrgang +
Literatur für 340 DM.
Tel. 06721/43307
Verkaufe: Ti + Ext. Basic +
Parsec + Music-Maker + viel
Software für nur 250,— DM
Ideal für Einsteiger
Markus Schröpfer, Schul-
str. 22, 8567 Neunkirchen
Suche Tl-User Club in Berlin
(West) zwecks Informations-
Austausch.
Ab 19 h. Tel. 811 51 46
6 Top-Hits direkt vom Autor.
Z.B. Nanuk der Eskimo,
Stardust, Alien-Landing.
Senden Sie 30,— DM im
Kuvert an: W. Döltsch
A.D. Hinterstein 10
6108 Weiterstadt 3
Letzte Lösung! Brauche
dringend Geld. Verk. TI99/
4A + TI XBasic + Bas. /
XBas. Lehrpr. + Lehrbücher
/ Lit. + Joy Adapter + 2fach
Rec. Kabel + Chis. Trail +
ca. 280 Progr. Alles gepfl.
VB 450 DM. Tel. 0231/
875916 ab 18 h
Wegen Syst.auflösung zu
verk. Org. TI RS232/V 24
100,—, Speechs. 70,—,
Module von 20,— bis 50,—,
Compiler 100,—, Atari
Module Jungle, Dig, Kong
je 40,- Tel. 09151-95153
Suche Heft Computer Praxis
12/84 in einigermaßen gutem
Zustand. Tausche gegen
100 EXB (Tib) Prg’s oder
zahle bis zu 5 DM. Verkaufe
engl. Handbuch für das
EXBModul für 15 DM-
Tausche Programme in TI
und Ex-Basic. Habt Ihr
Lust? Meldet Euch einfach
bei mir: 07156/34 941 od.
schriftl. Carlos Jarque,
Ludwigsburger Str. 14 /
7257 Ditzingen 1
ZU VERSCHENKEN habe
ich nichts ... aber da ich mir
eine 32K Erweiterung kaufen
möchte, bin ich gezwungen,
etwas aus meiner Computer¬
sammlung zu verkaufen. Z.B.
11 Adventure Cass. original
TI Stück 15,- DM.,
M*A*S*H* 40 - DM, TI
Bücher 20—30 DM, Computer
hefte z.B. HC, Compu-
tronic u.s.w. 2,— 50 — 3,—
DM, Spielmodule für ATARI
Compuer z.B. GYRUSS,
STAR-TRECK, Popeye,
O-BERT u.s.w. 30—50 i DM.
Info gegen frankierten Rück¬
umschlag bei: Manfred
Lipowski, In der Wanne 165,
462 Castrop-Rauxel 4,
Tel. 02305/72237
Komplett TI99/4A Konsole
+ PBox + RS232 + Ext. Basic
+ Laufwerk + 32 Kram +
Minimemory + Schach +
Lit. + Softw.
Tel. 07231/41436
Hey TI-Freaks! Wer hat Lust
mit Nappsoft Programme in
TI + Ex. Basic zu tauschen?
Liste an Martin Roth, Bruck¬
ner Str. 3, 6680 Neunkirchen
7
Verkaufe TI99/4A+dt.X-
Basic+orig. TI-Box m.
Controller+Laufwerk+Spiel-
module+Jovstickadapter+
viel Software auf Disk,
wegen Systemwechsel.
Abgabe gegen Höchstgebot!
C. Reusch, Tel. 0241/172129
Hallo TI E/A User. Wer von
Euch hat Lust, mit mir Prg’s
zu tauschen. Markus Jung-
hans. Tel. 06106/74182
Verkaufe TI99/4A + EX +
14 Module + Literatur +
Zubehör. Alles-original ver¬
packt. Tel. 02174/40616
nach 15 Uhr
Schüler sucht für TI99/4A
32 K Ext und Ext. Basic
o. Exb. II + M. Stief/Sand-
stücke 21/28 Bremen 61
Achtung TI-Adv. Freunde!!!
Jetzt gibt’s DAS Graphic-
Adv., auf das Ihr schon
lange gewartet habt. (ca. 16k)
TI-Basic; kein Adv.-modul
notwendig. Für DM 5 + Vers.
Bei J. Laux, Schulgartenstr.
20, 6638 Dillingen. Es lohnt
sich
Verk. Ex. Basic + Handbuch
+ 100 Super Programmen für
nur 200 DM. Ralf Ludwig,
Am Mergelsberg 31,4000
Düsseldorf 12, Tel. 0211/
297042
994A+Ex.B. (engl. u. Deu.H.
buch) + Kass. rec. + Kabel +
Spech-Syn. + Munchman+
Engl. Grammatik+Literatur
600,-. Tel. 069/554026
T. Veith
Tausch*Musik Maker*
Datenverw. u. Analyse*
Comp. Kurs Bis Nr. 56*
U.A.M. * Su. Extern Erw.
* Assembler * U.A.Ang.*
Schnittstelle für Direktan¬
schluß eines Druckers sowie
viele tolle Module-Preis
VB Tel. 06103/72518
Verkaufe meine Spielesamm¬
lung (ca. 300-350 Prg’s;
70 % EXB, 30 % Tib)"an den
am meist bietenden!!! Über¬
nehme Porto + Cassette N
(15 x C 60)! Tel. 07156/
34941 oder Carlos Jarque,
Ludwigsburgerstr. 14,
725 7 Ditzingen 1
Verkaufe 99/4A mit Box,
Dsk, 32K, X-Basic, E/A, dt.
E/A Kurs, Statistik, Modul¬
expander und viel Literatur.
Nur komplett! Neu über
3000,—jetzt 1600,—
05300/485 Uli
Verkaufe ExBasic +
Adventure Modul + 12
Cassetlen +Literatur für
250 DM Tel. 08638/67495
ab 19 h
Verk. Assemblerkurs: Asem-
4 Band 1 + 2 + Disk DM 50,-
C. Kater 7, Rue de Schoen-
fels, L-7432 Gosseldange
Tel. 328060
Suche HARDCOPY-Pro-
gramm für EPSON-Drucker.
Alexander Rupp, Kalman-
str. 45, 6600 Saarbrücken-,
Tel.: 0681/45134
Suche Schaltungsunter¬
lagen für TI-Druckerinter-
face sowie Schnittstelle
RS232. R. Schinkel,
Hamburger Str. 20717,
2200 Elmshorn
Verk. TI99/4a-Konsole +
Netzteil + 32 K extern
incl. durchgef. Bus u.
Centronic + Ext-Basic Modul
+ Rec. Kabel + Centronic-
Kabel + Joyst.-Adapter +
Literatur einzeln od. zusam¬
men, Preis: VHS
Tel. 05283/1850 Mo-Mi
18 h
Verk. TI und Ex Basic
Programme. Info gegen Rück¬
porto. B. Knedel, Tulpen¬
gasse 16, 3171 Weyhausen,
T.05362/71187
61
BÖRSE
Vcrk. TI-99/4A 400 DM
TX-Basic + Rec. Kabel +
Rec. + Joyst. + Cass. +
Munch Man + Literatur
T. Krause, 0211/741914
Tausche TI-J oysticks gegen
Car-Wars oder Ähnliches
Modul. Auch Programm¬
tausch. A. Scholz, Londoner
Ring 6, 6700 Ludwigshafen
Verkaufe Auswahl aus meiner
Programmsamlg. eine C-60
Kassette voll mit Programmen
für 10,— DM. Andreas Scholz,
Londoner Ring 6, 6700
Ludwigshafen. Info-Gratis
Verk. auch einzeln TI99/4A
+ P.Box + 32K + V. 24 +
Floppy + Ext. B+E/A +
deut. Anl. + Literatur +
7 Färb Drucker
VB 4500 DM
Tel. 0214/401384 ab 19 h
Verkaufe: TI99/4A + X-Basic
+ 32K+Joysticks+Rccorder+
3 Module+Viel Software
650,-. Tel. 02245/3983
Tausche TI-J oysticks gegen
ein Modul oder 30,—
0621/666424, A. Scholz,
Londoner Ring 6, 6700
Ludwigshafen. Auch Pro-
grammtausch!
+++ Super-Textadventure++
Wie Professionelles, aber ohne
Modul. 2-teilige, TI-Basic:
„Der Stein des Weisen“:
10 DM + Kassette o. 15 DM
(Schein und/oder Briefmar¬
ken) an: F. Zweers
(Tel.: 0231/63116), Holte-
str. 101a, 4600 Dortmund
72
Verk.: TI-Konsole mit Zube¬
hör (100,—) Ex Basic (130,—)
20 PGM-Module (a 20-40,-)
SprachSynth (80,—) Mini-
Assembl. (90,—) Morse¬
decoderinterface (100,—
8 Bücher (a 20,—) E/A-
Manual (40,—) ca. 600 PGM’s
auf Kass. (100,—) u.v.a.m.
Liste gegen Rückporto an
W. Hartleib, Hardenbergstr.
16, 3500 Kassel, Telefon:
0561/18967 od. 496351
Verk. TI99/4A, Joyst., Ex.
Basic, Edit. Assm. tdt. Handb.
+ Assm. Kurs, Cass. Rek.,
Drucker, Div. Module,
Bücher, Zeitschriften, preis¬
günstig auch einzeln.
Telefon 0234/382596
TI99/4A. Das Bücherpaket
4 Bücher 100 DM, 6 Spiel-
module VB 150-, 10 Dis¬
ketten mit Box 50 DM
Tel. 02041/22661
Suche Actiongasmes für Xbas.
+ 32 Kram + Cassette
(Basic-Loader) M. Nagler,
Tradtstr. 14, 8492 Furth,
099731517
Suche Masch. Games für
XBas + 32 Kram + Cas. (Bas.
Loader) M. Nagler, Tradtstr.
14, 8492 Furth, 09973/1517
Extended Basic + Ex-Bas.-
Lehrgang + 50 Ex.-Bas.
Programme 250,— DM,
10 TI-ModuIe (Schach,
Musik-Maker, Munch Man
usw.) ab 15 DM. Tl-Cassetten
15,- DM, Tl-Bücher ab 9,-
DM. Tel. 02174/40654
Verk. TI99/4A+EX-BaSic+
Joyst-Adapter+Rec.Kabel+
Tombst. City + 4 Bücher
ca. 70 Comp. Hefte + 9
Kass. + Kass. Darts V. Dyna¬
mic VB: 550 DM (nicht
einzeln). Tel. 06106/75427
ab 14 h. Markus Wilsdorf,
6054 Rodgau 3
Verkaufe: TI99/4A Konsole +
Extended-Basic II plus +
2 Module (Microsurgeon und
Schachmeister) + Recorder¬
kabel + Joysticksadapter +
2 Joyst. + Prgm’s + Hefte
VB: DM 500,- ÖS 3500,-
Tel: österreich/0662/26671
(Salzburg)
Suche Actionspiele für TI +
XBasic + 32KRAM + Casset-
tenrec. (als Bas. Poker)
Tel. 09973 1517
Verk. Disklaufw. (orig. TI)
für P-Box für nur 250,—
DM. Tel. 07144/5227 nach
18 Uhr
Verk. PBox + Controller +
Laufwerk + RS232 + 32 Kt
80 Disketten + viel Litratur
+ E/A für nur DM 1800,—!!
Ingo Kuning, Oberhainer Weg
1, 6380 Bad Homburg,
Tel. 06172/33879
Verk. Speech Synth. (100),
Module Speech Editor (50),
Music Maker (50), The
Attack (30), Pers. Rec.
Keep. (50) Video Games I
(20). Zus. für 250.-
Tel. 04841/4435
Suche Tl-User Club in Berlin
(West) zwecks Informations-
Austausch. Ab 19 h.
Tel. 811 51 46
***Software***Ex-Bas -
Writer-Diskette Statt Modul
weiterhin gute Softw.
(Assemb.) Anfragen
0421-822423
Verkaufe TI99/4A + X-
Basic + Minimem + Rekorder
+ Kabel + Joysticks + 5 Hand¬
bücher für 800 DM.
C. Bobek, Tel. 06752/2752
(ab 18 h)
Wer hat CRAZY MAN und
möchte mit mir Screens
tauschen? Bitte melden bei:
Selim özdogan, Wupper-
talerstr. 265, Köln 80,
0221/697254
M.P.7 (Strategiespiel für 2
Spiele) + 4 Games Ihrer Wahl,
zum Superpreis!!! Nähere
Info: Selim özdogan,
Wuppertaler Str. 26, 5000
Köln 80, T. 0221/697254
Suche günstig: 32K-Erw.
„Ext. Basic (plus II?), TI-
Joysticks oder Adapter.
Angebote bei: Selim özdogan,
Wuppertaler Str. 26, 5000
Köln 80
Crazy Man, Devil Quest und
andere Superlistings zu Spott¬
preisen. Für nähere Infor¬
mationen: 0221/697254
Suche Spielmodul im Tausch
gegen mein Tombstone Lizy
Angebot unter: 0221/697254
Biete Data Becker Bücher
Stck. 20,— sowie viele Pro¬
gramme Listings usw. für TI
99 u. 99/4 05554/8452
Supersoftware für den TI.
Made in Eigenbau. Liste
1,50 DM b.P. Flick, Rosen¬
weg 33, 6057 Dietenbach
(ca. 600 Pgr.)
Tausche Zentrale für TI-99/
4A Pgr. vom Computerclub
Dietzenbach, Rosenweg 33,
6057 Dietzenbach, 06074/
31977
Hier gibt es günstig Soft +
Hardware. z.B. Resettaster.
1,40 DM. An Peter Flick,
Rosenweg 33,f>057 Dietzen¬
bach
Neues Jahr, neue Tl-Software,
Info b. Peter Flick, Rosen¬
weg 33, 6057 Dietzenbach.
Neuer Katalog gegen 1,50
Tauschpartner + Hardware
gesucht. Angebote an Peter
Flick, Rosenweg 33, 6057
Dietzenbach, Tel. 06074/
31977*
Suche dringend Schach-
Modul/Verkaufe orig. Progr.-
Cassetten aus TI-Revue
5 Stk DM 30.
Tel. 02271/65673
Verkaufe: Module: X-Basic;
TE II (neu) bd. M. org. TI
m. Hd. Buch; 82k-Erw. f.
P-Box gg. Gebot.
Tel. 05621/4298
32 KByte für die Tl-Peri-
Box nur 199,-.
Bei: R. Moor
Tel. 02381/789030
Suche Pal-Modulator für
TI 99/4A. C. Hasselhuss,
0234/311411
Mini-Assembler mit Hand¬
buch & Software (90 DM)
sowie 1 Org. TI E/A Hand¬
buch (englisch) für 50 DM
zu verkaufen.
Wer hat Platine für das
Quick-Saue Modul aus dem
Chip-Heft 8/85. Bitte
melden bei: 02151/472541
Verk. TI99/4A + Ext. Basic
+ SW-Monitor + Cass.-Rec +
Kabel + Basic-Ext. B.
Lernkurs/Cass. + Handbücher
Dittmar 0561-61238
Verk. TI99/4A + Ex. Bas.
Dt. Handb. + 32 K Erweiterg.
Atronik, M. Centr. Schnitt¬
st. + Module Schach, Dat-
Verwaltg. Statistik, viel
Literat. Kompl. DM 650,—
Tel. 0841/74205 ab 19 h.
Otzko
♦ACHTUNG!!!
♦Suche TI-Besitzer
*In 4432 Gronau
*Meldet Euch bitte:
♦Tel. 02562/1362
Editor/Assembler VI.01-99/
4A. Nur XBasic, 32K (od.
16K) und Cass. Rec. nötig!
Mit vielen Util. (auch
GPLLNK). Komfort. Editor.
Wesentlich mehr Möglichk.'
als beim Minimem. Für
60 DM incl. Handb. Info
80 Pf. T. Klein, Weißstr. 14,
53 Borm 1
VERKAUFE: TI-99/4A 150
DM, TI-Revue 1—7 Special
I+II für 25 DM, Data-Becker
Buch, TI-Buch je 20 DM;
rekorder + Kabel 45 DM;
Tombs.—C. 10 DM
Atari Jungle Hunt 35 DM
Tel. 069/685142
Verkaufe Programme in TI
bzw. Ext. Basic! Andreas
Kolibius, Breslauer Str. 1,
7274 Haiterbach
Suche P-Box u. Disklaufw.
für ca. 40o—500 Mäuse,
außerdem Kontakt zu TI-
Usern in OBB. Carsten
Kaufung. Tel. 08161/65549
62
Verkaufe original TI Lauf¬
werk für 299 DM + TI
Invaders 10 DM
Tel. 06184/51117
Software jeglicher Art in
Exbas-Assembler auf Kas¬
sette für Konfiguration XBas
+ 32 K. Biete oder tausche
Modul Statistik German
30,— + Porto und original
Kassette TI 6+7 zusammen
10,- + Porto.
Tel. 05143/5961
Für TI 99/4A: Moduln Par- .
sec, Soccer, TI-Basic Lernkurs
(Cass.); Bücher, Bedienungs-
anl., Basic, TI-99 Tips &
Tricks, TI 199-Kochbuch,
Preis VHB, Tel. 06196-28779
Verk.: TI 99/4A, Ex-Basic
Box, 32 K-Ram, RS 232,
Disk-Contr. 1 Laufwerk,
Dalenv. Textv. Literatur
DM 1800,-. T. 0231/871581
TI99/4A, Pal-Modulat.,
Netzger, Modul Datenverw-,
Cas-Kabel, Lit. DM 250,-.
VVeiss, 3380 Goslar,
Franckestraße 14, Telefon:
05321/80668
An alle Modulbesitzer, die
die öde Spielerei leid sind!
Tausche meine Supersoftware
auf MC (Flugsim., Q-Bert,
Grafikadv.) in TI u. ExB.
gegen eure Module gebe z.B.
für Tombstone City 66 Supcr-
spiele, f. Donkey Kong 133
usw. Tel.: 02541/4153!!
Software für den 99’er? Klar,
Marin! TI-Futter zu verkau¬
fen, in TIB und ExB, für
jeden was! Frogger, Kong,
StarWars, Anwenderprogram¬
me usw. wegen Systemauf¬
gabe billig abzugeben, z.B.
50 Pgms für 50 DM, 100 für
90 DM, 150 für 130 Märker!
02541/4153
Verkaufe folgende Module!
Parsec/Carwars/Munch Man/
Tombstone City/TI-Invaders
je 30 DM. The attack/Chis-
holm Trail je 15 DM. Suche
Farbmonitor + Grafik-Tablet/
Angebote an Ch. Schroer,
Klünmarkt 2, 4426 Vreden,
02564/32599
The Spiders DM 5,—, The
Mission DM 5,— beide Spiele
in TI-Basic, Leercas. + Geld +
RP an M. Moeller, Eschen¬
weg 3, 2150 Buxtehude
Tausch/Verkauf: Video Chess
+ Othello. Suche: Burgertime,
Buck Rogers, Invaders, Dig
Dug = 16 Uhr: 0228/461787
BÖRSE
*Schaue* das Actionspiel in
Maschinensprache für den
TI99/4A + Mini-Memory
15 DM für Kassette + bes. an:
Valentin Schunack,
Schwalbenweg 21, 3550
Marburg 7
*Mini-Assembler (Radix),
komplett 90,— DM
* TI Ext-Basic 150,- DM
Kay 040/5254608
Schüler sucht Tl-Peripherie
(z.B. Disc, Box) auch defekt!
Melden bei J. Müller, Espan-
str. 84, 8510 Fürth.
Tel. 0911/79 94 25
Wer hat Lust, mit mir Pro¬
gramme in TI und Ex-Basic
zu tauschen? Stefan Rossow,
Winsener Str. 1, 2358 Katten¬
dorf
Suche TI99/4A 32K Karte
+ Disekttenlaufwerk +
Controller + Diskmanager.
Daniel Pylatiuk, Bessunger
Str. 127, 6103 Griesheim,
T.06155/4692
Verk.: TI99/4A + RS232/PIO
Karte + P-Box + S.Syn. +
Joystick + E-Basic + Mini-
Mem. + SW Monitor + TI
Tisch + Bücher. VB 1500 DM
Daniel Pylatiuk, 06155/4692
ACHTUNG ASSEMBLER-
FRAKS! Suche Kontakt
zwecks Austausch von In¬
formationen und Assembler¬
software. Weitere Interessen.
DFÜ und Hardwareselbstbau
G. Morgenthaler, Angelstr. 24,
7143 Vaihingen/Enz
SUCHE - SUCHE - SUCHE
P-Code Karte mit Manual und
Software.
Angebot an:
G. Morgenthaler, Angel¬
str. 24, 7143 Vaihingen/Enz
SUCHE - SUCHE - SUCHE
TI99: Erweiterungsbox mit
DSK-LW und jede Menge
anderes Zubehör für TI zu
verkaufen / T. 0209/610829
Verkaufe Minimem (org. TI)
incl. deutsche Einführung
190,- Ex. Basic (Org. TI)
incl. deutsches Handbuch
190,— Drucker, Fabr.
Centronics mit RS232 (V24)
Schnittstelle 500,—
Henrik Homann, Tel. 040/
678 37 15 ab 13 h
TI-99/4A + X-Basic + Rec-
Kabel + Tombstone + Lit +
Joysts = 300 DM
Disk-orig. TI—neu = 250 DM
Peri-Box = 250 DM
06132/5484
!!! ACHTUNG !!!!!!!
Wer tauscht mit mir???
Suche MOON PATROL
Biete INDOOR SOCCDR
Anfragen nur schriftlich an:
Hendrik Meinl, Europaring 70
6090 Rüsselsheim 7
Verk.: TI-Konsole 170;
Datenver. & Analyse 80;
XBasic &: Lehrgang 220;
Schach 60, Othello 35;
Finanzber. 20;J-Adaptcr 15;
div. Bücher zus. 75, Zubehör:
Liste anfordern bei: H.
Berneth; Bayreutherstr. 24;
8581 Heinersreuth; Telefon
0921/43462
Verkaufe Texas Instrument
TI-99/4A preiswert für
400,- DM. Mit Basic Modul
neuwertig. Tel. ab 18 h
Appell 6922261
Verkaufe TI 99/4A + 6 Modu¬
le + Cass. Kabel + 2 Joysticks
+ 2 Bücher + Basic-Lchrgang
DM600 VB.T. 02105-76131
Wir, der Tl-Club Technoma-
nia aus MG suchen noch Mit¬
glieder und Tauschpartner!
Schreibt an: H.-J. Eckers,
Hermann-Hesse-Str. 7,
4050 MGI oder: Marco
Scheloske, Von-Groote-Str.
154, 4050 Mönchcnglad-
bach 1, Tel. 02161/630614
MSX
Wenn Sie zu bequem sind,
um Ihre MSX-Litings von
Heften auf Cassette zu
schreiben, dann senden Sie
einen Brief mit Rückporto
an Wolfgang Maier, Stein¬
feldsiedlung 208, A-4654 Bad
Wimsbach und Sie bekommen
gratis ein Info.
Dringend gesucht!
MSX-Anwendersoftware,
Hausverwaltung f. kleine
Wohneinheit, jedoch mit
allen möglichen Abrechnungs-
aten auf Diskette.
T. 06128/43785 nach 19.30
Suche MSX Logo-Programme,
evtl. Tausch. T. 06109/61208
Verkaufe: SVI-728+SVI707
mit ed. 50 Programmen und
Zub. für DM 1250,-
Tel. 07222/47470 Samstag
MSX Wer tauscht Programme
nur Cassetten. Belgischer
Tauschclub, Sacha Doise,
DHF-BSD Natokaserne,
5000 Köln 40
Umfangreiche Software¬
bibliothek (Module)
MCCB melden bei Sven
Knüpling, 3800 Bremen 1,
Utbremer Ring 193
Zu verkaufen: VG8010
DM 100. 05746.305 ab
17.00 Uhr.
MSX-Tabellenkalkul. T-Plan-
Modul zum Einstecken mit
dt. Handbuch 120 Seiten
150,- DM. 0211/493038
Suche MSX-User zwecks
Info u. Programmtausch.
Schreibt an: Frank Horn,
Kutterweg 8, 2400 Lübeck 1
MSX SOMMERSPIELE MSX
lOOM-Lauf, Weitsprung und
Speerwerfen 1 —4 Spieler
SPITZEN GRAFIK / AUF
K ASS ETI’E INFO mit Bild¬
schirmphotos bei Roland
Tonnen, Postf. 31,4178
Kevelaer 1
Tausche CE-TEC Text
(Cas) gegen Lode Runner
Yamaha CX5 + Music-Key-
board + FM-Voic.-Soft¬
ware DM 1 190,—
Tel. 02421/84872
Org. Maschinen-Code-
Monitor f. SV-328 Cass.
geg. Geb. Suche ROM-
List., Sprachen und Literatur
für MSX 06887/5909 oder
G.W. Oppener Str. 42,
6612 Schmelz
Suche im Raum Allgäu
MSX-Hacker, Zwecks Er¬
fahrungsaustausch. Tel.:
07522/1432 v. 18-20 Uhr
A. Stöhr, 7988 Wangen/Allgäu
Leutkircherstr. 50
Ich CX5M5 Besitzer suche
Musikprogramme aller Art.
Schreibt bitte Eure Angebote.
Eryigit Kenan, Durrenhof-
str. 51,8500 Nbg. 30
Suche diverse MSX-
Progtamme.
Armin Wicki, Uberweidstr.,
CH-6034 Inwil
Verkaufe Zaxxon, Buck
Rogers und Grundkurs
Basic (Cas.) für je 30 DM
Michael Herrwerth,
Bifangstr. 3, 7869 Schönau/
Schw.
MSX MSX MSX MSX MSX
Verkaufe Batlle-Cross (Mod.)
für 20 DM. Suche Akustik-
Koppler
Stefan Thiel, Tunauerstr. 2,
7869 Schönau/Schw.
MSX MSX MSX MSX MSX
63
m
m
Seifen
für den
99/4A
SAMMLER
MATHE-TABELLEN
TORE
DIE HANDWERKER
KOMMEN
FÜR JEDEN ETWAS
WAS MAN SCHWARZ
AUF WEISS BESITZT