Skip to main content

Full text of "TI Revue Special Collection"

See other formats


%7r£rs 







ii§llj| 

m 

BT 

■B 

m 

n* a 

r i«T 


i 


b 


V - 



■- a * j 


B flfl 




B 

■ . J9 

W 'C 

B 


Säz~ . - . 

■ 

m 

SW Ä|-| L - Ä r 

r 




Nr. 4/86/April 


-DM 5,50 / ÖS 46 / SRF 5,50 


Multi plan für 
den TI 99/4A 


Steuern über den 
I/O-Port 


EU 



für Ihren TI 



BGB MONITOR 


DYNAMIC 

RAM 

(VRAM) 


TMS9918A/ 

9928A/ 

99»A 

ORIVE/VIDEO 

ENCODER 


RF 

MOOULATOR 


- HOME TV WITHOUT 
VIDEO INPUT 


FIGUR 1-1 - SYSTEM BLOCK DIAGRAMM 


Type 

Ausgang 

Farbnorm 

TMS9918A 

Composite Video Signal 

NTSC 

TMS9928A 

Färb Differenz Signale 

NTSC 

TMS9929A 

Färb Differenz Signale 

PAL/SECAM 































HeGa-Soft 

Software, Hardware und Literatur 
Postfach 1201 8044 Lohhof 

Deutsches Handbuch zum Editor/ 
Assembler DM 

TI-LOGO Kurzanleitung (28 S.) DM 

TI-LOGO ausführliches Buch (218 S.) DM 
Tl-Forth Diskette + Handbuch DM 


TI99/4A 


DM 98- 
DM 19,80 
DM 59- 
DM 148- 


Tl-Forth Extended Basic Loader Disc DM 25, 

Diskettenkatalog mit Autostart . DM 15, 

Preissenkungen für Software (alter / neuer Preis) 
iD Data (119,-) DM 75,- 

iD Konto (119,—) DM 75,- 

iD Profi Set (Konto+Data) (198,—) DM140,— 

Graphic Master ( 99,—) DM 65,- 

3 D World ( 99,-) DM 65,- 

NEUE Software: 

Macro Word Plus Textverarbeitung DM 145,- 

Benötigt Extended Basic, Speicher: 
erweiterung, Diskettenlaufwerk und 
Drucker 

Macroman (Spiel) DM 40,- 

Disassembler DM 75,- 

Alle früheren Angebote sind hiermit ungültig. 
Lieferung ausschließlich per Nachnahme. 
Versandkosten Inland: bis DM 100,— 

Bestellwert: 5,—; darüber: frei 
Versandkosten Ausland: jeweilige tatsächliche 
Postgebühren 

Hinweis: iD Programme: Bestellungen bis 1.3.86 
Auslieferung kurzfristig. Spätere Bestellungen 
Auslieferung ab Juli 86 w/Betriebsurlaub des 
Herstellers. 


DM 145,- 


DM 40, 
DM 75, 


TI-REVUE 
erscheint am 
25.April 86 


PERIPHERIE 

RS 232 Karte (orig. TI) 379.— 

RS 232 Karte (Atronic) 299,— 

32 K-Karte (Atronic) 299,- 

Disccontroller DSDD 
(Atronic) 449,— 

Disccontroller DSDD 
(Corcomp) 629,— 

P-Code-Karte (orig. TI) 749,— 

Compact Peripherie System CPS 99 mit 
1 Diskettenlaufwerk DSDD + 10 Disket¬ 
ten 1399,— 

CPS 99 mit 2 Diskettenlaufwerken DSDD 
-10 Disketten 1749.— 

Diskettenlaufwerk intern DSDD (Epson) 
mit Einbausatz 399.— 

Externe 256 

K-Erweiterung 589,— 

Externe 32 

K-Erweiterung 199.— 

Ext. 32 K-Erw.. 

batteriegepuffert 239,— 

Externe 32 K-Erweiterung * 1 
Centronicsschnittstelle 269,— 

Externe 32 K-Erweiterung + Centro¬ 
nicsschnittstelle - Kabel - Epsondruk- 
ker LX 80 1239,- 

dto. - Epsondrucker FX 85 1739.— 

dto. - Stardrucker SG 10 1259,— 

dto. - Stardr. 

Gemini 10 X 859.— 

Sprachsynthesizer 189.— 

Modulexpander, 3fach 125.— 

RGB-Modulator 179.— 

Akustikkoppler Dataphon S 21 d - ex¬ 
terne V-24-Schnittstelle • Verbin¬ 
dungskabel 539.— 

Ak. Dataphon S 21 d • Kabel 
für RS 232 Karte 299.- 

Tl-Maus. anschlußfertig 295.— 
Joystickinterface * 2 Joysticks 
Quickshot II 89.— 

Cassettenrecorderkabel 29.— 

MBX-Sprachsteuereinheit - 
Baseballmodul, anschlußfertig 349.— 


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 

Extendend Basic II Plus 289,— 

Mini Memory (Orig. TI) 169,— 

Editor/Assembler (32 K notw.) 179,— 
Tl-Writer (32 K notw.) 299,— 

Multiplan (32 K notw.) 259,— 

Tl-Logo II (32 Knotw.) 299,- 

Diskfixer (Navarone) 149,— 

Terminal Emulator II 85,— 

Connect four, Attack, Yahtzee je 29,— 
Alpiner, Car Wars, Chisholm Trail, 
Othello, Invaders, Munch Man je 39.— 
Black Jack, Fathom, Hopper. Dig Dug, 
Defender, Soccer, Parsec je 49,— 
Congo Bongo. Burgertime, Espial, 
Moonsweeper. Treasure Island. Bigfoot, 
Microsurgeon. Statistik je 59,— 

Star Trek, Tunnels of doom, Music Ma¬ 
ker, Jungle Hunt. Moon Patrol, Donkey 
Kong. Protector II je 69.— 

Buck Rogers. Return to Pirate's Isle, Ad- 
venturemodul. Video Chess je 75.— 
Dalenverwaltung . Analyse 79.— 
Popeye. Pole Position, Shamus je 89, — 
Video Chess * Defender + Dig Dug * 
Attack - Fathom nur 175.— 

Statistik - Donkey Kong nur 89.— 
Defender - Munchman + Soccer 99.— 

DISKETTEN- UND 
CASSETTENSOFTWARE 

Preisliste mit Gesamtübersicht erhalten 
Sie gegen Zusendung eines Freium¬ 
schlags (Kennwort: TI-99/4 A). 


Alle Preise inkl. MWSt. zuz. Versandkostenpauschale 
(Warenwert bis DM 1000,—/darüber): Vorauskasse 
(DM 8-/20,—), Nachnahme (DM 11,20/23.20), 
Ausland (DM 18,—/30,—). Versand nur gegen Voraus¬ 
kasse oder per NN; Ausland nur Vorauskasse. Ge¬ 
samtpreisliste gegen Freiumschlag. 

CSV RIEGERT 

Schloßhofstr. 5, 7324 Rechberghauwn, Tel. (07161) 5 28 89 


Tl-User: Wir helfen Ihnen 


Peripherie 


1398,- 



CPS 99 1 

mit 1 Laufwerk DS DD 
(360 KB), Disk-Steuerkarte 
32 K-RAM, RS-232 und 
Centronics 

256 K-Byte RAM (ext.) I 


32 K-Byte RAM (ext.) mit 
Centronics-Interface 268,- 


Graphic Tableau 


Alle Preise incl. MwSt. zuzüglich 5.- DM Versandkosten. Lieferung per Nachnahme 
oder Vorkasse, ab 200,- DM versandkostenfrei. 

Fordern Sie unsere kostenlose Preisliste an. 



Software 

Mini Memory 198,- 

Editor Assembler 165,- 

Assembler-Kurs II 79,90 

Tl-Writer (deutsch) 259,- 

Basic Compiler 98,- 

ID-Data 69,- 

ID-Konto 69,- 

Term. Emulator II 85,- 

Spiele ab 20,- 


Programm-Service 


!ll L 


D-5584 Bullay 
Bergstraße 80 
Telefon 06542/2715 


2 





INHALT 

Nr. 4/86/April 


DIALOG 


Steuern über I/O-Port 
Commodore-Drucker für 
den TI? 

Überlange Zeilen — bei 
mir geht es nicht! 

DIM mit Variable 
Laden langer Extended 
Programme 
Disk-Kontroller 
kompatibel? 

Epson-Handbuch MX 80 
Typ 1 gesucht 
Kommunikation mit 
anderen Computern? 

Ab Seite 4 


TEST & TECHNIK 

Multiplan: 

Auch für höhere Ansprüche 
Ab Seite 6 


SERVICE 


Delete-Sortier-Routinen 
Clubnachrichten 

Seiten 10—11 


Funkfernschreiben mit 
dem TI 99 

AbSeite 12 


So vergißt der TI 
keine Namen 
Screen-Saver 

Seiten 14—15 


Die Boolean-Variable 

Ab Seite 

54 

Börse — Zum Suchen 
und Finden 

Ab Seite 

56 

Assembler leicht 
gemacht 

Ab Seite 

61 


LISTINGS 

Star-T reck 

Ab Seite 

17 

Teufelsdreieck 

Ab Seite 

22 

Farbcode für 

Widerstände 

Ab Seite 

26 

Madbox 

Ab Seite 

27 

Text-Decoder 

Ab Seite 

35 

Softgraph 

Ab Seite 

38 

Platinen Zeichner 

Ab Seite 

42 

Joker-Poker 

Ab Seite 

44 

Ernährungsberater 

Ab Seite 

49 



Grüß Gott 
Guten Tag 

Da sind wir also wieder einmal. 
Aus den USA kommen erfreuliche 
Meldungen, was neue Software be¬ 
trifft. Einmal gibt es als Freeware 
einen C-Compiler und die Program¬ 
miersprache PILOT. Damit sind 
zwei weitere Sprachen für unseren 
TI 99/4A erhältlich. Auch neue 
Grafikprogramme sind im Kom¬ 
men. Bleibt zu hoffen, daß sich da¬ 
für dann auch Importeure finden. 
Wir werden jedenfalls versuchen, 
baldmöglichst über diese Program¬ 
me zu berichten. 

Apropos Freeware. Hier gibt es 
wohl bei den Usern eine gewisse 
Begriffsverwirrung. Der Name Free¬ 
ware ist auch etwas mißverständlich. 
Dabei handelt es sich keinesfalls 
um kostenlose Software. Vielmehr 
ist das eine neue Form des Ver¬ 
triebes, jeder, der dieses Programm 
hat, darf es unverändert weiter¬ 
geben. 

Allerdings wünscht der. Autor 
von den Benutzern eine gewisse 
Bezahlung. Das steht dann mei¬ 
stens in irgendeiner Textdatei auf 
der Diskette. Die Beträge sind aber 
meist sehr niedrig, so daß sich 
jeder daran halten kann, auf diese 
Weise kommt man recht preiswert 
zu guter Software, wie z.B. einem 
C-Compiler. Wer an diesen kom¬ 
men will, sollte sich einmal an die 
Clubs wenden, es gibt in Deutsch¬ 
land schon einige Exemplare. 

Viel Spaß mit dem TI 99/4A 
wünscht Ihnen bis zum nächsten 
Monat 

Ihr 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 Leser¬ 
telefone zur Verfügung. Für tech¬ 
nische und Assembler-Fragen 
Tel.-Nr. 0731/33220 und zu den 
Listings bzw. Fragen zu den Abon¬ 
nements und dem Kassettenservice 
Tel.-Nr. 089/1298013. Bitte beach¬ 
ten Sie, am Dienstag, 29. April, ist 
das Lesertelefon für technische Fra¬ 
gen (0731/33220) nicht besetzt. 


3 




DIALOG 



Steuern über 
I/O-Port 


Ich möchte über den I/O- 
Port meines TI 9/4A gerne 
externe Schaltungen steuern 
(Leuchtdioden, Motoren 
usw.). Wie geht das? Kann 
man den I/O-Port (wie bei an¬ 
deren Computern) über den 
CALL LOAD Befehl anspre¬ 
chen? Wie kann man sich 
ein Interface dazu bauen? 
Vielleicht könnten Sie eine 
Anleitung zu einem solchen 
Interface veröffentlichen. 

Thomas Leonding 

Der I/O-Port des TI 99/4A 
ist keine primitive User- 
Schnittstelle wie bei anderen 
Computern, sondern der volle 
Systembus. Dies bedeutet, 
daß hier alle für den Betrieb 
des Prozessor wichtigen Lei¬ 
tungen vorhanden sind. 
Daraus folgt aber genauso, 
daß sich dieser Port nicht di¬ 
rekt über CALL LOAD an¬ 
sprechen läßt. Einen Bauvor¬ 
schlag für eine Achtkanal 
Ein-1Ausgabe hatten wir in 
der TI-REVVUE 2/84 vorge¬ 
stellt. Diese kann sowohl an 
den Modulport wie auch an 
den seitlichen I/O-Port des 
TI 99/4A angeschlossen wer¬ 
den. Allerdings reicht es noch 
nicht, diese nur über ein 
CALL LOAD anzusprechen. 
Aufgrund einer besonderen 
Funktion im TMS 9900 (die 
CRU) benötigen wir dazu ein 
kurzes A ssemblerprogramm. 
Aber auch dieses ist natür¬ 
lich in der TI-REVUE 2/84 
mit veröffentlicht. 

Commodore- 
Drucker am 
TI 99/4A _ 

Ist es irgendwie möglich, den 
Commodore Drucker für den 
C64 über die Schnittstellen 
des CPS anzuschließen? 

Klaus H. Kropf, Bamberg 


Die Firma Commodore kocht 
beim C64 leider ihr eigenes 
Süppchen, d.h., die dafür pas¬ 
senden Drucker müssen mit 
einer ganz speziellen Schnitt¬ 
stelle ausgerüstet sein. Außer 
bei Commodore gibt es diese 
Schnittstelle nicht noch ein¬ 
mal. Mit Ihrem CPS 99 ste¬ 
hen Ihnen am TI 99/4A aber 
sowohl eine RS232 bzw. V24 
Schnittstelle und eine Centro- 
nics-Schnittstelle zur Verfü¬ 
gung. Im Fachhandel gibt es 
ja nun eine ganze Menge ver¬ 
schiedener Drucker, so daß 
Sie hier ganz bestimmt einen 
in Leistung und Preis zum 
Commodore Produkt ver¬ 
gleichbaren Drucker finden 
können. _ 

Nochmal: 
Überlange Zeilen 

Im Heft 7/85 veröffentlichten 
Sie unter Tips und Tricks 
Hinweise zur Eingabe überlan¬ 
ger Zeilen. Trotz genauer 
Befolgung der Anweisung 
funktioniert das bei mir nicht, 
die Zeile zu verlängern. Wo 
liegt der Fehler? Ich habe als 
Anfänger einen TI 99/4A er¬ 
standen. Mein erstes Pro¬ 
gramm (Manie Miner II), das 
ich abgetippt habe, stellte 
mich vor dieses Problem, da 
die Zeile 2560 4,5 Zeilen 
lang ist. 

W. Lutz, Nürnberg 

Der in der TI-REVUE 7/85 
veröffentlichte Tip bezog sich 
nur auf das Extended Basic. 
Um alle „Klarheiten“ restlos 
zu beseitigen“ deshalb hier 
nochmal die Hinweise für bei¬ 
de Basicvarianten, wie sich 
überlange Zeilen eingeben las¬ 
sen. 

Im TI-Basic gehen Sie bitte 
wie folgt vor: Die Zeile ein¬ 
geben, soweit wie möglich, 
ohne daß ein ERROR er¬ 
folgt (offene Strings mit ei¬ 
nem Anführungszeichen be¬ 
enden). Dann ENTER drük- 
ken. Nun tippen Sie die Zei¬ 
lennummer ein und drücken 
die Taste Pfeil nach unten 
(Func’t X). Nun können Sie 
weiter in die Zeile einge¬ 
ben. 

Beim Extended Basic 
geben Sie ebenfalls die Zeile 
soweit wie möglich ein. Um 
einen Error brauchen Sie sich 
hier nicht zu kümmern. Nach¬ 
dem Sie ENTER betätigt ha¬ 


ben, drücken Sie die Taste 
REDO (Func’t 8) und kön¬ 
nen nun weitere Zeichen in 
die Zeile eingeben. 

DIM mit Variable 

Schon oft habe ich bei an¬ 
deren Basicversionen die Mög¬ 
lichkeit bewundert, die Di¬ 
mensionierung von Variablen- 
Feldern im Programmablauf 
in Abhängigkeit einer Variab¬ 
len vorzunehmen. So zum 
Beispiel: 100 INPUT X 110 
DIM A(X,X) 

120 . 

Meine Frage daher lautet: Ist 
diese komfortable, variablen¬ 
abhängige Felderdimensionie¬ 
rung auch beim TI 99/4A 
möglich und wenn ja, wie 
wäre das zu realisieren? 

Dipl.-Ing. Werner Zacher, 
München 

So leid es uns tut, uns ist 
bisher keine Möglichkeit be¬ 
kannt, die Dimensionierung 
von Variablenfeldern von 
einer Variablen abhängig zu 
machen. Dies würde auch mit 
dem Basic des TI 99/4A 
kollidieren, denn vor dem ei¬ 
gentlichen Programmstart 
wird ja beim TI 99/4A die 
Variablenliste aufgebaut und 
der benötigte Speicherplatz 
für die Variablen reserviert. 
Wenn überhaupt, wäre nur 
folgende Möglichkeit in Ex¬ 
tended Basic mit Speicherer¬ 
weiterung gegeben: Suchen 
der entsprechenden Zeile mit 
der DIM-Anweisung im Spei¬ 
cher, poken der gewünschten 
Werte und dann über RUN 
100 ein Neustart des Pro¬ 
gramms. Dabei werden aber 
alle Variablen auf 0 bzw. auf 
einen Leerstring zurückge¬ 
setzt. Aber vielleicht kann 
uns hier ein Leser weiter¬ 
helfen. 

Laden langer 
Extended Basic 
Programme _ 

Ich schreibe ein Programm 
„Berechnung von Berufsaus- 
bildungsbeihilfe und Ausbil¬ 
dungsgeld“. Konfiguration: 
Extended Basic II plus, Lauf¬ 
werk usw. Software: LOAD- 
Programm (Diskettenverwal¬ 
tung von H. Martin, wie es 
auf den TI-REVUE Service- 
Disketten vorhanden ist. Um 


über den Programmabbruch 
wieder in die Laderoutine ein¬ 
steigen zu können, gab' ich 
wie folgt ein: 

500 CALL CLEAR :: PRINT 
“Tippe 3 x die 2“ 

510 CALL KEY(0,T,S) :: IF 
S=0 THEN 510 ELSE CALL 
BYE 

Daraufhin erschien, wie ge¬ 
wünscht, das Titelbild des TI. 
Auf den letzten Tip zur An¬ 
wahl von Extended Basic er¬ 
folgte der Autostart der Dis¬ 
kette, jedoch wurde das Pro¬ 
gramm nicht als „PRO¬ 
GRAM“, sondern als Datei 
mit der Bezeichnung INT/ 
VAR 254 bei einer Länge von 
51 Sektoren ausgegeben. Da¬ 
mit läßt sich das Programm 
natürlich nicht mehr laden, 
wunderlicherweise jedoch 
problemlos über OLD DSK1. 
usw. wieder einiesen. Bitte, 
was habe ich falsch gemacht? 

Chr. Kraftmeier-v. Rosen¬ 
berg, Leinfelden 

Sie haben überhaupt nichts 
falsch gemacht. Programme 
im PR OG FA M-Format wer¬ 
den in dem Aufbau, wie sie 
im Speicher sind, in das 
VDP-RAM umgeladen und 
von dort direkt hintereinan¬ 
der Byte für Byte auf die 
Diskette oder auch Kassette 
geschrieben. Nun stehen 
unter Extended Basic mit 
Disk-Controller aber nur ca. 
11 kByte im VDP-RAM zur 
Verfügung. Texas Instruments 
mußte daher bei der Ent¬ 
wicklung von Extended Ba¬ 
sic der Möglichkeit Rechnung 
tragen, daß X-ßasic Program¬ 
me in der Speichererweite¬ 
rung bis zu 24 KByte groß 
werden können (reine Pro¬ 
grammlänge). Also wählte TI 
für diese langen Programme 
ein anderes Aufzeichnungs¬ 
format, nämlich DIS/ VAR 
254. Die Lade- und Speicher■- 
routinen des Extended Basic 
b erücksicl i tigen na türlich 

diese beiden Formate. Wenn 
Sie also OLD DSK1.TEST 
durchführen, sucht das Exten¬ 
ded Basic auf der Diskette 
zuerst nach einem Programm 
namens TEST im PROGRAM- 
Fonnat. Findet es dies nicht, 
so sucht es nach dem Pro¬ 
gramm TEST im Format DIS/ 
VAR 254. Erst wenn auch 
dies nicht gefunden wurde, 
folgt ein ERROR. Nun zu 


4 




dem Loader-Programm: Dies 
ist, bedingt durch eine Abfra¬ 
ge, nur auf Programme im 
PROGRAM-Format be¬ 
schränkt. Dieses Programm ist 
nicht in der Lage, überlange 
Programme zu laden. 

Disk-Controller 
kompatibel? _ 

Ich habe einen TI mit Exten- 
ded Basic, Minimem, 32K-Er- 
weiterung und die P-Box mit 
einem MYARC Disk-Control¬ 
ler und einem doppelseitigen, 
doppeldichtem Disklaufwerk. 
Ist es möglich, damit auch 
Programm von einseitigen, 
mit einfacher Dichte arbei¬ 
tenden Disketten zu laden? 
Wenn nein, ist es dennoch 
möglich, mit dem Editor/ 
Assembler Modul zu arbei¬ 
ten? 

Ralph Benzinger, Mannheim 

Diese Frage ist ganz einfach 
mit JA zu beantworten. Alle 
bisher angebotenen Disk-Con¬ 
troller für den TI 99/4A 
können auch einseitige, mit 
einfacher Dichte beschrie¬ 
bene Disketten erstellen. Das 
ist ja zum Programmaus¬ 
tausch mit anderen Tl-Usern 
auch unbedingt notwendig. 

EPSON MX 80 
Typ 1 Handbuch 
gesucht _ 

Die Drucker EPSON FX und 
RX können mit dem Steuer¬ 
befehl ESC (27;64) software¬ 
mäßig in den Einschaltzu¬ 
stand zurückgesetzt werden. 
Dieser Steuerbefehl bewirkt 
das gleiche wie das Aus- und 
Wiedereinschalten des Druk- 
kers, d.h. es werden alle soft¬ 
waremäßig eingestellten 
Druckerfunktionen gelöscht. 
Gibt es auch für den TI 
99/4 Impact Printer (EPSON 
MX 80 Typ 1) einen Steuer¬ 
befehl, der das gleiche be¬ 
wirkt? Weiter druckt der TI 
99/4 Impact printer bidirek¬ 
tional mit Druckwegoptimie¬ 
rung. Beim Ausdrucken von 
Tabellen mit dem Tl-Writer 
wirkt damit aber das Druck¬ 
bild etwas ungleichmäßig. Es 
wäre deshalb nützlich, wenn 
man diese Druckerfunktion 
ausschalten, bzw. auf uni- 
direktionalen Druck (links¬ 


bündig vorwärts) umschalten 
könnte. Diese Umschaltung 
ist bei den Druckern EPSON 
FX und RX mit dem Druk- 
kerbefehl ESC (27;85;n) mög¬ 
lich. Gibt es Für den EPSON 
MX 80 Typ 1 einen Steuer¬ 
befehl, der in Verbindung mit 
dem Tl-Writer das gleiche 
bewirkt? 

Kurt Randegger, Berikon 

Leider steht bei uns in der 
Redaktion kein EPSON MX 
80 Typ 1, auch ist es uns 
nicht gelungen, an ein Hand¬ 
buch zu diesem Drucker zu 
kommen. Wir möchten diese 
Fragen daher hier an unsere 
Leser weiterleiten. Wer kann 
helfen? 

Kommunikation 
mit anderen 
Computern _ 

Ich besitze seit kurzer Zeit 
einen Sinclair QL. Dieses 
Gerät wurde von mir gekauft, 
weil die mitgelieferte Soft¬ 
ware außergewöhnlich gut ist. 
Ich möchte nun auf diesem 
Gerät meine komplette Datei¬ 
verwaltung und Kalkulation 
machen. Da die in diesem 
Gerät enthaltenen Bandlauf¬ 
werke nicht besonders gut 
und vor allem sehr langsam 
sind, möchte ich die entwor¬ 
fenen Dateien auf meinem 
„alten“ aber voll ausgebauten 
TI 99/4A übertragen und dort 
auf Diskette speichern. Der 
gleiche Weg soll natürlich 
auch umgekehrt möglich sein, 
damit mit alten Dateien wei¬ 
tergearbeitet werden kann. 
Besteht die Möglichkeit, den 
TI 99/4A mit dem Sinclair 
QL über die RS232 Schnitt¬ 
stelle in Verbindung treten 
zu lassen? 

Thomas Semm, 
Obersüßbach 

Prinzipiell ist die Kommuni¬ 
kation zweier Computer über 
RS232 Schnittstelle eigent¬ 
lich immer möglich. Das Ver¬ 
bindungskabel bzw. dessen 
Belegung ist ja auch schon in 
der Anleitung zur TI 99/A4 
Schnittstellenkarte beschrie¬ 
ben. Sie müssen darauf ach¬ 
ten, daß bei beiden Compu¬ 
tern die Optionen, also Baud¬ 
rate, Anzahl Stopbits, Pa¬ 
rität usw. gleich eingestellt 
sind. Da die Tl-Schnittstelle 


aus dem Basic heraus nur ein 
unvollständiges Protokoll 
fährt, benötigen Sie eventuell 
ein Termiml-Emulator Pro¬ 
gramm (z.B. Modul TEII von 
Texas Instruments) oder Sie 
müssen eine niedrige Baudrate 
wählen, damit das Basic „mit¬ 
kommt“. Ein entsprechender 
Anwendungsfall wird übrigens 
bei uns in der Redaktion zwi¬ 
schen einem EPSON HX 20 
und dem TI 99/4A seit län¬ 
gerem realisiert. 


IMPRESSUM 

TI-REVUE, die Zeitschrift für 
den TI PC und TI 99/4A er¬ 
scheint monatlich in der 
AKTUELL-GRUPPE, Elisa¬ 
bethstraß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: 
Harmut 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 Manuskripte 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 Pro¬ 
gramm-Service nach den 
Verlags-Sätzen! Alle in dieser 
Zeitschrift veröffentlichten 
Beiträge sind urheberrecht¬ 
lich geschützt. Jedwede 
Verwertung ist untersagt. 
Nachdruck nur mit aus¬ 
drücklicher schriftlicher 
Zustimmung des Verlages. 
Namentlich gezeichnete 
Artikel geben nicht un¬ 
bedingt 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 
©by TI/CBM Verlag 
SPS und Autoren. 


Zeig beim Porto 
Herz & Verstand: 




Kauf 
Wohlfahrts¬ 
briefmarken. 

Hilfe, die ihr Ziel erreicht. 

Erhältlich bis Ende Marz bei der Post, ganzjährig bei den Wohlfahrtsverbanden. 


5 




TEST 


AUCH FÜR 
GEHOBENE AN¬ 
SPRÜCHE: MULTI- 
PLAN AUF DEM TI 


Multiplan ist ohne jeden Zweifel eines der zur Zeit modernsten und be¬ 
nutzerfreundlichsten Arbeitsblattprogramme, welches für Computer zur 
Verfügung steht. Auf dem TI-99/4A sind 15416 Byte (Version 1,04) vor¬ 
handen. Um eine Vorstellung dieser Kapazität zu bekommen, sei erwähnt, 
daß das in diesem Beitrag erläuterte komplexe Beispiel 4216 Byte benötigt, 
also nur 28 % der bereitstehenden Kapazität ausnutzt. 


Um wirklich die volle Leistungs¬ 
starke von Multiplan zu erkennen, 
ist es unumgänglich, ein komplexes 
Beispiel auf dem Bildschirm aufzu¬ 
bauen. Das hier ausgewählte liefert 
Tabellen für die Anwendung in der 
Nahfotografie und erfüllt in der 
endgültigen Fassung professionelle 
Ansprüche. Von der Erläuterung so¬ 
genannter Spielbeispiele wurde be¬ 
wußt Abstand genommen, denn sie 
helfen einem Benutzer, der in 
Multiplan über Grundkenntnisse 
verfügt, nicht mehr weiter. Auch 
auf die Gefahr hin, daß ein an Foto¬ 
grafie nicht Interessierter es nicht 
direkt benutzen kann, enthält es 
aber alle Elemente, um im weiteren 
eigene komfortable Arbeitsblätter 
auf dem Bildschirm zu entwerfen, 
die hohen Ansprüchen gerecht wer¬ 
den. Einige prinzipielle Erläuterun¬ 
gen sollen aber zum besseren Ver¬ 
ständnis vorangestellt werden. 

Bemerkungen zur 
relativen Adressierung 

Vorweg eine grundsätzliche Be¬ 
merkung. In diesem Beitrag wird 
für „cell“ das deutsche Wort „Feld“ 
benutzt. Hin und wieder kommt 
auch in der deutschsprachigen Lite¬ 
ratur der Bezeichnung „Zelle“ vor. 
Eine Zelle ist aber in unserem 
Sprachgebrauch ein dreidimensiona¬ 
ler Raum und das für das englische 
Wort ,,cell“ auch gebräuchliche 
Wort „Element“ trifft den Sach¬ 
verhalt auch nicht genau. 

Bekanntlich läßt sich ein Feld 
und auch der Feldcursor (1. Cursor) 


von verschiedenen Kommandos aus 
— wobei wir im weiteren mit Kom¬ 
mandos auch die Unterkommandos 
mit einschließen — mittels der An¬ 
gabe der Zeile (row) und der Spalte 
(column) aktivieren bzw. Operatio¬ 
nen ausführen. Dabei muß nach R 
(von row) und C (von column) je¬ 
weils die betreffende Zahl folgen. 
Mit R7C6 ist das Feld innerhalb 
einer Matrix eindeutig definiert und 
gilt somit als Adresse. In dem ge¬ 
wähltem Beispiel befindet sich das 
Feld R7C6 in der 7. Zeile und der 
6. Spalte. Auf diese „direkte“ Weise 
läßt sich auch ein Feldbereich als 
Adresse angeben. Dabei ist die An¬ 
gabe „von Zeile bis Zeile und von 
Spalte bis Spalte“ unumgänglich. 
Das „Multiplan-bis-Zeichen“ ist der 
Doppelpunkt. Ein Feldbereich von 
Zeile 3 bis 7 und Spalte 2 bis 9 
muß in Multiplan folgendermaßen 
geschrieben werden: 

R3:R7C2:9 

Dabei darf zwischen den einzel¬ 
nen Zeichen kein Leerraum (Space) 
auftreten. Multiplan ist bedienungs¬ 
freundlich und deshalb läßt sich 
auch verkürzt so schreiben: R3:7C2 
:9. Beide Schreibweisen gehören 
zur direkten Adressierung. 

Da auch von einem Feld aus, auf 
dem der Feldcursor steht (aktives 
Feld), jedes beliebige Feld des 
Arbeitsblatts angesprochen werden 
kann (Zugriffs-Feld), ist die direkte 
Adressierung meistens umständlich, 
vor allem dann, wenn nachträgliche 
Spalten- oder Zeilenverschiebungen 
Vorkommen. Einfacher und kom¬ 
plexer einsetzbar ist dagegen die 
relative Adressierung. Grundsätzlich 


gilt, daß das Einträgen einer Adres¬ 
se in ein Feld — gleichgültig ob es 
sich um eine direkte oder relative 
Adresse handelt — unter dem Kom¬ 
mando „Value“ (Wert) erfolgen 
muß. Eine besonders bequeme 
Form für das Finden und Einträ¬ 
gen einer relativen Adresse ist unter 
dem Kommando „Edit“ möglich 
(siehe etwas später). 

Zum besseren Verständnis sei im 
weiteren das Feld mit der eingetra¬ 
genen Adresse als aktives Feld be¬ 
zeichnet und das von diesem Feld 
aus mittels der Adresse angesproche¬ 
ne Feld als Zugriffsfeld. Bei der 
relativen Adressierung steht die 
Adresse des Zugriffsfelds relativ 
formuliert im aktiven Feld. Dieses 
Feld sei z.B. R2C1. Der Wert dieses 


s 


1 

2 

3 

4 

5 

6 

7 

8 
8 
10 
11 
12 


Umsatz NOM FOOD 1985-^86 


Artikel 


!9- 


Mul 


Art.Nr. E. 


Waschmaschinen 

111056 

479 

Trockner 

111235 

279 

Gesch irrspli 1er 

111338 

167 

Autoradios 

111765 

568 

Gefrierschränke 

111279 

739 

Rundf unkgeräte 

097368 

675 


20 Gesamtumsatz 1986: 

BEFEHL: Ü32 Ausschnitt Bewegen Druck 
Name Ordnen Quit Radieren Schu 
Einen Befehl auswählen oder Anfangsbu 
Z20S5 SUrt1E(Z13SS:Z18SS) 


Felds — sei es nun ein Stringwert 
oder ein numerischer Wert — ergibt 
sich aber aus der hier eingetragenen 
Adresse des Zugriffsfelds. Da relativ 
adressiert wurde, muß Multiplan 
diese Zugriffsadresse erst errechnen. 
Um dies zu ermöglichen, wird als 
Adresse lediglich der Felderabstand 
zwischen dem aktivem Feld und dem 
Zugriffsfeld angegeben, wobei es 
drei verschiedene Schreibarten gibt. 
Aber nur die eleganteste Schreib¬ 
weise einer relativen Adresse soll 
hier erläutert werden. Dieser Ab¬ 
stand wird in eckiger Klammer als 
Feldabstand angegeben. Liegt das 
Zugriffsfeld links vom oder ober¬ 
halb des aktiven Felds, so muß 


6 





TEST 


der Felderabstand als negativer 
Wert bestimmt werden, z.B. [—2], 
befindet sich das Zugriffsfeld rechts 
vom oder unterhalb des aktiven 
Felds, so ist der Wert positiv. Die 
Eintragung innerhalb der eckigen 
Klammer geschieht aber vorzeichen¬ 
los, z.B. [3]. Wie bei einem Schach¬ 
spielfeld, wo sich irgendwo auf 
einem sonst figurenfreien Spielbrett 
eine Dame befindet, kann diese Fi¬ 
gur entsprechend der Schachregel 
jedes beliebige Feld entweder in 
einem einzigen Zug oder maximal 
in zwei Zügen erreichen. 

Ähnlich verfährt auch Multiplan. 
Befindet sich das Zugriffsfeld ent¬ 
weder in der gleichen Zeile oder in 
der gleichen Spalte, so ist für die re¬ 
lative Adresse nur eine einzige ecki- 


13:18:88 


für den TI/99A 


Stck. 


Gesamt 


6? 

32.893,00 DM 

83 

23.157,00 DM 

17 

2.839,00 DT, 

126 

71.568,00 DM 

38 

28.882,00 DM 

26 

17.550,00 DM 



jen Format 

Gehezu Hilfe Kopie Löschen 

Aragen Uerändern Wert Xtern Zusätze 

jn eingehen 



frei 


flultiplan: TfMP 


ge Klammer mit Wertangabe not¬ 
wendig. Befindet sich das Zugriffs- 
feld dagegen außerhalb dieses ge¬ 
dachten Linienkreuzes, so muß die 
relative Adresse unbedingt zwei 
eckige Klammem mit Wertangabe 
enthalten. 

Beispiele bezogen auf das aktive 
Feld R7C6: 

* Das Zugriffsfeld ist das Feld 
R7C3, dann ist die relative Adres¬ 
se RC[—3], denn das Zugriffs¬ 
feld befindet sich in der gleichen 
Zeile, aber in der 3. Spalte links 
vom aktiven Feld. Deshalb die 
Wertangabe hinter dem C. 

* Das Zugriffsfeld ist das Feld 
R9C7, dann ist die relative Adres¬ 


se R[2]C[1], denn das Zugriffs¬ 
feld befindet sich 2 Zeilen unter¬ 
halb und 1 Spalte rechts vom ak¬ 
tiven Feld. 

Befindet sich im Zugriffsfeld 
R7C3 beispielsweise der numerische 
Wert 777, dann wird dieser Wert 
auch im Feld R7C5 übernommen 
und angezeigt, wenn mittels Value 
die relative Adresse RC[—3] im 
Feld R7C6 eingetragen wurde. Auf 
diese Weise kann auch ein eingetra¬ 
gener Stringwert von einem Zugriffs¬ 
feld in ein aktives Feld übernom¬ 
men werden. 

Derjenige, der sich in der For¬ 
mulierung einer relativen Adres¬ 
se erst einarbeiten möchte, sollte 
wie folgt verfahren: 

* Feldcursor auf geplantes aktives 
Feld bringen 

* Kommando „Edit“ wählen 

* Mit Pfeiltasten (Tastenkombina¬ 
tion FCTN E, S, D oder X) jetzt 
den Feldcursor auf dem Zugriffs¬ 
feld plazieren. Auf dem Weg"dort¬ 
hin wird bei jedem Schritt die 
für dieses Feld gültige relative 
Adresse sichtbar und zwar die 
vom aktiven Feld aus berechne¬ 
te Adresse (!). 

* Taste ENTER drücken 

Der Feldcuros spingt sofort zum 
aktiven Feld zurück und speichert 
die so ermittelte relative Adresse 
des Zugriffsfelds im aktiven Feld (!) 
ab. Wird jetzt das Zugriffsfeld auf¬ 
gesucht und dort mit Kommando 
,,Alpha“ oder „Value“ ein Wert 
(Stringwert bzw. numerischer Wert) 
eingetragen und mit ENTER abge¬ 
speichert, so erscheint dieser sofort 
auch im aktiven Feld. Dieser ge¬ 
schilderte Komfort läßt sich in der 
praktischen Arbeit bei der Ermitt¬ 
lung der relativen Adresse durch¬ 
aus ausnutzen. Dabei spielt es 
keine Rolle, wenn Felder, über die 
der Feldcursor wandert, schon mit 
Inhalt versehen sind. 

Relative Adressen lassen sich in 
eine Berechnungsformel mit einbau¬ 
en. So übernimmt beispielsweise 
R[—I]C—10 den numerischen Wert 
des Zugriffsfelds (eine Zeile ober¬ 
halb und innerhalb der gleichen 
Spalte des aktiven Felds) und sub¬ 
trahiert davon den Wert 10 (—10). 

Ein besonderer Komfort von 
Multiplan besteht darin, daß im 
Falle des Einfügens einer Leerspal¬ 
te oder Leerzeile in einem bestehen¬ 
den Arbeitsblatt mittels des Kom¬ 


mandos „Insert“ alle Zahlenang; 
ben in den relativen Adressen, a) 
so innerhalb der davon betroffe¬ 
nen eckigen Klammer, automa¬ 
tisch geändert werden. Das glei¬ 
che gilt natürlich auch für das 
Löschen von Zeilen und Spalten 
mittels des Kommandos „Del“ 
(von Delete). 

Noch eleganter mittels Namen 


Ein Feld oder ein Feldbereich 
kann mit einem Namen versehen 
werden und zwar mit dem Kom¬ 
mando „Name“. Hier soll nur die 
Namensgebung für immer jeweils 
ein Feld interessieren. Die Namens¬ 
gebung für Felder ist beispielsweise 
dann sinnvoll, wenn es sich um Fel¬ 
der handelt, die von außen (ex¬ 
tern) numerische Werte erhalten 
(Parameter) sollen und diese Werte 
dann in anderen Feldern zur Be¬ 
rechnung eines neuen Werts benutzt 
werden. In diesem Fall wären die 
Parameterfelder die bisher schon 
erwähnten Zugriffsfelder und die 
Namen vergleichbar mit Variablen¬ 
namen in BASIC. Der Zugriff vom 
aktiven Feld aus mittels einer ab¬ 
soluten und relativen Adresse auf 
dieses Namensfeld wurde im Prinzip 
schon behandelt. Besitzt das Zu¬ 


griffsfeld aber einen Namen, der 
beispielsweise auch aus einem ein¬ 
zigen Buchstaben bestehen kann, so 
ist es nur notwendig, diesen Namen 
mittels Kommando „Value“ (!) 
in das aktive Feld einzugeben oder 
es in eine Berechnungsformel direkt 
mit einzubeziehen und diese For¬ 
mel dann in das aktive Feld ein¬ 
zugeben. Multiplan greift auf die 
„Variable“ bei Bedarf zurück. 

Bei dieser eleganten Methode 
sind einige Besonderheiten zu be¬ 
achten. Bei einer Namensgebung 
unter Kommando „Name“ er¬ 
scheint die Aufforderung im Menü 
nach einer erneuten Zugriffsmög¬ 
lichkeit auf die Original Multiplan- 
Diskette („ENTER to retry access 
to MP disk“). Bei Vorhandensein 
nur eines Diskettenlaufwerks muß 
sich die TIMP-Disektte (also die 
TI-Multiplan-Diskette) im Laufwerk 
befinden. Dies ist mit der Taste 
„Y“ zu bestätigen. 

Wird in ein aktives Feld ein 
schon für ein anderes Feld vergebe¬ 
ner Name irrtümlich noch einmal 
mit Kommando „Name“, und nicht 
wie es richtig wäre, mit Kommando 


7 





TEST 


„Value“ eingegeben, kann es dazu 
kommen, daß Multiplan hängen 
bleibt. Falls auch der Versuch mit¬ 
tels der Tastenkombination CTRL 
= (CANCEL entspricht Rückkehr 
zum Zentralmenü) nicht zur Rück¬ 
kehr führt und sich die MP-Disket- 
te auch tatsächlich im Laufwerk be¬ 
findet, hilft nur ein vorübergehen¬ 
des Abschalten der Anlage. 

Wurden schon Namen, Formel, 
Formel mit Namen und relative 
Adressen in das Arbeitsblatt ge¬ 
schrieben, so kommt es bei jedem 
Eintrag in ein aktives Feld zu einem 
erneuten Durchrechnen aller betrof¬ 
fenen Felder. Nach Erscheinen des 
Aufforderungssatzes nach Rückgriff 
auf die MP-Diskette und Bestätigen 
durch die Taste Y, muß das Wort 
,,to“ von ,,MP disk“ deshalb auf¬ 
merksam eine Weile beobachtet 
werden, denn hier erscheint bei 
nicht fehlerhafter Eingabe schlie߬ 
lich eine Zahl, die sprunghaft klei¬ 
ner wird, bis schließlich das Lauf¬ 
werk anspringt. Dabei vergeht unter 
Umständen eine gewisse Zeit. Dies 
läßt sich vermeiden, wenn unter 
Kommando ,,0pt“ reeale (sofort 
rechnen) ,,(No)“ verbart wird. Mit 
der Tastenkombination FCTN 8 
(RECALC) kann dann diese Aus¬ 
rechnung erfolgen, wann immer es 
gewün scht wird. _ 

Noch eleganter 
mittels Namen _ 

Während Formel und relative 
Adressen und Namen (!), die alle 
unter „Value“ vereinbart werden, 
sowohl unten im Zentralmenü als 
auch mittels Kommando „Edit“ 
direkt sichtbar und korrigierbar 
sind, lassen sich unter Kommando 
„Name“ vereinbarte Namen äußer¬ 
lich nicht erkennen. Zur Kontrolle, 
ob sie tatsächlich vorhanden sind, 
hat es sich bewährt, sie mittels 
Kommando „Go“ (GOTO Name) 
aufzurufen. Der Feldcursor springt 
dann in das mit dem betreffenden 
Namen versehene Feld. Zweckmä¬ 
ßig ist es bei dieser Verfahrensweise, 
den Feldcursor vorher in die HOME- 
Position zu bringen (CTRL 1). 

Bei der Wahl von Zeichen für 
einen Namen sind zwar Kleinbuch¬ 
staben zugelassen und beim Aus¬ 
druck auch als solche vorhanden, 
aber Multiplan macht zwischen 
Groß- und Kleinbuchstaben keinen 
Wertunterschied. Somit ist bei¬ 


spielsweise F und f identisch. Trotz¬ 
dem ist es manchmal nützlich, auch 
Kleinbuchstaben für Namen zu be¬ 
nutzen, z.B. aus Gründen der bes¬ 
seren Übersicht. 

Der besondere Vorteil für die 
Vergabe von Namen für bestimm¬ 
te Felder besteht darin, daß sich 
diese Namen (Symbole) direkt in 
eine Formel einbeziehen lassen und 
die Angabe der relativen Adresse 
dann natürlich entfällt. Alle Felder, 
die als Eingabcfelder (Parameter) 
benutzt werden, sollten prinzipiell 
einen Namen erhalten, weil so auf 
diese Weise auf sie jederzeit zurück¬ 
gegriffen werden kann._ 

Die IF-Funktion _ 

Diese Funktion ist in der Original- 
Bedienungsanleitung als Format fol¬ 
gendermaßen dargesteltl: 

IF (Logical, Then Value, Else Value) 

Die Angabe des Formats ist in 
dieser Weise mißdeutig, verstärkt 
noch durch das gewählte Beispiel, 
aus dem man durchaus schließen 
könnte, die IF-Anweisung sei aus¬ 
schließlich in Verbindung von 
Stringwerten einsetzbar. Deshalb 
hier der Versuch einer präziseren 
Format-Angabe: IF(Verglcichs- 

bzw. logische Operation, Wertl, 
Wcrt2) 

Im Prinzip ist die Multiplan-IF- 
Anweisung eine Basic-IF-Then-Else- 
Anweisung, allerdings mit dem 
Unterschied, daß keine Programm¬ 
verzweigungen möglich und auch 
nicht notwendig sind. Das erste 
Komma in der Klammer entspricht 
dem THEN (dann) und das zweite 
Komma dem ELSE (sonst). Bei 
Vergleichs- bzw. logischen Ope¬ 
rationen sind alle bekannten Ver¬ 
gleichs-Operatoren wie größer, klei¬ 
ner, gleich usw. und drei unter¬ 
schiedliche logische Operationen 
(logische Verknüpfungen) zugelas¬ 
sen, also auch AND, OR und NOT 
als logische Operatoren. Ist das Er¬ 
gebnis der Vergleichs- bzw. logi¬ 
schen Operation wahr (logische Va¬ 
riable erhält intern den Wert —1), 
dann gilt für das aktive Feld in der 
IF-Anweisung der Wertl. Bei un¬ 
wahr (logische Variable erhält in¬ 
tern der Wert 0) dagegen der Wert2. 
Die IF-Funktion wird wie eine 
Formel in ein aktives Feld unter 
dem Kommando „Value“ einge¬ 
tragen. Irrtümlich gesetzte Space 
werden von Multiplan sofort korri¬ 


giert, ausgenommen natürlich im 
String. 

Als Wertl oder W^Tt2 kann in 
der IF-Anweisung folgendes stehen: 

* Ein numerischer Wert z.B. IF 
(NEU >17,9999,777) wenn der 
Inhalt des Felds mit dem Namen 
NEU größer als der numerische 
Wert 17 ist, dann erhält das akti¬ 
ve Feld den Wert 9999 (hier 
Wertl) zugewiesen, andernfalls 
den Wert 777 (hier Wert2). 

* Ein Stringwert. Dieser muß dann 
aber in der Anweisung in Anfüh¬ 
rungsstrichen stehen, z.B. so: 
IF(ALT>NEU„alt“,„ncu“). In 
Abhängigkeit der Inhalte der Fel¬ 
der mit dem Namen ALT und 
NEU wird in dem aktiven Feld, 
in der sich die IF-Anweisung be¬ 
findet, entweder das Wort „alt“ 
oder „neu“ angezcigt. 

* Ein Name. Dieser darf nicht in 
Anführungsstrichen stehen, denn 
dann würde er als String inter¬ 
pretiert. Also gültig ist folgendes: 
IF(ALT=NEU„,gleich“,ALT) 
Wenn der Inhalt der Felder mit 
dem Namen ALT und NEU 
gleich ist, so erscheint im aktiven 
Feld das Wort „gleich“, andern¬ 
falls der Wert des Felds ALT. 

* Eine Formel. Innerhalb dieser 
Formel .sind sowohl Namen, re¬ 
lative und absolute Adressen zu¬ 
gelassen, z.B. so: 

IF(A(B,R( —1 ]C* 100+F—R1C10, 
R[—1 ]C/100+F+R1C10) 

F ist in diesem Beispiel ein Name. 
Natürlich kann die Form von 
Wertl und Wert2 unterschiedlich 
formuliert sein, allerdings sind da¬ 
bei die soeben erläuterten Bedin¬ 
gungen einzuhalten. 

Als lo,gische Operation soll der' 
logische Operator AND in Ver¬ 
bindung mit zwei Vergleichsopera¬ 
tionen einmal als Beispiel ange¬ 
führt werden, um damit zu zeigen, 
wie leistungsstark Multiplan auch 
in dieser Beziehung ist. 

IF(AND(A(7,B>I0), „Beide er¬ 
füllt“,„Einer erfüllt“) 

Die Spalte, die als aktives Feld 
die IF-Anweisung enthält, muß mit 
dem Kommando „For“ (FORMAT 
Width) auf die Feldbreite von 18 
Zeichen gebracht werden, weil 
sonst nicht der vollständige String 
angezeigt werden kann. Zwei Felder 
erhalten die Namen A und B. Falls 
vor Definierung der Namen die IF- 
Anweisung in das aktive Feld ein- 


8 



TEST 


getragen wurde, erscheint hier ,,# 
NAME?“. Werden numerische Wer¬ 
te in das Feld A und Feld B einge¬ 
tragen, so erscheint im aktiven 
Feld der Text entweder „Beide er¬ 
füllt“ oder „Einer erfüllt“. Auf die¬ 
se Weise können alle drei logischen 
Operationen angewandt werden. 
Wichtig ist, dabei in der Anweisung 
die Klammern richtig zu setzen. 
Auch tief verschachtelte logische 
Operationen sind durchaus möglich 
und dadurch mehrfache Vergleiche 
möglich. 


Typenradschreibmaschinen be¬ 
sitzen in der Regel nicht das Zei¬ 
chen kleiner und größer. An an¬ 
derer Stelle wird eine Kleinziffer 
2 (für kleiner) oder 3 (für größer) 
gedruckt. Ebenfalls nicht vor¬ 
handen ist die eckige Klammer. 
An ihre Stelle wird der Gro߬ 
buchstabe Ä und Ü gedruckt. 
Hier hilft nur, sich ein Typenrad 
mit diesen vier Zeichen ändern 
zu lassen (z.B. Fa. Drcusicke, 
Berlin-Tempelhof führt so etwas 
fachgerecht aus). 


und folgendes eingeben: 

OPEN#1:„RS232.BA=4800“ 

(bzw. die eingestellte Baudrate) 

P RINT#1 :CHR# (2 7)&„R“&CHRS 

( 0 ) 

CLOSE#l 

Nach der zweiten Anweisung ist 
im Drucker ein leichtes Rucken hör¬ 
bar. Der USA-Zeichensatz ist jetzt 
angesteuert. Darum nur darauf ach¬ 
ten, daß der Drucker zwischenzeit¬ 
lich nicht wieder ausgeschaltet 
wird. Auf TI-Grundbild zurückge¬ 
hen und jetzt Multiplan anwählen. 



Chese praktische Standard Box Nr 2021 (Cassette Game File) von Hama bringt endliche Ordnung in die vielen Tl-Module 
l°nrHnl e t n . d 't a ^ ware eS d,e Modu ' e .ausdrücklich entwickelt. Insgesamt 18 Module lassen sich luf diese Weise übersichtlich 
SSrhSfh dSr Färhp 9e hpr t'f Facher ? ber auch ZUr Aufbewah ™ng von Cassettenboxen dienen. In dem 

Aucik^Cass^tförraufne^lrnen' 0 ^ 671 S ° nderfach lassen slch kle,nere Druckschriften plazieren. Die 18 Fächer können aber auch 


Sollen die in einem Arbeitsblatt 
verwendeten Formeln auf einem 
Drucker ausgegeben werden, muß 
dies über das Kommando „PRINT 
OPTIONS“ vereinbart werden. Da¬ 
bei ist das Wort „formulas:“ mit 
„Yes“ (ja) zu bestätigen. Dabei 
kann es aus verschiedenen Grün¬ 
den beim Drucken zu scheinbaren 
Formelverstümmelungen kommen. 


* Matrixdrucker sind in der Regel 
hardwaremäßig auf deutschen 
Zeichensatz, softwaremäßig vor¬ 
übergehend auf USA-Zeichensatz 
umzustellen. Dann stehen auch 
die eckigen Klammem zur Ver¬ 
fügung. Hierzu gehört z.B. der 
Matrixdrucker Epson MX-80 und 
FX-80. Bevor Multiplan ange¬ 
wählt wird, TI-BASIC ansteuern 


Darauf lassen sich der gesamte 
Text, die Formeln und alle IF-An- 
weisungen — die im Prinzip auch 
Formeln sind — mit den Zeichen 
ausdrucken, wie sie auf dem Bild¬ 
schirm standen. 

Dr. Arnim Tölke 


Wird im nächsten Heft fortgesetzt! 


9 



TIPS & TRICKS 



Mit dieser Routine kann man eine oder mehrere Zeilen aus einem 
Basicprogramm löschen. Wer schon einmal viele Zeilen aus einem 
langen Programm löschen mußte, weiß, wie zeitaufwendig das beim 
TI ist. 

Der Befehl ist nur als Comman d verwendbar. 

Aufruf: Call Link (“DEL“, von Zeilennr., bis Zeilennr.). Sollten 
durch diesen Befehl alle Zeilen gelöscht werden, wird automatisch 
der Befehl NEW ausgeführt. Frank Rieger M2 


* ********************************** 

* ************************************ 


* * * 

* * DELETE LINE A TO LINE B * 

* * * 

* * EINLADEN IM MINIMEM MIT OPTION L * 

* * . * 

* * STARTEN IM TI-BASIC: * 

* * * 

* * CALL LINK("DEL”, A, B) * 

* * * 

* * VON * 

* * * 

* * FRANK RIEGER * 

* * * 


* ************************************ 
* ********************************** 


MS 


M4 


MS 


M6 


MOV 

11,15 

MOVB 

QRUNFL.G, l 

SRI. 

l.*8 

LT. 

0, >1900 

CI 

> . > 1 

7EQ 

M4 

CLP 

0 

LI 

1. > t 

BL NP 

GNUMREF 

BL UP 

QXMLLNK 

DATA 

>1200 

MOV 

QFAC,3 

7EQ 

MS 

T NC 

1 

BLUP 

PNUMREF 

BL UR 

Oa'MLLNK 

DATA 

>1200 

MOV 

QFAC,4 

C 

3,4 

JGT 

MS 

MOV 

0 >8330,0 

LI 

1 , FAC 

LI 

?, >2 

BLUP 

0VMBR 

C 

4.0FAC 

7EQ 

M5 

AI 

0, >4 

C 

0,0 >8332 

7LT 

M2 

LI 

0, >1A00 

BLUP 

QERR 

MOV 

0,5 

BLUP 

0VMBR 

C 

3,QFAC 

JEQ 

M7 

AI 

0, >4 

C 

0,0 >8332 

JLT 

M6 

IMP 

M3 



DEF 

DEL 

PUNFLG 

EQU 

>8344 

NUMREF 

EQÜ 

>6044 

XMLLNK 

EQU 

>60 IC 

FAC 

EQU 

>834A 

VMBR 

EQU 

>6030 

ERR 

EQU 

>6050 

VSBR 

EQU 

>602C 

VMBU 

EQU 

>6028 

GPLLNK 

EQU 

>6018 

STATUS 

EQU 

>837C 

VSBU 

EQU 

>6024 


M7 

MOV 

0, 6 

M8 

MOV 

5,0 


TNCT 

0 


LI 

1, FAC 


LI 

2, >2 


BLUP 

QVMBR 


MOV 

QFAC,7 


MOV 

5,0 


LI 

2, >4 


BL 

QM 12 


A 

2,Q >8330 


A 

2,5 


10 




M9 


M 1 0 


Ml 1 


Ml? 


Ml 3 


MOV 

7,0 

DEC 

0 

BL WP 

@VSBR 

SPL 

1.8 

MOV 

1.2 

INC 

2 

BL 

@M 1 2 

A 

2,0 >8330 

A 

2,@>8332 

A 

2,3 

A 

2,6 

MOV 

2,8 

MOV 

@>8330,0 

INCT 

0 

L. I 

2, >2 

LI 

1 , FAC 

BL UP 

@VMBP 

C 

@FAC,7 

JGT 

M10 

A 

8,@FAC 

BL WP 

PVMBW 

AI 

0, >4 

C 

0, @>8332 

ILT 

M9 

C 

5,6 

ILE 

M8 

C 

@>8330,@>8332 

.7 LT 

M1 1 

BLUP 

PGPLLNK 

DATA 

>21 6F 

CLP 

0 

MOVB 

0,PSTATUS 

B 

*15 

MOV 

0,3 

DEC 

3 

MOV 

3,4 

A 

2,4 

MOV 

0,9 

S 

@>8330,9 

JEQ 

M14 

MOV . 

3,0 

BL WP 

PVSBR 

DEC 

3 

MOV 

4,0 

BLUP 

@VSBW 

DEC 

4 

DEC 

9 

JGT 

Ml 3 


M14 B * 1 1 

END 


SCHNELLE 

SORTIER 

ROUTINE 

Schon in früheren Ausgaben der TI-REVUE 
wurden verschiedene Sortierroutinen vor¬ 
geschlagen. Die hier vorgestellte sortiert 
50 Strings in ca. 4 Sekunden, allerdings 
wird die Geschwindigkeit damit erkauft, 
daß nur nach dem ersten Buchstaben sor¬ 
tiert wird. R.H.H. Prikcinoivski 

100 RANDOMI2E :: N=50 :: DIM 
AS(50) 

110 CALL CLEAR :: PRINT " 

N; "RANDOM uords.": : 

120 FÜR 1=1 TO N :: FOR J=1 
TO 5+INT(RND*5):: AS(I)=AS(I 
)kCHRS(INT(RND*26)+65):: NEX 
T J : : PRINT " i;TAB(6) ; 

" ;as(d :: next i 

130 DIM BS(51),T(26),Q(50):: 

A M = 6 4 

140 FOR C=1 TO N :: A=ASC(AS 
(C))-am :: Q(C)=T(A):: T(A)= 
c :: next c 

150 x=i :: for c= l to 26 : : 
P=T (C) :: IF P=0 THEN 170 
160 B$ (X)=as(P):: p=q (P):: x 
=x+l :: IF P>0 THEN 160 
170 NEXT C 

180 PRINT : :" SORTED LIST. 

II • a 

190 FOR X=1 TO N :: PRINT " 

"5x; tab(6);". ";b$<X):: next 

X 

200 END 


CLUB¬ 

ECKE 

Dieses Mal wird 
unsere Clubecke doch 
sehr klein. Es scheint 
fast so, als ob die 
Clubs bei unserem 
nun monatlichen Er¬ 
scheinen nicht mehr 
„mithalten“ können. 
Die heute einzige Mel¬ 
dung stammt vom 
REX-SOFT User- 
Club: 

Wer hat nicht 
schon längst den 


Überblick über die 
vielen Tl-Clubs ver¬ 
loren? Ich habe als 
Verbindungsmann 
von Rex Soft ein 
Heft erstellt, in dem 
(hoffentlich) alle 
Clubs aufgeführt und 
in Kurzform vorge¬ 
stellt sind. Wenn Ihr 
das Heft haben wollt, 
dann schickt bitte 
5,— DM (Schein) an 
folgende Adresse: 
Georg Küppers, Kel¬ 
sterbacher Str. 28, 
5138 Heinsberg 2. 


11 








Haben Sie schon mal daran gedacht, 
den TI99 für Amateurfunk-Fern¬ 
schreiben einzusetzen? Leider kann 
die RS232-Schnittstelle die erfor¬ 
derlichen 45,45 Baud nicht. Oder 
würden Sie gerne einen Standard- 
Fernschreiber als Drucker benut¬ 
zen? Er steht ja ohnehin rum, aber 
arbeitet mit 50 Baud. Darf es viel¬ 
leicht Datex-P sein? Leider fehlt 
die Answer-Baudrate von 75 Baud. 
Schließlich gibt es da noch für die 
Synthesizer-Fans die Sache mit der 
MIDI-Schnittstelle (MIDI für Music 
Instrument Digital Interface). Aber 
31250 Baud? Wahnsinn! Welche RS 
232-Sclmittstelle kann das schon! 
Nun, die vom TI99 natürlich, zwar 
nicht von Haus aus, aber man kann 
da etwas tun. Und das geht folgen¬ 
dermaßen: 

Wie wir alle wissen, können wir 
mit dem DEBUGGER so ziemlich 
in alle Adreßbereiche reinschauen. 
So natürlich auch in das DSR-ROM 
der Schnittstelle. Dazu müssen wir 
nur das entsprechende ROM ein¬ 
schalten. Dies geschieht über die 
DEBUGGER-Funktion C und Ein¬ 
gabe der Adresse >1300. Nach dem 
T3fücken der ENTER-Taste er- 


TU 

scheint hinter der Adresse der Wert 
>0808. Wir tippen nun >FFFF 
ein und ENTER. Nun steht die 
DSR im Bereich >4000 — >5FFF. 
Da dieser Bereich jedoch auch für 
die Disketten-DSR usw. benutzt 
wird, müssen wir den Block an eine 
sichere Stelle schieben, um ihn 
nachher ändern zu können. Dies 
macht wieder der DEBUGGER für 
uns: N >4000 >D000 >1000 und 
ENTER und wir finden unsere DSR 
im Bereich >D000 — >D8AE wie¬ 
der. 

Nun können wir in aller Ruhe 
den Disassembler laden und die 
DSR ausdrucken lassen. Im Aus¬ 
druck stellen wir fest, daß alle 
Sprungadressen von >4xxx nach 
Dxxx verschoben sind, was uns 
aber im Moment nicht stört. 

Schauen wir uns unser Listing 
an, finden wir ab Adresse >D5F4 
die Routine, die einmal anhand 
der Table, die bei >D0A4 be¬ 
ginnt, die Richtigkeit der eingege¬ 
benen Baudrate überprüft und zum 
anderen das erforderliche Teilerver¬ 
hältnis einstellt. 

Die Routine arbeitet folgender¬ 
maßen: 


Zunächst wird die Taktfrequenz 
der jeweiligen Konsole ermittelt. 
Diese steht im MSB der Adresse 
>000C. (siehe auch: Heiner Mar¬ 
tin TI99/4A Intern). Steht dort 
der Wert >30, bedeutet das, daß 
die Console mit 3 MHz Taktfre¬ 
quenz arbeitet, der Wert >28 steht 
für 2,5 MHz. Da die Schnittstelle 
natürlich in allen Consolen arbeiten 
muß, sind für die Einstellung des 
Teilerverhältnisses zwei Tables vor¬ 
handen. Für den Wert >30 beginnt 
diese bei >D0C4 und für >28 in 
DOB6. Wollen Sie also wissen, mit 
welcher Taktfrequenz Ihre Console 
arbeitet, schauen Sie doch mal mit 
dem DEBUGGER in die Adresse 
>Q00C. 

Die Einstellung des Teileverhält¬ 
nisses führen wir uns mal anhand 
der ersten Eintragung in der Table 
>DOC4 vor Augen: Dort finden 
wir den Wert >85AA. 

Die 8 besagt, daß zunächst die 
Clock durch 4 geteilt wird. Wäre 
das MSB nicht gesetzt, würde durch 
3 geteilt. 

Es verbleibt noch >5AA. Das 
2end MSB der 5 besagt, daß wie¬ 
derum durch 8 geteilt wird. Es 
verbleiben uns noch das LSB der 
5 und AA also IAA übrig, was 
dem dezimalen Wert von 426 ent¬ 
spricht. Zum Schluß wird das Er¬ 
gebnis noch einmal durch 2 geteilt 
und wir haben unsere Baudrate: 
3 MHz/4/8/426 = 110.04 Baud. 

Einfach, wenn man weiß, wie’s 
geht. Aber nun genug der Teilerei. 


Ein aufwendiger, aber erfolg¬ 
reicher Weg, mit dem TI 
Funkfernschreiben zu können. 


>D8B0 

->0000 







>D8B2 

- >002D 

>D8CE 

— >87FF 

>D8E6 

->8753 

( 

45B) 

>D8B4 

->0032 

>D8D0 

— >87A8 

>D8E8 

->8706 

( 

50B) 

>D8B6 

- >004B 

>D8D2 

->8670 

>D8EA 

->8604 

( 

75B) 

>D8B8 

- >006E 

>D8D4 

— >85AA 

>D8EC 

- >8563 

( 

110B) 

>D8BA 

— >012C 

>D8D6 

- >849C 

>D8EE 

- >8482 

( 

300B) 

>D8BC 

->0258 

>D8D8 

->8271 

>D8F0 

->8209 

( 

600B) 

>D8BE 

- >04B0 

>D8DA 

- >01 A4 

>D8F2 

— >015B 

( 

1200B 

>D8C0 

->0960 

>D8DC 

— >809C 

>D8F4 

->8082 

( 

2400B) 

>D8C2 

- >12C0 

>D8DE 

- >804E 

>D8F6 

->8041 

. 

4800B) 

>D8C4 

- >2580 

>D8E0 

->8027 

' >D8F8 

- >002B 

( 

9600B) 

>D8C6 

- >4B00 

>D8E2 

- >001A 

>D8FA 

- >8402 

(19200B 

>D8C8 

— >7A12 

>D8E4 

- >800C 

>D8FC 

- >800A 

(31250B) 

>D8CA 

- >0000 








Nun müssen wir noch drei Zeiger ändern: 

1. In Adresse >D5FA steht >40A4, abändem in >48B2 

2. >D09E >40B6 >48E6 

>D0A2 >40C4 >48CE 


12 





SERVICE 


Wollen wir nun alle gängigen 
Baudrates integrieren, müssen wir 
die 3 angesprochenen Tables erwei¬ 
tern und die dazugehörigen Zeiger 
ändern. Am Programmanfang haben 
wir dazu keinen Platz mehr, ohne 
alles verschieben zu müssen. Somit 
legen wir also die Tables an das 
Ende der DSR. 

Da wir diese in >D000 abgelegt 
haben, beginnen wir bei >D8B0 mit 
der neuen Baudrate-Table, bei 
>D8CE mit den Tables für das 
Teile Verhältnis. 

Dieses so geänderte Programm kön¬ 
nen wir nun in ein E-PROM vom 


Type 2732 brennen, das bis auf die 
Anschlüsse 18 und 21 pincompatib- 
le mit dem 4032 ist. Dieses ROM 
löten wir nun nach dem öffnen der 
Deckel der Schnittstellenkarte aus 
und ersetzen es durch eine IC-Fas- 
sung. Nicht vergessen, die an gespro¬ 
chenen Pins zu kreuzen! Nun set¬ 
zen wir für unser frischgebranntes 
EPROM ein, schrauben die Deckel 
wieder zu und testen unsere 
Schnittstelle. 

Zu bemerken bleibt noch, daß 
Fernschreiber mit 5Bit und l,5fa- 
chem Sperrschritt arbeiten. Außer¬ 
dem wird kein ASCII- sondern 


Baudot-Code übertragen. Ein Con¬ 
verter bleibt unumgänglich. 

Noch ein Wort zum EPROM- 
Brennprogramm in Heft 7/85: Es 
arbeitet vorzüglich. Hat man sich je¬ 
doch alle Teile im Elektronikshop 
gekauft, kann es Vorkommen, daß 
man ein sehr träges Read-Relay 
bekommen hat. Dies merkt man 
gleich daran, daß das frisch gebrann¬ 
ten PROM stimmt, bis aufs erste 
Byte! Abhilfe schafft da eine kleine 
Verzögerung (BL DELAY) vor 
dem Label L20. Dies ermöglicht 
es dem Relay durchzuschalten, 
bevor das Brennprogramm beginnt. 


TB 99/4Ä 

mit 

DEUTSCHER 

TASTATUR 


* 


Wen hat es noch nicht gestört, 
daß sein TI nur eine QWERTY- 
Tastatur nach amerikanischem Vor¬ 
bild besitzt? Man muß sich jedesmal 
umstellen, wenn häufiger zwischen 
dem TI und einer Schreibmaschine 
gewechselt wird. Tippfehler sind 
vorprogrammiert und diese zu be¬ 
heben ist sehr mühsam, in Briefen 
wie in Programmen. 

Darum sann ich auf Abhilfe, und 
kam zu dem Schluß, daß es am ein¬ 
fachsten sei, die beiden Tasten ein¬ 
fach zu vertauschen. An Material 
benötigt man lediglich einen Löt¬ 
kolben, etwas Lötzinn, ca. 40 cm 
Schaltlitze, ein scharfes Messer und 
einen kleinen Schraubendreher. 

Man geht folgendermaßen vor: 

1. Sämtliche Verbindungen von der 
Konsole lösen (Netzkabel, Modu¬ 
lator, P-Box etc.) 

2. Gerät umdrehen und Gehäuse¬ 
unterteil losschrauben (auch die 
Abdeckung des Netzschalters ab- 
ziehen) 

3. Jetzt ist große Vorsicht geboten, 
da einige Leiterbahnen aufge¬ 
trennt werden müssen. Zum Un¬ 
terbrechen der Leiterbahnen 
nimmt man am besten ein schar¬ 


fes Messer und ritzt damit die 
Leiterbahnen an den eingezeich¬ 
neten Stellen (siehe Skizze) auf. 
Dies sollte sehr vorsichtig gesche¬ 
hen, da sehr schnell auch andere 
Bahnen beschädigt werden kön¬ 
nen, wenn man mit dem Messer 
abrutscht, und das Ausbessem 
sehr mühsam ist. 

Anschließend prüft man am be¬ 
sten mit einem Durchgangsprüfer 
oder Ohmmeter, ob das Auftren¬ 
nen korrekt durchgeführt wurde. 

4. Herstellen der neuen Anschlüsse 
Taste 17 (Y) 

Der untere Anschluß wird zu 
Taste 12 geführt, und zwar zu 
dem Kontakt, an dem die 12 
steht. 

Der obere wird mit dem oberen 
Kontakt der Taste 39 verbunden. 
Taste 35 (Z) 

Der untere Anschluß mit Taste 
39, unterer Anschluß, verbinden. 
Der obere an die Brücke, die 
direkt links neben Taste 17 liegt 
(egal ob oberer oder unterer 
Kontakt). Jetzt nochmals alle 
Verbindungen überpüfen. 

5. Gehäuseunterteil wieder aufset¬ 
zen und festschrauben. 

6. Gerät umdrehen, denn jetzt müs¬ 
sen nur noch die Tastaturkappen 
ausgetauscht werden. Dazu hebelt 
man vorsichtig, mit einem klei¬ 
nen Schraubendreher, die Tasten 
Z und Y ab. Nun die Y-Taste an 
Stelle der Z-Taste einsetzen und 
festdrücken, dasselbe geschieht 
mit der Z-Taste. 

7. Gerät wieder anschließen und 
Funktionsüberprüfung durchfüh¬ 
ren. Jetzt mußte bei Druck auf Y 


ein Y auf dem Bildschirm er¬ 
scheinen. 

Erwähnenswert ist noch, daß nun 
auch die CTRL- und FCTN-Funk- 
tionen der beiden Tasten vertauscht 
sind. 



Zum Abschluß noch etwas zum 
Thema Tastatur: Wenn man lange 
Listen auf dem Bildschirm verfolgt, 
wünscht man sich eine Pause-Funk¬ 
tion, um bestimmte Stellen in Ruhe 
zu betrachten. Das folgende Pro¬ 
gramm druckt die Zahlen von 
0—1000 aus. Um den Ausdruck zu 
stoppen, muß man nur eine Taste 
drücken, aber nicht die E-Taste, sie 
bricht das Programm ab. Um den 
Ablauf wieder zu starten, drückt 
man wieder eine beliebige Taste. 
Jetzt aber das besondere an dieser 
Routine: 

Drückt man die Taste nur kurz, 
geht der Ablauf weiter wie zuvor. 
Wird dagegen länger gedrückt, wird 
nur der nächste Wert (Datensatz) 
ausgegeben und der Programmab¬ 
lauf ist wieder unterbrochen. 

100 PRINT I,:: 1=1+1 

110 IF 1=1000 THEN 140 

120 CALL KEY (3,T,S):: IF S=) 

THEN 100 ELSE IF T=69 THEN 

STOP 

130 CALL KEY (3,T,S):: IF S=1 

THEN 100 ESLE 130 

140 END Carsten Hasselkuss 


13 




T!PS & TRICKS 




Diese zwei Unterprogramme ermöglichen 
das Speichern und Lesen von 5 Strings mit 
maximaler Länge von 34 Zeichen, deren 
ASCwert nicht über 99 hegt (Leerzeichen 
bis „c“), über „NEW“, „RUN“ und „OLD 
CS1“ hinaus. 


Nur bei „BYE“, QUIT Funktion und 
Ausschalten der Konsole gehen sie verlo¬ 
ren. Nach CALL CHAR Befehlen über 
ASCwert 126 kommt auch die Meldung 
** KEINE STRINGS VORHANDEN **. 
Programmablauf Speicher / SUB S(SP,SS()) 


100 

! *********************** 

110 

1 * 


* 

120 

1 * 

STRINGS SICHERN 

* 

130 

1 * 


* 

140 

1 * 

Copyriaht bv 

* 

150 

' * 


* 

160 

! * 

Jueraen Boehning 

* 

170 

'* 


* 

180 

! * 

Benoetigte Geraete 

* 

190 

' * 

TT99/4A Konsole 

* 

200 

' * 

Ext. Basic 

* 

210 

' * 


* 

220 

230 

240 

250 

260 

1 *********************** 

i 

i 

i 

i 

32000 

' STRINGS SICHERN 


FORM 

CALL S(I,S$<)) 



I DARF NICHT GEHER ALS 
3 SEIN. 


STRINGS WERDEN GGF.AUF 
32010 ! 24 ZEICHEN GEKUERTZ. 


32020 ! SPEICHER BELEGUNG 
£83 BYTES 

************** 
************** 
************** 
32030 SUB S(SP,S$()) 

32040 IF SP>5 THEN SUBEXIT 
32050 CALL CHAR<127,"0"&STR« 
(SP) ) 

32060 FOR 1=1 TO SP 
32070 IF LEN(S*(I))>24 THEN 
PRINT "* M ;STR*(I)¥STRING 
IST ZULANG * M :: S*<I)«SEG* 
<S*<I),1,24) 

32080 FOR J=1 TO LEN(S$(I)) 
32090 A$=A$&STR*(ASC<SEG$(S$ 
( I ) , J, 1 ) ) ) 

32100 NEXT J 

32110 CALL CHAR<125+1*3,A$): 
: A$= u " 

32120 NEXT I 
32130 SUBEND 


100 !*********************** 


110 !* * 

120 !* STRINGS LESEN * 

130 '* * 

140 I* Copyright by * 

150 '* * 

160 !* Juergen Boehnina * 

170 !* * 

180 !* Benaet)ate Geraete * 

190 !* TI99/4A Konsole * 

200 !* Ext. Basic * 

210 !* * 


220 !*********************** 
230 ' 

240 ! 

250 ' 

260 ! 

32000 '.STRINGS LESEN 
FORM:CALL DELS(A,S$()) 

S*() MUSS AUF 5 GEDIMT 
SEIN. A GIBT DTE ANZAHL 
DER STRINGS WIEDER. 
32010 ! SPEICHER BELEGUNG 
743 BEYTS 

************** 
************** 
************** 
32020 SUB DELS < SP,S$()) 

32030 CALL CHARPAT(127,A$) 
32040 ON ERROR 32150 
32050 SP=VAL < SEG$ < A$,1,2) > : : 

IF SP=0 THEN 32150 
32060 FOR 1=1 TO SP 
32070 CALL CHARPAT(125+1*3,A 
$) 

32080 FOR J=1 TO 15 STEP 2 
32090 A=VAL(SEG*(A$,J,2)) 
32100 IF A>30 THEN S$(I)=S*( 
I) &CHR4 (A) ELSE 32130 
32110 IF J=15 AND X<2 THEN X 
=X +1 :: CALL CHARPAT(125+X+I 
*3,A*):: T=-1 
32120 NEXT J 

32130 x=0 :: next I :: on er 
ROR STOP 
32140 SUBEXIT 

32150 PRINT :”* KEINE STRING 
S VORHANDEN *" 

32160 SUBEND 


14 






TIPS & TRICKS 



32030 Übernimmt die Anzahl (S) der 
Strings und die Strings (SS()) 

32040 Überprüft, ob Anzahl größer als 
5 ist. 

32060 Gibt Warnung aus, wenn der String 
länger als 24 Zeichen ist und kürzt 
ihn auf die ersten 24 Zeichen 
32080 Verkettet die Strings der einzelnen 
ASCwerte der Zeichen 
bis 32100 vom String mit A$. 

32110 Legt den String A$ in AS 128 auf¬ 
wärts ab und löscht A$. 

Programmablauf Lesen / SUB DES (SP S()) 
32020 Rückmelde Variable SP für die An¬ 
zahl und Strings ($$()) 

32030 Weist A$ den CHARcod aus dem 
ASCwert 127 zu 

32040 Verzweigt nach 32150, wenn ein 
Fehler vorhanden z.B. A$= U FF004“ 
32050 SP wird den Wert aus den ersten 
beiden Zeichen aus AS zugewiesen. 


(ERROR, wenn ein Buchstabe ent¬ 
halten) 

32070 Weist den CHARcod aus ASC 128 
aufwärts AS zu 

32090 Weist den Wert von 2 Zeichen aus 
den String AS der Variablen A zu, 
wenn kein Buchstabe vorhanden 
32100 Kettet das Zeichen mit den ASC¬ 
wert von der Variablen A an den 
String S$(I), wenn A größer als 30 
ist, wenn nicht, wird der nächste 
String ab Zeile 32070 berechnet 
32110 Weist den String AS den CHAR¬ 
cod von dem nächsten ASC zu, 
wenn das nicht schon zweimal 
geschah und der String AS abge- 
arbeiet ist. 

32130 Leitet die nächste Stringberechnung 
ein und löscht nach dem letzten 
String die Wirkung von Zeile 32040 
32140 Sprung in des Hauptprogramm 
32150 Wamausgabe Jürgen Böhning 



Mit demUnterprogramm „CA 
Mit dem Unterprogramm „CALL SCREEN- 
ERHALT“ können Sie den Bildschirmin¬ 
halt abspeichem und mit „CALL SCREEN- 
RETURN“ können Sie den Text oder die 
Grafik w'ieder auf den Bildschirm zurück¬ 
bringen. 

Damit-die Unterprogramme laufen, müs¬ 
sen Sie lediglich zu Beginn des Programms 
die Zeile DIM BSPS(24) einfügen. 

Die Unterprogramme laufen auf dem 
TI99/4A mit Extended Basic. 

Die Unterprogramme lassen sich auch 
sehr einfach ergänzen, z.B. mit einer Ab- 

Die nächste 
Ti-REVUE 
erscheint am 
25.April 85 



10 !Autor: Dirk Junahans 


20 !===== Am Fort-Biehler 9 
30 ! 65.03 Mainz-Kastei 

40 ! 


10000 SUB SCREENERHALT(BSP$( 
) ) 

10010 FÜR Y=1 TO 24 
10020 FOR X= 1 TO 32 
10030 CALL GCHAR(Y , X, Q) 

10040 A*=A*&CHR*<Q) 

10030 MEXT X 

10060 BSP$(Y)=A* :: A*="" 
10070 NEXT Y 
10080 SUBEND 
10090 ! 

11000 SUB SCREENRETURN(BSP*( 
)) 

11010 FOR Y=1 TO 24 

11020 DISPLAY AT(Y,1):SEG*(B 

SP*(Y) f 3,28) 

11030 FOR 1=1 TO 2 
11040 CALL HCHAR(Y,I,ASC(SEG 
*(BSP*(Y>,1,I))):: CALL HCHA 
R(Y,1+30,ASC(SEG*(BSP*(Y),31 
,J))) 

11050 NEXT I 
11060 NEXT Y 
11070 SUBEND 


15 








LISTINGS 



Die Enterprise wieder auf 
großer Fahrt!!! 

Ziel des Spiels: Retten Sie 
als Enterprise-Kapitän den 
bekannten Planeten Gene¬ 
sis vor dem Untergang! 

Das Spiel besteht aus 
vier voneinander völlig un¬ 
abhängigen Screens, in 
denen Sie einige gefährli¬ 
che Probleme zu meistern 
haben. Wichtig ist es, mög¬ 
lichst viel Energie zu sam¬ 
meln und während des Flu¬ 
ges möglichst wenig Ener¬ 
gie zu verlieren, um am 
Ende den Planeten Gene¬ 
sis optimal retten zu 
können. 

Steigen Sie ein! Starten 
Sie, und treten Sie die fan¬ 
tastische Reise an . . . 


1. SCREEN: 
Das Raumdock 


Bevor Sie die lange Reise 
durch den Weltraum an- 
treten können, müssen Sie 
die Enterprise zunächst 
einmal aus dem heimat¬ 
lichen Raumdock steuern. 
Das Problem: Sie haben 
nur wenig Zeit (Anzeige 
linke Bildschirmmitte) 
und Sie dürfen weder die 
Wände noch die roten 
Energiezapfer berühren, 
denn sonst verlieren Sie 
viel Energie. 

Wichtig ist es vor allem, 
daß Sie die vier gelben 
Energie-Pole anfliegen, 
um die Enterprise voll 
aufzuladen. Nur so haben 
Sie eine Chance, Ihre 


gefährliche Mission zu 
erfüllen. 


Nachdem Sie das Raum¬ 
dock verlassen haben, ist 
die Grundlage für den wei¬ 
teren Spielverlauf geschaf¬ 
fen. Nun gilt es zu verhin¬ 
dern, daß Sie auf Ihrer 
Reise nicht wieder zu viel 
Energie verlieren. Das 
Asteroidenfeld, das plötz¬ 
lich vor Ihnen liegt, ge¬ 
fährdet Ihre Mission be¬ 
reits zu Anfang. Sämtliche 
großen Asteroidenbrok- 
ken gilt es nun, mit Ihren 
Photonentorpedos abzu¬ 
schießen, bevor sie das 
Feld (rechter Bildschirm¬ 
rand) erreicht haben. 
Schaffen Sie es nicht in ei¬ 
nem Anflug, dann wird 
Ihr Schutzschirm belastet, 
und das kostet natürlich 
Energie. 

3. SCREEN: 

Der Klingonenangriff 


Wenn das Asteroidenfeld 
hinter Ihnen liegt, können 
Sie Ihren Flug endlich 
fortsetzen. Doch nur für 
kurze Zeit. Die Ortungs¬ 
systeme der Enterprise 
registrieren plötzlich fünf 
Klingonenkreuzer, die 
sich Ihnen in den Weg 
stellen. Sie haben Tarn¬ 
schirme und erst wenn 
sie sichtbar sind, herrscht 
direkte Gefahr. Der Bord¬ 
computer schaltet auto¬ 
matisch auf Zieloptik 


und die Alarmstufe Gelb 
wird angezeigt. Wenn die 
Alarmstufe Rot optisch 
und akustisch dargestellt 
wird, heißt es aufpassen. 
Dann wird der erste Klin- 
gone sichtbar und kann 
auf Sie das Feuer eröff¬ 
nen. Auch Sie können nun 
Ihrerseits mit der Hori¬ 
zontalsteuerung den Geg¬ 
ner anvisieren und ab¬ 
schießen. Die Angreifer 
erscheinen nicht alle auf 
einmal, sondern einer 
nach dem andern, aber es 
ist so schon schwer genug, 
die Flugbahn der Kreuzer 
vorauszuberechnen. 


Endlich haben Sie es ge¬ 
schafft! Der Zielplanet 
liegt vor Ihnen auf dem 
Schirm. Nun wird es sich 
zeigen, ob Sie noch genug 
Energie und vor allem ei¬ 
ne schnelle Reaktion be¬ 
sitzen. Der Planet wird 
von ständigen Naturkata¬ 
strophen heimgesucht, 
die Sie auf speziellen An¬ 
zeigeskalen beobachten 
können. Da sind Erdbe¬ 
ben, Achsenverschiebun¬ 
gen, Vulkanausbrüche, 
Überschwemmungen und 
starke Temperaturverän¬ 
derungen, und wenn eine 
dieser Katastrophen den 
absoluten Rotwert auf 
Ihren Skalen erreicht, ist 
der Planet verloren. Es gilt 
also möglichst schnell 
entsprechende regenerie¬ 
rende Energiestrahlen auf 
die Genesisoberfläche zu 
schicken, um seinen Zer¬ 
fall zu verhindern. Wenn 
Sie das über einen Zeit¬ 
raum von 300 Zeiteinhei¬ 
ten, die unter der Anzeige 
Sternzeit im Display er¬ 
scheint, schaffen, dann 
ist Genesis praktisch über 
den Berg und kann sich 
von selbst wieder rege¬ 
nerieren. Ihre Mission ist 
dann erfolgreich beendet, 
und Sie können in einer 
abschließenden Anzeige 
Ihren Punktestand be¬ 
wundern. 

Energie- und Punkte¬ 
verteilung: 

(Während der ersten drei 
Screens erfolgt keine 


Punktewertung, sondern 
eine Energieanzeige. 
Zwischen jedem neuen 
Spielteil erscheint ein 
Zwischenergebnis und ei¬ 
ne kurze Spielerklärung.) 

l.Screen: Energieeinh. 
Startenergie: 

l.Screen: Energieeinheiten 


Startenergie: +500 

Energiepole: +2500 
Energiezapfer: —200 

Wandberührung: —50 


(Die restliche Zeit wird 
am Schluß des ersten 
Screens mit der Energie 
addiert.) 

2. Screen: Energieeinheiten 

Photonen¬ 
torpedo: —20 

Schutzschirm¬ 
belastung pro 
Aufleuchten: -100 

3. Screen: Energieeinheiten 

Laser aus- 

lösen(gelb): -20 

Treffer der 

Klingonen(grün): -100 

4 . Screen Energieeinheiten 

Energiestrahl: —50 

+50 Pkte. 

Startpunktzahl = Energie¬ 
einheiten nach dem 3. 
Screen. 

(Wenn Sie es tatsächlich 
schaffen, den Planeten vor 
dem Untergang zu retten, 
bekommen Sie noch zu¬ 
sätzlich 5000 Bonus¬ 
punkte!) 

Tastenbelegung: 

1. Screen: 

Pfeiltasten (rechts, links, 
oben, unten) zur Steue¬ 
rung der Enterprise 

2. Screen: 

Space-Taste zum Auslö¬ 
sen der Photonentorpe¬ 
dos 

3. Screen: 

Pfeiltasten zum Steuern 
des Visiers 

Space-Taste zum Aus¬ 
lösen des Lasers 

4. Screen: . 

Einfach die Anfangsbuch¬ 
staben der entsprechen¬ 
den Naturkatastrophen 
drücken, die unter den 
Skalen angezeigt sind. 

Vor dem Laden des Pro¬ 
gramms eventuell 
CALL FILES (1) und 
NEW eingeben! 


2. SCREEN: 

Das Asteroidenfeld 


4. SCREEN: 

Der Planet Genesis 



16 













































10 

i 

********************** 

11 

i 

* 


* 

12 

i 

* 

TI STARTREK 99 

* 

13 

i 

* 


* 

14 

i 

* 

Copyright by 

* 

15 

i 

* 


* 

16 

i 

* 

Stephan Maurer 

* 

17 

i 

* 


* 

19 

; 

* 

Benoetigte Geraete 

* 

20 

; 

* 

TI99/4A Konsole 

* 

21 

; 

* 

Ext. Basic 

* 

22 

i 

* 


* 

26 

; 

* 

Spei eherbeiegung 

* 

27 

; 

* 

11630 Bytes 

* 

28 

i 

* 


* 

29 

i 

********************** 


100 CALL CLEAR 

110 CALL CHAR(112,"0010FE040 
20707",113,"00FC404040F0E0", 
120,"3C7EFFFFFFFF7E3C") 

120 CALL COLOR(10,11,1,11,15 
,1,12,10,1) 

130 FÜR C=1 TO 8 :: CALL COL 

OR(C,11,1) : : NEXT C 

140 PRINT ".pqpqpqpqpqp 

qpqpq.pqpqpqpqpq. 

• pqpqpqpqpqpq. t i.. 

.pqpq. 

.pq" 

150 PRINT "pq...S T A R...T 
R E K....pqpq. 

.pqpq.9 9. . 

.pqpq. 

.pq" 

160 PRINT "pq..IN THE 23RD C 
ENTURY...pqpq. 

.pqpqpqpqpqpqpqpqpqp 

qpqpqpqpqpq- - - -pqpqpqpqpqpqp 

qpqpqpq-" : ::::::: 

170 PRINT "...COPYRIGHT BY S 
.MAUERER" 

1B0 CALL SCREEN(2) 

190 FOR T=0 TO 30 STEP 3 :: 
CALL SOUND(500,932,T,-8,T)s: 
NEXT T 

200 CALL CLEAR 

210 PRINT "DER WELTRAUM -.. . 

.UNENDLICHE WEITEN 


.SIE HABEN DIE ORD 

ER DEN PLA—" 

220 PRINT "NETEN GENESIS VOR 
DEM UNTER-GANG ZU RETTEN!.. 

.DOCH IHR ZIEL IST 

FERN.STEUERN SIE ZUERS 

T MIT IHREN" 

230 PRINT "MANOEVERDUESEN DI 
E ENTERPRI-SE AUS DEM RAUMDO 

CK.VERGESSEN SIE ABE 

R NICHT DIEGELBEN ENERGIEPOL 
E ANZUFLIE—" 


L 

I 

S 

T 

I 

N 

G 

S 


240 PRINT "GEN, DENN NUR WEN 
N IHRE..EN-TERPRISE VOLL AUF 
GELADEN ISTKOENNEN SIE DIE G 
EFAEHRLICHEREISE ANTRETEN." 
250 PRINT "ACHTEN SIE ABER A 
UF ALLE RO-TEN ENERGIEZAPFER 
UND BERUE-REN SIE NICHT DIE 

WAENDE_": : : : 

260 CALL KEY <0,K,S):: IF S=0 
THEN 260 

270 CALL CHAR(98,"FF00FF00FF 
00FF00",97,"7F3FFF0FFF03FF00 
",99,"FFFFFFFFFFFFFFFF",100, 
"FFFFFFFDFFFFFFFF",104,"0000 
E0F0F0E0") 

280 CALL COLOR(10,11,1,11,15 
,1,12,10,1) 

290 CALL CHAR(112,"0010FE040 
20707",113,"00FC404040F0E0", 
120,"3C7EFFFFFFFF7E3C") 

300 CALL COLOR(10,11,1, 1 1 , 15 
,1,12,10,1) 

310 CALL CLEAR :: CALL SCREE 
N(6):: EN=500 

320 PRINT "bbbbbbbbbbbbbbbbb 

bacccdcccccbbbbbbbbbx.x 

bbacccccdccbh..xbx.x. . . . 

bbbacccccccbx . . x.xbbx . . 

.xbbacdcccc" 


330 PRINT "bb.bx...bh... 

..xbbaccdcdbbbbbbbbb...bbbb. 

.cccdcbbh bbbx...bbbbbb 

bx xxxcdcccbb . . x.bbbbbb 

bbxbbbaccdc" 

340 PRINT "bb.bx..xxbbbb 

bbbbbbbaccdbbbbbbbbb...xbbbb 
bbbbbbbbadcbbbbbbbbx...bbbEN 
ERGIE:bbbacbbbbbbbb x...bb 5 
00 bbbbbbba" 

350 PRINT "bbbbbbbbbx...xbbb 


bbbbbbbbbbbbbbbbbbbbbx..x... 

..bbbbbbbbbbbbbbbbbbbb.b 

.bbbbbbbbbbbbbbbbbbbb 

bbbxxx..bbb" 

360 PRINT "bbbbxx.xbbb. 

.xbbb....bbbbbbb...bb. 

- - . -b..xbbbbbbbb..bbbxxxbbbb 
bb.bbbb" 

370 PRINT "bbbbx....bbbbbbbb 
bbbbb...bbbbbbb xx..xbbbbbbb 

bbbb...xbbbbbbh.bbbbbbbb 

bbbb...bbbbbbbbbbbbbbbbbbbbb 
bbbbbbbbbbb" 

380 CALL HCHAR(22,24,112):: 
CALL HCHAR(22,25,113) 

390 Al=22 :: Bl=24 :: A2=22 
:: B2=25 :: TI=400 
400 CALL KEY(0,K,S):: TI=TI- 
1 :: DISPLAY AT(15,3)SIZE(5) 

: TI 

410 IF EN<0 THEN 2570 




17 





































420 IF TI<0 THEN 2570 
430 IF K=69 THEN 480 
440 IF K=83 THEN 550 
450 IF K=68 THEN 620 
460 IF K=88 THEN 690 
470 GOTO 400 
480 CALL SOUND(60,-6,10) 

490 CALL GCHAR(Al — 1,B1,G)s : 

IF G=98 THEN 800 ss GOSUB 76 
0 

500 CALL GCHAR(A2—1,B2,G):r 
IF G=98 THEN 800 :: GOSUB 76 
0 

510 CALL HCHAR(Al,B1,32) : : C 
ALL HCHAR(A2,B2,32) 

520 A1=A1—1 :: A2=A2-1 
530 CALL HCHAR(Al,Bl,112):: 
CALL HCHAR(A2,B2,113) 

540 GOTO 400 

550 CALL SOUND(60,-6,10) 

560 CALL GCHAR(Al,B1-1,G> : : 
IF G=98 THEN 800 :: GOSUB 76 
0 

570 CALL GCHAR(A2,B2-1,G):: 
IF G=98 THEN 800 :: GOSUB 76 
0 

580 CALL HCHAR(Al,Bl,32):: C 
ALL HCHAR(A2,B2,32) 

590 B1=B1—1 :: B2=B2-1 
600 CALL HCHAR(Al,Bl,112):: 
CALL HCHAR(A2,B2,113) 

610 GOTO 400 

620 CALL SOUND(60,-6,10) 

630 CALL GCHAR(Al,B1+1,G):: 
IF G=98 THEN 800 :: GOSUB 76 
0 

640 CALL GCHAR(A2,B2+1,G):: 
IF G=98 THEN 800 :: GOSUB 76 
0 

650 CALL HCHAR(Al,Bl,32):: C 
ALL HCHAR(A2,B2,32) 

660 B1=B1+1 :: B2=B2+1 
670 CALL HCHAR(Al,Bl,112)s: 
CALL HCHAR(A2,B2,113) 

680 GOTO 400 

690 CALL SOUND(60,-6,10) 

700 CALL GCHAR(Al+1,Bl,G):: 
IF G=98 THEN 800 :: GOSUB 76 
0 

710 CALL GCHAR(A2+1,B2,G):: 
IF G=98 THEN 800 :: GOSUB 76 
0 

720 CALL HCHAR(Al,Bl,32): : C 
ALL HCHAR(A2,B2,32) 

730 A1=A1+1 :: A2=A2+1 
740 CALL HCHAR(Al,Bl,112) : : 
CALL HCHAR(A2,B2,113) 

750 GOTO 400 

760 IF G=120 THEN GOSUB 920 
770 IF G=104 THEN GOSUB 830 
780 IF G=99 THEN 860 


790 RETURN 

800 FOR T=0 TO 30 STEP 4 :: 
CALL SOUND(100,—7,T):: NEXT 
T 

810 EN=EN—50 :r DISPLAY AT(1 
2,16)SIZE(5):EN 
820 GOTO 400 

830 FOR T=0 TO 30 STEP 4 :: 
CALL SOUND(100,1479,T):: NEX 
T T 

840 EN=EN+2500 :: DISPLAY AT 
(12,16)SIZE(6):EN 
850 RETURN 

860 CALL SOUND(200,440,5) : : 
CALL SOUND(400,880,4) 

870 CALL SPRITE(#1,112,16,40 
,200,-5,5) 

880 CALL SPRITE(#2,113,16,40 
,205,-5,5) 

890 CALL HCHAR(Al,Bl,32) : : C 
ALL HCHAR(A2,B2,32) 

900 FOR T=0 TO 30 :: CALL SO 
UND(100,—6,T):: NEXT T 
910 CALL DELSPRITE(#1,#2):: 
GOTO 980 

920 S=10 :: EN=EN-200 

930 FOR C=1 TO 10 :: CALL CO 

L0R(12,10,1) 

940 DISPLAY AT(12,16)SIZE(5) 

: EN 

950 S=S-1 :: CALL SOUND(50,- 
3,S) 

960 CALL C0L0R(12,16,1) : : NE 
XT C 

970 CALL C0L0R(12,10,1): : RE 
TURN 

980 CALL CLEAR :: CALL SCREE 
N(2):: P=0 

990 PRINT "SIE HABEN NUN";EN 
+TI;"ENERGIE-" 

1000 PRINT "EINHEITEN FUER I 
HRE MISSION ZUR VERFUEGUNG. 

.DIE ENTERPRISE I 

ST NUN..AUF WARP-GESCHWINDIG 
KEIT. .DOCH" 

1010 PRINT "SCHON NACH KURZE 
R ZEIT MUSS DER FLUG UNTERBR 
OCHEN..WER— DEN,DENN EIN AST 
EROIDENFELD BLOCKIERT DEN WE 
G. EINE BE—" 

1020 PRINT "LÄSTUNG..DES..SC 
HUTZSCHIRMS KOSTET VIEL ENER 
GIE.MIT DEN PHOTONENTORPEDOS 
SOLLEN SIE ALLE GROSSEN AST 
EROIDEN AB-" 

1030 PRINT "GESCHOSSEN HABEN 
BEVOR SIE DAS FELD ERREICH 
EN.": : : : 

1040 CALL KEY(0,K,S):: IF S= 
0 THEN 1040 

1050 CALL CLEAR :: CALL MAGN 


L 

I 

S 

T 

I 

N 

G 

S 


18 






IFY(2) 

1060 CALL CHAR(112,"00FE0808 
081F3F0F",113,"0008FF1020C0E 
0E0",114,"A07078F8B") 

1070 CALL CHAR(128,"185C7F77 
FEFCFE5C",129,"10") 

1080 CALL CHAR(128,"185C7F77 
FEFCFE5C") 

1090 FÜR S=4 TO 10 
1100 CALL SPRITE(#S,128,7,IN 
T(RND*70),220+(INT(RND*20)), 
INT(RND*30),0):: NEXT S 
1110 FOR S=ll TO 28 :: CALL 
SPRITE(#S,114,7,RND*200,180+ 
(RND*40),(RND*50)+10,0):: NE 
XT S 

1120 CALL SPRITE(#1,112,15,9 
6,5,0,3):: CALL SPRITE(#2,11 
3,15,96,21,0,3) 

1130 CALL SOUND(60,311,15) 
1140 CALL POSITION(#2,X,Y) : : 
IF Y>200 THEN 1150 ELSE 116 

0 

1150 EN=EN—100 :: CALL SOUND 
(1000,-8,0,138,3):: CALL SCR 
EEN(16):: CALL SCREEN(2):: G 
OTO 1140 

1160 CALL KEY(0,K,S):: IF S= 

0 THEN 1130 

1170 IF EN<0 THEN 2570 

1180 IF K=32 THEN 1200 

1190 GOTO 1130 

1200 CALL POSITION(#2,X,Y) : : 

S=30 :: EN=EN—20 
1210 CALL SPRITE(#3,129,16,X 
,Y,0,20) 

1220 S=S—3 :: CALL SOUND(100 
,1661,S) 

1230 CALL CO INC (#3, #4,18,0: 

: H=4.:: IF C=-l THEN•1320 
1240 CALL COINC(#3,#5,18,0: 

: H=5 :: IF C=-l THEN 1320 
1250 CALL COINC(#3,#6,18,0 : 

: H=6 :: IF C=-l THEN 1320 
1260 CALL CO I NC (#3, #7,18,0: 

: H=7 :: IF C=-l THEN 1320 
1270 CALL CO INC (#3,#8,18,0: 

: H=8 :: IF C=-l THEN 1320 
1280 CALL COINC(#3,#9,18,0 : 

: H=9 :: IF C=-l THEN 1320 
1290 CALL COINC(#3,#10,18,0 
:: H=10 :: IF C=-l THEN 1320 
1300 CALL POSITION(#3,X,Y) : : 

IF Y>210 THEN 1410 
1310 GOTO 1220 
1320 CALL SOUND(200,-7,0) 
1330 P=P+1 

1340 CALL DELSPRITE(#3) 

1350 CALL CHAR(130,"8124897A 
3C540248") 

1360 CALL PATTERN<#H,130) 


L 

I 

S 

T 

I 

N 

G 

S 


1370 CALL SOUND(500,-5,10) 
1380 CALL DELSPRITE(#H) 

1390 IF P=7 THEN 1420 
1400 GOTO 1130 

1410 CALL DELSPRITE(#3):: GO 
TO 1130 

1420 CALL DELSPRITE(ALL) 

1430 PRINT "NUN JA! SIE HABE 
N NOCH"; EN;"ENERGIEEINHEITEN 
ZUR VERFUE-GUNG.ABER ACHTUN 
G:FREUEN SIESICH NICHT ZU FR 
UEH.": 

1440 PRINT "..ALARMSTUFE GEL 

B! ! !.KL INGONENANGRI 

FF ! ! ! " : 

1450 PRINT "SIE MUSSEN SICH 
MIT DEN LAE-SERKANONEN GEGEN 
DEN ANGRIFFWEHREN. JEDER KL 
INGÜNENTREF-FER KOSTET IHNEN 
ENERGIE.DIE" 

1460 PRINT "ANGREIFER HABEN 
TARNSCHIRMEUND KOENNEN ERST 
DANN SCHIE—SEN WENN SIE SIC 
HTBAR. .SIND. VISIEREN SIE DIE 
KREUZER SO-" 

1470 PRINT "FORT AN UND SCHI 
ESSEN SIE UMMOEGLICHST WENIG 
TREFFER..ZUKASSIEREN.": : : 


1480 CALL KEY(0,K,S):: IF S= 

0 THEN 1480 

1490 CALL CLEAR :: CALL MAGN 
IFY(1) 

1500 CALL CHAR(142,"FFFFFFFF 
FFFFFFFF") 

1510 CALL CHAR(131,"2424E700 
00E72424",136,"0102040810204 
0", 137,"8040201008040201") 

1520 CALL CHAR(127,"7EDB993C 
18") 

1530 CALL COLOR(13,5,1,14,11 
,1> 

1540 TR=0 

1550 FOR S=3 TO 25 
1560 CALL SPRITE(#S,129,16,I 
NT(RND*100)+20,INT(RND*200)+ 
20,INT(RND*20)+5,0):: NEXT S 
1570 FOR H=21 TO 24 :: CALL 
HCHAR(H,21,142,9):: NEXT H 
1580 DISPLAY AT(23,1)SIZE(8) 
BEEP:"ENERGIE:" 

1590 DISPLAY AT(24,1)SIZE(6) 

: EN 

1600 DISPLAY AT(23,10)SIZE(8 
)BEEP:"TREFFER:" 

1610 DISPLAY AT(24,10)SIZE(3 
) : TR 

1620 IF TR=5 THEN 1990 
1630 CALL COLOR(14,11,1) 

1640 CALL SPRITE(#1,131,16,5 
0,128):: CALL SOUND(1000,123,5) 


19 





1650 FÜR T=1 TO 1000 :: NEXT 
T 

1660 CALL COLOR(14,7,1) 

1670 FOR T=0 TO 15 r s CALL S 
OUND(100,932,T+3,146, T) : : NE 
XT T 

1680 RANDOMIZE 
1690 CALL SPRITE(#2,127,16,I 
NT(RND*200) +10,INT(RND*80)+1 
0) 

1700 CALL MOTION(#2,INT(RND* 
40)+10,INT(RND*50)-10) 

1710 Q=INT(RND*5)+1 

1720 IF Q=3 THEN 1730 ELSE 1 

790 

1730 CALL SCREEN(13):: CALL 
SOUND(200,-7,0) 

1740 CALL MOTION(#l,0,0) 

1750 EN=EN—50 

1760 IF EN<0 THEN 2580 

1770 DISPLAY AT(24,1)SIZE(6) 

: EN 

1780 CALL SCREEN(2) 

1790 CALL KEY(0,K,S):: IF EN 

<0 THEN 2570 

1800 IF K=S3 THEN 1840 

1810 IF K=68 THEN 1860 

1820 IF K=32 THEN 1880 

1830 GOTO 1700 

1840 CALL MOTION(#1,0,-25) 

1850 GOTO 1790 

1860 CALL MOTION(#1,0,25) 

1870 GOTO 1790 

1880 CALL SCREEN(11):: CALL 

SOUND(300,1567,0):: CALL SCR 

EEN(2):: EN=EN-20 

1890 DISPLAY AT(24,1)SIZE(6) 

: EN 

1900 CALL MOTION(#1,0,0) 

1910 CALL CO I NC (# 1, #2,15,0: 

- IF C=-l THEN 1920 ELSE 198 
0 

1920 CALL PATTERN(#2,130) 
1930 TR=TR+1 

1940 CALL SOUND(500,-6,0) 
1950 FOR T=1 TO 500 :: NEXT 
T 

1960 CALL DELSPRITE(#2) 

1970 GOTO 1610 
1980 GOTO 1790 

1990 CALL CLEAR s: CALL DELS 
PRITE(ALL) 

2000 PRINT "NA ALSO!!!DIE KL 
INGONEN SINDIN DIE FLUCHT GE 
SCHLAGEN!- - - ENDLICH HABEN SI 
E DEN PLANE-TEN GENESIS VOR 
SICH AUF DEMSCHIRM." 

2010 PRINT "IHRE AUFGABE IST 
ES NUN..DENPLANETEN DURCH E 
NERGIESTRAH—LEN ZU RETTEN. E 
RDBEBEN,ACH-SENVERSCHIEBUNGE 


N,VULKANAUS—" 

2020 PRINT "BRUECHE,UEBERSCH 
WEMMUNGEN U.TEMPERATUR DUERF 
EN AUF IHRENANZ EIGESKALEN DE 

N. .ABSOLUTENROTWERT NICHT ER 
REICHEN.": :::::: S 
2030 PRINT "ENERGIEVORRAT:"; 
EN 

2040 CALL KEY(0,K,S):: IF S= 
0 THEN 2040 

2050 CALL CLEAR :: CALL SCRE 
EN (5) 

2060 CALL CHAR(128,"FFFFFFFF 
FFFFFFFF",120,"9009900990099 
009"):: CALL COLOR(13,13,1,1 
2,2,2,14,7,1) 

2070 CALL CHAR(129,"183C7E7E 
7E3C18") 

2080 FOR H=1 TO 15 :: CALL H 
CHAR(H,3,120,28):: NEXT H 
2090 FOR V=4 TO 16 STEP 3 :: 

CALL VCHAR(17,V,128,5): : NE 
XT V 

2100 DISPLAY AT(23,2)SIZE(16 
) BEEP: "E A V U T" 

2110 DISPLAY AT(17,16)SIZE(1 
3)BEEP:"ENERGIE";EN 
2120 DISPLAY AT(20,16)SIZE(1 
3):"PUNKTE" 

2130 DISPLAY AT(23,16)SIZE(1 
3)BEEP:"STERNZEIT" 

2140 CALL SPRITE(#1,129,14,5 

O, 120):: CALL MAGNIFY(2) 

2150 E=1 :: A=1 :: V=1 :: U= 
1 :: T=1 :: PU=EN :: TIME=0 
2160 DISPLAY AT(17,23)SIZE(6 
) : EN 

2170 DISPLAY AT(20,23)SIZE(6 
) :PU 

2180 DISPLAY AT(23,25):TIME 
2190 IF EN<0 THEN 2570 
2200 TIME=TIME+1 
2210 IF TIME>199 THEN 2570 
2220 CALL KEY(0,K,S):: CALL 
COLOR(12,2,2) 

2230 IF K=69 THEN GOSUB 2410 
2240 IF K=65 THEN GOSUB 2450 
2250 IF K=86 THEN GOSUB 2480 
2260 IF K=85 THEN GOSUB 2510 
2270 IF K=S4 THEN GOSUB 2540 
2280 RANDOMIZE 
2290 Q=INT(RND*8)+1 
2300 IF Q=1 THEN 2310 ELSE 2 
320 

2310 E=E+1 :: CALL VCHAR(17, 

4.142, E):: IF E=5 THEN 2570 
2320 IF 0=2 THEN 2330 ELSE 2 
340 

2330 A=A+1 :: CALL VCHAR(17, 

7.142, A):: IF A=5 THEN 2570 
2340 IF Q=3 THEN 2350 ELSE 2 


L 

I 

S 

T 

I 

N 

G 

S 




360 

2350 V=V+1 :: CALL VCHAR<17, 

10.142, V):: IF V=5 THEN 2570 
2360 IF Q=4 THEN 2370 ELSE 2 
380 

2370 U=U+1 :: CALL VCHAR(17, 

13.142, U):: IF U=5 THEN 2570 
2380 IF Q=5 THEN 2390 ELSE 2 
400 

2390 T=T+1 :: CALL VCHAR<17, 

16.142, T):: IF T=5 THEN 2570 
2400 GOTO 2160 

2410 IF E=0 THEN RETURN 
2420 E=E—1 :: EN=EN-50 :: PU 
=PU+50 :: CALL VCHAR(17,4,12 

8,5):: CALL VCHAR(17,4,142,E 
) 

2430 CALL COLOR(12,7,2):: CA 
LL SOUND(200,-1,5) 

2440 RETURN 

2450 IF A=0 THEN RETURN 
2460 A=A—1 :: EN=EN-50 :: PU 
=PU+50 :: CALL VCHAR(17,7,12 

8.5) :: CALL VCHAR(17,7,142,A 

) 

2470 CALL CQL0R(12,16,2):: C 
ALL SOUND(200,-2,5):: RETURN 
2480 IF V=0 THEN RETURN 
2490 V=V—1 :: EN=EN-50 :: PU 
=PU+50 :: CALL VCHAR(17,10,1 

28.5) :: CALL VCHAR(17,10,142 
,V) 

2500 CALL COLOR(12,11,2):: C 
ALL SOUND(200,-3,5):: RETURN 
2510 IF U=0 THEN RETURN 
2520 U=U-1 :: EN=EN-50 :: PU 
=PU+50 :: CALL VCHAR(17,13,1 

28,5):: CALL VCHAR(17,13,142 
,U> 

2530 CALL COLOR(12,8,2):: CA 
LL SOUND(200,-5,5):: RETURN 
2540 IF T=0 THEN RETURN 
2550 T=T—1 :: EN=EN-50 :: PU 
=PU+50 :: CALL VCHAR(17,16,1 

28,5):: CALL VCHAR(17,16,142 
,T) 

2560 CALL COLOR(12,3,2):: CA 
LL SOUND(200,-6,5):: RETURN 
2570 CALL CLEAR :: CALL DELS 
PRITE(ALL) 

2580 FOR S=0 TO 25 STEP 2 :: 

CALL SOUND(300,311,S+1,-6,S 
):: NEXT S 

2590 IF TIME>199 THEN 2640 
2600 PRINT "SIE HABEN ES NIC 
HT GESCHAFFTDEN PLANETEN GEN 
ESIS VOR DEMUNTERGANG ZU BEW 
ÄHREN!": : 

2610 PRINT "PUNKTESTAND:";EN 
+PU: ::::::::: 

2620 CALL KEY(0,K,S):: IF S= 


L 

I 

S 

T 

I 

N 

G 

S 


0 THEN 2620 
2630 END 

2640 PRINT "AUSGEZEICHNET!!! 

.DER PLANET GENE 

SIS IST..VORDEM UNTERGANG..G 
ERETTET, UNDIHRE MISSION VOR 
BILDLICH ER-FUELLT." 

2650 PRINT "SIE HABEN INSGES 
AMT";PU+EN+5000;"PUNKTE ERRE 
ICHT!!!!!": : 

2660 PRINT "pqpqpqpqpqpqpqpq 

pqpqpqpqpqpq pqpqpqpqpqpqpqp 
qpqpqpqpqpq": ::::::: 

2670 FOR L=1 TO 4 

2680 DATA 400,138,700,466,30 

0,138,900,369 

2690 READ A,B :: CALL SOUND( 
—A,B,5):: NEXT L 
2700 CALL KEY(0,K,S):: IF S= 
0 THEN 2700 

2710 CALL CLEAR :: END 


TEUFELS 

DREIECK 


Vor dem Laden: CALL 
FILES (1) und NEW 
eingeben. 

Einige Zeit, nachdem 
“RUN“ eingegeben wur¬ 
de, erscheint auf dem 
Bildschirm der Titel des 
Programmes. Drückt man 
eine Taste, definiert der 
Computer die Buchsta¬ 
ben um und fragt dann, 
ob eine Anleitung ge¬ 
wünscht wird. Nach dem 
Drücken von “N“ bzw. 
nach der Anleitung wird 
das Spielfeld aufgebaut. 
Im großen Dreieck links 
unten ist Ihr Cursor zu 
sehen. Mit “P“ können 
Sie ihn in Bewegung set¬ 
zen. Er springt automa¬ 
tisch von links unten bis 
oben Dreieck für Drei¬ 
eck ab. Dann beginnt er 
wieder links unten. 

Wenn Sie “P“ loslassen, 
bleibt er natürlich ste¬ 
hen. Haben Sie sich aus¬ 
gesucht, wo Sie ein Drei¬ 
eck hinlegen wollen, 
drücken Sie “ENTER“. 
Nun wird rechts oben 
ein weiterer Cursor sicht¬ 
bar, den Sie ebenfalls 
mit “P“ bewegen kön¬ 
nen. Immer, wenn Sie 
eine beliebige Taste drük- 
ken, wird anstelle des 
Cursors kurz eine Zahl 
sichtbar. Erscheint eine 
1, können Sie das Dreieck 


noch benutzen. Erscheint 
eine 0, haben Sie dieses 
Dreieck schon benutzt. 
Die kleinen Dreiecke müs¬ 
sen im großen Dreieck 
dergestalt angeordnet 
werden, daß an den Kan¬ 
ten Kreise mit farblich 
passenden Dreiecken Zu¬ 
sammenkommen! Haben 
Sie sich ein Dreieck aus¬ 
gesucht, drücken Sie 
“ENTER“ und das Drei¬ 
eck wird in das große 
Dreieck gelegt. Der obe¬ 
re Cursor verschwindet 
und Sie können den un¬ 
teren wieder bewegen. 

So lange Sie noch oben 
sind, können Sie mit 
“D“ das Dreieck, auf 
dem Ihr Cursor sitzt, 
nach Belieben drehen. 
Bemerken Sie, das im 
großen Dreieck ein Drei¬ 
eck falsch liegt, bringen 
Sie Ihren Cursor an die 
entsprechende Stelle und 
drücken Sie “W“. Das 
Dreieck verschwindet, 
und Sie können es wieder 
benutzen. Bemerken Sie, 
wenn Sie dabei sind, ein 
Dreieck auszusuchen, 
daß Sie sich einen fal¬ 
schen Platz ausgesucht 
haben, können Sie, nach¬ 
dem Sie “Z“ gedrückt 
haben, den Fehler wieder 

Bitte lesen Sie weiter auf Seite 30 


21 









10 REM******************** 


11 REM* TEUFELSDREIECK * 

12 REM* * 

13 REM* Copyright by * 

14 REM* * 

15 REM* Peter Conrad * 

16 REM* * 

17 REM*Benoetigte Geraete* 

18 REM* TI99/4A Konsole * 

19 REM* * 

23 REM* Speicherbelegung * 

24 REM* 12144 Bytes * 


25 REM******************** 

26 REM 

100 CALL CHAR<96,"08081CIC3E 
3E7F7F") 

110 CALL CHAR(97,"3C7EFFFFFF 
FF7E3C") 

120 CALL CHAR(104,"08081C1C3 
E3E7F7F") 

130 CALL CHAR(105,"3C7EFFFFF 
FFF7E3C") 

140 CALL CHAR <112,"08081C1C3 
E3E7F7F") 

150 CALL CHAR(113,"3C7EFFFFF 
F7E3C") 

160 CALL COLOR(9,7,4) 

170 CALL COLOR(10,5,4) 

180 CALL COLOR<11,16,4) 

190 CALL CHAR(150,"3C4299A1A 
199423C") 

200 NU=1 

210 CALL CLEAR 

215 REM Das alleinstehende ' 

W' in Zeile 220 ist zusammen 


L 

I 

S 

T 

I 

N 

G 

S 


380 PRINT :"ABER:AUF JEDEM D 
REIECK SIND": :"DREI ZEICHEN 
-SIE MUESSEN": :"DIE DREIECK 
E SO ZUSAMMENLE- " 

390 PRINT :"GEN,DASS NUR DRE 
IECKE UND": :"DIE FARBLICH P 
ASSENDEN": :"KREISE ZUSAMMEN 

KOMMEN." 

400 PRINT :"WENN SIE'S GESCH 
AFFT HABEN,": :">F< DRUECKEN 
: :"TASTE DRUECKEN"; 

410 CALL KEY(0,K,S) 

420 IF S=0 THEN 410 
430 CALL CLEAR 

440 PRINT "SIE KOENNEN IHREN 
CURSOR MIT": :">P< VERSCHIE 
BEN.DRUECKEN": :"SIE >ENTER< 

,KOENNEN SIE SICH" 

450 PRINT :"DAS DREIECK,DAS 
AN DEN AUS-": :"GESUCHTEN PL 
ATZ KOMMT,AUS-": :"SUCHEN.MI 
T >D< KOENNEN SIE" 

460 PRINT :"DAS AUSGESUCHTE 
DREIECK": :"DREHEN.MIT >ENTE 
R< WIRD": :"JETZT DAS DREIEC 
K PLATZIERT." 

470 PRINT : :"TASTE DRUECKEN 


480 CALL KEY <0,K,S) 

490 IF S=0 THEN 480 

500 CALL CLEAR 

510 PRINT :"MIT >W< KOENNEN 

SIE EIN": :"DREIECK WEGTUN.S 

IE KOENNEN": :"DAS DREIECK W 

IEDER BENUTZEN" • 


mit der CTRL—Taste einzugeb 
en 

220 PRINT "TEUFELSDREIECK": 

:"W 1984 BY PETER CONRAD":"A 
M HECKENBERG 1":"5440 MAYEN" 
: :"TASTE DRUECKEN" 

230 CALL KEY(0,K,S) 

240 IF S=0 THEN 230 
250 CALL CLEAR 
260 DIM C(9),D(3,5) 

270 FOR F=1 TO 9 

280 C <F)=1 

290 NEXT F 

300 CALL CLEAR 

310 GOSUB 2940 

320 PRINT "ANLEITUNG<J/N)?"= 


330 CALL KEY <0,K,S) 

340 IF <K=78)+<K=74>=0 THEN 
330 

350 IF K=78 THEN 640 
360 CALL CLEAR 

370 PRINT "SIE MUESSEN VERSU 
CHEN,AUS 9": :"KLEINEREN DRE 

IECKEN EIN": :"GROSSES ZUSAM 
MENZUSTELLEN." 


520 PRINT :"UND DER PLATZ IS 
T WIEDER": :"FREI." 

530 PRINT :"SIE KOENNEN EIN 
DREIECK NA—": :"TUERLICH NUR 

EINMAL BENUTZEN" 

540 PRINT :"MIT >Z< KOENNEN 
SIE,WENN SIE": :"DABEI SIND, 
EIN DREIECK AUS-": :"ZUSUCHE 
N,ZURUECK ZUM PLATZ-": :"IER 
EN. " 

550 PRINT : :"TASTE DRUECKEN 

••. 

9 

560 CALL KEY(0,K,S) 

570 IF S=0 THEN 560 

580 CALL CLEAR 

590 PRINT "WENN SIE DABEI SI 

ND,EIN": :"DREIECK AUSZUSUCH 

EN,BLINKT": :"NACH DEM DRUEC 

KEN EINER TAS—": :"TE EINE Z 

AHL AUF." 

600 PRINT :"DABEI BEDEUTET > 
0<:SCHON BE—": :"NUTZT": :"U 
ND >1<:NOCH NICHT BENUTZT.": 

:"WENN SIE NEU ANFANGEN WOL 
-": :"LEN, >N< DRUECKEN.": 

610 PRINT : :"VIEL SPASS!": 


22 





:"TASTE DRUECKEN"; 

620 CALL KEY(0,K,S) 

630 IF S=0 THEN 620 
640 Al=20 
650 FOR F=1 TO 8 
660 CALL COLOR(F,2,1) 

670 NEXT F 
680 A2=9 

690 CALL SCREEN(4) 

700 Bl=3 
710 B2=4 ' 

720 CALL CHAR(150,"804020100 
8040201") 

730 CALL CHAR(95,"0000000000 
0000FF") 

740 CALL CHAR(151,"010204081 
0204080") 

750 CALL CHAR(153,"FF4020100 
8040201") 

760 CALL CHAR(152,"FF") 

770 CALL CHAR(154,"FF0204081 
0204080") 

775 REM in Zeilen 780-840 si 
nd ALLE Grossbuchstaben ZUSA 
MMEN mit der CTRL-Taste einz 
ugeben. Punkte=SPACE—Taste- 
Klei nbuchstaben beachten!! 

780 PRINT ".._ 

_- - . WV. .q...WV. 

WV. . '_WV.W..Vh..aW..Va..iW 

-.Vq..iW..V" 

790 PRINT "a.. iV..W'..iV..Wh 
..iV..Wi..q.p...VW..i . . .VW. . 
p. ..VW..h..XqXXXZXXXXXXXXXXX 
XXXXXYXX'XX" 

800 PRINT "'..pW. 

.V'..iV..W. 

.V..W.VW . 

.VW" 

810 PRINT : ".WV" 

: ".W. . V": ". 

_W_V": ".W_ 

..V" 

820 PRINT ". WYXXXXXX 

ZV": ".W. . V_W. . V" : " 

.W_V. . W_ V": "_ 

- - W.VW. V" 

830 PRINT ". WYXXXXXXZYXX 

XXXXZV" : "_W. . V_W. . V. . . 

. W. .V": " W_ V- . W_V. . W 

_ V" 

840 PRINT " . . W.VW. 

VW.V- XXXXXXXXXXXXXXX 

XXXXXXXXX" 

850 CALL HCHAR(4,31,150) 

860 CALL HCHAR(5,32,150) 

870 CALL HCHAR(6,1,153) 

880 CALL HCHAR(6,32,154) 

890 CALL HCHAR(4,2,151) 

900 CALL HCHAR(6,2,152) 

910 CALL HCHAR(6,31,152) 


L 

I 

S 

T 

I 

N 

G 

S 


920 CALL HCHAR(7,2,150) 

930 CALL HCHAR(7,31,151) 

940 CALL HCHAR(5,1,151) 

950 CALL HCHAR(Al,A2,30) 

960 CALL KEY(0,K,S) 

970 IF S=0 THEN 960 
980 IF K=87 THEN 2320 
990 IF K=78 THEN 100 
1000 IF K=13 THEN 1100 
1010 IF K=70 THEN 2020 
1020 CALL HCHAR(Al,A2,32) 
1030 IF K< >80 THEN 1090 
1040 IF (Al=12)+(A2=17)< >—2 
THEN 1070 
1050 A2=A2—12 
1060 Al=Al+8 

1070 A1=A1—8*(Al=12)+4*((Al= 
20)+(A2=25)=—2)+4*((Al=16)+( 
A2=21)=—2) 

1080 A2=A2+8*(Al=12)+16*(<A2 
=25) +(Al=16)=—2)-4*(K=80) 
1090 GOTO 950 

1100 C(D((Al—8)/4,(A2—5)/4)) 
= 1 

1110 CALL HCHAR(Bl,B2,30) 
1120 CALL KEY(0,K,S) 

1130 IF S=0 THEN 1120 

1140 CALL HCHAR(Bl,B2,C(NU)+ 

48) 

1150 IF K=78 THEN 100 
1160 CALL HCHAR(Bl,B2,32) 
1170 IF K=90 THEN 2920 

1180 IF K=13 THEN 1270 

1190 IF K=68 THEN 1870 

1200 IF K<>80 THEN 1230 

1210 Bl=Bl+4*((B1=7)+(B2=28) 
=—2)-4*((B1=3)+(B2=28)=—2) 

1220 B2=B2+24*((B1=7)+(B2=28 
)=—2)-24*((Bl=7)+(B2=4)+(K=8 
0)=—3)+28*((Bl=3)+(B2=28)=-2 
)-4*((Bl=3)+(K=80)=—2) 

1230 NU=NU—(K=80) 

1240 IF (B2=4) + (B1=3)< >—2 TH 
EN 1260 
1250 NU=1 
1260 GOTO 1110 

1270 D((Al—7)/4,(A2—5)/4)=NU 
1280 IF C(NU)=0 THEN 2180 
1290 C(NU)=0 

1300 CALL HCHAR(Bl,B2,C(NU)+ 
48) 

1310 IF ((B2/4)/2=INT((B2/4) 
/2))+((Bl=7)+(B2=4)+(B2=28)= 
-2)THEN 1360 

1320 CALL GCHAR(Bl+1,B2—1,X2 
) 

1330 CALL GCHAR(Bl+1,B2+2,X3 
) 

1340 CALL GCHAR(B1+2,B2,XI) 

1350 GOTO 1390 

1360 CALL GCHAR(Bl,B2-1,X3) 




23 




















1370 CALL GCHAR(Bl,B2+2,X2) 
1380 CALL GCHAR(B1-1,B2,XI) 
1390 IF ((((A2-5)/4)/2<>INT( 
(A2-5)/4/2)) + ( A1=20)=—2) + ((A 
1 = 16) + (A2< >17)=—2)+(Al=12>=0 
THEN 1470 

1400 CALL HCHAR(Al + 1,A2—2, X2 
) 

1410 CALL HCHAR(Al+1,A2+1,X3 
) 

1420 CALL HCHAR(A1+2,A2-1,XI 
) 

1430 CALL GCHAR(A1+3,A2-1,X4 
) 

1440 CALL GCHAR(Al,A2-3,X5) 

1450 CALL GCHAR(Al,A2+2,X6) 

1460 GOTO 1530 

1470 CALL HCHAR(Al,A2-2,X3) 

1480 CALL HCHAR(Al,A2+1,X2) 

1490 CALL HCHAR(Al—1,A2—1, X 1 

) 

1500 CALL GCHAR(A1-2,A2-1,X4 
) 

1510 CALL GCHAR(Al+1,A2—3,X6 
) 

1520 CALL GCHAR(Al+1,A2-1,X5 
) 

1530 IF X4/2<>INT(X4/2)THEN 
1560 

1540 IF (X4< >X1 —1> + (X4< >32) + 

(X4< >152)=—3 THEN 1660 
1550 GOTO 1570 

1560 IF (X4< >X1 + 1) + (X4< >32) + 

(X4< >152)=—3 THEN 1660 
1570 IF X5/2< >INT(X5/2)THEN 
1600 

1580 IF (X5< >X2—1) + (X5< >32) + 
(X5< >152)=—3 THEN 1660 
1590 GOTO 1610 

1600 IF (X5< >X2+1) + (X5< >32) = 
-2 THEN 1660 

1610 IF X6/20INT (X6/2)THEN 
1640 

1620 IF (X6< >152) + (X60X3-1) 
+ (X6< >32)=—3 THEN 1660 
1630 GOTO 950 

1640 IF (X6< >X3+1) + (X6< >32) = 
-2 THEN 1660 ELSE 950 
1650 GOTO 950 

1660 FOR 1=1 TO LEN("UNGUELT 
IG") 

1670 CALL HCHAR(24,4+1,ASC(S 
EG*("UNGUELTIG",1,1))) 

1680 NEXT I 
1690 C(NU)=0 

1700 CALL SOUND(300,262,0,26 
3,0,261,0) 

1710 CALL SOUND(300,262,0,26 
3,0,261,0) 

1720 CALL SOUND(150,294,0,29 
3,0,295,0) 


L 

I 

S 

T 

I 

N 

G 

S 


1730 CALL SOUND(150,330,0,33 
1,0,329,0) 

1740 CALL SOUND(150,294,0,29 
3,0,295,0) 

1750 CALL SOUND(300,262,0,26 
3,0,261,0) 

1760 CALL SOUND(300,262,0,26 
3,0,261,0) 

1770 CALL HCHAR(24,5,32,28) 
1780 IF ((((A2-5)/4)/2<>INT( 
(A2-5)/4/2))+(Al=20)=—2)+((A 
1 = 16) + (A2< >17)=—2) + (Al = 12)=0 


THEN 1830 

1790 CALL HCHAR(A1+2,A2-1,32 
) 

1800 CALL HCHAR(Al+1,A2+1,32 
) 

1810 CALL HCHAR(Al+1,A2—2,32 
) 

1820 GOTO 950 

1830 CALL HCHAR(Al,A2-2,32) 
1840 CALL HCHAR(Al,A2+1,32) 
1850 CALL HCHAR(Al-1,A2-1,32 
) 

1860 GOTO 950 

1870 IF ((B2/4)/2=INT((B2/4) 
72))+((B1=7)+(B2=4)+(B2=28)= 


—2)=0 THEN 
1880 CALL 
1890 CALL 
1900 CALL 
1910 CALL 
1920 CALL 
1930 CALL 
1940 GOTO 
1950 CALL 
) 

1960 CALL 
) 

1970 CALL 
1980 CALL 
) 

1990 CALL 
) 

2000 CALL 
2010 GOTO 


1950 

GCHAR(Bl,B2—1,X1) 
GCHAR(Bl,B2+2,X2) 
GCHAR(Bl—1,B2,X3) 
HCHAR(Bl,B2—1,X2) 
HCHAR(Bl—1,B2,X1) 
HCHAR(Bl,B2+2,X3) 
1260 • 

GCHAR(Bl+1,B2-1,XI 

GCHAR(Bl+1,B2+2,X2 

GCHAR(Bl+2,B2,X3) 
HCHAR(Bl+1,B2—1,X3 

HCHAR(Bl+1,B2+2,X1 

HCHAR(Bl+2,B2,X2) 
1260 


2020 FOR F=1 TO 9 

2030 IF C(F)THEN 1020 

2040 NEXT F 

2050 FOR F=1 TO 23 

2060 CALL HCHAR(24,4+F,ASC(S 

EG*("SIE HABEN'S GESCHAFFT! ! 


",F,1))) 

2070 NEXT F 

2080 FOR F=1 TO 13 

2090 CALL HCHAR(7,9+F,ASC(SE 

G*("NOCHMAL?(J/N)",F,1))) 

2100 NEXT F 

2110 RESTORE 2700 

2120 GOSUB 2350 

2130 CALL KEY(0,K,S) 


24 




2140 IF <K< >78) -+- (K< >74) =—2 T 
HEN 2130 

2150 IF K=74 THEN 190 
2160 CALL CLEAR 
2170 END 

2180 FOR F=1 TG LEN("SCHON B 
ENUTZT!") 

2190 CALL HCHAR(24,5+F,ASC(S 
EG$("SCHON BENUTZT!",F,1))) 
2200 NEXT F 

2210 CALL SOUND(300,262,0,26 
3,0,261,0) 

2220 CALL SOUND(300,262,0,26 
3,0,261,0) 

2230 CALL SOUND(150,294,0,29 
3,0,295,0) 

2240 CALL SOUND(150,330,0,32 
9,0,331,0) 

2250 CALL SOUND(150,294,0,29 
5,0,293,0) 

2260 CALL SOUND(300,262,0,26 
3,0,261,0) 

2270 CALL SOUND(300,262,0,26 
3,0,261,0) 

2280 FOR F=1 TO 1000 
2290 NEXT F 

2300 CALL HCHAR(24,1,32,32) 
2310 GOTO 1110 
2320 C(D((Al—8)/4,(A2—5)/4)) 
= 1 

2330 D((Al—8)/4,(A2—5)/4)=0 

2340 GOTO 1780 

2350 FOR F=1 TO 32 

2360 READ A,B 

2370 CALL SOUND(A,B,0) 

2380 NEXT F 

2390 FOR F=1 TO 2 

2400 RESTORE 2730 

2410 FOR TON=l TO 56 

2420 READ A,B 

2430 CALL SOUND(A,B,0) 

2440 NEXT TON 

2450 NEXT F 

2460 FOR F=1 TO 74 

2470 READ A,B 

2480 CALL SOUND(A,B,0) 

2490 NEXT F 

2500 FOR F=1 TO 2 

2510 RESTORE 2850 

2520 FOR TON=l TO 32 

2530 IF F=1 THEN 2600 

2540 IF TON<29 THEN 2600 

2550 CALL SOUND(750,262,0) 

2560 CALL SOUND(1,44000,30) 

2570 FOR F=1 TO 122 

2580 NEXT F 

2590 GOTO 2640 

2600 READ A,B 

2610 CALL SOUND(A,B,0) 

2620 NEXT TON 
2630 NEXT F 


L 

I 

S 

T 

I 

N 

G 

S 


2640 RESTORE 2880 
2650 FOR F=1 TO 42 
2660 READ A,B 
2670 CALL SOUND(A,B,0) 

2680 NEXT F 
2690 RETURN 

2700 DATA 300,523,300,659,30 
0,392,300,523,150,330,150,29 

4.150.330.150.349.150.330.15 
0,294,300,294 

2710 DATA 300,349,300,349,30 
0,330,300,330,750,294,300,34 

9.300.349.300.330.300.330.15 
0,330,150,294,600,294 

2720 DATA 150,294,150,294,15 
0,262,150,294,150,330,150,29 
4,150,262,300,262,750,262 
2730 DATA 150,392,150,523,15 
0,659,150,784,300,587,150,58 

7.150.523.150.392.150.523.15 
0,659,150,784 

2740 DATA 300,587,150,587,15 
0,523,150,330,150,440,150,52 

3.150.659.300.494.150.494.15 
0,440,150,330,150,440 

2750 DATA 150,523,150,659,30 
0,494,150,494,150,440,150,44 
0,150,587,150,698,150,880,30 
0,659,150,659,150,587 
2760 DATA 150,440,150,587,15 
0,698,150,880,300,659,150,65 

9.150.587.150.294.150.392.15 
0,494,150,587,300,440 

2770 DATA 150,440,150,392,15 
0,294,150,392,150,494,150,58 

7.300.440.150.440.150.392 
2780 DATA 150,392,150,523,15 
0,587,150,659,150,587,150,52 

3.150.587.150.659.600.784.15 
0,784,150,784,150,784,150 
2790 DATA 784,150,698,300,69 

8.300.698.300.880.450.659.15 
0,587,300,587,150,392,150,52 
3,150,587,150,659,150,587 
2800 DATA 150,523,150,587,15 
0,659,600,784,150,784,150,78 

4.150.784.150.784.150.698.30 
0,698,300,698,300,784,450 
2810 DATA 659,150,587,300,58 

7.150.440.150.523.150.523.15 
0,440,150,440,150,392,150,39 

2.150.523.150.523.150.392 
2820 DATA 150,494,150,523,30 
0,523,150,440,150,523,150,52 

3.150.440.150.440.150.392.30 
0,392,150,440,150,523 

2830 DATA 150,523,150,440,15 
0,440,150,392,150,392,150,52 

3.150.587.150.659.150.587.15 
0,523,150,587,150,659 

2840 DATA 150,659,150,784,75 




25 




0,784,6025,784,150,392, 150,52 
3,150,587 

2850 DATA 300,330,300,330,30 
0,349,300,349,150,330,150,29 
4,150,330,150,349,150,330,15 

0,294,300,294,300,349,300 
2860 DATA 349,300,330,300,33 
0,600,294,300,349,300,349,30 
0,330,300,330,600,294,150,29 
4,150,262,150,294,150,330 
2870 DATA 150,294,150,262,30 
0,262,600,262,150,392,150,52 
3,150,587 

2880 DATA 150,523,225,523,75 

,494,600,523,150,523,225,523 

,75,494,600,523,150,523,225, 

523,75,494,150,523 

2890 DATA 150,587,150,587,15 

0,523,150,587,150,659,150,65 

9,150,587,150,659,150,698,15 

0,698,150,659,150,659 

2900 DATA 150,587,150,587,15 

0,523,600,523,150,440,225,44 

0,75,392,600,440,150,440,150 

,440,150,349,150,349 

2910 DATA 150,330,150,330,15 

0,294,150,294,150,262,1200,2 

62 

2920 C(D((Al—8)/4,(A2—5)/4)) 
=0 

2930 GOTO 960 

2940 DATA 003F666C746466EF,0 
07E313B3633337E,003E63414060 
3F1E,007E3211191137E,007F333 
03C38317F,007F723239383078 
2950 DATA 003E6648504F663E,0 
07C603F3132327A03,007C38181C 
1A183C2,003F13060606263F,007 
B72363C363673 

2960 DATA 007830303072637F,0 
07FB2A4949496,007C76323A3234 
77,003E634559617F3E,007E3331 
3F3E3078,003E63414D45633F 
2970 DATA 007F313A34323179,0 
03E413C06634F3E,007F492A0808 
081C,006F2626666E7E37,007362 
2232321E0C,0017222241494936 
2980 DATA 007932140814264F,0 
07341623418183C,007F43260C1A 
317F 

2990 RESTORE 2940 
3000 FOR F=65 TO 90 
3010 READ A* 

3020 CALL CHAR(F,A$) 

3030 NEXT F 

3040 CALL SCREEN(14) 

3050 FOR F=1 TO 8 
3060 CALL COLOR(F,16,l) 

3070 NEXT F 
3080 RETURN 


L 

I 

S 

T 

I 

N 

G 

S 


10 


********************** 

11 

i 

* 

FARBCODEANZEIGE 

* 

12 

i 

* 

FUER WIDERSTAENDE 

* 

13 

; 

* 


* 

14 

i 

* 

Copyright by 

* 

15 

i 

* 


* 

16 

i 

* 

Joern Dohrmann 

* 

17 

i 

* 


* 

19 

i 

* 

Benoetigte Geraete 

* 

20 

; 

* 

TI99/4A Konsole 

* 

21 

i 

* 

Ext. Basic 

* 

22 

i 

* 


* 

26 

i 

* 

Speicherbelegung 

* 

27 

j 

* 

2233 Bytes 

* 

28 

i 

* 


* 

29 

i 

********************** 

100 

! 

FAERBUNG & 



FEHLER UEBERBRUECKEN 
110 ON WARNING NEXT :: ON ER¬ 
ROR 290 : : FOR 1=0 TO 9 :: C 
ALL COLOR(1,5,1)ss NEXT I :: 

CALL MAGNIFY(2) 

120 !DATA F. FARBUMWANDLUNG 
130 DATA 2,7,9,10,12,13,5,14 
,15,16,11,SCHWARZ,BRAUN,ROT, 
ORANGE,GELB,GRUEN,BLAU,VIOLE 
T,GRAU,WEISS,GOLD 
140 ! CHAR—DEFINIERUNG 
150 CALL CHAR (127, "F0F0F0F*', 
128,RPT$("F",16),129,"1F2020 
2020202020",130,"F8040404040 
40404",131,RPTS("20",8),132, 
RPT*("04",8)) 

160 ! BILDSCHIRM- LOESCHEN & 
NEU BESCHRIFTEN 
170 CALL CLEAR :: DISPLAY AT 
(1,1):"MINIATUR—KOHLEMASSE—" 

: :"WIDERSTAENDE NACH MIL-Rl 

IE" 

180 • DATEN EINLESEN & 

WEITERHIN BILDSCHIRM 
BESCHRIFTEN 

190 FOR 1=0 TO 4 :: READ E(I 
):: CALL SPRITE(#1+1,127,E(I 
),1*8+33,23)s: NEXT I 
200 FOR 1=5 TO 9 :: READ E(I 
):: CALL SPRITE(#1+1,127,E(I 
),(1-5)*8+33,119):: NEXT I 
210 READ E(10):: FOR 1=0 TO 
10 :: READ A*(I):: NEXT I 
220 DISPLAY AT(5,1):"..=>"&A 
*(0) , "=>"&A$(5) : " - - =>"ScA$ (1) 

, "=>"&A$(6) : " . . =>"&cA$ (2) , " = > 
"8<A^ (7) : " - - =>"2<AT (3) , " = >"&A:£ 
(8) : " . . =>"8cA$ (4) ,"=>"&A$<9) 
230 CALL SPRITE(#11,128,2,16 
1,41,#12,128,2,161,57,#13,12 
8,2,161,73) 

240 DISPLAY AT(11,1):"4.FABR 
ING:": : " GOLD.< =57.T0LER 


26 






ANZ": "SILBER-< = 107_TOLERAN 

Z": "OHNE RING <=207.TOLERANZ" 
250 DISPLAY AT(22,1)"&CH 

R*(129)&"."&CHR$ ( 130) : " 

- . "&CHR* (131) &"."&CHR* ( 

132) 

260 ! HAUPTPROGRAMM 
270 DISPLAY AT (1 7,1):"WELCHE 
N WIDERSTAND": :"BENOETIGEN 
SIE : " 

280 ! DATEN UEBER TASTATUR 
ABFRAGEN 

290 ACCEPT AT(19,17)VALIDATE 
(DIGIT,". ")SIZE(8):A :: IF 
A=0 THEN 290 

300 ! WIEDERSTAND BERECHNEN 
310 FOR 1=0 TO 9 :: F=POS(ST 
R*(A),STR$(I),1):: IF F=1 TH 
EN 330 ELSE IF F=2 AND A<1 T 
HEN 330 
320 NEXT I 

330 IF LEN(STR$(A))=1 THEN C 
=A :: D=1 :: B=0 :: GOTO 460 
340 B=I :: C=VAL(SEG*(STR*(A 
)&"0",3,1)) 

350 IF A<. 99. THEN D=9 : : GOT 
O 460 

360 IF A<9.9 THEN D=ll :: GO 
TO 460 

370 C=VAL(SEG*(STR*(A),F+1,1 
)):: IF A<99 THEN D=1 :: GOT 
O 460 

380 IF A<999 THEN D=2 :: GOT 
0 460 

390 IF A<9999 THEN D=3 :: GO 
TO 460 

400 IF A<99999 THEN D=4 :: G 
OTO 460 

410 IF Ä<999999 THEN D=5 :: 
GOTO 460 

420 IF A<9999999 THEN D=6 :: 
GOTO 460 

430 IF A<99999999 THEN D=7 : 

: GOTO 460 

440 GOTO 290 

450 ! ERGEBNIS AUF DEN 

BILDSCHIRM DRUCKEN 
460 DISPLAY AT(24,1):A*<B)&" 
+"&A*(C)&"+"&A*(D-l)&"="&STR 
S(A) 

470 ! PROGRAMM BEENDEN ??? 
480 DISPLAY AT(17,1): :"NOCH 

EINMAL (J/N)?: J " : : 

490 CALL COLOR(#ll,E(B),#12, 
E(C),#13,E(D—1)) 

500 ! KEY ABFRAGE 
510 ACCEPT AT(18,19)SIZE(— 1 ) 
VALIDATE("JN"):X* :: IF XT=" 
J" THEN 270 ELSE CALL CLEAR 
:: CALL DELSPRITE(ALL):: END 


L 

I 

S 

T 

I 

N 

G 

S 


10 REM******************** 


11 REM* MAD-BOX * 

12 REM* * 

13 REM* Copyright by * 

14 REM* * 

15 REM* Ronald Goerke * 

16 REM* * 

17 REM*Benoetigte Geraete* 

18 REM* TI99/4A Konsole * 

19 REM* * 

23 REM* Speicherbelegung * 

24 REM* 7249 Bytes * 


25 REM******************** 

26 REM 

100 CALL CLEAR 
110 CALL SCREEN(16) 

120 CALL COLOR(l,2,16) 

130 CALL COLOR(3,2,16) 

140 CALL COLOR(4,2,16) 

150 CALL CHAR(136,"FFFFFFFFF 
FFFFFFF") 

160 CALL CHAR(34,"0000183C24 
243C18") 

170 CALL CHAR(117,"FFA5A5FFA 
5FFA5FF") 

180 CALL CHAR(119,"1818423C3 
C18183C") 

190 CALL CHAR(120,"FFC324181 
824C3FF") 


200 CALL CHAR(130,"02042C1A5 
C3A3C38") 

210 CALL CHAR(135,"00003C001 
8F8DFFB") 

220 CALL CHAR(140,"000002249 
8E6DDA5") 

230 PRINT ".MAD. . BOX 


240 PRINT ".CO. BY" : : 


250 PRINT ".R.GOERK 

E":::::: : 

260 FOR A=110 TO 200 STEP 5 
270 CALL SOUND(-100,A,0) 

280 NEXT A 
290 CALL CLEAR 

300 PRINT ".ANLEITUNG?" 


310 PRINT ".(J/N)": : : 


320 FOR B=500 TO 600 STEP 10 
330 CALL SOUND(-100,B,0,B+10 
,0,B+20,0) 

340 NEXT B 

350 CALL KEY(0,K,S) 

360 IF S=0 THEN 350 

370 IF K=74 THEN 400 

380 IF K=78 THEN 600 

390 GOTO 350 

400 CALL CLEAR 

410 PRINT ".MAD.. BOX": 




27 




















420 PRINT "VERSUCHEN SIE ALS 
MARIO : 

430 PRINT "UEBER DIE KUGELN 
DER ": : 

440 PRINT "VERRUECKTEN KISTE 
ZU": : 

450 PRINT "SPRINGEN, UM DANN 
DIESE": : 

460 PRINT "HINUNTER ZU WERFE 
N ! " : : 

470 PRINT "JEDER WURF ZAEHLT 
100 PUNKTE": 

480 PRINT :"UNÖ SIE HABEN 3 
LEBEN !": : 

490 PRINT "GEHEN KOENNEN SIE 
MIT S,D": : 

500 PRINT "IN PFEILRICHTUNG. 

II , . 

510 PRINT "SPRINGEN KOENNEN 
SIE MIT .!: 

520 PRINT "DRUECKEN SIE EINE 
TASTE!" 

530 C=1000 

540 FOR D=1 TO 50 

550 CALL SOUND(—100,C—10,0,C 

- 20 , 0 ) 

560 C=C-10 
570 NEXT D 
580 CALL KEY(0,K,S) 

590 IF S=0 THEN 580 
600 CALL CLEAR 

610 INPUT "SPIELSTAERKE:- 

.100-1." : Q 

620 IF Q<1 THEN 600 
630 IF Q>100 THEN 600 
640 CALL CLEAR 

650 PRINT ".VIEL ERF 

OLG 

660 CALL CLEAR 
670 CALL SCREEN(2) 

680 CALL COLOR(3,2,2) 

690 CALL COLOR(4,2,2) 

700 CALL COLOR(1,2,2) 

710 CALL COLORdl ,2,2) 

720 CALL COLOR(12,2,2) 

730 CALL COLOR(13,2,2) 

740 CALL COLOR(14,2,2) 

750 RESTORE 2960 
760 REM »»SPIELFELD 

ZEICHNUNG** 

770 FOR PL=1 TO 31 

780 READ AA,BB,CC,DD 

790 CALL HCHAR(AA,BB,CC,DD) 

800 NEXT PL 

810 FOR LK=1 TO 9 

820 READ AB,BA,CD,DC 

830 CALL VCHAR(AB,BA,CD,DC) 

840 NEXT LK 

850 CALL SCREEN(16) 

860 CALL COLOR(1,2,16) 



870 CALL COLOR(3,6,16) 

880 CALL COLOR(4,6,16) 

890 CALL COLORdl ,9,16) 

900 CALL COLOR(12,8,16) 

910 CALL COLOR (13,11,16*) 

920 CALL COLOR(14,9,16) 

930 CALL SOUND(800,261,0,260 
,3,262,3) 

940 CALL SOUND(800,329,0,330 
,3,328,3) 

950 CALL SOUND(800,391,0,392 
,3,390,3) 

960 CALL SOUND(2000,261,0,32 
9,0,391,0) 

970 FOR TY=1 TO 500 

980 NEXT TY 

990 F=48 

1000 G=48 

1010 H=51 

1020 U=5 

1030 CALL HCHAR(23,16,F) 

1040 CALL HCHAR(23,17,G) 

1050 CALL HCHAR(23,18,48) 
1060 CALL HCHAR(23,26,H) 

1070 1=15 

1080 IF U=6 THEN 1180 
1090 1=15 
1100 J=9 
1110 11=1 
1120 J1=J 
1130 N=0 
1140 L=15 
1150 M=25 
1160 Ml=l 
1170 Ll=l 

1180 CALL HCHAR(I,J,119) 

1190 GOTO 1230 

1200 CALL SOUND(-100,330,0) 

1210 CALL HCHAR(I,J,119) 

1220 CALL HCHARdl, J1,32) 
1230 11=1 
1240 J1=J 

1250 IF J=M+1 THEN 1950 
1260 IF J=7 THEN 1950 
1270 IF J=26 THEN 2100 
1280 CALL KEY(0,K,S) 

1290 IF S=0 THEN 1540 
1300 N=N+1 

1310 IF N=2 THEN 1540 

1320 IF K=68 THEN 1330 ELSE 

1350 

1330 J=J+1 

1340 GOTO 1200 

1350 IF K=83 THEN 1360 ELSE 

1380 

1360 J=J-1 

1370 GOTO 1200 

1380 IF K<>46 THEN 1540 

1390 CALL HCHAR(I,J,32) 

1400 CALL SOUND(-100,600,0) 
1410 1=1-1 


28 







1420 CALL HCHAR <I,J,119) 
1430 CALL HCHAR(L,M,34) 

1440 CALL HCHAR(LI,Ml,32) 

1450 L1=L 

1460 M1=M 

1470 M=M—1 

1480 GQSUB 1660 

1490 CALL HCHAR(I,J,32) 

1500 1=1+1 

1510 CALL HCHAR(I,J,119) 
1520 IF J=M+1 THEN 1950 
1530 GOTO 1280 
1540 CALL SOUND(-100,110,0) 
1550 CALL HCHAR(L,M,34) 

1560 CALL HCHAR(LI,Ml,32) 

1570 M1=M 

1580 L1=L 

1590 FOR 0=1 TO Q 

1600 NEXT O 

1610 M=M—1 

1620 N=0 

1630 IF M+1=J THEN 1950 
1640 IF M<=7 THEN 2070 
1650 GOTO 1280 
1660 CALL HCHAR(L,M,34) 

1670 CALL HCHAR(LI,Ml,32) 

1680 CALL SOUND(-100,110,0) 

1690 M1=M 

1700 L1=L 

1710 M=M—1 

1720 N=0 

1730 IF J=M+2 THEN 1830 
1740 IF M<=7 THEN 1750 ELSE 
1920 

1750 IF M=7 THEN 1770 
1760 M1=M 
1770 M=25 

1780 CALL HCHAR(15,7,130) 
1790 1=15 

1800 CALL HCHAR(14,8,32,19) 
1810 CALL HCHAR(I,J,119) 
1820 GOTO 1030 
1830 G=G+1 

1840 CALL HCHAR(I,J,32) 

1850 CALL HCHAR(L,M,32) 

1860 U=6 

1870 IF G=58 THEN 1880 ELSE 
1740 

1880 F=F+1 % 

1890 G=48 

1900 IF F=58 THEN 1910 ELSE 
1740 

1910 IF G<58 THEN 2680 ELSE 
1030 

1920 CALL HCHAR(23,16,F) 
1930 CALL HCHAR(23,17,G) 
1940 RETURN 

1950 CALL SOUND(-100,-5,0) 
1960 CALL HCHAR(I,J,135) 
1970 FOR M=1 TO 200 
1980 NEXT M 


L 

I 

S 

T 

I 

N 

G 

S 


1990 CALL HCHAR(I,J,32) 

2000 CALL HCHAR(L1,Ml,32) 
2010 CALL HCHAR(15,7,130) 
2020 CALL HCHAR(15,26,117) 
2030 H=H—1 

2040 IF H=48 THEN 2310 
2050 U=5 
2060 GOTO 1060 
2070 M=25 

2080 CALL HCHAR(15,7,130) 

2090 GOTO 1280 

2100 FOR S=1 TO 5 

2110 CALL SOUND(-90,262,0) 

2120 CALL SOUND(-90,330,0) 

2130 CALL SOUND(-90,392,0,33 

0 , 0 ) 

2140 NEXT S 
2150 FOR R0=17 TO 21 
2160 CALL HCHAR(RO,26,117) 
2170 CALL HCHAR(RO,26,32) 
2180 NEXT RO 

2190 CALL SOUND(—100,—7,0) 
2200 CALL HCHAR(21,26,140) 
2210 FOR T=1 TO 100 
2220 NEXT T 


2230 CALL HCHAR(21,26,32) 
2240 U=5 
2250 F=F+1 

2260 CALL HCHAR(I,J,32) 

2270 CALL HCHAR(LI,Ml,32) 
2280 CALL HCHAR(15,26,117) 
2290 IF F=58 THEN 2300 ELSE 
1030 

2300 IF G<58 THEN 2680 
2310 FOR Z=1 TO 5 
2320 CALL SOUND(-100,392,0) 
2330 CALL SOUND(-100,330,0) 
2340 CALL SOUND(-100,262,0) 
2350 NEXT Z 

2360 CALL SOUND(500,392,0,33 
0,0,262,0) 

2370 CALL CLEAR 

2380 CALL COLOR(3,2,16) 

2390 CALL COLOR(4,2,16) 

2400 PRINT "SIE KONNTEN DIE 
KUGELN DER": : 

2410 PRINT "KISTE NICHT BEWA 
ELTIGEN!": : : 

2420 PRINT "IHRE PUNKTZAHL:" 

2430 IF F=48 THEN 2460 
2440 IF F<52 THEN 2480 
2450 IF F>=52 THEN 2560 
2460 PRINT "DAS WAR WOHL NIC 
HTS !!!": : : 

2470 GOTO 2500 

2480 PRINT "SIE SIND EIN DUR 
CHSCHNITT—" : : 

2490 PRINT "LICHER SPIELER!" 
2500 CALL HCHAR(18,14,F) 

2510 CALL HCHAR(18,15,G) 


» 


29 




2520 CALL HCHAR(18,16,48) 

2530 FOR V=1 TO 2000 
2540 NEXT V 
2550 GOTO 2590 

2560 FRINT "SIE SIND EIN UEB 
ERDURCH—": : 

2570 PRINT "SCHNITTLICHER SP 
IELER!": : 

2580 GOTO 2500 

2590 CALL CLEAR 

2600 PRINT "WOLLEN SIE NOCHE 

INMAL?": :::::: 

2610 PRINT ".(J/N) ": : : 

2620 CALL KEY(0,K,S) 

2630 IF S=0 THEN 2620 
2640 IF K=78 THEN 2670 
2650 IF K=74 THEN 110 
2660 GOTO 2620 
2670 END 

2680 CALL COLOR(3,2,16) 

2690 CALL COLOR(4,2,16) 

2700 FOR TX=1 TO 2 
2710 FOR 10=1 TO 3 
2720 FOR X=1 TO 5 
2730 CALL SOUND(—100,261,0,2 

62,2,260,2) 

2740 CALL SOUND(-100,329,0,3 

30.2.328.2) 

2750 CALL SOUND(-100,391,0,3 

92.2.390.2) 

2760 NEXT X 

2770 FOR X=1 TO 5 

2780 CALL SOUND(-100,329,0,3 

28.2.331.2) 

2790 CALL SOUND(—100,391,0,3 

92.2.390.2) 

2800 CALL SOUND(-100,493,0,4 

92.2.494.2) 

2810 NEXT X 
2820 NEXT IO 

2830 CALL SOUND(1000,261,0,3 
29,0,391,0) 

2840 FOR GY=1 TO 500 

2850 NEXT GY 

2860 NEXT TX 

2870 CALL CLEAR 

2880 PRINT "SIE SIND EIN SEH 

R GUTER": : : 

2890 PRINT "SPIELER!": : : 
2900 PRINT "SIE HABEN DIE HO 
ECHSTPUNKT—": : : 

2910 PRINT "ZAHL VON 1000 PU 
NKTEN ": : : 

2920 PRINT "ERREICHT!!!": : 
2930 FOR T=1 TO 2000 
2940 NEXT T 
2950 GOTO 2590 

2960 DATA 1,3,88,28,2,3,88,2 
8,3,3,88,28,22,3,88,28,23,3, 
88,28,24,3,88,28 


L 

I 

S 

T 

I 

N 

G 

S 


2970 DATA 15,7,130,1,16,8,12 
0,19,15,26,117,1,2,12,77,1,2 
,13,65,1,2,14,68,1 
2980 DATA 2,16,66,1,2,17,79, 

I, 2,18,88,1,1,11,136-, 9,3,11 , 

136,9,2,11,136,1 

2990 DATA 2,19,136,1,2,15,13 

6,1,23,9,80,1,23,10,85,1,23, 

II, 78,1,23,12,75,1 

3000 DATA 23,13,84,1,23,14,6 
9,1,23,20,76,1,23,21,69,1,23 
,22,66,1,23,23,69,1,23,24,78 
,1 

3010 DATA 4,5,88,18,4,4,88,1 

8,4,3,88,18,4,28,88,18,4,29, 

88,18,4,30,88,18 

3020 DATA 16,10,120,6,16,7,1 

36,6,16,24,120,6 


Fortsetzung von Seite 21 



gut machen. Wenn Sie 
fertig sind, drücken Sie 
“F“. Zur Belohnung 
spielt Ihnen der Compu¬ 
ter “SUPER TROUPER“ 
von Abba vor.(Die Melo¬ 
die ist noch nicht ganz 


ausgereift.) Wenn Sie mit¬ 
ten im Spiel überhaupt 
nicht mehr weiter wis¬ 
sen, können Sie, indem 
Sie “N“ drücken, von 
vorne anfangen. 



Dies ist ein Programm 
aus der Welt der Elek¬ 
tronik. Wenn man einen 
Schaltplan liest, enthält 
dieser Widerstände mit 
verschiedenen Werten. 
Wenn man nun den Wert 


in den Computer eingibt, 
erscheint auf dem Bild¬ 
schirm zu diesem Wider¬ 
stand der entsprechende 
Farbcode mit seinen drei 
Farben. Das ist eine gro¬ 
ße Hilfe beim Auffinden 
aus der Vorratskiste „aus¬ 
gelöteter“ Widerstände! 

Jörn Dohrmann 


TEXT-DECODER 


Das Programm dient dazu, 
Texte zu codieren und den 
Code auf Bildschirm, ggf. 
Drucker und Disketten¬ 
laufwerk, auszugeben. 

Ein Codetext kann von 
Diskette eingelesen oder 
über Tastatur eingegeben 
werden, um ihn wieder 
zu entschlüsseln. 

Technisch wird die Ver¬ 
schlüsselung durch Ver¬ 
änderung der ASCII-Wer- 
te des zu verschlüsseln¬ 
den Textes mit berechne¬ 
ten Zufallszahlen (Ran- 
domize xxx) gelöst. Es 
stehen 100 Codemöglich¬ 
keiten zur Verfügung. 
Nach RUN erscheint das 
Titelbild mit dem TI- 


Zeichen, die CHARs sind 
übrigens dem GROM 0 
entnommen. Nach Ta¬ 
stendruck erscheint das 
Hauptmenü und bietet 
folgende Wahlmöglich¬ 
keiten an: 

1) Text codieren, 

2) Text decodieren, 

0) Programmende 

Zu 1) Codieren 

Der Computer verlangt ei¬ 
ne Zahl, mit der der 
Text verschlüsselt werden 
soll (numerische Vorga¬ 
be für den Zufallszahlen¬ 
generator). Dann soll der 
zu codierende Text ein¬ 
gegeben werden, die 
(max.) vier Zeilen wer- 


30 







ZU IHNEN 
INS HAUS 


Finden Sie Ihre TI REVUE nicht am Kiosk? 
Weil sie schon ausverkauft ist? Oder „Euer" 
Kiosk nicht beliefert wurde? Kein Problem! Für 
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 
GARANTIE! 

Sie können diesen Abo-Auftrag 
binnen einer Woche nach Eingang 
der Abo-Bestätigung durch den 


Verlag widerrufen— Postkarte ge¬ 
nügt. Ansonsten läuft dieser Auf¬ 
trag jeweils für zwölf Ausgaben, 
wenn ihm nicht vier Wochen 
vor Ablauf widersprochen wird, 
weiter. 


Subskriptionsangebot für 

Sdmellentschlossene! 


Wieder rund 


SERVICE 
LISTINGS 
TIPS 
& TRICKS 



150 Seiten 


Ab 26. März 
an Ihrem 
Kiosk oder 
beim Verlag 


Es ist in Arbeit! Das neue, große Tl-Special mit rund 150 Seiten. Listings, Tips und Tricks. Für jeden Tl-User 
ein unbedingtes Muß. Nutzen Sie unser Subskriptionsangebot. Mit dem Reservierungsschein auf der nächsten 
Seite sparen Sie 2 Mark und erhalten das Heft, bevor es an den Kiosk kommt! Aber Achtung: Dieses Angebot 
ist befristet! Letzter Absende-Tag Ihrer Reservierungskarte ist der 25. März! Danach dürfen wir nur noch zum 

vollen Preis verkaufen! 


Subskriptionsangebot für 
Schnellenftschlossene! 


31 





% 





3 ~ 




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 Pos; 
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 


TI 


Ich nehme zur Kenntnis, 
daß die Belieferung 
erst beginnt, wenn die Abo 
Gebühr dem Verlag 
zugegangen ist 


TI REVUE 

Abo-Service 
Postfach 1107 

8044 UNTERSCHLEISSHEIM 


Coupon 

Ja, ich möchte von Ihrem Angebot 
Gebrauch machen. 

Bitte senden Sie mir bis auf Wider¬ 
ruf ab sofort jeweils die nächsten 


zwölf Ausgaben an untenstehende 
Anschrift. Sollte ich nicht vier 
Wochen vor Ablauf schriftlich 
kündigen, läuft diese Abmachung 
automatisch weiter. 


Name----- 

Vorname-i---— 

Straße/Hausnr- — 

Ptz/Ort ------ 

Ich bezahle: 

□ per beiliegendem Verrechnungsscheck 

□ gegen Rechnung 

□ bargeldlos per Bankeinzug von meinem Konto 

bei (Bank) und Ort-- 

Kontonummer- - - 

Bankleitzahl___— 

(steht auf jedem Kontoauszug) 

Unterschrift---— 

Von meinem Widerspruchsrecht habe ich Kenntnis genommen. 

Unterschrift_____ : — 


32 








SERVICE 


Es ist in Arbeit! Das neue, große Tl-Special mit 
rund 150 Seiten. Listings, Tips und Tricks. Für 
jeden Tl-User ein unbedingtes Muß. Nutzen Sie 
unser Subskriptionsangebot. Mit dem Reservierungs¬ 
schein auf der nächsten Seite sparen Sie 2 Mark 
und erhalten das Heft, bevor es an den Kiosk 
kommt! Aber Achtung: Dieses Angebot ist be¬ 
fristet! Letzter Absende-Tag Ihrer Reservierungs¬ 
karte ist der 20. März! Danach dürfen wir nur noch 
zum vollen Preis verkaufen! 

LISTINGS 
TIPS & TRICKS 
SERVICE 
Ab 26. März 
an Ihrem Kiosk 
oder beim Verlag 


tm 


i 



PROGRAMMSERVICE 

j 

j Hiermit bestelle ich in Kenntnis Ihrer Verkaufsbedingungen 
die Listings dieses Heftes auf 

□ Kassette.' (10DM) 4 /gg 

□ Diskette (25 DM) 

Zutreffendes bitte ankreuzenI 
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 4/86 
Postfach 1107 

8044 Unterschleißheim 33 














special asse 











Uber 90 Seiten 
Alles über 
Assembler für 
den TI 99/4A 


MACHEN SIE MEHR AUS 
IHREM TI MIT ASSEMBLER 


IM 

BAHNHOFSBUCH-HANDEL 
ODER BEIM VE 



Ein Muß für jeden 
Assembler-Anwender! 

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 ünd/oder Tele¬ 
fonnummer sollten acht Zeilen d 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 
uns 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. 


34 


■ - 


den miteinander verket¬ 
tet. Vorzeitiges Ende der 
Texteingabe mit in 
einer neuen (!) Zeile. 

Der Codetext wird be¬ 
rechnet, angezeigt und ggf. 
ausgedruckt oder auf 
Disk abgespeichert. 

Zu 2) Decodieren_ 

Zuerst soll die Zahl ein¬ 
gegeben werden, mit der 
der Text verschlüsselt 
worden ist. Dann wird 


der Text eingelesen oder 
eingegeben, für die Ein¬ 
gabe mit Tastatur gilt 
das unter 1) aufgeführte. 
Anschließend wird der 
Klartext ausgegeben, 
dann erfolgt ein Sprung 
zum Menü. 

Zu 0) Programmende 

Der Bildschirm wird ge¬ 
löscht, das Programm 
bleibt erhalten und kann 
mit RUN neu gestartet 
werden. 


L 

I 

S 

T 

I 

N 

G 

S 



‘Soft-Graph‘ dient zur 
schnellen und komfor¬ 
tablen Erstellung mehrfar¬ 
biger Bildschirmgrafiken. 


Pfeiltaste + [ FCTN] plottet 
reihenweise 
[ENTER] setzt/löscht 
den Dot 


Features: 

Nutzung des gesamten 
Bildschirms. 

1 11 Zeichen können 
definiert werden. 

— Fenstertechnik. 

— Abspeichern-Einladen 
von Grafiken 
Ausdruck der Char- 
codes/Position und 
Farben. 

Um einen Überblick über 
die Tastenfunktionen zu 
erhalten, ist es zweckmä¬ 
ßig, den Kunststoffstrei¬ 
fen über der Tastatur mit 
Bleistift folgendermaßen 
zu beschriften: 

Erklärung der Funktions¬ 
tasten: 


KEY FUNKTION 


[1] Screen Cursor 

(SC) 

Steuerung über Pfeiltasten 
Setzen eines Zeichens mit 
[ENTER] . 2mal [ENTER] 
setzt Zeichen 32 


[2] Char Cursor 

(CC) 

Zeichenwahl/laden des 
SC mit dem Zeichen 
Steuerung über Pfeiltasten 


[3] Change 

Definition 

Änderung des durch CC 
bestimmten Zeichens 
Steuerung über Pfeiltasten 

Bitte, lesen Sie weiter auf Seite 3 7 


[4] New 

Definition 
Funktion wie [3] 
Zeichen jedoch vorher 
gelöscht 


15] RPT 

Zeichenwiederholung 
(HHCHAR/VCHAR) 
Anfangspunkt plotten, 
dann SC auf den End¬ 
punkt, dann [5] drücken. 
Nur horiz./vertikales 
Plotten möglich 


[SHI FT][5] Paint 

Ausmalen geschlossener 
Figuren 

SC in die Figur bringen, 
dann [SHIFT][5] drük- 
ken. 

Das im SC geladene Zei¬ 
chen wird in die Figur 
geplottet. 


[6] Char Set 

Wechsel des Zeichensat¬ 
zes 1—7/8—14 


[SHI FT][6] Input 

Anfangspunkt mit SC 
bestimmen, dann [SHIFT] 
[6] drücken. Eingabe über 
die Tasten. 

Abschluß mit [ ENTER] 


[7] Check 

Den SC auf das Zeichen, 
dann [7] drücken. Der CC 
weist nun auf das 
Zeichen. 


«* 


10 

i 

********************** 

11 

i 

* 


* 

12 

i 

* 

TEXTDECODER 

* 

13 

i 

* 


* 

14 

i 

* 

Copyright by 

* 

15 

i 

* 


* 

16 

i 

♦Johannes Bitterling 

* 

17 

i 

* 


* 

19 

i 

* 

Benoetigte Geraete 

** 

20 

i 

* 

TI99/4A Konsole 

* 

21 

i 

* 

Ext. Basic 

* 

22 

i 

* 

(opt. Drucker und 

* 

23 

I 

* 

Disk— Lauf w.) 

* 

24 

i 

* 


* 

26 

i 

* 

Spei eherbeiegung 

* 

27 

i 

* 

4337 Bytes 

* 

28 

29 

i 

i 

* 

*-» 

E-****************** 

* 

K-* 


100 CALL INITCOL 

110 CALL RAHMEN 

120 !Char s fuer das 'TI' 

130 CALL CHAR(130,“010303030 
3030303") 

140 CALL CHAR<131,"FC0405050 
406020C") 

150 CALL CHAR(132,"008040408 
G000C12") 

160 CALL CHAR<133,"FF80C0406 
0381C0E") 

170 CALL CHAR(134,"1921213D0 
50505C4") 

180 CALL CHAR(135,"BA8A8ABAA 
1AlAl22") 

190 CALL CHAR(136,"030100000 
0000000 ") 

200 CALL CHAR(137,"E23110180 
C070300") 

210 CALL CHAR(138,"4C9020404 
020E000") 

220 CALL CHAR(139,"3C4299A1A 
199423C") 

230 A1$=CHR*(130)&CHR*(131) Sc 
CHRT(132) 

240 A2$=CHR*(133)&CHR*(134)& 


CHR$(135) 

250 A3*=CHR* (136) &CHR* (137) 


CHR*(138) 


260 

270 

280 

290 

300 

310 

4a: 


i 

i 


DISPLAY AT(05,14):A1$ 
DISPLAY AT(06,14):A2$ 
DISPLAY AT(07,14):A3$ 
DISPLAY AT(11,4):"TI 99/ 
*Textdecoder*" 


320 DISPLAY AT(18,6):CHR$(13 
9)&" 1985 by Ytrelionx" 

330 DISPLAY AT(22,4):"PRESS 
ANY KEY TG BEGIN" 

340 CALL KEY(0,K,S) 

350 IF S=0 THEN 340 
360 ! 


m 


35 




370 * 

380 ! 

390 CALL FT ION ( ,, HAUPTMENUE n ) 

400 ON ERROR 390 

410 DISPLAY AT(08,4)s"Text c 

odieren.. <1>" 

420 DISPLAY AT(10,4):"Text d 
ecodieren ... <2>" 

430 DISPLAY AT(14,4):"Progra 

mmende. <0>" 

440 DISPLAY AT(20,4):"Bitte 
waehlen Sie : < >" 

450 ! 

460 ACCEPT AT(20,25)SIZE(1)V 
ALIDATE ("012") : WAT- :: IF WAT 
="" THEN 460 

470 IF WAT="0" THEN CALL CLE 
AR :: END 

480 ON VAL(WAT)GOTO 490,950 

490 ! 

500 ! 

510 ! 

520 XT,WT="" 

530 CALL FTION("CODIEREN") 
540 DISPLAY AT(5,3):"Geben S 
ie eine Zahl ein," 

550 DISPLAY AT(7,3):"nach de 
r der Text codiert" 

560 DISPLAY AT(9,3):"wird (m 
er ken !!.')" 

570 DISPLAY AT(11,3):"Zahl:" 
580 ACCEPT AT(11,8)SIZE(2)VA 
LIDATE(DIGIT):ZAT s: IF ZAT= 
"" THEN 390 

590 ZA=VAL(ZAT) : : CALL FTION 
("COD. TEXTEINGABE") 

600 DISPLAY AT(06,3):"Geben 
Sie den Text ein" 

610 DISPLAY AT(08,3):"(max. 

4 Zeilen)," 

620 DISPLAY AT (10,3) : "<@> -fu 
er Eingabeende:" 

630 ZE=14 

640 ACCEPT AT(ZE,3)VALIDATE( 
UALPHA,DIGIT,"@"):TET :: IF 
TET="" THEN 640 
650 IF TET="@" THEN 680 
660 XT=XT&TET 

670 ZE=ZE+2 s: IF ZE>21 THEN 
680 ELSE 640 

680 CALL FTION("CODIEREN PRO 
C. ") 

690 RANDOMIZE ZA 

700 DISPLAY AT(08,3):"Textla 

enge";LEN(XT);"Bytes," 

710 DISPLAY AT(10,3):"bearbe 
itet sind" 

720 FOR T=1 TO LEN(XT) 

730 DISPLAY AT(10,19):T 
740 AS=ASC(SEGT(XT,T,1)) 

750 I=INT(32*RND) +1 


L 

I 

S 

T 

I 

N 

G 

S 


760 WT=WT&CHRT(I+AS) 

770 NEXT T 

780 CALL FTION("COD. AUSGABE 
") 

790 W2T=WT 

800 DISPLAY AT(5,3):"Codetex 
t:" :: Q=0 

810 IF LEN(WT)/20< >INT(LEN(W 
T)/20)THEN WT=WT&" " :: GOTO 
810 

820 FOR T=1 TO LEN(WT)STEP 2 
0 

830 Q=Q+1 

840 DISPLAY AT(10+0,5):SEGT( 

WT,T,20) 

850 NEXT T 

860 DISPLAY AT(20,3):"Abspei 
ehern (J/N)?" 

870 CALL KEY(0,K,S):: IF S=0 
THEN 870 

880 IF K< >74 AND KO 106 THEN 
920 ELSE DISPLAY AT(20,3):" 
Dateiname:" :: ACCEPT AT(20, 
14)SIZE(6):TT :: TT="DSK1."& 

TT 

890 OPEN #1:TT,SEQUENTIAL,0U 

TPUT,FIXED 128 

900 PRINT #1:W2T&"#" 

910 CLOSE #1 

920 DISPLAY AT(20,3):"Drucke « 
n (J/N)?" :: CALL KEY(0,K,ST 
):: IF ST=0 THEN 920 ELSE IF 
K=74 OR K=106 THEN CALL PRT 
(WT) 

930 DISPLAY AT(22,3):"Weiter 
mit <Enter>" 

940 CALL KEY (0, K, S) : : IF KO 
13 THEN 940 ELSE 390 
950 ! 

960 ! 

970 ! 

980 CALL FTION("DECODIEREN") 
990 DISPLAY AT(06,3):"Geben 
Sie die Codezahl .des" 

1000 DISPLAY AT(08,3):"verwe 
ndeten Schluessels" 

1010 DISPLAY AT(10,3):"ein:" 
1020 ACCEPT AT(10,7)VALIDATE 
(DIGIT)SIZE(2):ZAT :: IF ZAT 
="" THEN 390 
1030 ZA=VAL(ZAT) 

1040 RANDOMIZE ZA 

1050 DISPLAY AT(15,3):"Einle 

sen (J/N)?" 

1060 CALL KEY(0,K,S):: IF S= 

0 THEN 1060 

1070 IF K< >74 AND KO 106 THE 
N 1130 

1080 DISPLAY AT(15,3) : "Datei¬ 
name: " :: ACCEPT AT(15,14)SI 
ZE(5):DNT :: DNT="DSK1-"&DNT 


36 







1090 OPEN #1:DNT,SEQUENTIAL, 
INPUT ,FIXED 128 
1100 LINPUT #1:DT :: DT=SEGT 
(DT,1,POS (DT,, 1)-1) 

1110 CLOSE #1 
1120 GOTO 1230 

1130 CALL FTION("DECOD. EING 
ABE") 

1140 DISPLAY AT (05,3): "Geben 
Sie den Codetext ein" 

1150 DISPLAY AT (07,3) :"(<£! tu 
er Ende)" 

1160 ZE=0 

1170 ACCEPT AT(10+ZE,5)SIZE( 

20):XT :: IF XT="" THEN 1170 

1180 IF XT="@" THEN 1230 

1190 DT=DT&XT 

1200 ZE=ZE+1 

1210 IF ZE>5 THEN 1230 

1220 GOTO 1170 

1230 CALL FTION("DECODIEREN 

PROC.") 

1240 DISPLAY AT(10,3):"Code 
hat";LEN(DT);"Bytes," 

1250 DISPLAY AT(12,3): "bearb 
eitet sind" 

1260 FOR T=1 TO LEN(DT) 

1270 DISPLAY AT(12,18):T 
1280 AS=ASC(SEGT(DT,T,1)) 
1290 I=INT(32*RND)+1 
1300 RT=RT&CHRT(AS—I) 

1310 NEXT T 

1320 CALL FTION ("DECOD. RESU 
LT") 

1330 IF LEN(RT)/20< >INT(LEN( 
RT)/20)THEN RT=RT&" " :: GOT 
O 1330 
1340 Q=0 

1350 FOR T=1 TO LEN(RT)STEP 
20 

1360 DISPLAY AT(10+Q,5):SEGT 
(RT,T,20) 

1370 Q=Q+1 
1380 NEXT T 
1390 DT,RT="" 

1400 DISPLAY AT(05,3):"Klart 
ext: " 

1410 DISPLAY AT(21,3):"Weite 
r mit <Enter>" 

1420 CALL KEY <0,K,S):: IF K< 
>13 THEN 1420 ELSE 390 
1430 ! 

1440 ! 

1450 ! 

1460 gUB RAHMEN 
1470 ! 

1480 CALL CLEAR 


L 

I 

S 

T 

I 

N 

G 

S 


1490 CALL HCHAR(1,3,129,30) 
1500 CALL HCHAR(3,3,129,30) 
1510 CALL HCHAR(24,3,129,30) 
1520 CALL VCHAR(1,3,129,24) 
1530 CALL VCHAR(1,32,129,24) 
1540 SUBEND 
1550 f 
1560 ! 

1570 ! 

1580 SUB FTION<@T) 

1590 ! 

1600 DISPLAY AT(2,2):"F'tion 
: "; @T 

1610 FOR T=4 TO 23 :: DISPLA 
Y AT(T,2):: NEXT T 
1620 SUBEND 
1630 ! 

1640 ! 

1650 ! 

1660 SUB INITCOL 
1670 ! 

1680 CALL SCREEN(8):: CALL C 
HARSET :: CALL DELSPRITE(ALL 
):: CALL CLEAR :: CALL CHAR( 
129,RPTT("55AA",4)) 

1690 SUBEND 
1700 ! 

1710 i 
1720 ! 

1730 SUB PRT(QQT) 

1740 ! 

1750 OPEN #1:"RS232.DA=8" 
1760 PRINT #1:QQT 
1770 CLOSE #1 
1780 SUBEND 


Fortsetzung von Seite 35 


[SHI FT][7] CLS 
Löschen des Bildschirms. 


[8] Color 

Wechseln der Farben 
Der CC bestimmt den 
Zeichensatz. 
Vordergrundf. mit [S] 
Hintergründe mit [D] 
Ausstieg mit [SPACE] 


[SHIFT ][8] Screen Color 

Wechseln der Schirmfarbe 
mit [S]/[D]. 

Ausstieg mit [ SPACE]. 


[9] True Color 

Standardfarben /Eigene 
Farben. 


[SHIFT][9] Full Plot 

Zeichen wird voll geplottet. 


$ 


Window 

e'rschiebung des Fensters 
nach rechts/links. 


[SHIFT][0] Clear Window 
Löschen des Fensters. 
Nach Drücken von 
[SPACE] erscheint es 
wieder. 


[=] MENUE 

1 Start/Cbnt. 

2 Graphik 
einladen. 

3 Graphik 
abspeichern 
(ca. 3 min.) 

4 Charcodes 
32-142 

5 Bildschirm¬ 
positionen 

6 Farben/ 
Bildschirmf. 

7 Tasten- 
Zuordnung. 


sc 

CC 

CHANGE 

NEW 

RPT 

PAINT 

CHARSET 

CHECK 

COLOR 

S.COLOR 

TRUEC. 

F.PLOT 

WINDOW 

MENUE 

• 

INPUT 

CLS 

CLS W. 

DEL 

INS 

ERASE 

CLEAR 

BEGIN 

PROC'D 

AID 

REDO 

BACK 


QUIT 

• 


37 

























10 

i 

********************** 

11 

i 

* 


* 

12 

j 

* 

SOFT-GRAPH 

* 

13 

i 

* 


* 

14 

i 

* 

Copyright by 

* 

15 

; 

* 


* 

16 

i 

* 

Kay Sievert 

* 

17 

; 

* 


* 

19 

i 

* 

Benoetigte Geraete 

* 

20 

i 

* 

TI99/4A Konsole 

* 

21 

; 

* 

Ext. Basic 

* 

22 

i 

* 

Cassettenrec. 

* 

23 

i 

* 


* 

26 

; 

* 

Spei eherbeiegung 

* 

27 

i 

* 

8673 Bytes 

* 

28 

i 

* 


* 

29 

i 

********************** 

100 


OPTION BASE 1 :: DIM 

GS ( 

25) 

•> 

F*(14),P*(111) 



110 DISPLAY AT(9,9)ERASE ALL 
:">SQFT-GRAPH<": : : :TAB(4) 

;"(C) 1985 by KAY SIEVERT" : 

: DISPLAY AT(20,4):"NOTE: CA 
LPHA-LOCK3 DOWN!" 

120 CALL CHAR(143,"FF8181818 
18181FF"):: A*="000000010010 
0011010001010110011110001001 
101010111100110111101111" 

130 FOR 1=2 TO 14 :: F*(I)=" 
02/01" :: NEXT I :: F$(l)="1 
3/01" :: FOR 1=1 TO 24 :: G* 
<I)=RPT$( M ",32):: NEXT I 
140 FOR 1=32 TO 142 :: CALL 
CHARPAT(I,P$(I—31)):: P$(1)= 
"80808030808080FF" :: NEXT I 
150 LR=0 :: F=7 :: SF=8 :: Z 
EI,ZE=32 :: CV=2 :: RZ,CZ,RC 
,CC,SP,CH=1 :: GOTO 1120 
160 MK$= ,, 123457-6~7&8*9<0)=" 
:: CALL COLOR(0,2,16):: R=12 
:: C=16 

170 CALL SPRITE(#1,143,2,89, 
121,#2,143,16,73,17,#3,143,2 
,129,17) 

180 FUN=2 :: GOTO 550 
190 CALL SOUND(—100,1760+FUN 
*8,16,440+FUN*8,10,880+FUN*8 
,25) 

200 IF FUN=1 THEN SP=1 ELSE 
IF FUN=2 THEN SP=2 ELSE IF ( 
FUN=3 OR FUN=4)THEN SP=3 
210 IF FUN=9 THEN FU=-1 ELSE 
FU=0 

220 ON FUN GOTO 410,440,760, 
740,260,670,310,1030,520,107 
0,1360,1430,230,750,270,270, 
1120 

230 IF TC=1 THEN TC=0 :: GOS 
UB 250 :: GOTO 180 • 

240 TC=1 :: CALL SCREEN(8):: 
FOR 1=2 TO 14 :: CALL COLOR 


(1,2,1):: CALL COLOR(1,13,1) 

:: NEXT I :: GOTO 180 
250 CALL SCREEN(SF):: FOR 1= 
1 TO 14 :: CALL COLOR(I,VAL( 
SEG*(F*(I),1,2)),VAL(SEG*(F$ 
<I),4,2))):: NEXT I :: RE^TUR 
N 

260 FUN=2 :: GOTO 190 ' 

270 FOR 1=10 TO 24 :: DISPLA 
Y AT(I,1+LR)SIZE(8):SEG*(G*( 
I),3+LR,8):: NEXT I :: CALL 
GCHAR(RZ+9,CZ+l+LR,ZE) 

280 IF LR=0 THEN LR=20 ELSE 
LR=0 

290 IF FUN=16 THEN CALL COLO 
R(#1,1,#2,1,#3,1):: GOSUB 10 
60 :: CALL COLOR(#1,2,#2,2,# 
3,2):: FUN=2 :: GOTO 280 
300 R=12 :: C=16 :: CALL LOC 
ATE(#1,(R—1)*8+1,(C-l)*8+1): 

: GOTO 550 

310 IF ZEI=32 THEN ZEI=88 :: 

GOTO 560 ELSE ZEI=32 :: GOT 
O 560 

320 R=(R—1)-(R<2)*24 :: GOTO 
360 

330 C=(C—1) — (C< 2)*32 :: GOTO 
360 

340 C=C+1+(C>31)*32 :: GOTO 
360 

350 R=R+1 + (R >23)*24 

360 CALL LOCATE(#1,(R-l)*8+1 

,(C-l)*8+1):: GOTO 410 

370 GOSUB 1050 :: IF 1=0 THE 

N 410 

380 CALL GCHAR(R,C,X):: IF X 
=ZE THEN Y=32 ELSE Y=ZE 
390 CALL HCHAR(R,C,Y):: AR=R 
:: AC=C 

400 G*(R)=SEG*(G*(R),1,C-1)& 
CHR*(Y)&SEG*(G*(R),C+1,32-C) 
:: CALL SOUND(-40,1760,18) ' 
410 K*="ESDX5"&CHR$(13):: GO 
SUB 1460 :: IF G=0 THEN 190 
420 ON G GOTO 320,330,340,35 
0,430,370 

430 GOSUB 600 :: GOTO 410 
440 KT="ESDX" :: GOSUB 1460 
450 IF G=0 THEN CALL GCHAR(R 
Z+9,CZ+2+LR,ZE):: GOTO 190 
460 ON G GOTO 470,480,490,50 
0 

470 RZ=(RZ—1)—(RZ<2)*7 :: GO 
TO 510 

480 CZ=(CZ—1)—(CZ<2)*8 :: GO 
TO 510 

490 CZ=CZ + 1+(CZ >7)*8 :: GOTO 
510 

500 RZ=RZ + 1+(RZ >6)*7 

510 CALL LOCATE(#2,(RZ+8)*8+ 

1,(CZ+l+LR)*8+1):: GOTO 440 


L 

I 

S 

T 

I 

N 

G 

S 




520 CALL GCHAR(R , C , G):: IF ( 
ZEI=32 AND G>87)OR(ZEI=S8 AN 
D G<88)THEN 310 
530 RZ=(G/8-3)+(ZEI=88)*7 :: 

CZ=INT((RZ-INT(RZ))*10)+ l+< 
RZ-INT(RZ)>.4):: RZ=INT(RZ): 

: CALL GCHAR(RZ+9,CZ+2+LR,ZE 
) 

540 CALL L0CATE(#2,(RZ+8>*8+ 

1,(CZ+l+LR)*8+1):: FUN=2 :: 
GOTO 190 

550 FÜR 1=17 Tü 24 :: CALL H 
CHAR(I,3+LR,31, 8) :: NEXT I 
560 S=0 :: FÜR 1=10 TO 16 :: 

FOR ^=0 TO 7 :: CALL HCHAR( 

I,3+LR+A,ZEI+S):: S=S+1 :: N 

EXT A :: NEXT I 

570 CALL LOCATE(#2,(RZ+8)*8+ 

1, (CZ+l+LR)*8+1,#3, (RC+15)*8 
+1,(CC+l+LR)*3+1) 

580 CALL GCHAR(RZ+9,CZ+2+LR, 
ZE) 

590 IF FU THEN 520 ELSE FUN- 
2 :: GOTO 190 

600 GOSUB 1050 :: IF 1=0 THE 
N RETURN 

610 IF ARO-R AND AC< >C THEN 
RETURN ELSE IF AR< >R THEN 64 

0 

620 A=MIN(AC,C):: B=MAX(AC,C 
):: CALL HCHAR(R,A,ZE,B-A+l) 
630 GT(R)=SEGT(GT(R),1,A-1)& 
RPTT(CHRT(ZE),B-A+l)&SEGT(GT 
(R),B+l,32-B):: GOTO 660 
640 A=MIN <AR,R):: B=MAX(AR,R 

):: CALL VCHAR(A,C,ZE,B-A+l) 

650 FOR I=A TO B :: GT(I)=SE 
GT(GT(I) , 1 ,C-1)&CHRT (ZE)&SEG 
t (GT(I>,C+1,32-C):: NEXT I 
660 AR=R :: AC=C :: RETURN 
670 PR=R :: PC,AC=C :: X=1 : 

: CALL GCHAR(R,C,I):: IF I=Z 
E THEN 710 

680 GOSUB 720 ::.IF C-2=AC T 
HEN 700 ELSE GOSUB 620 
690 AC=C :: R=R+X :: IF X=1 
AND R>24 THEN 700 ELSE IF X= 
-1 AND R<1 THEN 710 ELSE 680 
700 IF X=1 THEN X=—1 :: R=PR 
:: GOTO 690 ELSE 710 
710 R=PR :: C=PC :: FUN=1 :: 
GOTO 190 

720 CALL GCHAR(R,C,Y):: IF Y 
<>I THEN C=C+1 :: GOTO 730 E 
LSE C=C-1 :: IF C<1 THEN C=1 
:: GOTO 730 ELSE 720 
730 CALL GCHAR(R,AC,Y):: IF 
YOI THEN AC=AC—1 :: RETURN 
ELSE AC=AC+1 :: IF AC>32 THE 
N AC=32 :: RETURN ELSE 730 
740 IF ZE=143 THEN 180 ELSE 


L 

I 

S 

T 

I 

N 

G 

S 


CALL CHAR(ZE,"0"):: YT=RPTT( 
-0“ ,16):: PT(ZE-31) =YT :: GO 
TO 810 

750 IF ZE=143 THEN 180 ELSE 
YT=RPTT("F",16):: CALL CHAR( 
ZE,YT):: PT(ZE—31)=YT :: GOT 
O 180 

760 IF ZE=143 THEN 180 

770 CALL CHARPAT (ZE,YT):: 1 = 

1 :: B=0 :: FOR A=1 TO 8 
780 S=ASC(SEGT(YT,I,1)):: S= 
S-48+(S>57)*7 :: FOR K=4 TO 
1 STEP -1 

790 G=31—VAL(SEGT < AT,S*4+K, 1 
)):: CALL HCHAR(A+16,B+K+2+L 
R,G):: NEXT K :: B=B+4 :: 1= 

1 + 1 :: IF B>5 THEN B=0 ELSE 
780 

800 NEXT A 

810 CALL COLOR(#l,l):: KT=CH 
RS (8) &CHRT (9) &CHRT (10) &CHRT ( 

11)& ,, ESDX0"kCHRT(13) 

820 GOSUB 1460 

830 IF G=0 THEN 940 ELSE ON 

G GOTO 850,860,870,880,890,9 

00,910,920,750,840 

840 GOSUB 970 :: GOTO 820 

850 FOR CC=CC TO 1 STEP -1 : 

: GOSUB 970 :: NEXT CC :: CC 
=1 :: GOTO 930 
860 FOR CC=CC TO 8 :: GOSUB 
970 : : NEXT CC :: CC=8 :: GO 
TO 930 

870 FOR RC=RC TO 8 :: GOSUB 
970 :: NEXT RC :: RC=8 :: GO 
TO 930 

880 FOR RC=RC TO 1 STEP -1 : 

: GOSUB 970 :: NEXT RC :: RC 
=1 :: GOTO 930 

890 RC=RC—1—(RC< 2)*8 :: GOTO 
930 

900 CC=CC-1-(CC<2)*8 :: GOTO 
930 

910 CC=CC+1+(CC>7)*8 :: GOTO 
930 

920 RC=RC+1+(RC>7)*8 

930 CALL LOCATE(#3,(RC+15)*8 

+1,(CC+l+LR)*8+1):: GOTO 820 

940 CALL CHAR(ZE,YT):: RC,CC 

=1 :: PT(ZE-31)=YT 

950 CALL LOCATE(#3,(RC+15)*8 

+ 1, (CC+l+LR)*8+1) 

960 FOR 1 = 17 TO 24 : : CALL H 
CHAR(I,3+LR,31,8):: NEXT I : 

: CALL COLOR(#1,2):: GOTO 19 
• 0 

970 CALL GCHAR(RC+16,CC+2+LR 
,A):: IF A=31 THEN A=30 ELSE 
A=31 

980 SEG=(RC*2—(CC>4))—1 :: D 
0T=8/(CC+(CC >4)*4):: DOT=INT 




39 



(DuT+(DGT<2.4)) 

990 G=ASC(SEGS(YS,SEG,1)):: 
G=G-48+(G>57)*7 
1000 IF A=30 THEN G=G OR DOT 
ELSE G=G XOR DOT 
1010 YS=SEGS(YS,1,SEG-1)&CHR 
$ (G+48— (G >9) *7) &SEG* (YS, SEG+ 
1,16—SEG) 

1020 CALL HCHAR(RC+16,CC+2+L 
R,A):: CALL CHAR(ZE,Y$):: RE 
TURN 

1030 GOSUB 1050 :: IF 1=0 OR 
C<3 OR 030 THEN FUN=1 : : G 
OTO 190 

1040 ACCEPT AT(R,C—2)SIZE(—( 
31-0): KT :: GS (R) =SEGS (GS (R 
),1,C-1)&KS&SEGS(GS(R),29,4) 

:: FUN=1 :: GOTO 190 
1050 IF R>9 AND((LR=0 AND C< 
1 1 ) OR (LR=20 AND 022)) THEN I 
=0 :: RETURN ELSE 1=1 :: RET 
URN 

1060 CALL KEY <0,K,S):: IF S= 
0 THEN 1060 ELSE RETURN 
1070 CALL CLEAR :: FOR 1=1 T 
O 24 :: GS(I)=RPTS(" ",32):: 

NEXT I :: GOTO 550 
1080 CALL CLEAR :: DISPLAY A 
T(1,2): " CKEY 1 FUNCTION":RPTS 
("_",28):: X=4 :: RESTORE 16 
20 

1090 FOR 1=0 TO 10 :: READ K 
S :: DISPLAY AT(X,4):USING " 
C#J #####################":I 
+ 1,KS :: X=X+2 :: NEXT I :: 
CALL HCHAR(22,7,48):: CALL H 
CHAR(24,7,61):: GOSUB 1060 : 

: GOTO 1120 

1100 DISPLAY AT(10, DERASE A 
LL:"FUNKTIONEN MIT SIND" 

: : "UEBER CSHIFTUOCKEYÜ ZU" 
: :"ERREICHEN." 

1110 FOR 1=1 TO 1000 :: NEXT 
I :: GOTO 1080 

1120 CALL DELSPRITE(ALL):: C 
ALL CLEAR :: CALL CHARSET :: 

CALL SCREEN(8):: TC=0 :: GO 
TO 1280 

1130 CALL CLEAR :: A=1 :: FO 
R 1=32 TO 142 :: PRINT :I;"= 
";SEGS(PS(1-31),1,16) : : A=A 
+1 :: IF A>12 THEN 1150 
1140 NEXT I 

1150 A=1 :: DISPLAY AT(24,1) 

:"WEITER=CSPACE 1 /MENUE=CENTE 
RD " 

1160 GOSUB 1060 :: IF K=13 T 
HEN 1280 

1170 CALL HCHAR(24,3,32,28): 

: IF 1=143 THEN 1280 ELSE 11 
40 


L 

I 

S 

T 

I 

N 

G 

S 


1180 CALL CLEAR :: A=3 :: B, 
C=1 :: FOR I=1+R TO 24 :: DI 
SPLAY AT(1,9)ERASE ALL:">ZEI 
LE";I;"<" 

1190 FOR G=1 TO 32 :: DISPLA 
Y AT(A,B)SIZE(9):USING "£#=# 
## / ":G,ASC(SEGS(GS(I),G,1) 

) 

1200 B=B+9 :: IF B=28 THEN B 
=1 :: A=A+2 

1210 NEXT G :: DISPLAY AT(24 
,1):"WEITER=CSPACEH/MENUE=CE 
NTER 3" 

1220 GOSUB 1060 :: IF K=13 T 
HEN 1300 

1230 A=3 :: B,C=1 :: NEXT I 
:: GOTO 1280 

1240 DISPLAY AT(1,1)ERASE AL 
L:">FARBEN VORDERGR./HINTERG 
R. < " 

1250 A=5 :: B=1 :: FOR 1=1 T 
0 14 :: DISPLAY AT(A,B):USIN 
G "SATZ## :#####":I,FT(I):: 
A=A+2 :: IF 1=10 THEN A=5 :: 
B= 16 

1260 NEXT I :: DISPLAY AT(17 
,16):"SCREEN FARBE:" :: DISP 
LAY AT(19,19):">";SF;"<" :: 
DISPLAY AT(22,16):" C SPACE 3 =M 
ENUE" 

1270 GOSUB 1060 :: GOTO 1280 
1280 CALL CLEAR :: RESTORE 1 
610 :: DISPLAY AT(1,8):"** M 
ENUE **" :: FOR 1 = 1 TO 7 : : 
READ X.KS :: DISPLAY AT(X+3, 
6):USING "I#: = ###########" 
:I,KS :: NEXT I 
1290 GOSUB 1060 :: IF NOT(K> 
48 AND K<56)THEN 1290 ELSE O 
N K-4S GOTO 1330,1570,1530,1 
130,1300,1240,1100 
1300 DISPLAY AT(15,4)ERASE A 
LL:"AB WELCHER ZEILE?: 0": : 

:TAB(4);"'0' => MENUE." 

1310 ACCEPT AT(15,22)SIZE(—2 
)VALIDATE(DIGIT," "):R :: IF 
R=0 THEN 1280 

1320 IF R<1 OR R>24 THEN 131 
0 ELSE R=R—1 :: GOTO 1180 
1330 CALL VCHAR(1,5,30,24):: 
FOR 1=1 TO 24 :: CALL HCHAR 
(1,1,ASC(SEG*(GS(I),l,l))):: 
CALL HCHAR(1,2,ASC(SEGS(GS( 
I) , 2,1) > ) 

1340 CALL HCHAR(I,31,ASC(SEG 
S(GS(I),31,1))):: CALL HCHAR 
(1,32,ASC(SEGS(GS(I),32,1))) 

:: DISPLAY AT(1,1):SEGS(GS(I 
),3,28):: NEXT I 
1350 FOR 1=32 TO 142 :: CALL 
CHAR(I,PS(1-31)):: NEXT I : 


40 



: SQSUB 253 :: GOTO 163 
1360 I=RZ+(ZEI/8)—4 :: CALL 
COLOR(#1,1):: X=VALCSEGT(FT( 

I),1,2)):: Y=VAL(SEGT(FT(I), 
4,2) ) 

1370 GOSUB 1060 :: IF K<>83 
AND K<>68 THEN FUN=2 :: GOTO 
193 

1380 IF K=83 THEN X=X + 1 :: I 

F X>16 THEN X=1 

1390 IF K=68 THEN Y=Y+1 :: I 

F Y >16 THEN Y=1 

1400 CALL COLOR(I,X,Y):: IF 

X<10 THEN FT (I) ="0"&STRT (X) 8< 

"/" ELSE FT(I)=STRT(X)&"/“ 

1410 IF Y<10 THEN FT ( I) =FT-( I 

) ?< 11 0 " &STRT <Y) ELSE FT (I ) =FT (I 

) &STRT (Y) 

1420 GOTO 1370 
1430 GQSUB 1060 :: IF K<>83 
AND K< >68 THEN FL'N=2 : : GOTO 
190 ELSE IF K=68 THEN SF=SF 
+1 :: IF SF>16 THEN SF=1 
1440 if K=83 THEN SF=SF—1 :: 

IF SF<1 THEN SF=16 
1450 CALL SCREEN(SF) : : CALL 
SOUND(503,1760,20):: GOTO 14 
30 

1460 CALL KEY < 0,K,S):: 1 = 1 + 1 
.. xp i>=4 THEN 1=1 :: CALL 
COLOR(#SP,9+F) : : F=-F 
1470 IF 3=0 THEN 1460 
1480 IF SF=2 THEN CALL COLOR 
(#SP,16)ELSE CALL COLOR(#SP, 
2) 

1490 G=PGS(KT,CHRT(K),1):: I 

F G >0 THEN RETURN 

1500 FUN=FOS(MKT,CHRT(K),1): 

: IF FUN>0 THEN G=0 :: RETUR 
N ELSE 1460 

1510 IF K>47 AND K<58 THEN G 
=0 :: RETURN ELSE 1460 
1520 RETURN 

1530 OPEN #1:"CSl",OUTPUT,IN 

TERNAL,FIXED 192 

1540 FOR 1=1 TO 24 STEP 5 :: 

PRINT #1:GT(I),6T(I+1),GT(I 
+2),GT(1+3),GT(1+4):: NEXT I 
1550 FOR 1=1 TO 110 STEP 11 
:: PRINT #1:PT(I),PT(1+1>,PT 
(1+2),PT(1+3),PT (1+4),PT(I+5 
),PT(1+6),PT(I+7),PT(I+8),PT 
(1+9),PT(1+10):: NEXT I 
1560 PRINT #1:PT(111),SF,FT( 
1),FT(2),FT(3),FT(4),FT<5>,F 
T(6),FT(7),FT(8),FT(9),FT(10 
),FT(11),FT(12),FT(13),FT(14 
):: CLOSE #1 :: GOTO 1280 
1570 OPEN #i: "CSl",INPUT ,IN 
TERNAL,FIXED 192 
1580 FOR 1=1 TO 24 STEP 5 :: 


L 

I 

S 

T 

I 

N 

G 

S 


I NF'UT #1 : GT < I ) , GT C 1 + 1 ) , GT ( I 
+2),GT(1+3),GT(1+4):: NEXT I 
1590 FOR 1=1 TO 110 STEP 11 
:: INPUT #1:PT(I),PT(1+1),PT 
(1+2),PT(1+3),PT(I+4),PT(1+5 
),PT(I+6),PT(1+7),PT(1+8),PT 
(1+9),PT(1+10):: NEXT I 
1600 INPUT #1:PT(111),SF,FT( 
1) , FT- (2) , FT (3) , FT (4) ,FT(5) ,F 
T(6),FT(7),FT(8),FT(9),FT(10 
),FT(11),FT(12),FT(13),FT(14 
):: CLOSE #1 :: GOTO 1280 
1610 DATA 2,START/CONT.,5,EI 
NLADEN, 7 ,ABSPEICHERN,10,CHAR 

CODES,12,-POSITIONEN,14,-FAR 
BEN,17,USER'S HELP 
1620 DATA "SCREEN CURSOR","C 
HAR CURSOR","CHANGE DEF.",NE 
W-DEF.,F:PT/PAINT*,"CHAR SET/ 
INF'UT*" , "CHECK/CLEAR SCREEN* 


1630 DATA "COLOR/SCREEN COLO 
R*","TRUE COLOR/FULL PLOT*", 
WINDOW /CLEAR WINDOUJ* , MENUE 


PLAHMEN' 

ZEICHNER 


Zuerst müssen Sie die 
Größe (= Punkte von 
1 — 20) eingeben. 

Dann die Koordinaten, 
im Platinenfeld Ihrer be¬ 
stimmten Größe, die nicht 
bemalt werden dürfen. 
Wenn Sie damit fertig 
sind, geben Sie nur 0 ein 
und drücken ENTER. 
Jetzt erscheint Ihre Pla¬ 
tine, und Sie müssen 
den Platinennamen ein¬ 
geben oder nur ENTER 
drücken. 

Das Viereck oben links 
im Feld können Sie mit 
dem Joystick bewegen 
und die Geschwindigkeit 
durch L (= langsam) und 


A (= normal) verändern. 
Erklärungen: 

N=neue leere Platine 
0=Einlesen 
S=Abspeichern 
E=Ende des Programms 
Wenn der Feuerknopf ge¬ 
drückt wird, werden die 
Linien im roten Käst¬ 
chen geleert. 

Wenn man den Feuer¬ 
knopf drückt und gleich¬ 
zeitig den Flebel des Joy¬ 
sticks in eine Richtung 
bewegt, wird eine Linie 
von einem Punkt zum 
nächsten gezogen und 
zwar in die Richtung, in 
die Sie lenken. 



sucht kompetente 


COMPUTER-JOURNALISTEN. 

Die künftigen Kollegen sollten nicht nur ihr 
Handwerk beherrschen, sondern auch die 
Rechner, die dazu gehören. Außerdem erwarten 
wir ein ausgeprägtes Interesse für Themen rund 
um diese Computer-Typen. Ihre Bewerbung 
mit den üblichen Unterlagen bitte an 
AKTUELL-GRUPPE, Postfach 1107, 

8044 Lohhof, z.Hd. H.Seibt. 


41 






Joker-Poker ist eine be¬ 
sondere Version des be¬ 
kannten Kartenspiels 
Poker. Gespielt wird hier 
mit einer Person und ei¬ 
nem Kartenblatt zu 52 
Karten. Ziel von Poker 
im allgemeinen ist es, ei¬ 
ne der gewinnträchtigen 
Kartenkonstellationen zu 
erreichen. Diese sind: 

— Five of a kind 
-Einsatz mal 20 

— Royal Flush 
—Einsatz mal 15 

— Straight Flush 
—Einsatz mal 12 

— Four of a kind 
—Einsatz mal 10 

— Full House 
—Einsatz mal 8 

— Flush 
-Einsatz mal 7 

— Straight 

—Einsatz mal 4bzw.5 

— Three of a kind 
—Einsatz mal 3 

— Two Pairs 
—Einsatz mal 2 

— One Pair 
—Einsatz mal 1 

Beim Joker-Poker steht 
dem Spieler nun eine 53. 
Karte zur Verfügung, 
voTausgesetzt, er setzt 
eine genügend hohe Sum¬ 
me ein. Diese Karte ist 
der “Joker“ und kann 
gegebenenfalls jede ande¬ 
re Karte ersetzen. 

Dem Spieler werden 
nach dem Umbuchen sei¬ 
nes Einsatzes fünf Karten 
ausgeteilt. Um einen Ge¬ 
winn zu verzeichnen, ste¬ 
hen ihm zwei Möglich¬ 
keiten offen: 

a) der Spieler hält seine 
fünf Karten, er tauscht 
keine Karte; 

b) er drückt einige oder 
auch alle Karten und 
verlangt hierfür neue 
Karten in der Hoff¬ 
nung, daß diese zu den 
übrigen passen. 

Hält der Spieler jetzt einen 
der oben beschriebenen 
Gewinne in seiner Hand, 
so besteht für ihn die 


Möglichkeit der Risiko¬ 
verdoppelung. Hierbei 
verändert eine Karte 
ständig und vom Spieler 
unbeeinflußt ihren Wert. 
Der Spieler drückt eine 
der Tasten “H“ und “T“ 
und entscheidet dabei, 
ob der gestoppte Karten¬ 
wert tief (2—7) oder 
hoch (9—As) liegt. 

Hat er richtig entschie¬ 
den, verdoppelt sich sein 
Einsatz, ansonsten ver¬ 
liert er ihn. Bei einer 
neutralen “Acht“ wird 
die Risikoverdoppelung 
wiederholt. 

Joker-Poker ist auf dem 
TI 99/4A mit Extended 
Basic programmiert. 

Einige Besonderheiten 
des Programms: 

— Die im Titelbild ver¬ 
wendeten 5-fach ver¬ 
größerten Buchstaben 
werden mit dem ASCII- 
Codes 128-137 definiert. 
Ihre Eingabe im Pro¬ 
gramm erfolgt mittels 
der CONTROL-Taste. 

Das Zeichen 128 wird 
mit “CTRL“ und 
erreicht. 

— Das Titelbild wird von 
einigen Takten Musik 
begleitet. Wem der Pro¬ 
grammieraufwand für 
den “Red River Valley“ 
zu groß ist, gehe wie 
folgt vor: in Zeile 1670 
das “GOSUB 2300“ 
streichen, sowie ab Zeile 
2270 ersatzlos streichen. 

— Das Programm benutzt 
ein verändertes Schrift¬ 
bild, sämtliche Buchsta¬ 
ben und Zahlen erschei¬ 
nen in Fettdruck. Die 
CHAR-Definitionen hier¬ 
für hegen in den Zeilen 
390 bis 480 einschlie߬ 
lich. Sie können von ei¬ 
nem allzu müden Pro¬ 
grammierer ebenso er¬ 
satzlos gestrichen wer¬ 
den. Lediglich der Sprung 
zum Titelbild “GOTO 

Bitte lesen Sie weiter auf Seite 44 


L 

I 

S 

T 

I 

N 

G 

S 


10 

********************** 

11 

* 


* 

12 

* 

PLATINENZEICHNER 

* 

13 

* 


* 

14 

* 

Copyright by 

* 

15 

* 

b 

* 

16 

* 

Ronald Goerke• 

* 

17 

* 


* 

19 

* 

Benoetigte Geraete 

* 

20 

* 

TI99/4A Konsole 

* 

21 

* 

Ext. Basic 

* 

22 

* 

Cassetten—Rec. 

* 

23 

* 


* 

26 

* 

Speicherbelegung 

* 

27 

* 

3507 Bytes 

* 

28 

* 


* 

29 

100 

********************** 

i 


110 DIM KS<500>,KE(500):: ON 
WARNING NEXT 
120 CALL ANL 

130 CALL CLEAR :: DISPLAY AT 
(5,5):"WELCHE GRÜESSE ?" :: 
DISPLAY AT(7,5):"LAENGE:" :: 

DISPLAY AT(9,5):"BREITE:" 
140 ACCEPT AT(7,12)SIZE(2)VA 
LIDATE(DIGIT):LA :: IF LA=0 
OR LA>20 THEN 140 
150 ACCEPT AT(9,12)SIZE(2)VA 
LIDATE(DIGIT):BR :: IF BR=0 
GR BR>20 THEN 150 
160 DISPLAY AT(10,5):"WELCHE 
KOORDINATEN DUERFEN " :: DI 
SPLAY AT(12,5):"NICHT BELEGT 
WERDEN ?(0=END)" :: DISPLAY 
AT(15,5):"1.KOORDINATE:" 

170 DISPLAY AT(17,5):"2.K00R 
DINATE:" 

180 KU=KU+1 

190 ACCEPT AT(15,18)SIZE(2)V 
ALIDATE(DIGIT):KS(KU):: IF K 
S(KU)>LA THEN 190 ELSE IF KS 
(KU)=0 THEN 210 
200 ACCEPT AT(17,18)SIZE(2)V 
ALIDATE(DIGIT):KE(KU):: IF K 
E(KU)=0 OR KE(KU)>BR THEN 20 
0 ELSE Iü0 

210 CALL CLEAR :: CALL DELSP 
RITE(#1):: CALL SCREEN (2) :: 
RESTORE 400 :: FOR A=1 TO 14 
:: READ C,DT :: CALL CHAR(C 
,DT):: NEXT A 

220 CALL COLOR(14,16,2,13,7, 

2.5.16.2.6.16.2.7.16.2.8.16, 

2.9.16.2.1.16.2.2.16.2.3.16, 
2,4,16,2) 

230 FOR A=4 TO LA+3 :: DISPL 
AY AT(A,9)SIZE(21) : RPT* (" L " , 
BR):: NEXT A :: DISPLAY AT(1 
,5):"PLATINENNAMEN EINGEBEN 
!" :: FOR F=1 TO 200 :: NEXT 


42 





F :: DISPLAY AT(1,5): :: AC 

CEPT AT(1,5):Af 
240 CALL HCHAR(3,10,136,BR+1 
):: CALL HCHAR(LA+4,10,136,B 
R+l) 

250 CALL v'CHAR (4,10,140, LA) : 

: CALL VCHAR(4,11+BR,140,LA) 
:: CALL HCHAR(3,11+BR,141):: 

CALL HCHAR(LA+4,11+BR,141) 
260 FOR RT=1 Tü KU-1 :: CALL 
HCHAR(KS(RT)+3,KE(RT)+10,13 
4):: NEXT RT 

270 DISPLAY AT(3,1)SIZE(5):" 
JOYST" :: DISPLAY AT(5,2)SIZ 
E(1 ):"CTRL*,}" :: DISPLAY AT 

(6.1) SIZE(5):"CTRLCCj CTRLCB 
y CTRLCE}" :: DISPLAY AT(7,2 
) SI ZE (1) : " CTRL -CA> " 

280 DISPLAY AT(9,1)SIZE(5): 
CTRL -C I > = (CTRL -CE> ) " :: DISPLA 
Y AT(11,1)SIZE<7):"CTRLCJ>=( 
CTRL-CE3 +CTRLvB> ) " :: DISPLAY 
. AT (13,1)31 ZE (7) : "CTRLCIO = (C 
TRL CE+CTRL CA>) " 

290 DISPLAY AT(16,1)SIZE(5): 
"N=NEU" :: DISPLAY AT(18,1)S 
IZE(5):"0=0LD" :: DISPLAY AT 

(20.1) SIZE(6):"S=SAVE" :: DI 
SPLAY AT(22,1)SIZE(6):"E=END 
E" 

300 DISPLAY AT(24,1)SIZE(5): 

"L ; A" 

310 CALL DELSPRITE(#1):: CAL 
L SPRITE(#1,132,7,25,81) : : Z 
=4 :: SP=11 

320 CALL JOYST(1,X,Y):: CALL 
KEY(1,AS,BS):: CALL KEY(2,S 
A,SB):: IF SA=12 THEN RR=200 
ELSE IF AS=1 THEN RR=0 
330 IF AS=5 THEN END ELSE IF 
SA=15 THEN 210 ELSE IF SA=6 
THEN CALL OLD :: GOTO 270 E 
LSE IF AS=2 THEN CALL SAVE(A 
f) : : GOTO 210 

340 CALL GCHAR(Z +1,SP,RI):: 
CALL GCHAR(Z,SP+1,AR) 

350 CALL GCHAR(Z,SP,AA):: IF 
AS=18 AND XO0 THEN IF (AA= 
137 OR AA=138) AND ARO 134 AN 
D ARO 140 THEN CALL HCHAR (Z, 
SP,138)ELSE IF AA=139 AND AR 
0134 AND ARO 140 THEN CALL 
HCHAR(Z,SP,142) 

360 IF AS=18 AND YO0 THEN I 
F (AA=137 OR AA=139) AND RIO 
134 AND RI0136 THEN CALL HC 
HAR(Z,SP,139)ELSE IF AA=138 
AND RI0134 AND RI0136 THEN 
CALL HCHAR(Z,SP,142) 

370 IF AS=18 AND Y=0 AND X=0 
THEN CALL HCHAR(Z,SP,137) 


L 

I 

S 

T 

I 

N 

G 

S 


380 FOR M=1 TO RR :: NEXT M 
390 X=SGN(X):: Y=-SGN(Y) : : C 
ALL GCHAR(Z+Y,X+SP,A):: IF A 
=140 OR A=134 OR A=136 OR A= 
141 THEN 320 ELSE SP=SF+X :: 

Z=Z+Y :: CALL LOCATE(#1,Z*8 
—7,SP*8—7):: GOTO 320 
400 DATA 136,000000FFFF,137, 
60909060,138,609F9F6,139,609 
0906060606060,140,C0C0C0C0C0 
C0C0C0,141,000000C0C,142,609 
F9F6060606060 

410 DATA 128,183C7E181818181 
8,129,18181818187E3C18,130,0 
00406FFFF0604,131,002060FFFF 
602,132,FF818181818181FF,133 
,3C4299BDBD99423C 
420 DATA 134,708888887 
430 SUB OLD :: CALL DELSPRIT 
E(#1):: CALL CLEAR :: Bf(1), 
Bf(2),Bf(3)="" 

440 OPEN #1:"CS1",SEQUENTIAL 
,INTERNAL,INPUT ,FIXED 192 
450 INPUT # 1 : Af 
460 FOR T=1 TO 3 :: INPUT #1 
:Bf(T):: NEXT T :: CLOSE #1 
:: CALL CLEAR :: DISPLAY AT( 
1,5):Af 

470 ST=3 :: TS=10 :: FOR T=1 
TO 3 :: S=1 :: FOR Q=ST TO 
TS :: FOR QQ=10 TO 31 :: BB= 
VAL(SEGf(Bf<T),S,1)):: S=S+1 
:: BB=BB+134 :: IF BB=135 T 
HEN BB=32 

480 CALL HCHAR(Q,QQ,BB):: NE 
XT QQ :: NEXT Q :: ST=ST+8 s 
: IF TO-2 THEN TS=TS+8 ELSE 
TS=TS+6 

490 NEXT T :: SUBEND 

500 SUB SAVE(Af):: CALL DELS 

PRITE(#1):: Bf(1),Bf(2),Bf(3 

J = ll I« 

510 ST=3 :: TS=10 :: FOR T=1 
TO 3 : : BC=0 :: Bf(T)="" : : 
FOR Q=ST TO TS :: FOR QQ=10 
TO 31 :: CALL GCHAR(Q,QQ,BC 
):: IF BC=32 THEN BC=135 
520 BC=BC—134 r: Bf(T)=Bf(T) 
SeSTRf (BC) : : NEXT QQ :: NEXT 
Q :: ST=ST+8 :: IF T<>2 THEN 
TS=TS+8 ELSE TS=TS+6 
530 NEXT T 

540 CALL CLEAR :: OPEN #1:"C 
S1",SEQUENTIAL,INTERNAL,OUTP 
UT,FIXED 192 

550 PRINT #1 :Af :: FOR T=1 T 
03:: PRINT #1:Bf(T):: NEXT 
T :: CLOSE #1 :: SUBEND 
560 SUB ANL :: CALL CLEAR :: 

DISPLAY AT(15,3):"PLATINEN— 
ZEICHNER" :: DISPLAY AT(16,2 




43 



) . ••_ii 

570 DISPLAY AT<19,6>:"TASTE 
!!!*' : : CALL KEY(0,K,S):: IF 
SO0 THEN SUBEXIT ELSE 570 
580 SUBEND 


JOKER POKER 

Fortsetzung von Seite 42 

1570“ in Zeile 480 muß 
erhalten bleiben. 

— Jeweils drei REM’s 
trennen sinngemäß die 
verschiedenen Unterpro¬ 
gramme voneinander. 

Sie dienen der Dokumen¬ 
tation und der besseren 
Übersichtlichkeit. Sie kön¬ 
nen, ohne eine Störung 
im Programmablauf zu 
erzielen, problemlos ge¬ 
strichen werden. 

— Bei der Benutzerfüh¬ 
rung wurde ein besonde¬ 
res Augenmerk auf die 
Eindeutigkeit der Einga¬ 
ben gelegt. In diesem 
Sinne werden Fehleinga¬ 
ben von vornherein ver¬ 
hindert. 

Erläuterungen zur 
Gewinnauswertung: _ 

Zeilen 840 bis 1020 
840- 

verhindert bei gedrückten 
und noch nicht wiederge¬ 
gebenen Karten das Hal¬ 
ten der restlichen Karten 
-860- 

gibt jeder Karte gemäß 
ihrem Wert einen Ord¬ 
nungswert E(l) bis E(5) 
zur Sortierung 

sortiert die Karten nach 
ihrem Ordnungswert 
E( 1 —5) und legt die Kar¬ 
tenwerte D(l— 5) in ab¬ 
steigender Folge in D(6) 
bis D(10) ab 
—910— 

überprüft die Differenzen 
zwischen den Werten 
D(6—10) der sortierten 
Karten und belegt die 
Variablen DZ(1—4) hier¬ 
mit, falls diese zwischen 
zwei Kartenwerten grö¬ 
ßer als 1 ist. Bei einer 
fortlaufenden Sequenz 
(z.B. 2—3—4—5—6) ist 
X=4 (vier Zwischenräu¬ 
me = 1). 

-920- 

vergleicht alle Kartensym¬ 
bole miteinander und er¬ 
höht die Variable Y 
jeweils um 1, falls zwei 
Symbole identisch sind. 


Bei vier gleichen Symbo¬ 
len (Y=6) und einem 
Joker, ändert sich Y=10 
(alle Symbole gleich). 
-940- 

überprüft anhand der Dif¬ 
ferenzen DZ( 1 —4), ob der 
Joker eine lückenhafte 
Sequenz schließen kann, 
wenn ja, erhöht er die 
Variable X auf 4 (fort¬ 
laufende Sequenz). 

-960- 

überprüft die Kartenwer¬ 
te D(6-10) auf einen 
Royal Flush (Z=5) oder 
einen Straight, der mit 
einem As oder einem 
König beginnt 
970 - 

verzweigt bei Royal Flush 
und großer Straße 
(Straight) zur Gewinn¬ 
anzeige 
980 - 

verzweigt bei Straight 
Flush (Y=T0 und X=4), 
bei kleiner Straße (Y 10 
und X=4) und bei einem 
Flush (X 4 und Y=10) 
zur Gewinnanzeige 
- 1000 - 

überprüft alle Kartenwer¬ 
te miteinander und er¬ 
höht die Variable X 
(nicht identisch mit Zeile 
910) jeweils um 1, wenn 
sich Werte entsprechen; 
wenn alle Werte gleich 
sind, ist X=10 
1010 — 

erhöht die Variable X, 
wenn der Joker im Blatt 
ist (aus One Pair wird 
z.B. Three of a kind) 
1020 - 

verzweigt je nach X zur je¬ 
weiligen Gewinnanzeige 

Aufbau des Programms: 

100-230 

Programm Identifizierung 
240 

Dimensionierungen 

250-270 

Pre-Scan/Programmvor- 

abtastung 

280 

Bildschirm löschen / allge¬ 
meine Vereinbarungen 
290 

Variablendefinition 

Bitte lesen Sie weiter auf Seite 49 


L 

I 

S 

T 

I 

N 

G 

S 


100 ! ********************** 


110 ! * * 

120 ! * JOKER-POKER * 

130 ! * * 

140 ! * Copyright by * 

150 ! * Peter Krawinkel- * 

160 ! * * 

170 ! * Benoetigte Geraete * 

180 ! * TI99/4A Konsole * 

190 ! * Ext. Basic * 

200 ! * * 

210 ! * Speicherbelegung * 

220 ! * 11798 Bytes * 

230 ! * * 


240 ! ********************** 

250 ! 

260 DIN B(4,14),C(5),CI(5),D 
(10),Dl(5),E(5>,DZ(3) 

270 GOTO 300 :: CALL CLEAR : 

: CALL SCREEN :: CALL COLOR 
:: CALL hchar :: call KEY :: 
CALL MAGNIFY :: CALL SPRITE 

:: call delsprite 

280 CALL PATTERN :: CALL CHA 
R :: CALL VCHAR :: CALL GCHA 
R :: CALL CHARPAT :: CALL SO 
UND 

290 CT,ZE,SP,AK,ES,CR,K,S,I, 
J,X,Y,Z,W,CD1,CD2,CD3,CL,C0= 
0 :: A$*"" :: !@p- 

300 CALL CLEAR :: CALL SCREE 
N<5):: RANDOMIZE :: ON WARNI 
NG NEXT 

310 ze=9 :: sp=s :: ak,es=0 
:: cr =10 :: CT=2 A (l/l2) 

320 ! 

330 ! CHAR-DEFINITIONEN 

340 ! 

350 CALL CHAR(96,"809CA28284 
8890BE809CA2828C82A29C80848C 
94A4BE648480BEA0BC8282A29C") 
360 CALL CHAR (100, "808C90A0B 
CA2A29C80BE820488909090809CA 
2A29CA2A29C809CA2A29E828498" 

) 

370 CALL CHAR(104,"8097B5959 
5959790S09E9F9B9E9B9F9E809EB 
FB3B3B79E8D809B9B9A9E9E9B9B" 

) 

380 CALL CHAR(108,"808E9F9B9 
B9F9B9B"&RPT$ ("80", 8) 8c"66FFF 
F7E3C18000010387CFE7C381") 
390 FOR 1=96 TO 109 :: CALL 
CHARPAT(I,A$>:: CALL CHAR(I+ 
16,A$):I NEXT I 
400 CALL CHAR(126,"103838FEF 
ED6103810387CFEFE921038") 

410 CALL CHAR(65,"3S7CEEC6FE 
FEC6C6FCFEC6FCFCC6FEFC7CFEC0 
C0C0C0FE7CFCFEC6C6C6C6FEFC") 
420 CALL CHAR(69,"FEFEC0F8F8 


44 








C0FEFEFEFEC0F8F8C0C0C07CFEC0 
CECEC6FE7CC6C6C6FEFEC6C6C6") 
430 CALL CHAR(73,RPT$( M 18",8 
) FEFE06060606FE7CC6CEDCF8F 
8DCCEC6C0C0C0C0C0C0FEFE") 

440 CALL CHAR(77,"C6EEFEFED6 
C6C6C6C6E6E6F6DECECEC67CFEC6 
C6C6C6FE7CFCFEC6FEFCC0C0C") 
430 CALL CHAR <81,"3C7E666666 
6E3CiAFCFEC6FEFCDCCEC67CFEC0 
FE7E06FE7CFEFE181818181818") 
460 CALL CHAR<85,"C6C6C6C6C6 
C6FE7CC6C6EE6C7C383810C6C6C6 
C6D6FEFE6CC6EE7C38387CEEC6") 
470 CALL CHAR(89,"6666663C18 
1818187E7E060C18307E7E") 

480 CALL CHAR(48,"7CFECEDEF6 
E6FE7C18387878181818187CFE0E 
3C78E0FEFE7CFE0E3C3C0EFE7C") 
490 CALL CHAR(52,"1C3C7CECFE 
FE0C0CFEFEC0FCFE06FE7C7CFEC0 
FCFEC6FE7CFEFE060E1C33303") 
300 CALL CHAR(56,"7CFEC67C7C 
C6FE7C7CFEC6FE7E06FE7C")I: G 
OTO 1390 

310 CALL CHAR(128,"809F9F838 
3839F8E H ,40,"885522558835225 
5" ) 

520 ! 

530 ! BILDSCHIRMMASKE 

340 ! 

550 CALL CLEAR :: CALL SCREE 
N(13);: FOR i«0 to 14 :: cal 
L COLORd, 1,1):: NEXT I 
360 FOR 1=7 TO 13 :: CALL HC 
HAR(1,6,43,22):: NEXT I :: D 
ISPLAY AT(5,1):"CREDIT" :: D 
ISPLAY AT<5,17):"EINSATZ" 

570 DISPLAY AT(1,4)BEEP:"J 0 
K E R- P 0 K E R" :: DISPLA 

Y AT (5,8) SIZE (4) : US ING "#### 
"ICR :: DISPLAY AT(3,23)SIZE 
(3)!USING "###":ES 

380 FOR 1=3 TO 8.:: CALL COL 
or(I,3,13):: next i :: call 
COLOR(0,5,15,1,3,13,2,13,16, 
9,7,16,10,7,16,11,2,16,12,2; 
16) 

390 CALL C0L0R(13,7,16,14,2, 
16) 

600 ! 

610 ! ABFRAGE EINSATZ 

620 ! 

630 FOR 1=1 TO 5 :: DZ(I),D( 
I),D(I+5),C(I),E(I),Di(I),Ci 
<I)=0 :: NEXT I 
640 DISPLAY AT(20,4):"PRESS 
E ■ EINSATZ" :: DISPLAY AT( 
22,11):"G - GEBEN" :: DISPLA 

Y AT<24,11):"I - IRRTUM" 

630 CALL KEY <0,K,S):: IF S=0 


L 

I 

S 

T 

I 

N 

G 

S 


OR ES-0 AND K=71 THEN 630 
660 IF ES>0 AND K=71 THEN 74 

0 ELSE IF K-73 THEN 690 ELSE 
IF K»69 AND CR=0 THEN 650 E 
LSE IF CR>0 AND K=69 THEN 67 
0 ELSE 650 

670 DISPLAY AT(5,8)SIZE(4):U 

sing "####":cr-i :: Display 

AT(5,25)SIZE < 3):USING "###": 
ES+i :: es=es+i :: cr=cr-i : 

; IF ES=30 THEN 740 
680 CALL S0UND(-139,550,10,5 
33,10,560,5):: GOTO 650 
690 CALL SOUND(-291,110,10,1 
13,10,116,10):: CR=CR+ES :: 
ES=0 :: DISPLAY AT(5,8)SIZE( 
4):USING "#*t##":CR 
700 DISPLAY AT(5,25)SIZE(3) : 
using "Wtt #":es :: goto 650 
710 ! 

720 ! KARTEN AUSTEILEN 

730 ! 

740 CALL HCHAR(20,1,32,160): 

; IF ES>-9 THEN GOSUB 2080 : 

: GOTO 750 ELSE B(0,14>»0 
730 GOSUB 1920 :: FOR 1=1 TO 

3 

760 GOSUB 1960 :: GOSUB 2000 
:: NEXT I 
770 ! 

780 ! KARTEN HALTEN ? 

790 ! 

800 DISPLAY AT(18,4):"PRESS 
1 BIS 5 - WEG" :: DISPLAY A 
T(20,ii>:"H = HALTEN" :: DIS 
PLAY AT (22, 11) : "G ** GEBEN" : 

: DISPLAY AT <24,11)!"I “ IRR 
TUM" 

810 CALL KEY <0,K,S):: IF S=0 
THEN 810 ELSE IF K>48 AND K 
<54 THEN GOSUB 2130 :: GOTO 
610 ELSE 820 

820 IF K=73 THEN GOSUB 2180 
:: GOTO 810 ELSE IF K-71 THE 
N 2260 ELSE IF K-72 THEN 860 
ELSE 810 
830 ! 

840 ! GEWINNAUSWERTUNG 

830 ! 

860 J=0 :: for 1=1 TO 5 :: J 
-J+Ci(I)+Dl<I>:: NEXT I :: I 
F JO0 THEN 810 ELSE 870 
870 FOR 1=1 TO 5 :: x= l :: F 
OR J-l TO 3 :: IF I-J THEN 8 
80 ELSE IF D <I)>D <J)THEN X-X 
+ 1 

880 NEXT J :: E(I)=X :: NEXT 
I 

890 FOR 1=1 TO 5 :: FOR J=i 
TO 5 :: IF E(I)-J THEN D<11- 
J)-D(I) 


m 


45 








900 NEXT J :: NEXT I 

910 X,Y=0 :: FOR 1=6-(D(6)=1 

4) TO 9 

920 IF D(I)-1=D(I+1)THEN X=X 
+ 1 ELSE DZ (I-5)*D(I)-D <I +1) 
930 NEXT I :: FOR 1=1 TO 4 : 

: for j-i + i to 5 :: if c<n« 

C(J)THEN Y=Y + i 

940 NEXT J :: NEXT I S: IF D 
(6)=14 AND Y=6 THEN Y=10 
950 IF D (6) < >14 THEN 970 
960 IF (X=3 OR X=2)AND(DZ(2) 
=2 XOR DZ(3)=2 XOR DZ<4)=2 0 
R DZ(2)+DZ < 3)+DZ(4) =0) THEN X 
= 4 

970 Z=0 :: for 1=6 TO 10 :: 
IF D <I)=14 OR D <I)=19-1 OR D 
(I)=20-1 THEN Z=Z+i 
980 NEXT I :: CALL HCHAR(15, 
1,32,320) 

990 IF Z=5 AND Y=10 THEN 114 
0 ELSE IF Z=5 AND Y<10 THEN 
1150 

1000 IF X=4 AND Y=10 THEN 11 
60 ELSE IF X=4 AND Y<10 THEN 
1170 ELSE IF X< 4 AND Y=10 T 
HEN 1180 ELSE 1010 
1010 X=0 :: FOR 1=1 to 4 :: 
FOR J = I + 1 TO 5 .* I IF D (I) =14 
AND D(J)=14 THEN 1020 ELSE 
IF D(I)=D(J)THEN X=X+1 
1020 NEXT J :: NEXT I 
1030 IF D(6)=14 THEN IF X=i 
THEN X=3 ELSE IF X=2 THEN X= 
4 ELSE IF X=3 THEN X=6 ELSE 
IF X=4 THEN X=5 ELSE IF X=0 
THEN X=1 ELSE IF X=6 THEN X= 
10 

1040 IF X=0 THEN 1190 ELSE C 
ALL HCHAR<15,1,32,320):: ON 
X GOTO 1080,1090,1100,1110,6 
50,1130,650,650,650,1120 
1050 ! 

1060 ! GEWINNE 
1070 ! 

1080 DISPLAY AT(15,4):"WIN : 

pair" :: es=i*es :: goto 12 
10 

1090 DISPLAY AT<15,4):"WIN : 

two pairs" :: es=2*es :: go 

TO 1210 

1100 DISPLAY AT<15,4):"WIN : 
THREE OF A KIND" :: ES=ES*3 

:: goto 1210 

1110 DISPLAY AT(15,4):"WIN : 

FULL HOUSE" :: ES=8*ES :: G 
OTO 1210 

1120 DISPLAY AT<15,4):"WIN : 
FIVE OF A KIND" :: ES«20*ES 

:: goto 1210 

1130 DISPLAY AT<15,4)S"WIN : 


L 

I 

S 

T 

I 

N 

G 

S 


FOUR OF A KIND" :: ES=10*ES 

:: goto 1210 

1140 DISPLAY AT(15,4):"WIN : 
ROYAL FLUSH" :: ES*15*ES :: 
GOTO 1210 

1150 DISPLAY AT (15,4): "WIN : 

STRAIGHT" ES«5*ES ::.GOT 
0 1210 

1160 DISPLAY AT(15,4):"WIN : 
STRAIGHT FLUSH" :: ES=ES*12 
:: GOTO 1210 

1170 DISPLAY AT (15,4) : "WIN .* 
STRAIGHT" :: ES=ES*4 :: GOT 
0 1210 

1180 DISPLAY AT(15,4):"WIN : 

FLUSH" :: es=es*7 :: goto l 
210 

1190 DISPLAY AT(15,4):"VERLO 
REN" :: ES=0 :: FOR 1=1 TO 8 
:: CALL SOUND(99,1100-1*110 
,6,1100-1*113,6,1100-1*116,6 
) 

1200 NEXT I :: FOR 1=1 TO 15 

0 :: NEXT I :: goto 1250 

1210 FOR 1=0 TO 10 :: CALL s 
OUND(99,110+1*100,6,110+1*10 
1+1,6,110+1*102,6):: NEXT I 
1220 DISPLAY AT(22,4):"PRESS 
H = HALTEN" :: DISPLAY AT( 
24,11):"R = RISIKO" 

1230 DISPLAY AT(5,25)SIZE(3) 

:USING "tf##":ES 
1240 CALL KEY <0, K, S) .* : IF S= 
0 THEN 1240 ELSE IF K=72 THE 
N 1250 ELSE IF K=62 THEN 131 
0 ELSE 1240 

1250 CR=CR+ES :: ES,AK=0 :: 
CALL HCHAR(15,1,32,320):I DI 
SPLAY AT(5,25)SIZE(3):USING 
"###":ES 

1260 DISPLAY AT(5,8)SIZE(4) : 

using "####":CR :: for i=7 t 
0 13 :: CALL HCHAR(1,6,43,22 
):: NEXT I 

1270 IF CR=0 THEN 1510 ELSE 

630 

1280 ! 

1290 ! RISIKOVERDOPPELUNG 

1300 ! 

1310 CALL CLEAR :: CALL MAGN 
IFY(2):I RANDOMIZE :: AK=0 
1320 FOR 1=5 TO 18 :: CALL H 
CHAR(I,11,43,11):: NEXT I :: 
FOR 1=7 TO 16 :: CALL HCHAR 
(I,13,44,7):: NEXT I 
1330 FOR 1=1 TO 5 :: CALL SP 
RITE(*1,125,2, <5 + 2*1)*8-7,97 
):: NEXT I :: call sprite(«6 
,126,2,54,137,#7,126,2,109,1 
37) 

1340 DISPLAY AT(11,23)SIZE(4 


46 





): m hoch m :: Display at(22,6) 

; "PRESS H = HOCH" :: DISPLA 
Y AT<24,13):"T « TIEF" 

1350 DISPLAY AT(2,7):"EINSAT 
2 :"JES :: DISPLAY AT(11, 1) S 
IZE<4):"TIEF" 

1360 CALL SPRITE(#10,112,1,8 
1,117):: CALL CQLOR<#10,2) 
1370 X=INT(RND*13)+1 :: CALL 
PATTERN(#10,111+X):: CALL K 
EY <0,K,S):: IF S=0 THEN 1370 
1380 IF (K=72 AND X>7)0R(K=8 
4 AND X< 7)THEN 1410 
1390 IF (K=72 AND X<7)0R(K=8 
4 AND X>7)THEN 1450 ELSE IF 
(K=72 OR K=84 AND X=7)THEN 1 
400 ELSE 1370 

1400 DISPLAY AT<20,9) : "UNENT 
SCHIEDEN " :: FOR 1=1 TO 150 
:: NEXT I :: CALL HCHAR<20, 
1,32,32):: GOTO 1370 
1410 DISPLAY AT(20,11) : "GEWI 

NN" :: for 1=1 to 10 :: call 

SOUND(99,100+1*10,6,100+1*2 
0,6,100+1*30,6) 

1420 NEXT I :: DISPLAY AT(22 
,6):"PRESS R = RISIKO" :: D 
ISPLAY AT(24, 13) : "E = ENDE" 

:: es=es*2 :: Display at(2,i 

6)SIZE(3):USING "###":ES 
1430 CALL KEY (0, K, S) : IF S= 
0 OR K< >69 AND K<>82 THEN 14 
30 

1440 IF K=82 THEN CALL HCHAR 
(20,1,32,32):: GOTO 1340 ELS 
E IF K=69 THEN CR=CR+ES :: E 
S=0 :: CALL CLEAR :J CALL DE 
LSPRITE(ALL):: GOTO 560 
1450 DISPLAY AT(20,11):"VERL 
oren* :: FOR 1 = 1 to 10 :: ca 
LL SOUND (99, 14.C'0~ 1*100,6,140 
0-1*110,6,1400-1*120,6) 

1460 NEXT I :: ES=0 :: for i 
=1 TO 250 :: NEXT I 
1470 CALL DELSPRITE(ALL):: C 
ALL CLEAR :: IF CR=0 THEN 15 
10 ELSE 560 
1480 ! 

1490 ! SPIELENDE 

1500 ! 

1510 DISPLAY AT(18,1):“>>>>> 
>IHR SPIEL IST AUS< < < < <" :: 
DISPLAY AT(20,1):"WOLLEN SIE 
ERNEUT IHR GLUECK" 

1520 DISPLAY AT(22,1):"VERSU 
CHEN DANN DRUECKEN SIE" :: D 
ISPLAY AT(24,1):"BITTE 
<J> ODER <N> «" 

1530 CALL KEY(0,K,S):: IF S= 
0 OR K< >74 AND K<>78 THEN 15 
30 


1540 IF K=74 THEN CR=10 :: E 
S,AK=0 :: GOTO 550 
1550 IF K=78 THEN CALL SOUND 
<2000,1000,6,2000,6,3000,6) : 

: CALL CLEAR :: STOP ELSE IF 
K< >74 AND K< >78 THEN 1530 
1560 ! 

1570 ! TITELBILD 
1580 ! 

1590 CALL CLEAR :: CALL SCRE 
EN<5):: FOR 1*3 TO 8 :: CALL 
COLOR(I,16,1):: NEXT I 
1600 CALL COLOR(9,7,16,10,7, 
16,11,2, 16, 12,2,16,13,16,1,1 
4,16,1,1,16,1,2,13,16) 

1610 CALL CHAR(128,"00000F1F 
3F3F3C3C" £<RPT$ ( "3C" , 8) k"0000 
FFFFFFFF00003C3C3F3F1F0F00") 
1620 CALL CHAR(132,"0000F0F3 
FCFC3C3C3C3CFCFCF8F000003C7S 
F0-0F0F0783C00003C3C3C3C3C3C 
" ) 

1630 CALL CHAR(136,"3C3C3C3C 
3C3C00000000FCFCFCFC",64,”3C 
4299A1A199423C",43,RPT$("F", 
16) ,44, " " ) 

1640 PRINT TAB(5) ; " 

"I TAB(5) 5 " 

":TAB(5)f" 

ii 

1650 PRINT TAB(5) ; " 

":TAB(5)J " 

II • 0 0 0 

0 0 0 0 

1660 PRINT " @ BY PETER KRA 

WINKEL 1985": : : : 

1670 PRINT TAB(7) j"+++++++++ 
+ + + + + + + ";TAB(7) r"+k ( +{,+U,+h 
,+x,+":TAB(7 )j"+ m,+>,+m,+m,+ 
>,+" 

1680 PRINT TAB (7) ; "+mo+}' v +mo 
+mn++":TAB(7)}«+++++++++++ 
+++++"; : : : : : : 

1690 GOSUB 2320 :: FOR 1=1 T 
0 250 :: NEXT I 
1700 DISPLAY AT(20,1)BEEP:"P 
RESS 1 > TO PLAY" 

1710 DISPLAY AT(22,8)BEEP:"2 
> FOR INSTRUCTIONS" :: DISP 
LAY AT(24,3):"3 > TO END" 
1720 CALL KEY(0,K,S):S IF S= 
0 OR(K<49 OR K>51)THEN 1720 
1730 IF K=49 THEN CALL CLEAR 
:: GOTO 510 ELSE IF K*50 TH 
EN 1770 ELSE IF K*51 THEN CA 
LL CLEAR :: STOP ELSE 1720 
1740 ! 

1750 ! SPIELERLAEUTERUNG 
1760 ! 

1770 CALL CLEAR :: CALL COLO 
R (2,16,5):I PRINT " J 0 K 
ER POKER"::: 


L 

I 

s 

T 

I 

N 

G 

S 







1780 PRINT "JOKER POKER WEIS 
T GEGENUEBER": :"DEM NORMALE 
N POKER EINIGE": :"BESONDERH 
EITEN AUF.": I 

1790 PRINT "1> AB EINEM EINS 

atz von >e<": credits i 

ST EIN JOKER IM": :" SPIEL 
. DIESER KANN BEI": : 

1800 PRINT " BEDARF EINE F 
EHLENDE KAR-": I" TE ERSET 
ZEN.": : : :" press any KEY 
TO CONTINUE" 

1810 CALL KEY(0,K, S) :: IF S= 
0 THEN 1810 

1820 CALL CLEAR :: PRINT "2> 
NACH EINEM ERFOLGREICHEN": 

1830 PRINT " SPIEL BESTEHT 
DIE MOEG-": :" LICHKEIT D 
ER >RISIKOVER-": : 

1840 PRINT " DOPPELUNG^. H 
IERBEI VER-": I" AENDERT E 
INE KARTE STAEN-": : 

1850 PRINT " DIG IHREN WER 
T. SIE HAL-": :" TEN PER T 
ASTENDRUCK EINEN": :" WERT 
FEST UND ENTSCHEIDEN": : 
1860 PRINT " OB DIESER WER 
T TIEF <2-7>": :" ODER HOC 
H < 9-A > LIEGT. ": : " BEI ER 
FOLG WIRD IHR EIN-": : 

1870 PRINT " SATZ VERDOPPE 
LT. >>>>" 

1880 CALL KEY(0,K,S):: IF S= 
0 THEN 1880 ELSE CALL CLEAR 
:: GOTO 1700 
1890 ! 

1900 ! KARTENBLATT EINLESEN 

1910 ! 

1920 FOR 1=1 TO 4 :: FOR J=i 
TO 13 :: B(I,J)=J +1 :: next 
j :: NEXT i :: return 
1930 ! 

1940 ! KARTE ZIEHEN 

1950 ! 

1960 Y=INT(RND*5):: Z=INT(RN 
D*14)+l :: IF B (Y, Z)=0 THEN 
1960 ELSE RETURN 
1970 ! 

I960 ! KARTE GEBEN 
1990 ! 

2000 IF Z< >14 THEN 2010 ELSE 
CD1=44 :: CD2=128 :: CD3=10 
9 :: GOTO 2020 
2010 IF Y< 3 THEN CD1 = 109 + Y : 

: CD2=95+Z :: CD3=109 ELSE C 
di=123+y :: CD2 =l1 i +z :: CD3 
= 125 

2020 CL=SP+4*AK 
2030 CALL HCHAR(ZE,CL,CD2):: 
CALL VCHAR(ZE+i,CL,CD3,2):: 


L 

I 

S 

T 

I 

N 

G 

S 


CALL VCHAR(ZE,CL+i,44,2>:: 
CALL HCHAR(ZE+2,CL+ 1,CD1) 
2040 AK=AK+1 :: C ( AK)=Y :: D 

(AK)=z :: B(Y,z )=0 :: return 

2050 ! 

2060 ! JOKER IST IM SPIEL,. 

2070 '! 

2080 CALL SOUND(139,220,6,22 

2.6.224.6) :: CALL S0UND(139, 

330.6.333.6.336.6) :: CALL SO 
UND(139,550,6,555,6,560,6) 
2090 DISPLAY AT(15,4):"EIN J 
OKER IST IM SPIEL" :: B(0,14 
)=-l :: RETURN 

2100 ! 

2110 ! KARTE WEG 

2120 ! 

2130 CALL VCHAR(ZE,SP+ (K-48) 
*4-4,40,3) :: CALL VCHAR(ZE,S 
P-3+ (K-48)*4,40,3) 

2140 CI (K-48) =C (K-48) : : Di(K 
-48)=D(K-48)I: RETURN 
2150 ! 

2160 ! IRRTUM 
2170 ! 

2180 J=0 :: FOR 1=1 TO 5 :: 
J=J+ci<i)+D1 (l):: NEXT I :: 
IF J=0 THEN RETURN 
2190 FOR 1=0 TO 2 :: CALL SO 
UND(99,220+1*100,6,220+1*100 
+ 3,6,220+1*100,6):.* NEXT I : 

: CALL S0UND(139,110,16,111, 
16,112,16) 

2200 FOR 1=1 TO 5 :: CALL GC 
HAR(9,4+4*1,CO)I: IF CO=40 T 
HEN 2210 ELSE 2220 
2210 C1(I)=C(I):: Y=C1(I):: 
Dl<I)=D<I):: z=Di (i):: ak=i- 
l :: gosub 2000 :: Ci<n ,di< 
I)=0 :: ak=ak- l 

2220 NEXT I :: RETURN 

2230 ! 

2240 ! NEUE KARTE/N GEBEN 

2250 ! 

2260 FOR 1=8 TO 24 STEP 4 :: 

CALL GCHAR <9, I ,CO) :! IF CG« 
40 THEN GOSUB i960 ELSE 2280 
2270 AK=(I-8)/4 :: GOSUB 200 
0 :: AK=AK-1 
2280 NEXT I :: GOTO 870 
2290 ! 

2300 ! MUSIK 
2310 ! 

2320 RESTORE 2390 :: FOR 1=1 
TO 56 :: READ X,Y :: CALL S 
0UND(166*X,146*CT A Y,5):: CAL 
L KEY(0,K,S):: IF S=0 THEN 2 
330 ELSE 2350 

2330 NEXT I :: RESTORE 2400 
:: FOR 1=1 to 39 :: read x,y 
:: CALL SOUND(166*X,146*CT A 


48 













V 5 5>:: CALL K£Y(0,K,S):: IF 
S=0 THEN 2340 ELSE 2350 
2340 NEXT I 
2350 RETURN 
2360 ! 

2370 ! DATEN MUSIK 
2380 !£P+ 

2390 DATA 1,17,1,16,1,14,4,1 
2,1,12,1,10,1,9,1,7,4,5,1,5, 
1,94,1,0,1,5 

2400 DATA 2,9,1,9,1,9,2,9,1, 
7,1,9,1,7,3,5,2,5,1,0,1,5,2, 
9,1,5,1,9,2,12 

2410 DATA 1,10,1,9,4,7,2,7,1 
, 12, 1,10,2,9,1,9,1,7,2,5,1,7 
,1,9,1,12 

2420 DATA 3,10,2,10,1,2,1,2, 
2,0,1,4,1,5,2,7,1,9,1,7,4,5 
2430 DATA 1,5,1,94,1,0,4,5 
2440 ' 9.P- 


L 

I 

S 

T 

I 

N 

G 

S 


JOKER POKER 

300-490 

Character-Definitionen 

500-570 

Bildschirmmaske 

580-680 

Abfrage Einsatz 

690-740 

Karten austeilen 

750-800 

Abfrage Karten halten 

oder drücken 

810-1020 

Gewinnauswertung 

1030-1180 

Gewinne 

1190-1250 

Gewinnausschüttung / 

Abfrage Risiko 

1260-1450 

Risikoverdoppelung 

1460-1530 

Spielende 


1540-1710 
Titelbild 
1720-1860 
Spielerläuterungen 
1870-1900 
Kartenblatt einiesen 
1910-1940 
Karte ziehen 
1950-2020 
Karte geben 
2030-2070 
Joker einiesen und 
anzeigen 
2080-2120 
Karte drücken 
2130-2200 
Irrtum beim Karten 
drücken 
2210-2260 
Neue Karte/n geben 
2270-2330 
Musik spielen 
2340-2420 
Daten Musik 


ERNÄHRUNGS¬ 

BERATER 


Ernährungsberater ist ein 
Programm für den TI 
99/4A mit Extended 
Basic. 

Nach dem Titelbild folgt 
eine kurze Einführung 
in das Programm. Auf die 
Einführung folgt die Ab¬ 
frage der Lebensmittel, 
die man an einem be¬ 
stimmten Tag zu sich ge¬ 
nommen hat. 

Der Computer berechnet 
dann aufgrund der einge¬ 
gebenen Daten die Ka¬ 
lorien- (Joule-)Menge, 
die an Energie im Essen 


konsumiert wurde. 
Außerdem berechnet er 
für jeden individuell die 
nötige Kalorienmenge 
sowie auch Soll- und 
Idealgewicht. 

Da das Programm 
selbsterklärend ist, ent¬ 
fällt hier eine ausführ¬ 
liche Programmanleitung. 

Aufbau des Programmes: 

Zeilennummer/Funktion 
230-250 

“pre-scan“ abschalten 

Bitte lesen Sie weiter auf Seite 53 


10 


********************** 


11 

i 

* 


* 

12 

; 

* 

ERNAEHRUNGSBERATER 

* 

13 

i 

* 


* 

14 

i 

* 

Copyright by 

* 

15 

i 

* 


* 

16 

i 

* 

Robert—Jan Milleker* 

17 

i 

* 


* 

19 

| 

* 

Benoetigte Geraete 

* 

20 

i 

* 

TI99/4A Konsole 

* 

21 

i 

* 

Ext. Basic 

* 

22 

i 

* 


* 

26 

i 

* 

Spei eherbeiegung 

* 

27 

i 

* 

10274 Bytes 

* 

28 

i 

* 


* 

29 

i 

********************** 


100 GOTO 130 : 
CALL CLEAR : 
CALL COLOR 
CALL CHAR : 
110 E,F,K,V,G 
: AT,A,B,P,I 
120 !@P- 
130 CALL CLEAR 


CALL HCHAR : 
CALL SCREEN 
CALL SOUND 
CALL KEY 
W,S,J,B,C : 


CALL SCREE 


N(7):: FOR 1=0 TO 14 :: CALL 


COLOR(I,2,12):: NEXT I :: O 
N WARNING NEXT :: ON BREAK N 
EXT 

140 FOR 1=96 TO 104 :: READ 
A$ :: CALL CHAR(I,A*):: NEXT 
I 

150 DISPLAY AT(2,5):"ERNAEHR 
UNGS-BERATER" :: FOR 1=96 TO 
104 :: READ A,B :: CALL HCH 
AR(A,B,I):: NEXT I 
160 DISPLAY AT(10,2):"KONTRO 
LLIERE DEIN GEWICHT :": : : " 

EIN SCHRITT ZUR GESUNDHEIT. 


170 DISPLAY AT(17,5):"<C) 19 
85 TEXAS-SOFT" :: DISPLAY AT 
(23,3):"BITTE WEITER MIT <SP 
ACE>" 

180 CALL KEY <0,A,P):: IF A<> 

32 THEN 180 ELSE CALL SOUND( 
100,1000,0):: CALL CLEAR :: 
CALL SCREEN(5) 

190 DISPLAY AT(4,2):"MOECHTE 
N SIE ZUNAECHST EINE": :" EI * 
NFUEHRUNG IN DIE": :" ERNAEH 
RUNGSLEHRE ?": : :" BITTE DR 

UECKEN SIE:" 

200 DISPLAY AT(14,2):"<J> FU 
ER ERNAEHRUNGSLEHRE": :" <N> 

FUER WEITER" 

210 CALL KEY(0,A,P):: IF P=0 
THEN 210 ELSE IF A=74 THEN 
GOSUB 1360 ELSE IF A<>78 THE 
N 210 

220 CALL SOUND(100,1000,0) : : 
CALL CLEAR 


49 









230 DISPLAY AT<4,2):"IHR ENT 
SCHLUSS, IHRE": :" ERNAEHRUN 
G UND SOMIT IHR": :" GEWICHT 
ZU KONTROLLIEREN," 

240 DISPLAY AT(10,2):"IST SE 
HR BEGRUESSENSWERT." 

250 DISPLAY AT(13,2):"ZUNAEC 
HST SIND NUN EINIGE" 

260 DISPLAY AT(15,2):"KOERPE 
RLICHE DATEN VON": :" IHNEN 
NOETIG." :: DISPLAY AT(23,22 
):"<SPACE>" 

270 CALL KEY <0,A,P):: IF A<> 
32 THEN 270 ELSE CALL SOUND( 
100,1000,0):: CALL CLEAR 
280 DISPLAY AT(5,3):"BITTE G 
EBEN SIE EIN:" :: DISPLAY AT 

(9,1):"KOERPERGROESSE:.C 

M": : : :"GEWICHT:. 

. .KG" 

290 ACCEPT AT(9,17)SIZE(3)VA 
LIDATE(NUMERIC)BEEP:G :: ACC 
EPT AT(13,17)SIZE(3)VALIDATE 
(NUMERIC)BEEP:W :: CALL CLEA 
R 

300 S=G—100 :: J=S-INT(S/10) 
:: B=W*40 :: CALL SOUND(100, 
1000 ,0) 

310 DISPLAY AT(2,2):"AUFGRUN 
D IHRER GROESSE": :" DUERFEN 
SIE";S;"KG WIEGEN.": :" IHR 
IDEALGEWICHT LIEGT": :" BEI 
J;"KG." 

320 IF W<J THEN GOSUB 1310 E 
LSE IF W>S THEN GOSUB 1320 E 
LSE GOSUB 1300 

330 DISPLAY AT(14,2):"IM DUR 
CHSCHNITT VERBRENNEN": : " SI 
E TAEGLICH" :: DISPLAY AT(18 
,1):B;"KCAL (KILOCALORIEN)=" 
340 DISPLAY AT(20,1):INT(B*4 

.186);"KJ_(KILOJOULE)" :: 

DISPLAY AT(23,22):"< SPACE >" 
350 CALL KEY(0,A,P):: IF A< > 
32 THEN 350 ELSE CALL SOUND( 
100,1000,0):: CALL CLEAR 
360 DISPLAY AT(2,2):"FOLGEND 
E GROESSEN SIND": :" VON BED 
EUTUNG:" :: DISPLAY AT(8,2>: 

"1 PORTION.=>C30 GH" 

370 DISPLAY AT(10,2):"1 LOEF 

FEL.=>C10 Gl": : " 1 

GLASS.= >10. 2 LI " : 

:" 1 SCHEIBE (BROT)" 

380 DISPLAY AT(15,3):"ODER 1 
/2 BROETCHEN =>C30 Gl" :: DI 
SPLAY AT(23,22):"< SPACE >" 

390 CALL KEY (0,A,P) :: IF A<> 
32 THEN 390 ELSE CALL SOUND( 
100,1000,0):: CALL CLEAR 
400 DISPLAY AT(3,2):"IM WEIT 


L 

I 

S 

T 

I 

N 

G 

S 




EREN WERDEN SIE": :" GEFRAGT 
, WAS SIE HEUTE IM": :" EINZ 

ELNEN GEGESSEN HABEN.": :" D 
AZU SIND LISTEN VORGEGEBEN" 
410 DISPLAY AT(11,2):"GEBEN 
SIE BITTE DIE MENGE": :" EIN 
, DIE SIE VOM": :" JEWEILIGE 
N LEBENSMITTEL" 

420 DISPLAY AT(17,2):"KONSUM 
IERT HABEN,WOBEI AUCH": :" D 
IE EINGABE <0> ERLAUBT": : " 
IST." :: DISPLAY AT(24,22):" 
<SPACE>" 

430 CALL HCHAR(9,31,46) 

440 CALL KEY(0,A,P):: IF A<> 
32 THEN 440 ELSE CALL SOUND( 
100,1000,0):: CALL CLEAR 
450 DISPLAY AT(2,10):"FRUEHS 

TUECK": :" EIER. 

STUECK": :" BROT. 

.SCHEIBEN" 

460 DISPLAY AT(10,3):"AUFSTR 

ICH:": :"_BROTE MIT BUTTE 

R": :"_BROTE MIT KAESE": 

:"_BROTE MIT WURST" 

470 DISPLAY AT(18,5):"BROTE 

MIT MARMELADE": : :"_PORT 

IONEN MÜESLI" 

480 ACCEPT AT(4,16)VALIDATE( 
NUMERIC)SIZE(2)BEEP:A :: IF 
A<>0 THEN E=E+7*A :: F=F+6*A 
490 ACCEPT AT(6,16)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN E=E+2*A :: K=K+17* 
A ELSE 540 

500 ACCEPT AT(12,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN F=F+10*A 
510 ACCEPT AT(14,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN E=E+9*A :: K=K+2*A 
:: F=F+9*A 

520 ACCEPT AT(16,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN E=E+4*A :: F=F+9*A 
530 ACCEPT AT(18,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN K=K+13*A 
540 ACCEPT AT(21,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN E=E+4*A :: K=K+23* 
A :.: F=F+3*A 

550 CALL SOUND(100,1000,0):: 
CALL CLEAR 

560 DISPLAY AT(2,10):"GETRAE 

NKE" : : ".ZUM FRUEHSTUEC 

K": : :"_TASSEN KAFFEE / 

TEE PUR": :"_TASSEN KAFFE 

E / TEE" 

570 DISPLAY AT(11,5):"MIT ZU 
CKi£R": : :"_TASSEN KAFFEE 


50 










/ TEE": :"_MIT MILCH UND 

ZUCKER": : :"_GLAESER FR 

UCHTSAFT" 

580 DISPLAY AT(21,5):"GLAESE 
R MILCH" 

590 ACCEPT AT(7,2)VALIDATE(N 
UMERIC)SIZE(2)BEEP:A 
600 ACCEPT AT(9,2)VALIDATE(N 
UMERIC)SIZE(2)BEEP:A :: IF A 
<>0 THEN K=K+10*A 
610 ACCEPT AT(14,2)VALIDATE( 
NUMERIC)SIZE(2)BEEP: A : : IF 
A< >0 THEN E=E+A :: K=K+15*A 
:: F=F+A 

620 ACCEPT AT(19,2)VALIDATE( 
NUMERIC)SIZE(2)BEEP:A :: IF 
AO0 THEN K=K+23*A :: V=V+.5 
*A 

630 ACCEPT AT(21,2)VALIDATE( 
NUMERIC)SIZE(2)BEEP:A :: IF 
A< >0 THEN E=E+3*A : : K=K+5*A 
:: F=F+3.5*A 

.640 CALL SOUND(100,1000,0):: 
CALL CLEAR 

650 DISPLAY AT(2,9):"MITTAGE 
SSEN": PORTIONEN NUDEL 

N / REIS": :"_PORTIONEN K 

ARTOFFELN": STUECKE FL 

EISCH" 

660 DISPLAY AT(10,5):"MITTEL 
GROSSE WUERSTE": PORTI 

ONEN GENUESE": :"_PORTION 

EN SALAT": :"_KLEINE DESS 

ERTS" 

670 DISPLAY AT(18,5):"GROSSE 

DESSERTS": :"_GLAESER FR 

UCHTSAFT": :"_GLAESER MIN 

ERALWASSER" 

680 ACCEPT AT(4,2)SIZE(2)VAL 
IDATE(NUMERIC)BEEP:A :: IF A 
<>0 THEN E=E+5*A :: K=K+18*A 
690 ACCEPT AT(6,2)SIZE(2)VAL 
IDATE(NUMERIC)BEEP:A :: IF A 
0-0 THEN E=E+A :: K=K+6.5*A 
700 ACCEPT AT(8,2)SIZE(2)VAL 
IDATE(NUMERIC)BEEP:A :: IF A 
0-0 THEN E=E+21*A :: F=F+47* 
A 

710 ACCEPT AT(10,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP: A :: IF 
A<>0 THEN E=E+8*A :: F=F+27* 
A 

720 ACCEPT AT(12,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN E=E+A :: K=K+A :: 
V=V+A 

730 ACCEPT AT(14,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN K=K+A :: V=V+A 
740 ACCEPT AT(16,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 


L 

! 

S 

T 

I 

N 

G 

S 


A<>0 THEN E=E+4*A :: K=K+34* 
A :: F=F+4-*A 

750 ACCEPT AT(18,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN E=E+10*A :: K=K+70 
*A :: F=F+10*A 

760 ACCEPT AT(20,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN K=K+23*A :: V=V+.5 
*A 

770 ACCEPT AT(22,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A 
780 CALL SOUND(100,1000,0):: 
CALL CLEAR 

790 DISPLAY AT(2,10):"ABENDE 

SSEN": : :"_SCHEIBEN BROT 

": : AUFSTRICH:": 

BROTE MIT BUTTER": :"_BRO 

TE MIT KAESE" 

800 DISPLAY AT(14,5):"BROTE 

MIT WURST": : "_BROTE MIT 

MARMELADE": : "-BECHER JOG 

HURT": :"-BECHER PUDDING" 

810 DISPLAY AT(22,5):"GLAESE 
R FRUCHTSAFT" 

820 ACCEPT AT(5,2)SIZE(2)VAL 
IDATE(NUMERIC)BEEP:A :: IF A 
0-0 THEN E=E+3.5*A :: K=K+16 
*A 

830 ACCEPT AT(10,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
AO0 THEN F=F+10*A 
840 ACCEPT AT(12,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
AO0 THEN E=E+9*A :: K=K+1.5 
*A :: F=F+10*A 

850 ACCEPT AT(14,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN E=E+4*A :: F=F+9*A 
860 ACCEPT AT(16,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A-O0 THEN K=K+13*A 
870 ACCEPT AT(18,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
AO0 THEN E=E+9*A :: K=K+13* 
A :: F=F+1-5*A 

880 ACCEPT AT(20,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN E=E+5*A :: K=K+28* 
A :: F=F+6*A 

890 ACCEPT AT(22,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
AO0 THEN K=K+23*A :: V=V+.5 
*A 

900 CALL SOUND(100,1000,0):: 
CALL CLEAR 

910 DISPLAY AT(2,12):"SNACKS 

": :"_ZWISCHEN DEN MAHLZEI 

TEN": : :"_MAL EINE HALBE 

PACKUNG": :"_NUESSE / CH 

IPS" 





920 DISPLAY AT<12,5):"MAL EI 

NE HALBE TAFEL": :"_SCHGK 

OLADE": : :"_STUECKE KUCH 

EN": :"-STUECK OBST" 

930 DISPLAY AT(21,5):"GLAESE 
R MILCH" 

940 ACCEPT AT(7,2)SIZE(2)VAL 
IDATE(NUMERIC)BEEP:A :: IF A 
<>0 THEN K=K+10*A :: F=F+28* 
A 

950 ACCEPT AT(12,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN E=E+4.5*A :: K=K+2 
7.5*A :: F=F+16.5*A 
960 ACCEPT AT <17,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A<>0 THEN E=E+4*A :: K=K+30* 
A :: F=F+12*A 

970 ACCEPT AT (19,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN K=K+14*A :: V=V+3* 
A 

980 ACCEPT AT(21,2)SIZE<2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN E=E+6*A : : K=K+10* 
A :: F=F+3.5*A 
990 CALL SOUND(100,1000,0):: 
CALL CLEAR 

1000 DISPLAY AT(2,8):"ALKOHG 

LIKA": _GLAESER BIER (0 

.4 L)": :"_GLAESER WEIN ( 

1/8 L)": :"_GLAESER SEKT 

(0.1 L)" 

1010 DISPLAY AT(10,5):"GLAES 
ER RUM (0.2 L)": : :" ACHTU 

NG:": :" ALKOHOL IST EIN SUC 
HTMITTEL": :" UND BELASTET D 
EN ORGANISMUS" 

1020 DISPLAY AT(19,2):"AUF B 
EEINTRAECHTIGENDE": :" WEISE 

.": :" SPARSAM VERWENDEN !" 

1030 ACCEPT AT(4,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN C=C+192*A 
1040 ACCEPT AT <6,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN C=C+B2*A 
1050 ACCEPT AT<8,2)SIZE(2)VA 
LIDATE(NUMERIC)BEEP:A :: IF 
A< >0 THEN C=C+84*A 
1060 ACCEPT AT(10,2)SIZE(2)V 
ALIDATE(NUMERIC)BEEP: A :: IF 
A< >0 THEN C=C+75*A 
1070 CALL SOUND (100,1000,0) : 
: CALL CLEAR 

1080 C=C+E*4.1+K*4.1+F*9.3 
1090 DISPLAY AT(2,7):"NAEHRW 
ERTBILANZ": :" SIE HABEN HEU 

TE, WENN SIE": :" ALLE DATEN 
EHRLICH": :" EINGEGEBEN HAB 
EN,": :;INT(C);"KCAL";"="; 


L 

I 

S 

T 

I 

N 

G 

S 


INT(C*4.186);"KJ" 

1100 DISPLAY AT(12,2):"ZU SI 
CH GENOMMEN.": :" DA SIE TAE 
GLICH" 

1110 DISPLAY AT(16,1):INT(B) 

;"KCAL =";INT(B*4.186);"fcj": 

:" VERBRENNEN, HABEN SIE" 
1120 IF OB+150 THEN GOSUB 1 
330 ELSE IF C<B—150 THEN GOS 
UB 1340 ELSE GOSUB 1350 
1130 DISPLAY AT(24,22):"<SPA 
CE>" 

1140 CALL KEY(0,A,P):: IF A< 
>32 THEN 1140 ELSE CALL SOUN 
D(100,1000,0):: CALL CLEAR 
1150 DISPLAY AT(2,7):"NAEHRS 
TOFFBILANZ": : :" IHRE HEUTI 

GE NAHRUNG": :" BESTAND AUS: 

": :" EIWEISS" 

1160 DISPLAY AT(11,2):"KOHLE 
NHYDRATEN": :" FETTEN": : :" 

BEMERKUNGEN:" :: P=0 
1170 IF E<W THEN DISPLAY AT( 

18.2) :"EIWEISSANTEIL ZU GERI 
NG !" :: P=1 

1180 IF FXE+K+F)/3 THEN DIS 
PLAY AT(20,2):"FETTANTEIL ZU 
HOCH !" :: P=1 

1190 IF V<5 THEN DISPLAY AT( 

22.2) :"ZU WENIG OBST UND SAL 
AT !" :: P=1 

1200 IF P=0 THEN DISPLAY AT( 

19.2) :"IHRE NAHRUNG ENTHAELT 
:" EINE AUSGEWOGENE MENGE 

": :" AN NAEHRSTOFFEN." 

1210 P=10/(E+K+F):: E=INT(P* 
E):: K=INT(P*K):: F=INT(P*F) 
:: DISPLAY AT(9,19):E;"TEILE 
N" :: DISPLAY AT(11,19):K;"T 
EILEN" :: DISPLAY AT(13,19): 
F;"TEILEN" 

1220 DISPLAY AT(24,22):"<SPA 
CE>" 

1230 CALL KEY(0,A,P):: IF A< 
>32 THEN 1230 ELSE CALL SOUN 
D(100,1000,0):: CALL CLEAR : 
: CALL SCREEN(7) 

1240 DISPLAY AT(4,2):"MOECHT 
EN SIE NUN DAS": :" PROGRAMM 
BEENDEN ODER": :" SICH EINE 
N NEUEN": :" ERNAEHRUNGSPLAN 
": :" ZUSAMMENSTELLEN ?" 

1250 DISPLAY AT(15,2):"DRUEC 
KEN SIE BITTE:": : :" <E> FU 

ER ENDE": :" <N> FUER NEUEN 
DURCHLAUF" 

1260 CALL KEY(0,A,P):: IF P= 
0 THEN 1260 ELSE IF A=78 THE 
N E,F,K,V,G,W,S,J,B,C=0 :: C 
ALL CLEAR :: CALL SCREEN(5): 
: CALL SOUND(100,1000,0):: G 


52 



OTO 280 

1278 IF A<>69 THEN 1260 ELSE 
CALL SOUND(100,1000,0):: CA 
LL CLEAR 

1280 DISPLAY AT(14,2):"HALTE 
N SIE SICH WEITER AN": :" IH 
REN KALGRIENBEWUSSTEN": :" E 

RNAEHRUNGSPLAN :" IHRER 

GESUNDHEIT ZULIEBE !" 

1290 CALL SOUND(100,1000,0): 

: STOP 

1300 DISPLAY AT(10,2):"ALSO 

IST IHR GEWICHT": :" GENAU R 

ICHTIG." :: RETURN 

1310 DISPLAY AT(10,2):"ALSO 

WIEGEN SIE";J-W;"KG": :" ZU 

WENIG." :: RETURN 

1320 DISPLAY AT(10,2):"ALSO 

WIEGEN SIE";W-S;"KG": :" ZU 

VIEL." :: RETURN 

1330 DISPLAY AT(20,1):INT<C- 

B) ;"KCAL =";INT((C-B)*4.186) 

"KJ": ZU VIEL AUFGENOMME 

N." :: RETURN 

1340 DISPLAY AT(20,1):INT(B— 

C) ;"KCAL =";INT((B-C)*4.186) 

;"KJ": :" ZU WENIG AUFGENOMM 

EN." :: RETURN 

1350 DISPLAY AT(18,24):"ETWA 
" :: DISPLAY AT(20,2):"DIE F 
UER SIE NOETIGE MENGE": :" A 
N ENERGIE AUFGENOMMEN." :: R 
ETURN 

1368 CALL SOUND(100,1008,0): 

: CALL CLEAR 

1370 DISPLAY AT(2,3):"KLEINE 
ERNAEHRUNGSLEHRE": : :" UNS 

ERE NAHRUNG SETZT SICH": :" 
AUS DREI HAUPTBESTAND-": :" 
TEILEN ZUSAMMEN:" 

1380 DISPLAY AT(11,2):"EIWEI 
SS, FETT UND": :" KOHLENHYDR 
ATE.": :" AUSSERDEM ENTHAELT 
SIE": :" NOCH VITAMINE UND" 
: :" MINERALSTOFFE." 

1390 DISPLAY AT(23,22):"<SPA 
CE>" 

1400 CALL KEY(0,A,P):: IF A< 
>32 THEN 1400 ELSE CALL SOUN 
D(100,1080,0):: CALL CLEAR 
1410 DISPLAY AT(4,2):"ALLE G 
ENANNTEN BESTAND-": :" TEILE 
SOLLTEN IM RICHTIGEN": : " M 
ENGENVERHAELTNIS": :" AUFGEN 
OMMEN WERDEN." 

1420 DISPLAY AT(12,2):"DIESE 
S PROGRAMM HILFT IHNEN": :" 
NUN, IHRE NAHRUNG RICHTIG": 
:" ZUSAMMENZUSTELLEN UND": : 
" MASSVOLL ZU GENIESSEN." 
1430 DISPLAY AT(23,22):"<SPA 



CE > " 

1440 CALL KEY(0,A,P):: IF A< 
>32 THEN 1440 ELSE CALL SOUN 
D(100,1000,0):: CALL CLEAR 
1450 DISPLAY AT(3,2):"DIE AN 
GABEN UEBER DEN": :" ENERGIE 
GEHALT DER NAHRUNG": :" WERD 
EN IN": :" KILOCALORIEN (KCA 
L) UND" 

1460 DISPLAY AT(11,2):"KILOJ 
OULE (KJ)": :" ANGEGEBEN.": 

:" WER MEHR ENERGIE AUFNIMMT 
: ALS ER VERBRENNT, WIRD 


1470 DISPLAY AT(19,2):"ZU DI 
CK ! DARAN SOLLTEN SIE": :" 
IMMER DENKEN !" :: DISPLAY A 
T(23,22) :"<SPACE >" 

14S0 CALL KEY(ß,A,P):: IF A< 
>32 THEN 1480 ELSE RETURN 
1498 !@P+ 

i500 DATA 070C0C0C0C0C0C0C,7 
C80C070180C0C04,0603,E225222 
0180A3A62,627A7A1A1A1A1A1A 
1518 DATA 74F33018188C0603,0 
00070888888E422,21E181B18181 
82C4,58A04080884020C0 
152ß DATA 5,13,6,13,7,13,5,1 
4,6,14,7,14,5,15,6, lo,7,I -j 



(für schnellen Programm- 
Start) 

260-310 

Titelbild 

360-400 

Einführung 

320-380 

Einführung in 

1470-1590 

Ernährungslehre 

400-560 

Eingabe der Körperdaten 
und deren Berechnung 
570-1190 

Eingabe der aufgenomme¬ 
nen Lebensmittel 
1200 

Berechnung der aufge¬ 
nommenen Nährwerte 
1210-1350 
Ausdrucken der Tages¬ 
bilanz 
1410-1460 
an Nährstoffen 
1350-1400 
Proarammende 
1600 

“pre-scan“ einschalten 
1610-1630 
Datazeilen für das 
Titelbild 


Farbenverwendung im 
Programm: _ 

Titelbild 

Farbe dunkelrot (Code 7) 
Programmdurchlauf 
Farbe dunkelblau (Code 5) 
Programmende 
Farbe dunkelrot (Code 7) 
Bildschirmzeichen 
Farbe schwarz auf 
hellgelb (Code 2, 12) 


Variablenliste 


Variablen/Funktion 

E 

gesamte aufgenommene 

Eiweißmenge 

F 

gesamte aufgenommene 

Fettmenge 

K 

gesamte aufgenommene 

Kohlenhydratmenge 

V 

aufgenommene Vitamin¬ 
menge 
G 

Körpergröße in cm 
W 


Gewicht in kg 


53 



SERVICE 


S 

Sollgewicht in kg 
J 

Idealgewicht in kg 
B 

tagtäglicher Energiebe¬ 
darf in Kcal 
C 

gesamte aufgenommene 
Kalorienmenge 
E, F, K 

Anteile der Nährstoffe an 
der Gesamtnahrungsmenge 
A§ 

Zeichencode 

A, P 

Position des Tl-Zeichens 
im Titelbild 


A, P 

Tastaturabfragevariablen 

I 

Schleifenvariable 

P 

Gesamtmenge, die von 
Eiweiß, Fett und Kohlen¬ 
hydraten aufgenommen 
wurde 


Anmerkung: 

Einige Variablen sind 
doppelt belegt. Dies dient 
Speicherzwecken, was 
jedoch keine Beeinträch¬ 
tigung des Programmes 
bedeutet. 


VARIABLENLISTE 
zu Jokerpoker 

B(4.14) 

Kartenblatt 

AK 

Anzahl Karten 
C(5) 

Symbole der gegebenen 
Karten 
C1 (5) 

Symbole der gedrückten 
Karten 

CD 1 ,CD2,CD3 
Char-Codes zum Karten¬ 
drucken 
CL 

aktuelle Spaltenposition 
zum Kartendrucken 
CR 

Credit / verfügbare Spiel¬ 
summe 
CT 

Halbtonoperator für 

Musik 

D(5) 

Werte der gegebenen 
Karten vor Sortierung 
D(6—10) 

Werte der gegebenen 
Karten nach Sortierung 
Dl(5) 


Differenz der Kartenwer¬ 
te bei lückenhafter 
Sequenz 
E(5) 

Ordnungswert der gege¬ 
benen Karten vor der 
Sortierung 
ES 

Einsatz 

I,J 

Schleifenvariablen 

SP 

Spaltenposition zum 
Drucken der ersten Karte 
Y,Z 

zufällige Bestimmungsele¬ 
mente zum Kartenziehen 
X,Y,Z 

Indizes bei der Gewinn¬ 
auswertung wie folgt: 

X — zur absteigenden 
Sequenzsortierung 
— zur Erkennung von 
mehrfach vorhande¬ 
nen Kartenwerten 
Y — zur Erkennung von 
mehrfach vorhande¬ 
nen Kartensymbolen 
Z — zur Erkennung des 
höchsten Gewinnes 
(-Royal Flush-) 

ZE 

Zeilenposition zum Kar¬ 
tendrucken 


TI-ASSEMBLER 
JETZT AN IHREM 
BAHNHOFSKIOSK 
ODER BEIM VERLAG 




VARIABLE 


Eine Boolean-Variable ist 
eine Variable, die die 
Werte „falsch“ und 
„wahr“ annehmen kann. 
Sie wird beim TI z.B. in 
dem IF THEN Befehl ge¬ 
braucht. Wenn die Boo- 
lean-Variable „wahr“ ist, 
wird der Befehl (Sprung) 
hinter THEN ausgeführt. 
Wenn die Variable 
„falsch“ ist, dann wird 
der Befehl (Sprung) hin¬ 
ter ELSE und wenn 
ELSE fehlt, wird der 
nächste Befehl ausgeführt. 

Beim TI entspricht 
„falsch“ dem Wert 0 
(Null) und „wahr“ dem 
Wert —1. Das sieht man, 
wenn man PRINT und 
dahinter eine Bedingung 
im Direktmodus eingibt. 
Z.B. gibt PRINT (1 = 1) 
eine —1 in der nächsten 
Zeile und PRINT (2<1) 
eine 0. Man kann diese 
Werte auch einer Variab¬ 
len zuweisen, z.B. druckt 
A=(2=l) PRINT A eine 
0 aus. Also wird bei IF 
0 THEN 100 ELSE 200 
der Sprung nach 200 aus¬ 
geführt und bei IF —1 
THEN 100 ELSE 200 der 
Sprung nach 100 vorge¬ 
nommen. Wenn man im 
Beispiel-Listing 1 in der 
Zeile 100 die 0 durch 
eine —1 ersetzt, wird 
Zeile 110 angesprungen. 
Das geschieht auch, wenn 
eine andere Zahl ungleich 
0 eingesetzt wird. Damit 
kann man auch einfache 
logische Verknüpfungen 
herstellen, z.B. wenn Be¬ 
dingung A und Bedin¬ 
gung B „wahr“ sein müs¬ 
sen, also Variable AA den 
Wert X hat und Variab¬ 
le BB den Wert Y, um 
einen Sprung auszufüh¬ 


ren, dann kann man das 
mit IF (AA=X)*(BB=Y) 
THEN 110 bewerkstelli¬ 
gen. Wenn Bedingung A 
(AA=X) und Bedingung 
B (BB=Y) „wahr“ sind, 
bedeutet das IF ( — 1)* 
(-1) THEN 110 und bei 
Zahlen ungleich 0 wird 
nach 110 gesprungen (sie¬ 
he oben). Wenn aber eine 
der Bedingungen „falsch“ 
ist, also z.B. AA nicht 
gleich X ist, bedeutet das 
IF 0* (-1) THEN 110 
und bei 0 geschieht 
nichts bzw. der nächste 
Befehl (Zeile) wird bear¬ 
beitet, da ELSE fehlt. 

Ist die Bedingung A 
oder die Bedingung B 
„wahr“ und soll dann ein 
Sprung ausgeführt wer¬ 
den, muß der Operator 
zwischen den Bedingun¬ 
gen + heißen, weil dann 
bei A+B nur dann „falsch“ 
(0) herauskommt, wenn 
A „falsch“ (0) urtd B 
„falsch“ (0) sind. Es gibt 
natürlich noch mehr'Ver- 
knüpfungen (siehe Tabel¬ 
le 1). Diese können auch 
miteinander kombiniert 
werden. Dann sollte man 
aber immer Klammern 
nutzen, um die richige 
Abfolge zu garantieren. 

Durch diese Operato¬ 
ren ist es jetzt einfach, 
Microsoft-Basic Program¬ 
me mit logischen Ver¬ 
knüpfungen in TI-Basic 
umzuschreiben. Klam¬ 
mern müssen genauso ge¬ 
setzt werden. Aber 
achten Sie darauf, daß 
NOT A=(l—A) immer in 
Klammern gesetzt 

werden muß (im Gegen¬ 
satz zum Microsoft Ba¬ 
sic). 

Man kann in bestimm- 


54 







ten Fällen sogar die IF- 
Abfrage durch einen be¬ 
stimmten Ausdruck erset¬ 
zen z.B. die Zeilen: 

200 IF A<5 THEN210 
ELSE 230 
210 A=A+5 
220 GOTO 240 
230 A=A-2 

240 . 

kann durch die Zeile: 

200 A=A—5*(A<5)+2* 
(A>=5) 

ersetzt werden. Man muß 
nur beachten, daß aus 
A=A+5 A=A—5* (Bedin¬ 
gung) wird, weil ja „wah¬ 
re“ Aussagen —1 ergeben. 
Falls man sich nicht klar 
ist, ob eine Zeile richtig 
arbeitet, sollte man sie in 
einem* kurzen Programm 
testen, weil dies genauer 
und meistens schneller 
ist, als Überlegungen an¬ 
zustellen. Außerdem ist 
die Fehlersuche in langen 
Programmen mit mehre¬ 
ren solchen Zeilen sehr 
schwierig. Obige Methode 
funktioniert aber nur, 
wenn etwas berechnet 
werden soll. Ein oft 
benötigtes Beispiel dafür 
ist, einer Variablen ab¬ 
wechselnd zwei verschie¬ 
dene Werte zuzuweisen. 
In der alten Form sah das 
so aus (A soll abwech¬ 
selnd —15 und +30 groß 
sein): 

100 IF A=30 THEN 130 
110 A=30 
120 GOTO 140 
130 A=-15 

140.. 

Umgeschrieben ist es viel 
kürzer: 

100 A=30+45*(A=30) 

Die 45 ist die Differenz 
zwischen den beiden Wer¬ 
ten. Um die Zeile zu 
verstehen, spielt man für 
jeden der beiden Fälle 
einmal durch. Wenn 
A=30 ist, dann ist (A=30) 
„wahr“,- d.h. —1 und da¬ 
mit 45*—1=—45 und 30 
—45=—15. Wenn A=—15 
ist, ist (A=30) „falsch“ 
und damit 0, 45*0=0 und 
somit ist A=30+0. 

Klaus Vietzke 


Gesprochenes 
Listing _ 

Besitzer des Terminal- 
Emulator Moduls können 
sich TI-Basic Listings 
auch sprechen lassen. 
Einfach bei eingesteck¬ 
tem TE II LIST 
„SPEECH“ eingeben und 
aus dem Lautsprecher er¬ 
tönt das gesprochene Li¬ 
sting. 

Dieser Tip erreichte 
uns von einem unbekann¬ 
ten Leser, d.h. auf der 
Karte war kein Absen¬ 
der_ 

Höhere Rechen- 
genauigkeit _ 

Da der TI nicht alle Stel¬ 
len, die er ausrechnet, an¬ 
zeigt, habe ich mir über¬ 
legt, wie dies zu machen 
sei. Ich kam zu folgender 
Lösung: Am besten läßt 
sich dieser kleine Trick 
anhand eines Beispiels er¬ 
klären. Sagt man dem TI 
in Extended Basic, er soll 
die Zahl PI ausdrucken, 
so schreibt dieser auf den 
Bildschirm 3.141592654. 
Zieht man nun die ersten 
3 Ziffern ab (diese dürfen 
aber nicht vergessen wer¬ 
den, so erhält man .00- 


15926534. Beim Multi¬ 
plizieren mit 1000 stellt 
man fest, daß statt der 4 
am Ende die drei Ziffern 
359 stehen. Denkt man 
sich nun noch die drei 
Ziffern, die man anfangs 
weggenommen hat, 

wieder hinzu, bekommt 
man die Zahl 3.1415926- 
5359. Stefan Landgrebe 

ID-Data/ID-Konto 
+ Atronic Disk¬ 
controller = 

Error? _ 

Bei TI-Anlagen, die mit 
Atronic-Diskcontro Ilern 
ausgerüstet sind, funktio¬ 
nieren die Softwarepro¬ 
gramme ID-Konto und 
ID-Data nicht. Der Griind 
hierfür liegt darin, daß 
der Atronic-Controller 
nur für zwei Laufwerke 
ausgelegt ist. 

Die Programme fragen 
aber das Betriebssystem 
danach ab, ob die Lauf¬ 
werke eins, zwei und drei 
vorhanden sind. Je nach 
Rückmeldung verhalten 
sich die Programme an¬ 
schließend und arbeiten 
automatisch mit Einzel-, 
Doppel- oder Dreifach¬ 
diskettenbetrieb. Nach¬ 


dem der Atronic-Con¬ 
troller das Laufwerk drei 
gar nicht kennt, antwor¬ 
tet er aber auch nicht 
auf die entsprechende 
Abfrage des Programmes 
und das Programm stürzt 
ab. 

ABHILFE: Ändern Sie 
die Programmzeilen wie 
folgt. 

ID-Data-2 

alt: 195 DATA DSK2., 
DSK3.,DSK1. 

Korrektur: 195 DATA 

DSK2.,DSK2.,DSK1. 

ID-Konto 

alt: 180 DATA DSK2., 
DSK3.,DSK1. 

Korrektur: 180 DATA 
DSK2.,DSK2.,DSK1. 

ID-Konto/ID-Data 
Memory Full... 
Error! _ 

Bei einigen Anwendern, 
die diese Softwarepro¬ 
gramme intensiver nutzen, 
ist es zu der Fehlermel¬ 
dung “MEMORY FULL 
IN ...“ gekommen, ob¬ 
wohl die maximale Spei¬ 
cherfähigkeit eigentlich 
noch lange nicht erreicht 
gewesen wäre. Die Ursa¬ 
che hierfür liegt im ange¬ 
schlossenen Speech-Syn¬ 
thesizer, der ohnehin von 
dieser Software nicht un¬ 
terstützt wird. Der Syn¬ 
thesizer belegt jedoch im 
RAM einige hundert By¬ 
tes, die auch von den 
Programmen benötigt 
werden. Daher der Ab¬ 
sturz. Abhilfe: Vor Pro¬ 
grammbeginn den Speech- 
Synthesizer abstecken. 



55 







BÖRSE 


Suche: ext. 32 K-RAM Er¬ 
weiterung, Buck Rogers Mo¬ 
dul. Zu melden bei K. Wol¬ 
ters, Tel. 0201/77 21 41 


*** Suche günstig ** 
PBox, Disklaufw., Disk- 
Contr., RS 232, 32k, Speech 
Synth., Dateiverw. Mod., 
Stat. Mod., Mini Mem., 
Drucker, u.a. 

Martin Heimerl, Obermains¬ 
bach 7, D-8415 Nittenau, 
Tel.: 09436/669 (ab 16 Uhr) 


Tl-Programme; 3Proinkl. 
Versand 10 DM; Info 1 DM 
Briefmarke;je Pr. 10 kByte; 
A. Licbeck; 5372 Olef; 
Wehrlcy 7 


Schnellste Daten Verwaltung 
mit Kassette. Ex-Basic-Da- 
tenverw.-Programm auf 
Kass. Gegen Einsendung von 
10 DM (auch NN) Peter Hicl- 
scher, Am Wall 22. 4401 
Saerbeck 


Lotto Systeme für 6/49 und 
7/38. Zwei Ex-Basic-Progr. 
zur Erst, abschreibfertiger 
Tips auf Kass. gegen Eins, 
(auch NN) 10 DM. Peter Hicl- 
scher, Am Wall 22. 4401 
Saerbeck 


TIPS & Tricks für TI 99/4A 
Teil I + 11, jedes Ex-Basic- 
Progr. ca. 13, 5 KB. Kassette 
gegen Einsendung von 10 DM 
(auch NN) Peter Hielscher, 
Am Wall 22, 4401 Saerbeck 


Die Programme 

1. Datenverwaltung 

2. Tips & Tricks Teil I + II 

3. Lotto 6/49 und 7/38 
auf einer Kass. gegen Eins, 
von 20 DM (a. NN) Peter 
Hielsoher, Am Wall 22, 4401 
Saerbeck 


Vorführ- und Verkaufsmodul 
des TI 99/4A gegen Höchst¬ 
gebot zu verkaufen (Spitze 
bisher = 40 DM). 

Peter Hielscher, Am Wall 22, 
4401 Saerbeck 


Suche gute deutschspr. TI- 
Adventure! Biete je Prgr. 

3 Prgr. aus meiner Prgr.- 
Sammlung (200 Extd.- + 
Masch.) aber auch bez. 

Tel. 02174/40654 


Assembler-Programme f. E/A, 
XB, MM + 32K: GPL-Disas- 
sembler; FAST-COPY (Sek¬ 
torkopierer) kopiert jede 
Disk in drei Durchgängen. 
Info gg. Rückumschlag. Alles 
sofort lieferbar 
M. Eichhorn, Ziegelheck 1, 
6240 Königstein 4 (Schneid¬ 
hain), Tel. 06174/5921 


TI99/4A + Data-Recorder + 
Basic-Lehrgang +100 Progr. 
+ Data-Becker Buch, 345 
DM * 10 Module sowie orig. 
Tl-Cassetten + Bücher * Tau¬ 
sche + verkaufe meien TI- 
Extend.- + Masch.-Progr. 

Tel. 02174/40654 


Suche Ext. Basic + dt. Hand¬ 
buch. Frank Niehuisen, Am 
Stadion 36, 2960 Aurich 
Tel. 04941/71 056 


TI-Module zu verkaufen! 
Parsec: 45,— DM. Invaders: 
45,- DM; Attack: 45,- DM 
Tel. 02473/73 20 


Basic f. Anfänger 5,— 
Old. B. Good 1 5,- 
Schallpl.Archiv 5,— 
Alles zus. 10,— 

Tel. 06638/15 03 


Recordcrkabcl DM 10, Spiel- 
progr. Selbst erstellen Bd. 1 + 
2, DM 20,— Listige Progr. 

DM 10,-Tel. 06638/15 03 


Verkaufe ofig. XBasic mit 
engl. u. dt. Handb., DM 130 
u. orig. Ape-Soft Grafik 
DM 80,- 

Tel. 0251/32 58 70 


Große Auswahl in TI- und 
X-Basic -Spielen; Spielhal¬ 
lenhits, Action, Adventurcs, 
Dcnkspiele usw. Info 1 DM 
bei Frajo Fry, Bergknappcn- 
str. 1 76, 4350 Reckling¬ 
hausen 


Suche: RS232-Karte Orig. TI 
bis 250 DM evtl, auch Fremd¬ 
anbieter Tel. 0531/87 51 61 
ab 19 Uhr 


Suche Kontakt im Raum 
Trier und Tauschpartner in 
TI-Basic und Ex-B. Schickt 
mir Tapes / o. Liste 
Hardy Rupp, Zum Schmbert 
25, 5500 Trier-Tarforst, 
0651/1 08 99 


Armer Schüler sucht günsti¬ 
ges Ext. Basic Modul. Oliver 
Malfent, Fischböckau 79, 
A-4655 Vorchdorf 


Suche P-Code-Karte ** 
Tel. 07821/7570 


Verk. 11 Spielmodule u.a. 
Parsec, Congo, Bongo, Burger 
Time ... Weitere Spiele und 
Preise auf Anfr. Tel. 0231/ 

63 68 29 


ACHTUNG !!!!!!!!!!!!!!!! 
Verkaufe original Texas Joy¬ 
sticks für nur 45 DM! Bei: 
Erik Schober, Römerstr. 5, 
6530 Bingen 17, Tel. 06721/ 
43307 


Zu Verkaufen: Module: 
Statistics German 50 DM 
Tl-Invader 20 DM. Sprache: 
Editor/Assembler Paket 160 
DM. Per NN oder Voraus¬ 
kasse. Schriftliche Angebote 
an D. Past, 8000 München 70, 
A-Roßhaupter-Str. 104 


Suche Beschreib, zu I D-Data 
+ ID-Konto + Disk-Fixer / 
Verk. TI-Rechnungsst./ 

Buch Tl-Intern. Tel. 07141- 
46 11 47 


*TI-Rechnungsst./Adv. Spiele 
Speech Edit. / Prgr. in Ma- 
Sprache /Buch TI intern. 
Tausche Prgr. / Tel. 07141/ 
46 1 1 47 


Suche *** Druckcr/Printer * 
gebraucht / mit Anschluß 
an die Konsole. Angebote 
bitte an Emig, Schanzenweg 
23. 6204 Taunusstein 3 


Verkaufe 

Extb. = 150 DM (original) 
Tibasic-Lerncas. = 10 DM 
TI Basic / Ext. Handbuch = 
20 DM. 

Cassctte mit BS Extb. Spiele 
= 10 DM 

Konsole (TI) = 200 
Original Tl-Jovsticks = 25 
DM / TI-Revucs ab Nr. 4/85 
bis Nr. 8/85 und Nr. 2. 3/86 
zusammen = 10 DM 
Indoor Soccer (Modul) für 
30 DM. Ab 1 8 Uhr 
Tel. 0203/58 37 18 


Biete/Suche + tausche Hardw. 
einzeln/kompl. sowie org. 
Softw. ab 1 7.00 05725/' 

6409 G. Buerger, 3051 
Auhagen 


TI99/4A + Cass. Rec. + 20 
z.T. Besp. Cass. + TI-Revue 
kpl. + ca. 100 Listings + 2 
Joyst. + Kabel komplett 
450,-. Tel. 069/49 55 01 


TI99/4A + Ext. Basic + Rec. 
Kabel + Joyst. Adapter + 
Flugsimulation + Tips & 
Tricks von Data Becker + Pro¬ 
gramme für den TI von R. 
Heigenmoser, kaum benutzt, 
für 380,- DM 
Tel. 040/79 04 110 


Verk. origin. TI Dsk-Contr. 
+ Dsk-Manager: 300 DM. 

C. Kater 7, R. de Schoenfels 
L-7432 Gosseldange, Tel. 
328060 


TI-99/4A, Ex-Basic, 2 Joyst. 
2 Spilmod., Kassetten, TV 
Netzkabel, Bedienanleitung 
8 TI Revue gegen Gebot zu¬ 
rück 

Helmut Weiler, Freiherr von 
Stein 1 ,6148 Weiterstadt 


Suche gutcrhaltene TI-Kon- 
sole und Multiplan Modul. 
Preis VP. Suche Assemb. 
Partner Maier H.,'08453/ 
2585 


TI — voll ausgebaut / Kons. / 
Exb / 32K / RS232 / 360K- 
Disk / Box / EA / MP / Exbr. 
u.a. — G. Oerter — Pesta- 
lozzipl. 2 — 6500 Mainz 


Verk. wg. Systemaufg. TI 
99/4A + Exp. Box + RS232 
+ 32 RAM + Disk + X-Basic 
incl. dt. engl. H-Buch. TI- 
Wirter (dt. u. engl.) 

Hess + Tombstone + Dsk.- 
Contr. VB 2650,-evtl, 
einzeln. Tel. 09128/74 04 

TI-Bücher zu verkaufen a 
1 5 DM. Tips &: Tricks. Spiel 
Lern. Arb. Ex-Basic engl., 
Farbe. Grafik. Ton Spiele, 
Kcohbuch I und II Spielpro- 
gramme selbst erstellen 1 un 
und II. (insg. f. 100 DM). 
Peter Hielscher, Am Wall 22, 
4401 Saerbeck 

Original II-Kass. + Module 
zu verkaufen: 

Grundkurs 10, Finanzbeatcr 
20, Markct-Planspicl 20, 

Vier gewinnt 30, Video II 
30, Adv. 50 Hangman 30. 
Amazcing 30, Hustle 30 (insg. 
200). Hielscher, Am Wall 22,' 
4401 Saerbeck 


Suche Sprachsynthesizer 
Verkaufe Exlcedcd-Basic 
Modul mit deutschem Handb. 
(04554) 63 96 


Verkaufe wg. Systemw. 
TI-99/4A + PBox + RS232 
+ 32K + Disk + Contr + 
ExBas + Mod + Lit VB 1700 
DM ab 18 Uhr. Tel. 04921/ 
27319 


Suche Erweiterung m. 
Centronics und Druckerkabel 
sowie andere Geräte z. Er¬ 
weiterung und Anwenderpro¬ 
gramme. 

H. Dettling, Ottostr. 8, 

5061 Beg. Bladb. 1 


Verk. orig. TI-Laufwerk 
200,— DM, orig. Tl-Joystick 
40,— DM, Minimemory mit 
Büchern 180,— DM 
08131/93046 


HILFE! Wer verkauft mir de¬ 
fekten TI? Peter Kliem, Elsa 
Brandströmstr. 3 7, 5042 
Ergtstadt 


Ext. 32K CMOS: 200 DM 
Ext. Centronics: 100 DM 
Tausche auch gegen die 
entspr. Karten! Tel. 04171- 
71841 / Axel 


56 












































BÖRSE 


Verkaufe TI 99/4A + Ext- 
B. + Cass.-Kabel + orig.-TI 
Joysticks + Prog.-Kassetten 
+ Literatur DM 400. Tel. 
0541/18 75 71 ab 18.00 


Verkaufe: TI99/4A + 
Kas.Rek. + Kabel + 5 Module 
+ 2 Joystick + Handbuch + 

7 TI Revues VB 400 
Tel.: 06107/4128 


* HELP * 

Suche Pole-Position, Moso 
Pacman, Donkey Kong, Buck 
Rogers, Jungle Hunt, Espial 
oder Star Treck. Angebot 
bitte an: Manfred Lipowski 
ln der Wanne 165, Castrop- 
Rauxel 4, Tel. 02805/72237 

Programme: alle in Ex-Basic 
Liste gegen Rückporto an- 
fordern. V. Brose. Hambur- 
gerstr. 1 . UNNA 


Suche Tl-Wriier. E/A-I 1- 
Logo-Modul, P-Code-Karte + 
Handbücher (deutsch) H. 
Fricker, Trachselweg 1 5, 

CI 1-3008 Bern, Tel. 031/ 

45 25 91 


Verk. TI 99/ -1 A + XBasic 
+ Rec. Kabel + Basic Lcrnkas. 
+ Data-Becker BVCH für nur 
VB 250.-. Tel. (05242) 
36146. 


Verk. Org. Adventurc-Kas. 
Neu — Orf. verpackt — Einz. 
1 0,-. Rabatt bis 1 0 St. 60,- 
W.-Reinders, Postf. 6613, 
4000 Ddf., Tel.: 0211/ 
683615. 


Um meinen TI 99/4A zu er¬ 
weitern, verkaufe ich mein 
Phillips Telespiel mit 8 Modu¬ 
le VB 295,-, T:05062/8089. 


Suche diverse Hard- u. Soft¬ 
ware-Angebote (Listen etc.) 
an Michael Wank, Hauptstr. 
60, 5204 Lohmar 1. 


Suche Pal-Modulator für TI, 
evtl, mit defekter Konsole. 
Gerald Sude, Tel.: 0711/ 

3 79431 ab ca. 19 Uhr. 


-VERKAUFE- 

Buch in deutsch DM 40. TI- 
Basic und X-Basic für Anf. 
und Fortgeschr. Tel.: 089/ 
1572559. 


-VERKAUFE- 

XB-Utilitics DM 70,-. Assem¬ 
bler Kurs Asem 4 von Ida, 

DM 70,-. Tel.: 


TI 99/4A PBox + E BAsic + 
ED Assemgl + Diskkontr + 
32K + RS 232 + Laufwerk + 
Modul + PROYR etc. Tel.: 
06431/22857 ab 19 Uhr. 


C-64 ACHTUNG C-64 
Verkaufe über 100 Spiele- 
pokes zum Preis von nur 5 
DM in bar. Schreibt an: 

F. Marth, 68 Rue de L’Egli- 
se, 7224 Walferdingen, Lu¬ 
xemburg. Garantierte Ant¬ 
wort. 


Suche für C-64/1541 Compi¬ 
ler mit Unterl. zB. Data Bck- 
ker: Basic 64/o.ä. - Esoterik- 
Horoskop/Bio/Kabbala/ 
Wahrs./Tarot usw./Ferner: 
Service-Unterl. f. SX-64/ 
Hard-tools f. SX-64& + Soft- 
Tools. Fred Seyfcrth, Balger 
Hauptstr. 10, 7570 Baden- 
Baden. 07221/65240. 

Suche: TI-Kontakt. Raum 
buchen. Ext.-Basic (II plus?). 
P-Box m. 32 K, Disc.-Kontr. 
Laufwerk. Module, Bücher. 
062921326. 

TI 99: Verkaufe Casselten- 
recorderkabel: 19 DM, 
Fachbuch "TI 99/4A Intern" 
(neuwertig): 29 DM und ge¬ 
brauchte El-Ersatzteile. Hol- 
gcr Wenzel 06138/8395. 

Verk. TI 99/ A4 + X-Basic + 
Org. Diskstation + Disccontr. 
+ CA 80 Spiele. Preis: 700.-- 
DM. An Stefan Kuttner, Tel: 
08704/670. 


Verkaufe TI 99/4A mit 500 
Programme +13 TI Hefte + 
Joystickadapter 300,- DM. 
Telefon: 08971/9835. 


Suche f. TI 99/4A Ext. Disc- 
Contr. + Floppy bis 450 DM. 
Verkaufe Sprachsynth. f. 

100 DM. A. Schlaht/ 04205/ 
1857. 


Verkaufe für TI 99/4A Origi¬ 
nal Tl-Soysticks und Assemb 
lerkurs ASEM-4 in dt. Spra¬ 
che auf Diskette incl. 2 Bü¬ 
cher, lauffähig in Ex. Basic. 
Preis = VHS. Tel.: 0234/ 
382596. 


Verkaufe für TI MBI-Centro- 
nic-Schnittstelle, VB 100,-. 
Torsten Meyer-Staufenbiel, 
Brucknerweg 4, 7257 Ditzin¬ 
gen 5. 


TI 99/4A Computer mit Spiel 
Modul, 190 DM. Recorder, 
Kabel 20 DM. Farbe Fernse¬ 
hen, 52 cm, 350 DM. Ed/Ass- 
Buch 50 DM, alles zusammen 
510 DM. Tel: 06155-4692. 


Billig abzugeben: Neuer Ma- 
trixdurcker Seikosha GP 100 
A/Mark 2 mit Kabel für Cen- 
tronicx-Schnittstelle, Werks¬ 
garantie, Preis Ö.S. 2.300,- 
Wien 10, Tel.: 


Wirkl. neuw. 99/4A (ca. 5 
Betriebsst.) + Rec. + Kabel, 
inkl. Handb. u. Tips &: Tricks 
für nur 199,- zu verkaufen. 
Ab 20 Uhr 08031/81345. 


TI + Rec + XBasic = massig 
viel Zubehör für 600 DM oder 
Sinclair Spectrum mit Drums 
ynthi = Wertausgleich. Armin 
Holz, Rathausstr. 38, 5014 
Horrem. 


Kaufe Spiel-PRG F. TI in 
TI-B und Ext-B-Listc an: 

D. Boeschen-Kraue, FR- 
Ebcrtstr. 1 1. 2890 Norden¬ 
ham. 


Verkaufe TI-Ex. Basic + 
Flugsimulatro + Digger für 
nur 150 DM. S. Schmidt. 
Laatzen 22. 3258 Acrzcn 2. 


Terminal Emulator 1200. Su¬ 
che Beschreibung! W. Strcse- 
mann, Gatowerstr. 83c. 1000 
Berlin 20. 

TI-99- 4A + X-Basic + Daten- 
verVv. + Schach + Spiele + CC 
mit Kabel -*• Literatur + Soft¬ 
ware VB 450.-. 08461-1404. 


E/A Handbuch sucht Tel.: 
021 1 /429627. 

Suche: Joystic ca. 20,-. 
Modul: Compact Engl. + Re- 
chenkuenstl. 07483/221, 
Horst Fischer. 


Suche preisw. Original TI- 
RS 232, Modul-Expander u. 
Ex-Basic II . 18 - 20 Uhr, 
Tel.: 04331/6471. 


32 K — Extern - Direkt — 
Ansteckbar — Akkuger. 225,- 
DM, Original TI-Laufwerk 
250,- DM. Tel.: 06181- 
81848. 


Orig. TI-RS232 Schnittstelle 
extern, Bus durchgeführt und 
Kabel nur 210,- DM. Adven- 
turemodul +11 Cass. nur 
110,- DM. Tel.: 05021/ 
13700. 


Suche Disk-Controller 
oder intern) für TI ii)4 A. 
Angebote an: M. Wechsung, 
Goethestr. Sa, 3300 BS. 


Tl-User sucht DFÜ 
Kontakte, Karte genügt und 
an Harald Vöge, Pergament¬ 
weg 44b, 2000 Hamburg 74. 


Der Tl-Club Hamburg sucht 
weitere aktive. Tel.: 7128586 
+ 2994609. 


Suche Diskcontroller intern 
für TI 99/4A-Peri-Box Tel.: 
030/6638779 


32-K Erweiterung, extern am 
1 /0 Port mit durchgeführtem 
Bus für 150,- DM incl. Ge¬ 
häuse. 030/6638779. 


Die Spiele in Basic: Ghostbus- 
ters 10,- DM, Raid over Mos- 
cow 5,-, Frogger 4,- + PRG- 
Liste + MC + Porto nur g. bar. 
Stephan Kamp, Auberg 4, 
5450 Neuwied 13. 


Suche gute deutschsprachige 
TI-Adventure! Biete je Prgr. 

3 Programme nach Wahl aus 
meiner Progr.-Sammlung 
!). Verkaufe schwarzes Orig. 
Ext.-Basic-Modul incl. ca. 50 
Ext. Progr. + Data-Becker 
Buch + ExBas-Lehrg. (8 Pro¬ 
gr. D). T: 02174/40654. 

Suche Adventure Modul für 
40 DM. Tel: 02236/41342. 

Org. Module mit Handbuch: 
Donkey Kong 40. , Defen- 
der 30,-, Tl-lnvaders 20,-, 
Zero ZAP 20,-, Othello 20,-, 
Align Addition/Minus Mission 
je 10,-, Basic/Ex-Basic Tutor 
je 10,- . Tel: 0561/18967 
od. 496351. 


Verk. TI 99/ 4A + Rec. Kabel 
+ X-Basic m. dt. + engl. Anlei¬ 
tung, Preis: 400 DM. ZX 81 
TV-Modul defekt und 1 6 K- 
Erweiterung m. engl. Hand¬ 
buch, VB: 100 DM. E Schuer- 
mann, Sonnenstr. 40, 5940 
Lennestadt 1 1, Tel.: 02 721/ 
10871. 

Originalverpacktes Extender- 
Basic Modul mit deutschem 
Handbuch, Preis: 165 DM. 
(04554) 6396. 


Tausche Masch. Prg. und auch 
andere Softw. Max Nagler, 
Tradtstr. 14, 8492 Furth i. 
Wald, Tel.: 09973/1517. 


Suche: Schaehmodul o. Par¬ 
sec (Tausch gegen Attack) 

M. Nagler, Tradtstr. 14, 8492 
Furth, 09973/1517. 


Suche für TI99/4 A Disket- 
ten-Laufwerk und Drucker 
mit entsprechenden Anschlüs¬ 
sen. Tel.: 0461/51509. 


Verk. TI 99/4 A, neu: 190 
DM + Kabel lo + 2 Joyst. 40 
+ Module: Text/Datei, verw. 
+ Analyse + Statistik, je DM 
50,-+ Invaders. Walter Frei¬ 
dinger, Kronbühl 20, 7762 
Bodm.-Ludwigshafen. 


TI 99/ 4A + ex. Bas. + Hand¬ 
buch + Rek. Kabel + 11 TI- 
Revue + Lit. + Lehrcass. + 
DataBank + Lagerkartei = 
DM 600,-. Tel.: 0451/ 
593394. 


57 













































BÖRSE 


L 


TI 99/4A 100, Ex-Bas 100 
Joyst. 50, Sprachsynth 90, 
Cassrec. 80, Grafiktab 90, 

3 Spielmodu. 30, + Bücher. 
Tel.: 09721/3940 ab 17 Uhr. 


Verkaufe Drucker HR 5 von 
Brother mit Kabel RS 232C, 
DM 280,--. (neuwertig). 
Lucas, 06821/70160. 


Verkaufe: Module Disk Ma- 
nagr. 2, und Schach je DM 
50,--, 3-fach-Modulexpander 
Dm 75,-. Lucas, 06821/ 
70160. 


Top-Angebot: Datenverw. & 
Analyse, Text &: Datei, Inva- 
dcrs, D-Kong, Pac-Man, alles 
Original Module, günstig, 
Tel.: 089/ 3513935. 


Adventurc-Modul mit allen 
Adventures (100) sowie div. 
andere Module günstig abzu¬ 
geben. Tel.: 089/ 3513935. 


TI 99/4 A: Vcrk. folgende 
Module: Buck Rogers 40,- 
DM, Congo Bongo 50,- DM 
(auch Tausch): Alligator 
Mix , 10,- DM: Jungle Hunt 
50,- DM: Bei M. Schenk, Ro 
scnweg 4, 7107, Bad Fried¬ 
richshall. 


Suche in Assembler (!) ge¬ 
schriebenes Editor/Assemb¬ 
ler/Disassembler-Paket für 
Mini-Memory + 32 K sowie 
für Ex Basic + 32 K. Suche 
auch Assembler-Prgr. auf Kas¬ 
sette. Alfred Manthey-Rojas, 
Eichenkamp 22, 2200 Elms¬ 
horn, 04121-74734. 


TI 99/4A m. Ext-Basic, Re¬ 
corder + Lit. 380-Module: Po¬ 
le Position + Jungle Hunt a 
50,- DM, Shamus + Protector 
a 35,- DM, TI Invaders, 
Munchman, Hunt the Wum- 
pus, Jaw breaker, The Attack, 
Tombstone City, Chisholm 
Trail a 25,-, Car tridge Ex¬ 
pander 3-fach, 80,- DM. 

H. Menzel, I.d. Freßäckern 
17/1, 7120 Bietigheim-Bissg. 

Suche billigen, aber heilen 
Datenrecorder mit Kabel bis 
DM 40. Marco Neumann, 
Jungborn 42, 2000 Hbg. 6 


Verkaufe: Personal Record 
Keeping Statistics. German 
Pers. Report Generator. 
Preis-VB. Tel.: 08431/45808 


Tausche Korg D DM 110, 
Digital-Drums gegen Peribox 
+ LW + Contr. OD Ext. LW 
+ Contr., NP 90 DM, 4 Mona¬ 
te alt. M. Lehn, 

Hubertusring 29, 3180, 
Wolfsburg 23 


J 


Superangebot!!!!!! 

Verkaufe TI 99/4A m P-Box 
+ 3 RS 232 + 32 K-Karte + 
Disk-Contr. + Laufwerk + P- 
Code-Karte + EA-Modul + 
Ext-Basic + Sprachsynth. + 
Multipl. + Tl-Writer + Buchh. 
+ TE II + Schach + Text + 
Dateiverw. + Statistik + Da¬ 
tenverw. + viel Software + 
Bücher für sage und schreibe 
VB 2900,- . Tel.: 05976/ 
1698. 


TI 99/4A + Ex. Bas. + Rec. + 
Kabel + Literatur + Software 
(6 CAss + Listing) 450,-, 
0207/870101 ab 16.00. 


RS 232 Schn.stelle ex. Druk- 
ker Brother EP 22, Dateiver. 
Statistik, Preise VHS. Tel.: 
040/6439853. 


Verkaufe: Origig. EX-Basic + 
Handb. 160 DM, Music Maker 
Mod. 35 DM, Tips und Tricks 
15 DM (alles zus. 190 DM). 
06162/3922. 


Kaufe TI 99-Konsole, Ange¬ 
bote an: Heinz-J. Fischer, 
Bergisch-Gladbachcrstr. 800, 
5000 Köln 80. 


TI 99/4A - 100 DM. Mini 
Memory — 150 DM, TI Forth 
75 DM, Alle Preise VB. Tel.: 
0814194897. 


TI Austausch. A. Münzenmai¬ 
er. Habe deine Adresse ver¬ 
legt. Bitte melden bei K. Wol¬ 
ters: 0201/772141. 


Billig zu verkaufen: TI 99/4A 
3 X-Basic, Joystick + 

Recorder + Kabel, MBI-Multi- 
board-Interface auf Centronic 
(RS 232) + Module: Bu¬ 
chungsjournal u. Statistik + 
viele Programme, kompl. nur 
650,- DM. Suche: 32 KB Er¬ 
weiterung extern u. gepuffert. 
Tel.: 02594/3163 ab 18.00 


VE. 8K7 Dynamics. Lager 
Kartei, Data Bank, Adres. 
Büch. Archiv usw. + 3 Kas. TI 
Adventure. TE DM 18. incl. 
Porto. J. Dhulst, 40, R. des 
Deportes, B 6478 - Rance, 
Belgie. 


Verkaufe TI 99/4 A + orig. 
Ext.-Basic Modul mit engl, 
u. dt. Handbuch + Rec. Kabel 
+ Joyst. m. Adapter + ca. 100 
Spielprogramme. Alles nur 18 
Monate alt für DM 420. D. 
Stüber, Tel.: 089/ 756207. 


Winterschlußverkauf! 
Mini-Assembler (Radix) kom¬ 
plett mit Software für sympa¬ 
thische 80,- DM bei: Kay: 
040/5254608. 


Verkaufe TI 99/4A + Ext. B. 
+ Cass.-Kabel + Orig.-Joy- 
sticks + Prog.-Cassetten 400 
DM. R. Möser, Tel: 0541- 
187471, ab 18.00 Uhr. 


HP 7035B X-Y-Schreiber m. 
Buchsenbel-Planlanonstecker. 
Sehr gut erhalten. Tel.: 041 
74/3245 ab 18 Uhr. 


Aufgepasst: Verkaufe: Orig. 
TI-Diskcontroller mit Disk- 
managcr II für nur 300 DM. 
S. Wöllner, Darmstadt. Tel.: 
06151/311195. 


Hallo, Tl-User! Ich suche 
Tauschpartner für Program- 
ne in TI und Ex-Basic. Mel¬ 
det euch bei: Stefan Rossow, 
Winsener Str. 1, 2358 Katten¬ 
dorf. Oder ruft ab 1 9 h an. 
Tel.: 04191/8353. Tschüß. 

Verk. TI-99/4A: Extb. 

Handb. (Tl/Extb.) ca. 35 
Spiele in Extb. VB 400 DM. 
Tel.: 0203/58371 S von 20 
bis 22 Uhr. 


Verkaufe: TI 99/4A + Exten- 
ded Basic + Schachmodul + 
Literatur. Preis VB. Dr. R. 
Schulze, Tel.: 0231/803001. 


Verkaufe Minimemory-Modul 
mit Software! Preis VB 220,- 
DM. Suche für TI: Drucker 
Interface, Drucker und 32 K 
Speichererw. Angebote an 
Tel.: 02051/62666 (Velbert). 

TI-99/4 A-Super-Spiele auf 
Kas. M. Boron: Hochenstau- 
fenstr. 30, 7141 Möglingen, 
Tel.: 07141/461843. PS: Viel 
mehr als Spiele. 


Cad-Katalog 86 !!!!!!!!!!!!!! 
22 Firmen, Adressen, Soft- 
und Hardware-Beschreibung 
von Cad-Systemen, Preise 
incl. Gratis Dateiverwaltung 
(Daten lesen, schreiben, su¬ 
chen). Kas.: 60,- DM. K. 
Gaisser, Fuchsfeldweg 9, 

7155 Zell, Tel.: 07191/44211 


Verkaufe folgende TI-Module 
Text & Dateiverwaltung 30,- 
DM, Buchungsjournal 50,- 
DM, Statistik 30,- DM, Da¬ 
tenverwaltung & Anal. 35,-- 
DM, Schachmeister 40,- DM, 
Adventure-Modul 40,- DM, 
Music Maker 40,- DM, Othel¬ 
lo 25,- DM, Editor Assembler 
110,- DM. BASF Laufwerk 
6106 200,- DM, Org. TI- 
Laufwerk 200,- DM. Tel.: 
0212/56537 oder 43140. 


Tausche: Disk. Controler + 
Modul gegen Ex-Basic Modul 
Th. Frick, Spitalgasse 4, 8001 
Uerich/Schweiz. 


Verkaufe: Orig. TI Peri-Box 
200,- DM, Recorder + Kabel 
100,- DM, Ext. Basic mit 
engl. Handbuch 150,-, Ape- 
soft Exp. Grafic Basic (Disk.) 
100,- DM. Tel.: 06201/ 
69729 


TI-Literatur, ältere Magazine 
aus den USA und d. deu- 
schen Sprachraum zu verkau¬ 
fen. Liste gegen Rückporto 
von D. Taube, Dingelstedt¬ 
wall 16, 3260 Rinteln 1, oder 
tel: 05751-42913 (ab 16.00). 


TI 99/4A + Video-Game 12, 
Blackjack/Poker, Parsec, Alpi¬ 
ner. Alle Preise VS. Verk.: 
06441/74830. 


Verk.: TI-99/4A + X-Ba + 
Rec. + Kabel + Parsec + 2 
Joyst. + Lit. DM 320,-. 

C. Bcrski, Oldenkotterstr. 65, 
4426 Vreden. 


Suche ext. 32-K. Erweiterung 
Epson-Drucker RX 80 (nagel- 
neu/originalverpackt), Preis 
YB. Datenverw. + Analyse 
50,- DM. Ralf Theile (0209) 
784272. 


Verk. TI 99/4 A + Ex.-Basic + 
4 Module + Rec. Kabel + 2 
Joyst. + viel Lit. u. Bücher + 
sehr viel Softw. Preis: 3 70 
VB. Tel.: 06103/24605. 


Verk.: TI 99/4A + Box + 32 
K + LW + Contr + Ex-Basic+ 
Rcc-Kabel + Lit. + Joyst., 
VB 1400,- DM. Tel.: 0221/ 
5906379, 


Verk. wegen Hobbywechsel 
sehr günstig mein System! 
Gratisliste: B. Leoni, Rain- 
str. 19d, CH - 8808 Pfäffi- 
kon 


Verkaufe oder tausche meine 
32 KRAM mit Centronics 
(Extern) gegen origin. 32 
KRAM-Karte. Tel.: 02732/ 
704325 - A. 


Datenverw. u. Analyse-Mo¬ 
dul f. TI 99/4A zu verkaufen 
100,- DM . S. Bauer, Tannen- 
weg 18, 7180 Crailsheim. 


• TI99/4A m. Ext-Basic, Re¬ 
korder + Lit. 380,- Module: 
Pole Position + Jungle Hunt 
a 50,—, Shamus + Protector 
a 35,—,11 Invaders; Munch¬ 
man; Hunt the Wumpus; Jaw 
breaker; The Attack, Tomb¬ 
stone City, Dhisholm Trail 
a 25,— Car tridge Expander 
3fach 80,— 

H. Menzel I.d. Freßäckern 
17/1, 7120 Bietigheim-Bissin- 
gen (o. Tel. 07142-61549 ab 
19 h) 


:is 


tfü 

jbe 

ta): 

19/ 


58 


| äs 25 äs äs ä5 äs 















































BÖRSE 


Verk. TI-99/4A, Ext. Basic, 
32 K-Ram extern (neu), Re¬ 
corder, 20 Leerkassetten, 
Bücher TI Spezial I u. II, 
Ex-Basic Handbuch, Spielen, 
Lernen, Arbeiten, Data 
Becker Tips und’Tricks für 

DM 250,- 

Paul Parthier, Rosemeyer- 
str. 14, 3180 Wolfsburg 28 


TI-CLUB BAUNATAL bietet 
für seine Mitglieder: Clubheft 
mit 25 Seiten, Prg.-Speicher 
mit 400 Programmen, Druk- 
ker. Infobrief gegen 50 Pf. 
Rückporto oder Clubheft 
gegen 3,— DM Rückporto bei: 
Matthias Orf, Birkenallee 34, 
3507 Baunatal 1, Telefon 
0561/497990 


Verk.: Moon Mine (40DM), 
Music Maker (50DM), Soccer 
(40DM), Speech Editor (60 
DM), Original Adventure- 
modul +10 Adventure Cass. 
(180DM). Zs.: nur 350DM. 
NP.: 607 DM !!! Jens Rippe, 
Ristedter Hauptstr. 3, 2808 
Syke Ristedt. 

Rippe, Jens, Str.Nr.: Ristedter 
Hauptstr. 3, 2808 Syke- 
Ristedt 


TI 99/4A Handb. m. Ex.-Bas 
Kurs, Adv.-Modul m. Pirate 
Island,-Ghost Town, Adv.- 
Land, Pyramid of Doom; 
Mod. Attack. Connect For, 
Addit., Minus Mis., Cas. 
Oldies-Spiele, Basic-Lehrg. 
u. 40 S-., 2 KbI., VB 250. 

V. Rehbronn, Deinsloh 14, 
463 Bochum, 0234/5931 14 


E/A-Modul 100DM 

D a t en ver w a 11 u n g 50DM 

Othello 25DM 

Brenne Programme von 
TI-Disketten auf Epromsü 
Tel. 0202/735309 
(17h-19h) 


Verkaufe Miniassembler + 
E/A Handbuch Kopie + 
Software NP DM 230,- für 
DM 120,— D. junghans, 
Tel. 06134/4519 ' 


C-128 PC: Eines der ersten 
Prg. im Basic 7.0 ist da: 

ADRESS-128 - bis zu 200 
Adressen — viele Funktionen 

— läuft auf 1541/1570/ 

1 57 1 — auf Disk + Anleitung 

— nur 20,— DM bei: M. 
Rattelmüller, August-Bebel 
Str. 11,6454 Bruchköbel 1 


Nun ist es soweit: Rex-Soft 
hat nach seinem Riesenerfolg 
auf dem TI nun den Club auf 
dem Commodore 64/128 PC 
weiterverbreitet. Es wird eine 
Clubzeitschrift in Simons- 
Basic geboten. Ein Clubtref¬ 
fen mit den TI-Freaks steht 
an!!!! Meldet Ech bei: M. 
Rattelmüller, August-Bebel 
Str. 11,6454 Bruchköbel 1 


Suche Software für 32k-Er- 
weiterung, Extended Basic 
und Kassettenrekorder. 
Matthias Orf, Birkenallee 34, 
3507 Baunatal 1, Telefon 
(0561)497990 


Suche Tauschpartner der mit 
mir Programme in Extended 
Basic, Basic und Maschinen¬ 
sprache auf Cassette tauschen 
möchte. Habe 450 Program¬ 
me! Schickt eure Programm¬ 
listen an Matthias Orf, 
Birkenallee 34, D-3507 
Baunatal 1, Tel. 0561/497990 


***SUCHE *** SUCHE *** 
P-Code-Karte mit Handbuch 
und Systemdisketten, E/A-, 
Multiplan-Modul, Tl-Writer- 
Modul mit Disk. *** 
BATHORY * FRÜHLING- 
STR. 8 *** 

**** 8831 HÖTTINGEN *** 


Biete Munchman, Tombstone 
&: Parsec für je 20,— DM; 
orig. Handbuch 8,— DM; 
vollbesp. Kassetten (auch 
Anwenderprg.) je 8,— DM; 
Datenrec. &: Kabel nur 60,— 
DM. Suche Kontakt zu 
CPS99 *** Usern!!! 

Tel. 06821/5531 (ab 18 h) 


Tippe Listings für sie ab (aber 
nur „TI BASIC“). 10 DM + 
Kassette an: 

Aronica Luigi 
Deelcr Weg 14 
5000 Köln 71 


* Suche Tl-User im Raum * 

* Essen zwecks Kontaktauf- * 

* nähme usw.ü! Bitte 

* schriftlich melden bei 

* Klaus-J. Höltgen / Hester- * 

* dorftstraße 10 / 4300 * 

* Essen 12 * 


Verk. TI 99/4A + XBasic + 
P-Box + Disk + Contr. + 32 K 
+ S. synth. + Tl-Joyst. + 
Joyst. Adapter + E/A + Re¬ 
corder + Grafic-Tabl. + 
Module: Moonsweeper, 
Defender, Adventure (11 
Adv.) + Apesoftgrafic + 

140 Prg. + Lit. = 2500,- 
A. Herwig, Konradstr. 11, 

4 D’dorf, 213747 


** CUBIE & THE CUBES ** 

* Superspiel f. TI 99/4A * 

* (Exbasic,-ähnl. Q-Bert), * 

* 3D-Graphik, DM 25,- * 

* incl. Prgm.-Kassette, * 

* Porto und Versand * 

* Softwareinfo gg. DM 1,— * 

* P. Rieger, Talstraße 64 * 

* 6750 Kaiserslautern ***** 


Verkaufe original-verpackte- 
ungebrauchte TI Ware (war 
für Zweitgerät gedacht) 


Tl-Writer 160,- 

Editor Assembler 150,— 

Multiplan 250,— 

Terminal Emulator 80,— 

Extended Basic 200,— 

Mini Memory 160,— 

Disk Manager II 70,— 

Schach 60,— 

Musik Maker 60,— 

Datenverwaltung + Analyse 
Text + Dateiverwaltung 
Statistik 

Buchungsjournal 250,— 

Buchungsjournal 
Adventure Modul 
(Pirat) 

Pyramid of Dom 110,— 

The Golden Voyage 
The Count 

Kasse ttenrekorderkabel 
für CS1 10,— 

für CS1 + CS2 16- 

Diskonctrollerkarte 380,— 

Disk-Floppy int. 400,— 

Original TI externe 
neuwertige Erweiterungen 
RS232 (V24) Doppel- 
schnittstcllt 260,— 

3 2 K-Ram 240,- 

Diskcontroller mit 
Managermodul 260,— 

Floppy 420,— 


monitor + Recorderkabel + 
Joysticks 360,— 

TI Silent 700 Termo- 


Drucker mit V24 Kabel 

ca. 250,— 

Telefon 08161/3754 


Verkauf eines Compact 
Peripherie Systems CPS 99 
mit 1 Laufwerk zum herunter¬ 
gesetzten Preis (400,— bis 
500,— DM unter Neupreis) 
Erwin Rizakowitz 
Blumenstr. la 
Germersheim 


Editor/Assembler, VI.02-99/ 
4A Nur XABASIC, 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, 
5300 Bonn 1 


TI 99/4a + VHF-Modulator 
+ Mechatr. X-Basic + 2 Joy¬ 
sticks + Rec.-Kabel + div. 
PGM’s auf Cass. + div. Zeit- 
schr. zu verkaufen. VB 400,— 
Tel.: 040/270 30 78 bis 
16 Uhr. 


Biete: Bücher Superspiele 
für TI 20 DM, Farbe, Grafic, 
Ton 25 DM, engl. Handbuch- 
Ex-Basic 10 DM bei 02303/ 
65134 Brose 


CX5M-Infos 2 
20-seitiges Fanzine gegen 
1,50 DM in Briefmarken 
bei: Jost „Pi“ Schwider, 
Warendorfer Str. 45, 4650 
Gelsenkirchen 


* Raum Mainz-Wiesbaden * 
Hit-Bit Fan mit 3 1/2 Floppy, 
Bitcorder und umfangreicher 
MSX-Bibliothek sucht MSX- 


TI99/4A + P.Box + 32k + 
Floppy + Ext.B.+Lit. VB 
1.700 DM. Verkauf auch ein¬ 
zeln. Tel. 0214/401384 
ab 1 7 h 


TI99/4A + Kassettenkabel + 
Bücher 200 DM. Blöckl 089/ 
310 38 00 od. 150 37 12 


Verk.: TI-Konsole (120,-), 
Othello (15,—), Video Games 
I (20,-), Tl-Invaders (20,-), 
Pac Man (40,—), Munch-Man 
(25,-), Parsec (30.-), Hallen¬ 
fußball (30,—) sowie viel 
Software in Basic + Ext. 

Basic. Matthias Orf, Birken¬ 
allee 34, 3507 Baunatal 1, 

Tel. 0561/497990 

Rex-Soft präsentiert 1986: 
bessere Software zu besten 
Preisen. Meldet Euch bei: 

M. Rattelmüller, August- 
Bebel-Str. 11, 6454 Bruch¬ 
köbel 1, keine Raubkopien 

MODULE zu verkuafen!!!! 
Tomstone City ÖS 100,— 

DM 15,- 

HOPPER ÖS 100,- 

DM 15,- 

PARSEX ÖS 100,- 

DM 15,- 

SCHACH ÖS 300,- 

DM 45,- 

Karl ECKSTEIN, 1160 Wien, 
Gaullachergasse 6/3 
Tel. 0043 222 74 14 42 Büro 
48 12 872 Privat 


Verkaufe Disketten: 

3 D-World+Hardcopy-Progr. 

80,- 

Basicroutine II Orig. TI 

65,- 

Basicroutine III Orig TI 

65,- 

Flugsimulator Version A+B 

45,- 

Graphic Master + Hardcopy- 
Progr. 80,— 

Versandliste Orig TI 65,— 

Checkbookmanager Orig. TI 
65,- 

Lagerverwaltung Orig TI 
65,- 

Master-Katalog J. Horaczek 

70- 

Rechnungsstellung Orig TI 

65,- 

Terminkalender A. Donix 

40- 

R. Thielmann, T. 02234/ 
79646 






























BÖRSE 


L 


TI99/4A+Ext-Basic 360 DM 
(nur zusammen); Module 
Statistik, Report-Generator, 
Datenverwaltung je 75 DM, 
Minus Mission, Alien Addi¬ 
tion je 25 DM, Rec-Kabel 
15 DM dt. Handbuch Ext- 
Basic 30 DM Klaus Lindner, 
Weilerstr. 7 5303 Bornheim 
4, Tel. 02227/7040 

++++ R. G. SOFTGAME ++ 
SPITZENSOFTWARE IN 
TI OD. EX 

INFO FÜR 1.50 DM BEI 
R. GOERKE ++++ WATZ¬ 
LING 10, 8250 DORFEN 

SUCHE LITERATUR ETC 
ÜBER SPEECHSYNT. 

TEL. 08081/3236 


Verk. TI99/4A+Ext. Basic m 
Handb. + Recorder + Kabel 
+ Joyst. + Joyst. Adapter + 

4 Module (Parsec, Tomb. 
City, Munch: M., Indoor 

S. + 1 Buch + ca. 100 Prg. u. 

5 TI Revues für DM 450,— 
ab 14 h; Tel.: 0203/772247, 
Duisburg 1. 


Buchungsjournal (Modul) 
79,—; Datenverw. + Anal. 
(Modul) 59,—; Lagcrverwal- 
tung (Disk) 59,—; 
Rechnungsstellung (Disk) 
59,—; Statistik (Modul) 35,—; 
Vokabeltrainer (Cass.) 10,—; 
TI Basic Kurs (engl. Cass.) 
10,-. R. Unruh, Telefon 
0711/719267. 


WER TAUSCHT 32-K-ER- 
WEITERUNG GEGEN 110 
SUPERPROGRAMME z. B. 
SLICKS, TENNIS, SUPER- 
FROG ET C. INTERES¬ 
SENTEN BITTE MELDEN 
BEI SCHNEIDER MAN¬ 
FRED TEL. 06874/6705. 


Verkaufe super TI-Progr.! 

In TI- und EX-Basic für nur 
DM 1,50. Interessenten mel¬ 
den bei Schneider Manfred, 
Nunkircher Straße 42a, 

6648 Wadernbüschfeld/Saar. 
Oder Telefon 06874/6705. 


Tausche 110 Superprogram¬ 
me gegen Disclaufwerk 6106 
Meldet Euch bei: Schneider 
Manfred, Telefon 06874/ 
6705. 


Ich bekomme von euch RS 
232-Schnittstelle und ihr be¬ 
kommt von mir 110 Super¬ 
programme. Meldet euch bei 
Schneider, Manfred, Telefon 
06874/6705. 


Suche Extend.-Basic Modul 43 
;m Tausch gegen Weltempfän- 
ger. Orbiter, 7000 
Tel.: 069/49 55 01 


+++ TI-99/4A Kons. Mit Zu¬ 
behör; Video out+WxtBas+ 
32 K + Joyst + Rec Kab + 

5 Bücher (ED/AS in dt. TI- 
Rev + div. Softw. von Spiele 
bis Debug auf Kass. + nur 
zus. + Gebot an Gerhard 
Biehl, Hinterstraße 8, 2209 
Herzhorn oder nach 20 Uhr 
04124-7072. 


Verkaufe für Peribox: 32 K 
DM 250,- ED/ASS DM 100; 
RS 232 mit Kabel DM 250; 
Speech-Synth. DM 100; 

Tel. 02136/34170. 

Neue Module EX BASIC mit 
deutschem Handbuch DM 
120; Statistics Germ. Mod. 
DM 35; Buchungsjournal 
Mod. DM 35; Othello Modul 
DM 30; MINUS MIS. u. 
ALIEN ADDIT. auch als 
Selbstbaugehäuse DM 7,50. 
Jürgen Reimer 040/2994609. 

Verkaufe wegen Systemauf¬ 
gabe folgende Module: 
MASH, Tl-Invaders, Munch- 
Man, Sahtzee, Othello, Wum- 
pusjagd! Dirk Kronshage, 
Akazienstraße 24, 4902 Bad 
SAlzuflen oder Telefon 
05222/13837. 


Verkaufe TI 99/4A zum 
Ausschlachten. Handbuch, 
Trafo, Modulator, Konsole 
und Tastatur! Dirk Kronsha¬ 
ge, Akazienstraße 24, 4092 
Bad Salzuflen oder Telefon 
05222/13837. 


Verkaufe: 1. Personal Record 
Keeping DM 50; 2. Personal 
Report Generator DM 50; 3. 
Individual Accounting (Bu 
chungsjournal) DM 70; 4. 
Meteor Belt (Sprachausg.) 

DM 40; 5. Burger Time DM 
30; 6. Moon Patrol DM 30; 
suche Modulexpander !!!. Te¬ 
lefon 06181/23399 (ab 20 h). 
B. Pompe, 6450 Hanau 1, 
Postfach 2041. 


Verkaufe TI99/4A + P- 
Box + 32 K + Controller + 
Dsklw. + RS-232 + Ex.- 
Basic + Joystick + Schach- 
mod. -r Apesoft-Grafic + Lit.: 
Ed./Ass., 99Special II. für 
DM 1.900. Telefon 02361/ 
26460. 


Gebe Masch. Progr. (ED/ASS) 
auf Kassette ab. Nur EX + 32 
K nötig. — Infos gegen Rück¬ 
porto. — B. Dusny, Müll- 
dorfer Straße 31, 5205 St.. 
Augustin 1. 


Suche günstig Drucker 
Epson RX-80 oder FX-80. 
Telefon 02241/330700 
(abends). 


Verkaufe LOGO-Programm 
(XB, 32 kB) mit 30! Befeh¬ 
len, Prozeduren und Variab¬ 
len!! Ausf. Anl. Schickt DM 
20 an M. Bannert, Mozart¬ 
straße 5, 8676 Schwarzen¬ 
bach, Telefon 09284/8338. 


Verkaufe viele Bücher und 
Joyst-Adapter (DM 25). 
Suche billige Module + Gra¬ 
phiktableau + MC-PSLOT- 
Routine (für XB). Zahle gut 
(??). M. Bannert, Mozart¬ 
straße 5, 8676 Schwarzen¬ 
bach, Telefon 09284/8338. 


Wer schickt Tl-Anfänger 
kostenlose Listings o. Spiele. 
Zuschriften an R. Dupre, 
Hühnerstraße 4, 4270 Dor¬ 
sten 1. 


+++ Top Angebot +++ 

Verk. TI99/4A + Ex. Basic + 
Sp. Syn. + Joyst. + Parsec + 
Rec. Kab. (alles in orig. Ver- 
p.) + viele Prg. + Tl-Intern + 
Zeitschr., alles 50 % billiger! 
Preis: nur 475 DM!!! Telefon 
0761/71682. 


Verk. Kabel f. ext. 32 kB — 
GP-250X. Bauanl. audio Aus- 
g. nach Stereoanlage. Suche: 
TI-99/4A + ExBa. (plus II?) 

+ Exp.-BOX m Contr. + 1 
Laufw. + E/A-Modul m. dt. 
Anleitung + Maus + f. Speech- 
Editor und Synthesizer Hand¬ 
buch (evtl. z. auslcihen) 
Kontakte zu Tl-Usern aus 
Piz. 3000.. Angebote an 
P. Strohmeyer, Haltenhoff- 
str. 181,3000 Hannover 21. 


Ihr habt Probleme mit eu¬ 
rem TI? Egal welche. Wendet 
euch an die Leute mit dem 
größten Know-How. TI-99cr 
Workshop Rheinland. Tele¬ 
fon 0221/03979!!! 


An alle Tl-User im Rhein¬ 
land! Wenn Ihr Kontakte zu 
einem Club sucht, kommt zu 
uns. Wir sind für alle offen. 
Beitrag 0,00 DM TI 99er 
Workshop Rheinland. Tele¬ 
fon 0221/7039 79, ab 19 Uhr. 


Verk.: Modul xb (100,-; 
Schach (50,—);Stat (50,—) 
Rechnungsstellung (50,—) 
Lagerverw. (50,—)/Rec. + 
Kab. (100,—)/ ti-contr. + 
dskmanager I (250,—)/ 

* T. Schramm, 040/72 11 882 
040/72 43 787 


TI 99/4A + Exbasic + neuer 
Recorder + Kabel + Listings 
+ Spiele + 5 Bücher 
VB 400 DM 

Michael Laegel, Königstforst- 
str. 36, 5000 Köln 91,0221/ 
84 11 20 


J 


Verschiedene Module mit 
Spielen und Anwendungen: 
Aktuell und billig: Assemb¬ 
lerpaket mit Handbuch 
(dtsch.), Demo-Kassette und 
natürlich mit Steckmodul 
zum direkten Anschluß an 
die Konsole + Ext. basic für 
nur DM 189,00. Externe 
Schnittstelle RS 232 (V24EA) 
mit sehr gutem Beschrieb und 
Kabel alles für DM 170. Druk- 
ker, EP 22, Fabr. Brother, 
mit Interface, Display, auch 
als Schreibmaschine zu nut¬ 
zen, nur DM 320. Bücher mit 
Tips + Tricks, je DM 30. Kas¬ 
setten mit div. Programmen je 
DM 15. Peter Kruber, Schlo߬ 
straße 72, 6908 Wiesloch, Te¬ 
lefon 06222/53407. 


TI99/4A + Data-Rec. + Bas.- 
Lehrg. + 100 Progr. + Data- 
Becker Buch 345 DM * Wx + 
.-Bas.-Modul + Lehrg. + 50 
Ext. Progr. 225 DM * 16 Mo¬ 
dule (Schach, Musik-Maker 
usw.) sowie Tl-Cassctten + 
Bücher sowie 16 Comp.- 
Zeitschriftcn *. Telefon 
02174/40654. 


TI 99/4A + Pe. Box + Floppy 
Cont. + Floppy Laufw. + 

32 K Ram + RS 232 + Speech 
Synt. + X-Basic + Ed/As. + 
Schachm. + Joyst. + Rec. 
Kabel + Recorder + viel Li¬ 
teratur + viel Maschinen- + 
Basic Progs. (z. B. Ti Forth, 
3D-World) DM 2.000, bei 
Rainer S. Telefon 02225/ 
13581. 


Editor/Asscmbler auf Kasset¬ 
te: Nur DM 60,— Exb. + 

32 k notwendig. Lothar- 
Krauß, Tel. 0561/88 71 29 


Verk. Miniasscmblcr + E/A 
Handbuch + viele Progm. + 
viele Infos für DM 120,— 
Tel. 06134/45 19 


EINMALIG! 128 KB für 10 
DM. Eine MC randvoll mit 
TI 99/4A Programmen in 
TI- und ExBasic 
über 128 KB ** keine Kopien 
DC Mondweg 9 5450 Neu¬ 
wied 1 


Verkaufe: 99/A mit Exb, 
MM, Invard., Joyst., CS1 & 
CS2, div. Pgme, XB-, Ass, 
99 Spez. I&II, MM-Hand- 
bücher, alle deutsch! Sowie 
div. Zeitschriften. VB 900 
DM, mögl. kompl, evtl, ein¬ 
zeln. Tel.: 040/677 27 39 
ab 19.00 


Drucke für TI-Freaks Listings 
von Disk und Cassette. E. 
Mauk, Gollierpl. 10, 8000 
München 2 


60 



































SERIE 


L 


ASSEMBLER 

LEICHT 

GEMACHT 

Beim letzten Mal haben wir die Hilfsroutinen völlig 
abgeschlossen und damit sind wir dann eigentlich 
mit der Einführung in den TMS 9900 Assembler 
auf dem TI 99/4A am Ende. In Zukunft werden 
wir uns ohne den Zwang einer Fortsetzungsserie 
in lockerer Folge immer wieder mit besonderen 
Einzelfällen beschäftigen. 


Damit soll auch gleich 
heute begonnen werden. 
Immer wieder Schwierig¬ 
keiten wirft die Eingabe 
von Werten über die Ta¬ 
statur und den Bild¬ 
schirm bei Assemblerpro¬ 
grammen auf. So wollen 
wir uns einmal mit einem 
kleinen Bildschirm-Editor 
beschäftigen, ganz ein¬ 
fach, ohne Tastenwieder-. 
holung. Dabei wird der 
Editor als einfaches Un¬ 
terprogramm aufgebaut, 
welches mittels BL ange¬ 
sprungen wird. 

Das Listing 1 zeigt den 
Aufbau. Trotz der Kom¬ 
mentare wollen wir uns 
noch näher mit der Funk¬ 
tion des Mini-Editors be¬ 
schäftigen. Zu Beginn 
wird erst einmal die Rück¬ 
sprungadresse aus RI 1 in 
RIO gesichert. Dann ini¬ 
tialisieren wir RO, welches 
immer auf die aktuelle 

Interrupts 
beachten _ 

Adresse des Cursors auf 
den Bildschirm zeigt und 
in R5 wird durch Addi¬ 
tion ein Zeiger auf die 
max. Adresse auf dem 
Bildschirm aufgebaut. 
Dann fehlt uns noch ein 
Zähler für das Blinken 
des Cursors, hier wird R2 
benutzt uncl wir müssen 
noch den Tastaturmodus 
wählen. 

In RI wird immer der 
Cursor und im anderen 


Byte das momentane Zei¬ 
chen auf dem Bildschirm 
gespeichert, also laden 
wir RI noch mit dem 
ASCII-Wert für den Cur¬ 
sor und lesen in das ande¬ 
re Byte das Zeichen, wel¬ 
ches sich auf dem Bild¬ 
schirm befindet. 

Anschließend wird der 
Zähler für das Blinken 
des Cursors um Eins er¬ 
höht und mit einem 
Grenzwert verglichen. Ist 
dieser erreicht, werden 
die beiden Zeichen in RI 
vertauscht. 

Die Interruptbegren¬ 
zung ist hier nicht unbe¬ 
dingt notwendig. 

Üblicherweise wird 
aber gerade bei Tastatur¬ 
abfragen diese Erlaubnis 
des Interrupts realisiert, 
also machen wir es auch 
hier. Interrupt werden 
bei der automatischen 
Funktion von Sound und 
Sprites benötigt. 

Nach der reinen Tasta¬ 
turabfrage, die wir über 
die Hilfsroutine KSCAN 
ausführen, fragen wir zu¬ 
erst das GPL-Statusbyte 
ab, ob das Equal-Bit ge¬ 
setzt ist, was soviel bedeu¬ 
tet, wie neue Taste ge¬ 
drückt. Dies geschieht 
über den Befehl COC, da¬ 
mit werden die gesetzten 
Bits in einer Maske (hier 
> 20) mit den gesetzten 
Bits im Register vergli¬ 
chen. Sind alle gesetzten 
Bits der Maske auch im 
Register gesetzt, wird das 


Equal-Bit des Prozessor- 
Statusregister gesetzt. Ist 
also keine Taste gedrückt, 
springen wir sofort zurück 
zum Erhöhen des Cursor- 
Blinkzählers. 

Ist eine Taste gedrückt, 
wird der ASCII-Wert von 
>8375 geholt und gleich¬ 
zeitig RI mit dem ASCII- 
Wert für die Leertaste be¬ 
legt. Ist die gedrückte Ta¬ 
ste eine Funktionstaste, 
so wird ein Sprung ausge¬ 
führt, wenn nicht, wird 
die Taste auf dem Bild¬ 
schirm abgebildet und 
das Ganze beginnt von 
vorne. Außer, das Ende 
ist erreicht, dann wird die 
Taste nicht mehr auf den 
Bildschirm geschrieben. 

Bei den Funktionsta¬ 
sten hat nur die Taste 
„Cursor rückwärts“ eine 
Funktion. Wird diese aus¬ 
geführt, so wird die Stelle 
davor gelöscht und RO 
entsprechend für die An¬ 
zeige der vorherigen Stel¬ 
le vermindert. Mit einer 
der Tasten BACK, PRO- 
CEED oder ENTER ist 
die Eingabe abgeschlossen 
und es erfolgt der Rück¬ 
sprung zum Hauptpro¬ 
gramm, wobei vorher 
noch in das niederwerti¬ 
gere Byte von RI der 
ASCII-Wert der Taste ge¬ 
legt wird. 

Das Unterprogramm 
SCHR wird eigentlich nur 
zum Schreiben der Zei¬ 
chen auf den Bildschirm 


genutzt, wichtig für das 
Verständnis des ganzen 
Editors ist hier aber noch, 
daß der Inhalt der Bytes 
von RI getauscht wird. 

Der Mini-Editor ist in 
dieser Form, ohne die 
mit einem Sternchen ge¬ 
kennzeichneten Zeilen, 
für Programme, die über 
LOAD AND RUN vom 
Assembler-Modul oder 
Mini-Memory aufgerufen 
werden. Soll das Pro¬ 
gramm für Basic-Assemb- 
lerprogramme genutzt 
werden, so sind die Stern¬ 
chen zu entfernen, d.h. 
die Zeilen mit zu assemb- 
lieren. Das Label TAST3 
ist dann natürlich aus der 
darunter liegenden Zeile 
zu entfernen. __ 

Beispiel für 

die Funktion _ 

Ein Beispiel für die 
Nutzung dieses Mini-Edi¬ 
tors aus einem Hauptpro¬ 
gramm zeigt das Listing 
2. Vorher müssen R3 und 
RS mit den richtigen 
Werten geladen werden. 
Nach dem Ausführen des 
Editors wird über R2 die 
Länge der Eingabe ermit¬ 
telt und dann die Ein¬ 
gabe in einen Buffer mit 
vorangestelltem Längen¬ 
byte gelegt. Achtung: Für 
Basic ist dies so nicht ge¬ 
eignet, hier muß von allen 
Bildschirmwerten noch 
)60 abgezogen werden. 

Hemer Martin 


MSX REVUE 

suchen kompetente 

COMPUTER-JOURNALISTEN. 

Die künftigen Kollegen sollten nicht nur ihr 
Handwerk beherrschten, sondern auch die 
Rechner, die dazu gehören. Außerdem erwarten 
wir ein ausgeprägtes Interesse für Themen rund 
um diese Computer-Typen. Ihre Bewerbung 
mit den üblichen Unterlagen bitte an 

AKTUELL-GRUPPE, Postfach 1107, 

8044 Lohhof, z.Hd. H. Seibt. 


61 






LISTINGS 


************************** 

BL 

0SCHR 

* MINI-EDITOR 

JMP 

EDIT1 

* VORHER: 

TASTEN BL 

0SCHR 

* R3=SCREEN-ADRESSE 

SLA 

1,8 

* R5=LAENGE DER EINGABE 

B 

*10 


hinterher: 

R0=SCREENADRESSE ABSCHLUSS 
R1=ASCII-WERT ABSCHLUSS-TASTE 
R2=ZERST0ERT (>0000) 


(HIGH BYTE) 


* R3=SCREEN 

ADRESSE 

* R5=SCREEN 

ADRESSE 

EDIT 

MOV 

11,10 


MOV 

3,0 


A 

3,5 


CLR 

2 


CLR 

0 >3374 

EDIT1 

LI 

1,>001F 


BLWP 

0VSBR • 

* 

AI 

1,>A000 


BL 

0SCHR 

T AST 1 

INC 

2 


CI 

2,>0180 


JNE 

TAST2 


BL 

0SCHR 

TAST2 

LIMI 

2 


LIMI 

0 


BLWP 

0KSCAN 


MOVB 

@ >337C , i 


COC 

@H20,4 


JNE 

T AST 1 


LI 

1,>0020 


MOVB 

0 >8375, : 


CI 

1,>2100 


JL 

T AST 4 


CI 

1,>7F00 


JH 

T AST 4 


C 

0,5 


JL 

TAST3 


BL 

0SCHR 

BDTN 

JMP 

EDI T 1 

* TAST3 AI 

1 , >6000 

TAST3 

BLWP 

0VSBW 


INC 

0 

* 

AI 

1 , > A000 


CLR 

2 


JMP 

EDIT1 

H20 

DATA 

>2000 

D08 

BYTE 

8 

D10 

BYTE 

10 

D13 

BYTE 

13 

D15 

BYTE 

15 

D12 

BYTE 

EVEN 

12 

T AST 4 

CB 

1,0D08 


JNE 

TAST5 


BL 

0SCHR 


C 

0,3 


TAST5 


JEQ 

EDI T1 

DEC 

0 

SWPB 

1 

BL 

0SCHR 

JMP 

EDIT 1 

CB 

1,@D13 

JEQ 

TASTEN 

CB 

1,0D15 

JEQ 

TASTEN 

CB 

1,0D12 

JEQ 

TASTEN 


SCREEN ADRESSE 
MAX ADRESSE 

ZAEHLER FUER DAS BLINKEN DES CURSOR 

TASTATURMODUS 0 

ASCII-WERT DES CURSORS 

BISHERIGES ZEICHEN LESEN 

NUR FUER BASIC, SCREEN OFFSET ABZIEHEN 
WIEDER AUF DEN BILDSCHIRM SCHREIBEN 
ZAEHLER FUER BLINKEN DES CURSOR 
ZAEHLER HOCH GENUG? 

NEIN, SPRUNG 

CURSOR/ZEICHEN WECHSELN 

INTERRUPT ERLAUBEN Z.B. FUER SOUND 


* FUER BASIC SCREEN OFFSET ADDIEREN 


ZEICHEN SCHREIBEN 
NAECHSTE BILDSCHIRMSTELLE 

FUER BASIC, SCREEN OFFSET WIEDER ABZIEHEN 
CURSOR ZAEHLER RESET 


* CURSOR ZURUECK 

* NEIN, SPRUNG 

* SCHREIBE SPACE AUF DEN BILDSCHIRM 

* LINKER RAND? 


* JA, ENDE 

* VORHERIGE STELLE 

* DAMIT NOCH EINE LEERSTELLE GESCHRIEBEN WIRD 


* EINGABE ABGESCHLOSSEN? 

* BACK 

* PROCEED 


************************** 
* ZEICHEN SCHREIBEN FUER El' 


SCHR 


CLR 2 
SWPB 1 


* CL 

* ZE 


AI 1,>6000 * Nt 
BLWP 0VSBW * * Ct 
AI 1,>A000 * Nt 
RT * RE 


* HAUPTPROGRAMM ZUM AUFRUF 

DEF START 

REF KSCAN,VMBW,VMB 

* ODER DIE ENTSPRECHENDEN 


TASTATURABFRAGE 
GPL-STATUSBYTE 
EQUAL-BIT GESETZT? 

NEIN, DAS GANZE VON VORNE 

LEERTASTE 

ZEICHEN IN RI 

>20? ALSO FUNKTIONSTASTE 

JA, SPRUNG 

< 7F? 

JA, SPRUNG 
ENDE" 5 

NEIN, ZEICHEN SCHREIBEN UND NAECHSTE STELLE 


MYWS BSS >20 
BUEFER BSS >100 


START 


LWPI MYWS 
LI 3,258 
LI 5,10 
BL 0EDIT 


MOV 

S 

JEQ 

MOV 

LI 


STAR1 


0,2 
3,2 
STAR1 
3,0 

1,BUFFER+1 
BLWP 0VMBR 
SWPB 2 

MOVB 2,0BUFFER 


CLR 0 

MOVB 0,9>837C 
LWPI >83E0 
B 0 >0070 


COPY "DSK2.EDITQ" 


END 


TI-99/4A Verkaufe billig 
Supersoftware in X- und TI- 
Basic. Liste gratis bei Rene 
Bachem, Eschenweg 7, 535 
Euskirchen, Tel. 02251/ 
62311 (nur nachm.) 


62 




BÖRSE 


LEERSTELLE AUF DEN BILDSCHIRM SCHREIBEN 

LEERSTELLE AUF DEN BILDSCHIRM 
LETZTE TASTE IN RI LOLIBYTE 
RETURN 10 

IT 

RSORZAEHLER RUECKSETZEN 
ICHENREGISTER UMDREHEN 

R FUER BASIC, SCREEN OFFSET 

RSOR SCHREIBEN 

R FUER BASIC, SCREEN-OFFSET WIEDER ABZIEHEN 

TURN 11 
DES EDITORS: 


?,VSBW,VSBR 

[QUATES FUER DIE MODULE 


8. ZEILE 

EINGABENLAENGE 10 BUCHSTABEN 


ANZAHL BUCHSTABEN 

ES GIBT HILFSROUTINEN, DIE MIT 0 AUSSTEIGEN 
BILDSCHIRMADRESSE 

1. BYTE BLEIBT FREI FUER DAS LAENGENBYTE 
LAENGENBYTE 


Pläne für TI-99/4A anschl. 
US Kabel (Disk Reset, Aku¬ 
stikkoppler Drucker I- 
Sticks) E. Mauk.Gollierpl. 
10, 8000 München 2 


Suche dringend Schach-Mo¬ 
dul für TI99/4A 
Zuschriften an Mittermair, 
Johann Osternbergerstr. 57 
A-5280 Braunau/Inn 


Kaufe Mini Memory Modul 
80—100 DM je nach Zu¬ 
stand / Spiel-Module 15 — 
25 DM je nach Zustand 
Tel. 02652/61 57 


Verk. TI Konsole + 2 Joy¬ 
sticks + Recorder + TI Tips 
+ Tricks + Listings VB 370 
DM, B. Maack, 3074 Steyer¬ 
berg 


99/4A Konsole + Exbasic 
je DM 100,—, Adu-Modul: 
DM 40,—, 25 Progr.-Cass. 
Atari-Module für TI je DM 
50,— (Pole-Position, Moon- 
Patrol, Shamus, Popeye, 
Miner2049) 

TI-Module: (Treasure Island, 
Microsurgeon je DM 45,— 
Fathom DM 35,—) 

R. Schwalbe 02368/6237 


TI-Freunde hergehört! 

Der Clut der Toten bietet: 
2099er 

Eine richtige Computerzei¬ 
tung für TI-99/4A und VC- 
20. Mit Listings, Tips, Berich¬ 
ten, usw auf mehr als 40 Sei¬ 
ten. Anforderbar gegen zwei 
50 Pfg. Briefmarken für Por¬ 
to und Verpackung bei: 
2099er, Am Hang 5, 

2054 Geesthacht 


Verkaufe billig! Wie neu! 

Für TI 99/4A Bücher Tips 
+ Tricks u. Bas/ExBas. für 
Anf. u. Forgeschr. (TI), 
Lehrcas. Basic u. ExBas., 
TI-Revue 1-8,TI-Revue Spez. 
1+2, 10 Grafik Prgm’s (Cass.) 
Anrufen lohnt sich! 0231/ 

87 59 16 ab 18 Uhr 


Verkaufe: 

32k-Erw.-intern 250 DM, 
TI-Ex.-Bas. 150 DM (incl. 
engl. Handbuch), Centronics- 
Kabel f. FX80 60 DM, Kass. 
Rec.-Kabel 20 DM, Buch 
Special I 20 DM. 

Tel. 02821-18 399 


QUBIE & THE CUBES 
Superspiel f. TI 99/4A (ex 
basic, ähnl. Q-Bert), 3D-Gra- 
phik, DM 25,— incl. Prgm- 
cassette, Porto und Versand 
Softwareinfo gg. DM 1,— 

P. Rieger, Talstr. 64, 6750 
Kaiserslautern 


Verk. TI 99/4A Neu 190 
DM+CsKb 18 DM + 2 TI- 
Contr. 40 DM + Org. Module: 
Text/Dateiverw. + Analyse 
+ Statistik a 55 DM + Inva- 
der + Parsec + Zero Zap + 
Othello + a 35 DM + Schach 
55 DM + Lerncas., Basic + 
Ext. Basic a 10 DM + Tips 
Tricks + Spiel/Lem/Arbeite 
m. TI a 25 DM. 

Tel. 07773-5261 


Umfangr. TI 99/4A System, 
Box m. 32K, Schnittst., 
Floppy, 2. Floppy cxt., 
Sprachsy., Text-Datei-3 D- 
Graf. auf Disk, mehr. Module 
u.v.m. evtl, auch einz. zu verk 
Näheres unter Tel. 07365/ 
6235 n. 18 Uhr 


Verk. TI99/4A + Ex. Basic, 
engll. Handb. kpl. auch ein¬ 
zeln. Jungle Hunt, Amazeing, 
Munchman, The Attack, 
Tombstone City, Carwars 
+ ca. 200 Prgm. + Joyst. + 
R-Kabel + Basic Lerncass. + 
Bas./Ex. Lehrbuch. VP: 

DM 600,— Tim Dinter Tel. 
08191/2885 


*** Verkaufe kompl. Station 
99er + PBox + 1 Disintt + 1 x 
Diskext + 32 k + I/O-Karte 
+ Monitor (grün, 20 MHz) 

+ Drucker (Epson TX-801 
+ Palm od. Joystick (TI + 
Spect) + EdAss + Tl-Writer 
+ Ex-Basic + PRK + 6xMo- 
dule + Forth + ca. 700 Pgm 
auf 100 Disks (ca. 20 % 

Masch Code) + Service-Un¬ 
terlagen + alle Tl-Journal + 
-Revue. VB 3450,— DM 
J. Zander. Kufbcrgcrstr. 20 
8411 Wenzenbach 
09407/2010 


TI99/4A 

Disklauf * Controler Divers. 
Software * Divers. Module 
* Preis VB * einzeln * 

Tel. 0871/25791 


Verkaufe TI99-4A, Exbasic, 
EA-Modul, Peribox mit Lauf¬ 
werk, 32k Erw., RS232, 
Tl-Writer (dt) Multiplan, 
Recorderkabel 2-fach, TI- 
Joyst., Speechsynth., div. 
Disks, Preis kompl. DM 
1000,— VB. J. Schneiderat 
Mo-Fr 9-15, 021 1-632042 


Wir kaufen Ihre defekte 
TI-Konsole und Peripherie 
zu Höchstpreisen, rufen Sie 
an, bevor Ihr TI in den Müll¬ 
sack wandert. Bei Brose 
02303/65134 


Suche 

RS 232-Karte für Box dt 
E/A Handbuch dt Tl-Writer 
Anleitung Programmrou¬ 
tinen 2&:3 (dt) 

Uli Warias, Tel. 05300/485 


Biete prgr. jgl. Art: Mathe/ 
Statist!k/El. Technik/Graf. 
Spiele/Finanzen (Hasuhalt) 
Erledigung von Aufträgen 
Rechner: MSX, Atari, ZX81 
Thomas Wächter, Mühläcker- 
str. 30, 7312 Kirchheim- 
Teck 


63 



















-...ENDLICH 8 


■ä^o i //in 


hfl VA 

IVi-rW 4 


DR5 BUCH FÜR DER 

B55ER8LER-PROBRRCIRIERER 

| 280 Selten 

■ ~ s monKOPPELnnnn geballte Information 


TN53300 
RSSERBL ER 


TI 33'RR 


urtrSS EDITCS/RSSEr.SLSR 
ur.s EXTEnCEO BR SIC 


Ein umfassender 
Oberblick 
über TMS 9900 
und TI 99/4A 

Ein unentbehrliches 
Nachschlagewerk 

Buchpreis DM 49,- 


Prograrrm- 

dlskette 


DM 20,- 


Beschrleben sind u. a. Prozessor, Assemblercode 
Befehle, Direktiven, CRU, DSR, GROM, VDP, TMS 9901. 
Tastatur u. v. m. 

Buch und Diskette sind ru beziehen im Pachhandel oder direkt 
vom Autor: Simon Koppeimann, Judenpfad 7, 5000 Köln SO 

Versand nur gegen Vorkasse (Scheck oder Überweisung auf Kon¬ 
to 2255488900, BfG Köln 370 101 11) oder Nachnahme zuzüglich 
Versandkosten: DM 4.- (Scheck/Überweisung) / 8.- (Nachnahme) 


für die TI 99/4A-Peripheriebox. Erweiterbar auf 512K! 

Mit der 128 K GRAM-Karte, an deren Entwicklung wir beteiligt waren, ent¬ 
stand für den TI 99/4A-User das ideale Handwerkszeug für „GPL". . 

Quick-Information 

CALL EDITHEM: Aufruf eines Hexmonitors aus dem Basic oder Extended 
Basic im Direktmodus, mit dem sich Speicherinhalte verändern lassen. 

CALL GRAM: Aufruf aus dem Basic o. Extended Basic im Direktmodus des 
LOADER-Utilityprogramms, welches das Laden und Abspeichern auf 
Diskette von Modulinhalten gestattet. 

CALL MODUL („NAME"): Umwandlung eines Tl-Basic-Programms in ein 
Modul", d.h. das Programm wird in das GRAM verlagert und kann 
dort über das Titelbild ausgeführt werden. Bringt bis zu 13 KByte mehr 
Speicherplatz für Variable. 

LOADER-Utility: Dieses Hilfsprogramm kann einmal direkt über das Menue 
der GRAM-Karte oder über CALL GRAM bzw. CALL GRAM1 (CALL 
GRAM2 und CALL GRAM3 für weitere GRAM-Karten) ausgewählt 
werden. 

LOAD-Datei: Ermöglicht über eine Datei im Format DISPLAY, VARIABLE 
80 das Laden von mehreren gespeicherten ROM/GROM-Inahlten. Eini¬ 
ge vorbestimmte Namen von LOAD-Dateien erscheinen im Menue der 
GRAM-Karte und können über einen Tastendruck angewählt werden. 

lieferbar Ende März. Preis... 698,00 DM 


für das Editor-Assembler-Modul 

Gebrauch von FMT, LABELS und Berechnungen im Adreßfeld zulässig! 
Dokumentation in Deutsch oder Englisch. Programm auf Diskette 99,00 DM 

Ausführliche Information über die hier beschriebenen Produkte gegen 80 Pf- 
DIN A5-Rückumschlag. Weiteres TI 99/4A-Zubehör in unserer Angebotsliste 

- kostenlos anfordern! , 

Versand per Nachnahme (+ 5.00 DM) oder per Vorausscheck (+ 3.50 DM) 

ELEKTRONIK SERVICE 
Peter Kleinschmidt Linning 37 4044 Kaarst 2 Tel. (02101) 603208 


Die nächste 
TI-REVUE 
erscheint am 
25.April 86 


Wie immer steht unseren Lesern unser Telefon-Service 
zur Verfügung! Jeden Dienstag von 15 bis 19 Uhr. 
Für technische Fragen: 0731/3322 0 und 
für Listings/Programme: 089/1298013_ 


IMMER NEU UND AKTUELL FÜR TI 99/4A 


EXTENDED-BASIC (Mechatronic) 199.90 

mit deutschem Handbuch . 299_ 

EXTENDED-BASIC II PLUS mit deutschem Handbuch #**■ 

= Extended-Basic + Grafik Extended-Basic (Apesoft) in 1 Modul 

B^BesteMung^ines EXTENDED-BASIC II PLUS vergüten wir !hnen DM 70 - 
bei kostenfreier Zusendung eines original amerikanischen Extended-Basic- 
Moduls (elektrisch/mechanisch einwandfreier Zustand!!) 

Sie zahlen nur noch zzy.— 

Umbaus kt k>n (oilt nur für deutschen Lizenznachbau .Mechatronic“). Wir ma¬ 
chen aus Ihrem EXTENDED-BASIC ein EXTENDED-BASIC II PLUS mit deut¬ 
schem Handbuch C 

32-k-RAM-ERWEITERUNG mit Centronic-Interface. Kunststoffgehäuse 190 
x 110. x 60 mm zum seitlichen Anstecken an den Bus. der Bus »»«jpTCh 
rechts durchgeschleitt. mit 5-V-Steckernetzteil zey.ou 

EXTEN^D^BAsTc ITpLUS + 32-k-RAM-ERWEITERUNG ohne 
Centronic-Interface . für nur 499.50 

128-k-RAM-ERWEITERUNG. mit Centronic-Interface und 
NEU! 5-V-Steckernetzteil 595 ' 

W ci | Die Weltneu helft 128 kB - GRAM Preis ca. 750.— 

Lieferbar etwa Janur 1936 

Preise in DM/Stück inkl. MwSt. • Technische Änderungen Vorbehalten 
Versand gegen Nachnahme oder Vorauskasse. 


399,90 — 
95.— 


4-FARBEN-PRINTER-PLOTTER PP-A 4. Centronic-Schnittstelle, 
DIN-A 4-Format, Direktanschluß an 32-k- oder 128-k-RAM-Er- 

weiterung ® 99 ' 

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. TEAC FT 55 B) 399 - 9 ° “ 

EINBAUSATZ für 2 Laufwerke in original Tl-P-Box 95.— 

DISC-STEUERKARTE (CorComp). DS/DD. für max. 

4 Laufwerke n 635 '. 

aici II QUICK-DISC-FLOPPY (im Gehäuse), zum Direktanschluß an die 
NEU Konsole, keine Steuerkarte erforderlich, 128-k-Byte-DS, für 
2 8“-Disketten, mit 5-V-Steckernetztell, identisch mit der bekann¬ 
ten MSX-Version 598 — 

DISKETTEN 2.8". 10er-Pack 95 — 

SEHR TI-MAUS — die schnelle und komfortable Cursorsteuerung mit 
NEU Software auf 5,25“-Diskette, mit 5-V-Steckernetzteil 296.— 

VIERSPANNUNGS-SCHALTNETZTEIL. +5 V. 4 A/±12 V. 0.3 A/ 
aici ■ ~ 24 V. 0.3 A. primär getaktet. 35 Watt. MOS-Fet-Technik. extrem 

klein (80x125x32 mm), offene Bauweise, ideal zum Betrieb von 
Druckern. Monitoren etc. S 45 - 

• Preissenkung — dank grofler Nachfrage! 

albs-Alltronic G. Schmidt • Postfach 1130 • 7136Ötisheim 
Tel. 0 70 41 / 27 47 • Telex 7 263 738 albs 


64