Skip to main content

Full text of "Genie Data 1985 03"

See other formats


3,.JAHRGANG NR. 3/1985 DM 8,50 


IE 


DAS UNABHANGIGE 


Video Genie-, Golour Genie-,TRS 80- Anwender Masazin 


IN DIESER AUSGABE 








DER CP1 HE 


& 5 HH 
HEHE 





At : i 5 p 


=] Wir haben die 
tollsten 
„ Programme... 


[L 
CHESS MACHINE 
u CGEuE> Von unserem Super-Software-Programm sollten auch Sie profitieren! 1! 
je te 


Denn wir haben die fantastischsten Spiele und die tolisten Hilfspro- 
S gramme!!! Wir haben die Programme, die Sie haben sollten! I! 


DB ae it d Ilen Grafik. Sowas heben S h 

as neue achpregramm, mit der ganz tollen Grafik. Sowas haben Sie nach nie ge- 

HELIKOPTER sehen! — Höchstens bei Computer mit Super-Höchauflösender Grafik! - Und der 
Clou. CHESS MACHINE gibt Kommentare zu Ihrem Spiel. Damit Sie endlich einmal 
wissen was Sie richtig, und was Sie falsch machen | Sieben Spielstufen | 
Preis auf Cassette: 59,- DM Preis auf Diskette: 68,-- DM 


[.. Er, SUPER BASIC — DER UNGLAUBLICHE NEUE BASIC-COMPILER 
> = SUPER BASIC verarbeitet Felder (z. B. DIM B$ (9,9,8) geht!) SUPER BASIC ist 
ei Knpatine zum Colour Genie Basic! Übersetzte Programme laufen bis zu 300x 
neller 
SUPER BASIC Preis auf Cassette: 89,-- DM Preis auf Diskette: 98,-- DM — Mit Disk-Befehlen!!! 


ee - SUPER ASSEMBLER — DER ASSEMBLER, DER NEUE MASSSTÄBE SETZTI 
Was Sie mit diesem Assembler alles übersetzen können ist unglaublich 11 | Und die vie- 
len Befehle, die der versteht. Die Disk-Version assembliert auf Wunsch direkt von der 


er: u Diskette (Source-Code bis 170K 1) | 
[8 ® ce Preis auf Cassette: 89,-- DM Preis auf Diskette: 98 ,-- DM 


HELIKOPTER 
Retten Sie die armen hilflosen Menschen! Versuchen Sie den weißen Elefanten zu 
FIREBIRD überfliegen. HELIKOPTER — Das Spiel, von dem die Fachpresse schwärmt! (Siehe 


z. B. Computer Kontakt Nr. 6-7/84) 
Ai) Nur auf Cassette lieferbar | Preis: 59,-- DM 
GORILLA 
Eu Pr .\ Die fantastische Donkey-Kong Version für Ihr Colour Genie. Mit 10 verschiedenen 
.. u 


Bildschirmen! 

Nur auf Cassette lieferbar | Preis: 49,-- DM 

FIREBIRD 

Können Sie die Erde vor den erbarmungslosen Angreifern aus dem All retten??? 

Super-Action ist garantiert! 

Nur auf Cassette lieferbar | Preis: 49,- DM 

PACBOY 

Helfen Sie dem kleinen PACBOY vor den hungrigen Gespenstern zu entkommen! 

Preis auf Cassette: 49,-- DM Preis auf Diskette: 56,-- DM 

VORTEX 

Bewahren Sie die Ringe des Saturn vor den Aliens. Schaffen Sie das??? i 
PACBOY Preis auf Cassette. 49,-- DM Preis auf Diskette: 56,- DM 


| pr-_ ASTRAY 
- Fliegen Sie den schnellsten Überschalljäger der Erde und vernichten Sie die Angreifer 
. Preis auf Cassette: 59,- DM Preis auf Diskette 66,-- DM 
N Lu 2 ad a 


dd 


e cc Computer Studio GmbH 
SUPER ASSEM FM Elisabethstraße 5 


4600 Dortmund 1 
CASE) Tel.: 0231-574064 u. 528184 
Fr Tx 822 631 cccsd 





a 





In eigener Sache 


Wie Sie an dieser Ausgabe der GENIE DATA 
sehen, hat der Umfang beträchtlich abgenom- 
men. Sie werden sic! sicherlich fragen, warum 
das so ist. Das möchte ich Ihnen hier erklären. 
Als wir mit der GENIE DATA begonnen haben, 
hatten wir einen ziemlich großen Zulauf. Im 
Laufe der Zeit jedoch, vor ullem seit nur noch 
IBM kompatible Genies im Handel sind, hat 
dieser Zulauf abgenommen. Seit Anfang dieses 
Jahres nun erreichen uns jede Menge Kündi- 
gungen. Eine Vielzahl der Leser haben ihr 
Genie verkauft und sich andere Corıputer 
angeschafft und ein kleinerer Teil der Leser 
hat das „Computern" ganz aufgegeben. Das 
heißt für uns, durch die Einnahmen aus der 
GENIE DATA werden nicht einmal mehr die 
Portokosten zum Veischicken gedeckt. Wir 


müssen also die GENIE DATA komplett aus ei- 


gener Tasche finanzieren. 

Die Konsequenz für uns ist, daß wir die GENIE 
DATA nur noch solange an die Abonnenten 
verschicken, bis alle Abos ausgelaufen sind, 
danach wird die GENIE DATA eingestellt. Um 
das aber durchhalten zu können, müssen wir 
die Erstellungskosten der GENIE DATA senken, 
und deshalb der verringerte Umfang. 

Jeder Abonnent wird also noch solange belie- 
fert, bis sein Abo ausläuft. Abos werden nicht 
mehr verlängert. 

Ich hoffe sehr, daß auch Sie für diese Maßnah- 
me Verständnis haben, wir können aber aus ei- 
gener Tasche nicht mehr eine so umfangreiche 
GENIE DATA wie bisher finanzieren. 


GENIE DATA Redaktion 





PASCAL-KURS, TEIL 3 


In diesem Teil unseres Pascal-Kurses erfahren 
Sie alles über Entscheidungen in Pascal. 
Seite 4 


DER CP1 ASSEMBLER 


Wie man den mnemonischen Code des CP] mit 
Hilfe dieses Assemblers in die entsprechenden 
Opcodes übersetzt, zeigt dieser Artikel. 

Seite 8 


ADRESSENVERWALTUNG 


Eine Adıressenverwaltung für GENIE I, II und II 
finden Sie hier, komplett zum Abtippen. 
Seite 12 


ASSEMBLER, TEIL 9 


Der letzte Teil unseres Assembler-Kurses. 
Seite 17 


WURM 2 


Ein interessantes Video-Spiel für Colour Genie. 
Seite 19 


ar nn rn 


4 GENIE DATA 





PASCAL-KURS 


Herzlich willkommen beim 3, Teil 
unseres Pascal-Kurses. Der Kurs 
konnte in der letzten GENIE DATA 
leider nicht erscheinen, weil wir 
einige Probleme mit unserem Genie 
16 hatten. Aber jetzt geht es 
weiter! 

Sie erinnern sich 
noch an die Aufgabe, die ich Ihnen 
im letzten Teil des Kurses ge- 
stellt hatte. Sie sollten ein Pro- 
gramm erstellen, das den Benzin- 
verbrauch Ihres Autos in DM er- 
rechnet. Ich hoffe, das Sie damit 
keine ernsten Probleme hatten! 

Eine mögliche Lösung finden Sie 
nachstehend. Es handelt sich um 
das Programm Kostenberechnung. Ich 
möchte dazu keine großartigen Kom- 
mentare mehr geben, da eigentlich 
alles klar sein müßte. 

Nur "soviel: 


hoffentlich 


Die Variablen LITER, VERBRAUCH, 
KILOMETER und ERGEBNIS sind als 
Realzahlen deklariert. Wenn Sie 


nur eine Integer-Pascal-Version 
haben, ändern Sie im Deklarations- 
teil das REAL um in INTEGER. Wenn 
Sie mit einer Real-Version arbei- 
ten, kann es sein, daß Sie bei den 
Ausgabebefehlen angeben müssen, 
wieviele Stellen die Zahl haben 
soll, und wieviele davon Nachkom- 
mastellen sein sollen. Wie das 


geht können Sie in Teil 2 des Pas- 
cal-Kurses nachlesen, 

Ansonsten müßte alles klar sein! 
Beachten Sie aber bitte noch, daß 
hinter REPEAT kein Semikolon ste- 
hen darf. 

Das Programm läuft solange, bis 
Sie ein großes ’N’ eingeben, also 
solange, bis die Abbruchbedingung 
der REPEAT-UNTIL-Schleife erfüllt 
ist. Eventuell können Sie nach dem 
ersten BEGIN noch einen Befehl 
einfügen, der den Bildschirm 
löscht. Ich habe das unterlassen, 
weil ich mit dem Pascal eines Gra- 
fikcomputers arbeite, der das Lö- 
schen mit so vielen Parametern 
ausführt, das der Befehl bestimmt 
Verwirrung gestiftet hätte, 


So, jetzt wollen wir uns einer 
neuen Sache zuwenden. 

Wie Sie schon von Basic her wis- 
sen, ist es in einem Programm oft- 
mals notwendig, daß der Pfad der 
linearen Bearbeitung verlassen 
wird. Ein erstes Beispiel dazu wa- 
ren die Schleifen, die wir im 
letzten Teil behandelt haben. 


Ein Progamm mit einer Schleife 
wird nicht linear von der ersten 
Zeile bis zur letzten Zeile abge- 


sondern bestimmte Pro- 
werden mehrmals durch- 


arbeitet, 
grammteile 


laufen. Eine Methode das in noch 
viel stärkerem Umfang zu errei- 
chen, sind die sogennanten ALTER- 
NATIVEN. Hierbei handelt es sich 


um Anweisungen, die dem Computer 
gestatten, eine Entscheidung im 
Programm zu treffen. Eine solche 
Entscheidung könnte also so ausse- 
hen: 


WENN Bedingung erfüllt, 
DANN tue dieses und jenes. 


Oder in Basic: 


IF X=18 THEN Q=Q0+1. 


Solche Möglichkeiten eine 
scheidung zu treffen gibt 
türlich auch in Pascal, 

IF-THEN-ELSE ist zum Beispiel 
auch in Pascal implementiert. Dazu 
gibt es in Pascal auch noch andere 
Möglichkeiten, Wir wollen uns das 
jetzt anhand einiger Beispiele ge- 
nau ansehen. 


Ent- 
es na- 


Das Programm ENTSCHEIDUNG lie- 
fert Zahlen von A bis 598 und 
stellt fest, welche dieser Zahlen 
durch 5 teilbar sind. Es schreibt 


alle Zahlen auf der Bildschirm und 
hinter durch 5 teilbare Zahlen 
setzt es einen entsprechenden Ver- 
merk, Um zu entscheiden, hinter 
welche Zahl ein Vermerk gesetzt 


wird, benutzt es eine IF-THEN ab- 
frage, Dieses Programm sollte ei- 
sentlich jeder verstehen, der 
schon einmal etwas Basic program- 


n 





miert hat und ich bin sicher, daß 
Sie damit keine Probleme haben. 

Beachten Sie aber bitte, daß 
hinter THEN kein Semikolon steht! 

Im nächsten Beispiel finden Sie 
eine Alternative, die mit IF- 
THEN-ELSE arbeitet, Auch hier 
dürften sich bei Ihnen keine Prob- 
leme einstellen. 

Wie oben: Kein Semikolon hinter 
THEN oder ELSE, denn ein Semikolon 
stellt ja das Ende einer Zeile 
dar! Hier geht es aber noch wei- 
ter! So, und jetzt 
nend: 


wird es span- 


Die CASE-Alternative 
Sehen Sie sich dazu bitte das 
Programm RECHNER an. Hier wird ei- 
ne CASE-Alternative verwendet, 
Auf gut deutsch funktioniert die 
ganze Sache so: 


FALLS der Operator 
folgenden ist, 

DANN führe den 
aus. 


einer VON 


Anweisungsteil 


In unserem Beispiel wird gete- 
stet, ob in ZEICHEN ein +” ist, 
FALLS ja, wird der erste Anwei- 
sungsteil abgearbeitet, 

FALLS in ZEICHEN ein °-° ist, 
wird der zweite Anweisungsteil ab- 
gearbeitet. 

FALLS in ZEICHEN ein ER ist, 
wird der dritte Anweisungsteil ab- 
gearbeitet. 

FALLS in ZEICHEN ein °/° ist, 


Kostenberechnung 


program Kostenberechnung; 


var eingabe 


liter, verbrauch, kilometer, ergebnis 


begin; 


repeat 


writeln ("Benzinkostenberechnung’) 
writeln ("------------ 


writeln; 


writeln ("Beantworten Sie folgende Fragen: ’); 


writeln; 


SR LASELE © 


GENIE DATA 5 


a 


wird der vierte Anweisungsteil ab- 
gearbeitet, 


Ist keiner dieser Fälle erfüllt, 
wird nichts getan. i 


Die ganze Litanei wird mit einem 
END; abgeschlossen, 

Vor diesem abschliessenden END; 
muß nirgendwo ein Semikolon ste- 
hen. 

Beachten Sie bitte, daß alle 
nummerischen Variablen als INTEGE* 
deklariert sind. Wir können alsc 
beim Teilen keine Fliesskommatei- 
lung durchführen, sondern benutzer 
DIV. Was es mit DIV und MOD auf 
sich hat (siehe ENTSCHEIDUNG), er- 
kläre ich Ihnen jetzt. 


DIV liefert das ganzzahlige Er- 
gebnis einer Division. Also ergibt 
5 opIv2 

genau 2 und nicht 2,5! 


MOD liefert uns den Rest, der 
bei einer Teilung übrig bleibt, 
5 MOD 2 
ergibt also 4. Das ist ja der 
Rest! 


So, genug geschwitzt für heute, 
Ich bitte Sie, sich die Wirkungs- 
weise der einzelnen Alternativen 
noch einmal ganz genau vor Auger 
zu führen. Sicherlich fallen Ihner 
auch einige Sachen ein, die Sie 
programmieren wollen, 

Ich wünsche viel Spaß! 


« 
’ 
. 
’ 


’ 


write ("Was kostet ein Liter Benzin? °); 


6 GENIE DATA 


nn 


readin (liter); 

writeln; 

writeln ("Wieviel Liter Benzin verbraucht Ihr’); 
write ("Auto auf 198 Kilometer? °); 

readin (verbrauch); 

writeln; 

writeln ("Wieviele Kilometer sind Sie’); 

write (”gefahren? °); 

readlin (kilometer); 


erbrauch*kilometer/199; 


ergebnis := v 
ı= literx*xergebnis; 


ergebnis 


writeln; 

writeln (”Sie haben fuer’); 

write (ergebnis); 

writeln ("DM Benzin verbraucht. ”); 
writeln; 

writeln (”Moechten Sie noch ein Serechnung?’); 
writeln (Tippen Sie J oder N.”); 

readln (eingabe); 


until eingabe = N’; 


end. 


Entscheidung 1 


program ENTSCHEIDUNG; 


var index tinteger; 
begin; 
for index := 1 to 58 do 
begin; 


write (index,” ”°); 
if index mod 5 = 8 then 
writeln (”<- teilbar durch 5,°); 
writeln; 
end; 


end. 


Entscheidung 2 


program ENTSCHEIDUNG?2; 


vr i sinteger; 


begin; 


for i := 


begin; 


4 to 29 


write (i); 


if i 


else 


end; 


end. 


Rechner 


mod 3 = 


program RECHNER; 


var 


beg 


re 


zahl, 
zeichen, 


in; 


peat 
writeln 
writeln 
writeln 
writeln 
writeln 
writeln 
writeln 
writeln 
writeln 
writeln; 
writeln 
writeln 
writeln 
writeln 
writeln 
writeln; 


write (” 


readlin ( 


write (” 


zah 


URECHNE R’ 


do 


ß then 


writeln (’”<- 


12, 


GENIE DATA 


writeln (°<- teilbar durch 3.°) 


nicht teilbar durch 3.) 


ergebnis 


weiter 


) 
) 


sinteger; 
schar; 


("Dieses Programm verknuepft zwei’); 
. Dazu geben Sie die erste’); 


("Zahlen 


("und die zweite ein. 


Dann verlangt”); 


("das Programm noch die Eingabe eines’); 
(Operators, der bestimmt, wie die’); 
("Zahlen verknuepft werden. ’); 


Tg 
(”+ fuer 
(”- fuer 
(”*k fuer 
(”/ Fuer 
Eingabe 
zahl1); 
Eingabe 


readin (zahl2); 


write (° 


Eingabe 


Zulaessig sind: ’); 


Addition‘); 
Subtraktion’); 

Multiplikation’); 
Division’); 


erste Zahl ” 


); 


zweite Zahl’); 


Operator 


readln (zeichen); 


case zeichen of 


+ 


begin 
ergebnis 
end; 


begin 
ergebnis 
end; 


. 


1; 


zahl1i + zahl2; 


zahli - 


zahl2; 


7 





8 GENIE DATA 


nenn, 


” 


begin 
ergebnis := 
end; 

“/” : begin 
ergebnis 
end; 


end; 


zahli * zahl2; 


zahl1i div zahl2; 


writeln (’Ergebnis = ”,ergebnis); 


writeln; 


write ("Noch eine Berechnung? (J/N)”); 


readln (weiter); 


until weiter = N’; 


end. 





Der CPl-Assembler 


Die Firma Kosmos vertreibt einen 
kleinen Lehr- und Lerncomputer. 
Dieses Gerät besteht praktisch nur 


aus einem Prozessor und einem 
Portbaustein. Dieser kleine Conm- 
puter, er heißt übrigens CP1, wird 


in einer Art Maschinensprache pro- 
grammiert, und eignet sich daher 
besonders gut für Einsteiger in 
die Maschinensprache, Ein anderer 
Vorteil ist, das er einen tollen 
Port hat. Hier lassen sich wunder- 
bar Schaltungen und Interfaces 
austesten, um sie nachher an einem 
Genie zu betreiben. 


Leider ist es aber so, daß man 
alle CPi Programme von Hand assen- 
blieren muß, da es für dieses Ge- 
rät keinen passenden Assembler 
gibt. Oder besser gesagt: Da es 
bisher keinen passenden Assembler 
gab, 

Mir wurde nämlich die Sache zu 
dumm und ich habe einen Assembler 


geschrieben. Dieser Assembler ist 
lauffähig auf Genie I, II und III, 
mit mindestens einem Disketten- 
laufwerk. Betriebssystem ist 
G-0D05, es sollte aber auch mit an- 
deren Systemen, z. B. NEWDOS-8Q, 
keine Probleme geben, 

Das Programm ist auch für 
interessant, die keinen CP1 haben, 
denn man kann sehr gut erkennen, 
wie ein Assembler funktioniert. 


die 


Der CPi1-Assembler übersetzt alle 
Dpcodes des CP1, inklusive derer, 
die nur mit der Speicherweiterung 
zulässig sind. Er hält sich genau 
an den im CP41-Handbuch beschriebe- 
nen Standart, läßt aber zusätzlich 
auch die Verwendung von Labels zu. 

Ich glaube, daß Programm an sich 
ist relativ übersichtlich gehal- 
ten, deshalb hier nur eine kurze 
Beschreibung. 

In Zeilen 1 bis 15 
Initialisierung statt. Bis Zeile 
9939 steht der Kommandomodus. Hier 
werden die Steuerbefehle erkannt 
und bearbeitet. Der Editor (Zeilen 
12828 bis 12969) ist sehr kurz ge- 
halten, man kann hier aber nach 
belieben Verbesserungen einbauen. 

Von Zeilen 13885 bis 13918 steht 
der eigentliche Assembler, Dann 
folgt die Tabelle aller erlaubten 
Opcodes und zum Schluß noch einige 
Hilfsroutinen. 

Der Assembler an sich besteht 
aus drei Teilen: Dem Editor, dem 
Assembler und dem Kommandoteil. 

Im Kommandoteil werden folgende 
Befehle erkannt: 


findet die 


PRINTER ON: Alles folgende wird 
auf einem angeschlossenen Drucker 
protokolliert. 

PRINTER 


OFF: Drucker wird nicht 


mehr bedient. 


LIST: Das bisher eingegebene 
Programm wird aufgelistet. 


EDIT: Jetzt kann 
zeilen eingeben, 


man Programm- 


ASSEM: Setzt Assembler in 


Funktion. 


den 


Der Editor versteht zwei Befeh- 


le: 


AUTO: Erfragt die erste Zeilen- 
zehl und das Inkrement, dann wer- 
den die Zeilen automatisch numnme- 
riert. 

END EDIT: Verlässt 
und geht zurück in 
modus. 


den Editor 
den Kommando- 


Der Assembler Übersetzt ausser 
den Kosmos-Opcodes auch noch DBY. 
Hierbei handelt es sich um einen 
Define-Byte Pseudoop, der es ge- 
stattet Bytes im Programm einzu- 
fügen. Da man sehr oft zum Bei- 
spiel Zähler vorbereiten muß, er- 
schien mir das sehr nützlich. 


Um Fehler zu vermeiden, muß 


1 CLEAR 5000 
10 CLS 

12 DIM LA$(2564) :DIM LA (256) 
15 ZN=101 ZI=10ı ZM=0 

14 DIM AZ(1000) 

15 DIM ATS(1000) 

20 PRINT"CP 1 
25 PRINTıPRINTıPRINT 
30 PRINTıGOSUB 100001 ’ 
40 IF A®="PRINTER ON" 
50 IF A$="PRINTER OFF" 


ASSEMBLER V 1.1" 


GENIE DATA 9 


jeder Opcode mit einem Punkt be- 
ginnen. Vor dem ersten Probelauf 
sehen Sie vielleicht am besten mal 
in das Testprotokoll nach diesem 


Text. 

Folgende Fehlermeldungen werden 
ausgegeben: 

BAD COMMAND: Im Kommandomodus 
wurde eine ungültige Eingabe ge- 
macht. 


NO TEXT IN BUFFER: Es wurde ver- 
sucht z. B. LIST zu benutzen, ohne 
daß ein Text eingegeben wurde. 


BAD DOPCODE: 
benutzt, 


Es wurde ein Opcode 
der nicht gültig ist. 


BAD LABEL: Ein Label ist ungül- 
tig. 
Zur Steuerung des Assemblerlau- 


fes stehen auch noch ORG und DME 
zur Verfügung. ORG gibt an, ab 
welcher Adresse das Maschinenspro- 
gramm stehen soll. DME versetzt 
den Assemblerpointer, so das z. B. 
Platz für eine Tabelle freigehal- 
ten werden kann. 

Ich wünsche frohes Assemblieren! 


SEK8X Texteingabe 
THEN PF=1:1G0T0 30 
THEN PF=0:G0T0 30 


&0 IF As="LIST" THEN GOSUB 11000:60T0 30 


70 IF A®="EDIT" 


THEN GOSUB 12000:60T0 30 


80 IF A®="ASSEM" THEN GOSUB 13000:60T0 30 
980 PRINTıPRINT"BAD COMMAND" ı PRINT 


9997 GOTO 30 
10000 


VERRERLLERLETERTEKRKERKERLKERKERTKEKKERKERKERLKKERKERKERKERERERREER 


Texteingabe 


BERKERLLELKERRLERKERKERKKEREREKEEKURREEREKEKERRKERLERLERLKERRERK 


10010 LINEINPUT "--> "AS 
10020 RETURN 
11000 ” 


VEEREREREEREREREERT EURER ER ERE UNE ER EEREREEBETEELERLELESSEEELEEHEN 


LIST-BEFEHL AUSFUEHREN 


NERTEELTELKEERKERKERKERUKERKELKKKRKERLKERRRREELKERKERTKERKEREEEN 


10 GENIE DATA 





11005 IF ZM=0 THEN PRINT:PRINT"NO TEXT IN BUFFER": PRINT 

11010 LP=1 

11020 FOR I=1 TO ZM 

11030 HI$=AT$ (I) 

11035 IF HI$="" THEN 11070 

11040 Z=AZ(I) 

11050 PRINTUSING"####"5 25 ı PRINT" ";3HISı IF PF=1 THEN LPRINT USING 
"HR" Zu a LPRINT" "ıHI® 

11040 LP=LP+1: IF LP=14 THEN GOSUB 11500 

11070 NEXT IsRETURN 

11500 A$=INKEY$: IF A$="" THEN 11500 

11510 RETURN 

12000 
IRERERKERKKERKKERKKKREKKREKKUR EEK KR EI KK ERKEKEK EEK IU RER IK ER IRRE 
EDIT — PROGRAMMEINGABE 
SERKERKKERKKRKKKKRENKKK UK EKKK KR K IKK UK EEK IEEEKKKIKKER UK IRRE RK 


12020 PRINT USING "#444", ZN} ı GOSUB 10000 

12050 IF A$="AUTD" THEN INPUT ZN,ZI:60TD 12020 

12031 IF A$="END EDIT" THEN RETURN 

12040 AZ(ZN)=ZNI ATS (ZN) =A$ 

12050 ZN=ZN+ZIs IF ZN>ZM THEN ZM=ZN 

12060 GOTO 12020 

13000 
KERERKERKKEKKKERKKK ER EKK ERIK EU KU RK KR E UK RE KK ER EKKR RK TEK LIKE RK 
ASSEMBLIEREN 
VERKRRRERKEKKEKKRKKEKKKKEKK KK EN KEN ERKEKKEKEKKKKKEK RER ER ERKE RR 


13005 FE=0 
13010 AP=1:LZ=1 

13020 ’*%# SPRUNGTABELLE AUFBAUEN 

13030 PRINT:PRINT"BUILDING CROSSREFERENCE" PRINT 

13035 IF PF=1 THEN LPRINT"CROSSREFERENCE" I LPRINT 

13040 FOR I=1 TOD ZM 

13050 IF ATS(I)="" THEN 13300 

13060 HI$=AT$ (I) 

13065 IF INSTR(HI$,"%")=1 THEN 13300 

13070 IF INSTR(HI®, ".ORG")<>O THEN GOSUB 200001 AP=Zı PRINT"LINE" 
Ip" "EHISg" AP="JAPıIF PF=1 THEN LPRINT "LINE"JIg" "IHISg" Apmty 
APıGOTO 133004ELSE GOTO 13300 

13080 IF INSTR(HI$, ".DME")<>0 THEN GOSUB 20000: AP=AP+Z3 PRINT"LIN 
E"g 15" ";HISI" AP="jAPıIF PF=i THEN LPRINT "LINE"jIg" "IHISg" AP 
=";AP:GOTO 13300: ELSE GOTO 133500 

13090 IF INSTR(HI$,".")=0 THEN LA$(LZ)=HISSLACLZI=AP:LZ=LZ+1:1G0T 
013300 

13100 IF LEFT$(HI$,1)=" " OR LEFT$CHI$, 1)="." THEN AP=AP+1 

13300 NEXT I 

13310 PRINTSPRINT"LABELSı "ı IF PF=1 THEN LPRINT:LPRINT"LABELS: " 
13320 FOR I=1 TO LZ 

13330 PRINTLAS(IIE" -->"zLAcD) 

13340 IF PF=ei THEN LPRINT LA$(ID)5" -->"5LACD) 

13350 NEXT 1 

13360 PRINTEIF PF=1 THEN LPRINT 

13400 ’z2t2% ASSEMBLIERUNG 

13410 AP=1 

13420 FOR I=1 TO zM 

13430 RESTORE: BZ=1 

13435 READ A$,B$ 

13440 IF AT$(I)="" THEN 13800 

13450 HI$=ATS (I) 


GENIE DATA 


13452 IF INSTR(HI$,".ORG")<>O THEN GOSUB 20000: AP=Z: PRINT" : 
";HIS: IF PF=1 THEN LPRINT" ";HI$:GOTO138 

OOsELSE GOTO 13800 

15454 IF INSTR(HI$,".DME")<>0 THEN GOSUB 20000: AP=AP+Z: PRINT" 

";HIS: IF PF=1 THEN LPRINT" ";HI$:GOTO1 

SBOOL ELSE GOTO 13800 

13460 IF INSTR(HI®,".")=0 THEN 13800 

13470 IF INSTR(HI$,"*")=1 THEN 13800 

13480 ’xxa%& BEFEHLE OHNE OPERAND 

15490 IF BZ<=3 THEN IF INSTR(HI$,A$)<>0O THEN PRINTUSING"###"3 AP; 

sPRINT" ";B$;".O000 ";RIGHT$(CHI$,4) :AP=AP+1: IF PF=1 THEN LPRI 

NTUSING"###"; AP-1; ı LPRINT" "3B$;".000 ";RIGHT$CHIS,4) ıGOTO 1 

3800 :ELSE GOTO 13800 

13500 BZ=BZ+1:IF BZ<=3 THEN GOTO 13435 

15510 "xxx BEFEHLE MIT OPERAND 

15515 READ A$,B$ 

13520 IF LEN(HI$)<=16 THEN IF INSTR(HI$,A$)<>0O THEN GOSUB 20000; 

GOSUB 40000: AP=AP+1:GOTO 13800 

13550 ’xxxx% BEFEHLE MIT OPERAND UND LABEL 

15540 IF LEN(HI$) >16 THEN IF INSTR(HI$,A$)<>O THEN GOSUB 41000:6 

DSUB 40000: AP=AP+1:GOTO13800 

15700 IF A$<>"XXX" THEN GOTO 13515 ELSE PRINT "BAD OPCODE";HI$:F 

E=FE+1:1IF PF=1 THEN LPRINT "BAD OPCODE";HI$ 

13800 NEXT I 


13900 PRINT:PRINT"END OF ASSEMBLY - ";FE3" ERROR (S)" 

15910 IF PF=1 THEN LPRINT:LPRINT"END OF ASSEMBLY - ";FE:3" ERRO 
R(S)" 

20000 


VERKEKKKKKEK IKK KK EKEKKKEKKKKKUEKU KK K 
ARGUMENT RECHTS IM STRING AUSWERTEN 
Rare K 


20010 ZZ$=RIGHTS (HI$,3) 
20030 Z=VAL(ZZ$) 

20060 RETURN 

30000 DATA "HLT", "OL" 
30001 DATA "ANZ", "02" 
30002 DATA "NEG", "14" Computer-Service re runs f 
30003 DATA "VZG", "O3" 
30004 DATA "AKDO", "04" 
30005 DATA "LDA", "05" 
30006 DATA "ABS", "06" 
30007 DATA "ADD","07" 
30008 DATA "SUB", "08" 
30009 DATA "SPU", "09" 
30010 DATA "VGEL","10" 


Aus unserem Angebot: 


‘ vo " Genie 16 C - 256 KRAM, IBM kompatibel 
30011 DATA "SPB „il Genie ills, der superschneile Prorı 
30012 DATA "VGR", "12" Tandy 4 p, der tragbare PC-Profi 
30013 DATA "VKL", "13" RAM Karte 512K für IBM u. komp 

ie PN en Monochromkarte für IBM u. Kom 795,- 
30014 DATA "UND", "15 Disketten ab 3,20 x Papier, 2000 Blatt. 44.- 
30015 DATA "PIE", "16" Monitore ab 245,- Disketten-Boxen ab 9,- 
z0018,DArn EIN sNAT Makler 3% immakllen x Porsonai Passereh 2 
50017 DATA "PZA","18" Abschreibung * »% Personalverwaltung * %* komplette 


30018 DATA "LIA", "19" Geschäftssysteme * %* eigene Programmentwicklung & %* 
350019 DATA "AIS","20" 
30020 DATA "SIU","21" 
30050 DATA "P3E", "22" 
30040 DATA "P4A", "23" 
30050 DATA "PS5A", "24" 
30055 DATA "DBY","Oo" 





11 


12 GENIE DATA 





30060 DATA "XXX", "IP" 

40000 FRINT USING"###"3 APj ı PRINT" 
;RIGHT®# (HI®,8) i 
40010 IF PF=1 THENLPRINT USING" ###"; AP} ı LPRINT" 
SCHIS, 35" "RIGHTS (HI$,8) 

40020 RETURN 

41000 LX$=RIGHT$ (HI$, 6) 

41010 FOR U=1 TO LZ 

41020 IF LA®(U)=LX# THEN 41500 

41030 NEXT U 

41040 PRINT "BAD LABEL";HI$:FE=FE+1: IF PF=1 THEN LPRINT "BAD LAB 
EL";HI$ 

41500 K$=STR$(LA(U)) 

41505 K$=RIGHT$ (K$,LEN(K$)-1) 

41510 IF LEN(K$)<S THEN K$="0"+K$:G0T041510 

41520 HI$=LEFT$ (HI$,LEN(HI$) -6) 

41530 HI$=HI$+K$: RETURN 


"ıB$5".";RIGHTSCHIS, 3), " on 


"1B6,". "RIGHT 


Probelauf 


10 „ORG 010 

zo START 

ie) „LDA 015 

40 „ANZ 

So „HLT 
CROSSREFERENCE 
LINE 10 „ORG 010 AF= 10 
LABELS: 
START --: 10 

PEREEER Fr OÖ 

„URG 010 

10 05.015 ‚„LDA 015 

11 02.000 „ANZ 

12 01.000 „HLT 
END OF ASSEMELY - OÖ  ERROR(S) 





AURESSENVERWAL TUNG 


Bei dem hier vorliegenden Programm handelt 
es sich um eine Adressverwaltung für Genie 
I, I, II und TRS-80. Es muß mindestens ein 
Diskettenlaufwerk vorhanden sein, auf dem 
die Daten gespeichert werden können. Wenn 
die verschiedenen Druckoptionen genutzt 
werden sollen, muß natürlich auch ein 
Drucker angeschlossen sein. 

Die verwalteten Datensätze bestehen aus: 


Anrede, Vorname, Nachname, Bermerkung ı, 
Straße, Landeskenner, PLZ/Ort, Bemerkung 
2, Code-Buchstabe und Kennzahl. Das sollte 
eigentlich für fast alle Fälle ausreichend 
sein. Das Programm eröffnet zwei Dateien. 
Die Adressendatei, auf Laufwerk d, und die 
Indexdatei, im Normalfall auf Laufwerk ı. 
Wenn Sie aber nur ein Laufwerk haben, 
ändern Sie Zeile so in: so OPEN "R",2,"IN- 


GENIE DATA 13 
LT m | SE DATA 18 


DEX/DAT:d". 
Die Daten werden in zwei Random-Acess- 
Dateien gespeichert. 
Das Programm bietet 
Möglichkeiten: 
1...Adressen eingeben 
2...Adressen ändern 
3...Adressen löschen 
4...Liste drucken 
5...Aufkleber drucken 
6...Adressen suchen 


Ihnen folgende 


Im Prinzip ist das Programm so aufgebaut, 
daß sich durch die Menuetechnik alles 
weitgehend selbst erklärt. Ich möchte nur 


10 CLS 

20 CLEAR 5000 

30 DIM AD$(10):DIM SPs$(10) 
40 OPEN "R",1,"adress/dat:0" 
50 OPEN "R",2, "index/dats 1" 
60 LIS=STRING$ (64,140) 
70 CLS 

80 PRINTLISJ ı PRINT" 
WAL TUN G":PRINTLIS 
90 PRINT"Bitte wählen Sie auss" 
100 PRINTSTRING$ (21,140) 


GENI 


E DATA 


noch ein paar Worte zur Druckmaske verlie- 
ren. 

Beim Druck einer Liste zum Beispiel werden 
alle Adressen mit einer Druckmaske ver- 
glichen. Durch geeignete Angaben an die 
Druckmaske haben Sie die Möglichkeit, die 
Adressen sehr umfangreich zu selektieren. 
Sie können eingeben von welcher Satznummer 
bis zu welcher Satznummer gedruckt werden 
soll, Sie können die Landeskenner bestimmen, 
die gedruckt werden sollen, Sie können die 
Code-Buchstaben bestimmen, die gedruckt 
werden sollen. Bei den Kennzahlen können 
Sie festlegen, von welcher Kennzahl bis zu 
welcher Kennzahl gedruckt werden soll. 


ADRESSVER 


110 PRINT,"1 ... Adresse eingeben" 


120 PRINT,"2 .., 
130 PRINT,"Z ... 
140 PRINT,"4 ... 
150 PRINT,"S ... 
160 PRINT,"& ... 
170 PRINT, "7 ... 


Liste drucken" 


Programmende" 


Adresse ändern" 
Adresse löschen" 


Aufkleber drucken" 
Adresse suchen" 


180 PRINT:PRINTLIS; K PRINT"Tippen Sie die Zahl des gewünschten."; 


190 A$S=INKEY$:ı IF As="" THEN 190 


200 ON VAL(A$) GOSUB 220,530, 670,770, 940, 1120, 1250 


210 GOTO 70 
220 CLS 


230 PRINT"Adresse eingeben": PRINTLI$ 


240 PRINTS192,""; 


250 
260 
270 
280 


PRINTCHRS (143) 5 " 
PRINTCHRS (143) 5 " 
PRINTCHRS$ (143) 5 " 
PRINTCHRS (143) 5 " 


Anrede. znua0n.2" 
Vorname. ..eo..3" 
Nachname. „.....3" 
Bemerkung 1...3" 


290 PRINTCHR$(143)5" Straße... .....:" 
3500 PRINTCHR$ (143) 5" Landeskenner. .;" 
S10 PRINTCHR$ (143) 5" PLZ/Ort. ......3" 
320 PRINTCHRS$ (143) 35 " Bemerkung 2...3" 
550 PRINTCHR$(143)5" Code-Buchstabe: " 
340 PRINTCHR®(143)5" Kennzahl......ı" 


350 
360 


PRINT:PRINTLISJ 
PRINTS192,""; 


370 LINEINPUT" 
380 LINEINPUT" 
590 LINEINPUT" 
400 LINEINPUT" 
410 LINEINPUT" 


420 LINEINPUT" Landeskenner..:; 


Anrede... .2u..2..3 "3ADS(I) 
Vorname. ......3  "3AD$(2) 
Nachname. .....:  "z3AD$(3) 
Bemerkung 1...1 "jADS$(4) 
Straße........2 "3AD$(5) 


"sAD$ (6) 


14 GENIE DATA 


430 LINEINPUT" PLZ/Ort.......2 "3AD$(7) 

440 LINEINPUT" Bemerkung 2...: ";AD$(8) 

450 LINEINPUT" Code-Buchstabe: ";AD$(9) 

480 LINEINPUT" Kennzahl......: "j3AD$(10) 
470 PRINTS960,"S --> Speichern ";CHR$(143);5" N --> Neu eingebe 
n "3CHR$(143);5" E --> Spei. u. Ende"; 

480 GOSUB 1270 

490 IF A$="n" THEN 220 

500 IF As="s'" THEN GOSUB 1290ı1G0T0 220 

510 IF At="e" THEN GOSUB 1290: RETURN 

520 GOTD 480 

530 CLS:PRINT"Adresse ändern":PRINTLI® 

540 INPUT"Satznummer ";SN 

550 GDOSUB 1470:GET 1,5N 

560 GOSUB 1590 

570 FOR U=1 TO iO 

580 PRINTU; "--> ";AD$S (U) 

590 NEXT U 

600 INPUT "Welche Zeile ändern (O = Ende) ";AA 
#10 IF AA=0 THEN 640 

620 LINE INPUT"Neuer Text "jADS(AA) 

&30 GOTO 570 

640 GOSUB 14701 FOR U=1 TO I10ıLSET SP# (U) =ADS (U) +CHRS (IF) ı NEXT U 
650 PUT 1,SN: RETURN 

660 END 

&70 ELS:PRINT'"Adresse löschen" :ıPRINTLIS$ 

680 INPUT "Satznummer";SN 

670 GOSUB 1470:GET 1,5N:GOSUB 1590: G0SUB 1650 
700 PRINT"Diese Adresse löschen?" .-...:5 
710 GOSUB 1270 

720 IF A$="j" THEN 740 

730 RETURN 

740 FOR U=i TO 10 

750 AD$(U)="":LSET SP$(U)=AD$ (U) :NEXT U 

760 GDOSUB 1470:PUT 1,SN: RETURN 

770 CLS:PRINT"Liste drucken" :PRINTLI$ 

780 GOSUB 1810 

790 IF VS5=0 THEN ST=1 ELSE ST=VS 

800 IF BS=0 THEN EN=LOF (1) ELSE EN=BS 

810 FOR I=ST TO EN 

820 GOSUB 1470 

830 GET 1,1 

840 GOSUB 1590 

850 GOSUB 1920 

8640 IF FF=0 THEN 920 

870 

880 LPRINT AD$(1);3" "z3AD$(2)5" ";ADS(I);5" ";ADS$(A) 
890 LPRINT AD$(5);", "z3ADS(B) 5; "-";ADS(T) 

700 LPRINT AD#(4)53", "z3ADS(B)5", "3ADS(9),5", "SADS(IO) 
910 LPRINT 

920 NEXTI:RETURN 

930 END 

940 CLS:PRINT"Aufkleber drucken":PRINTLI$ 

950 GDSUB 1810 

960 IF VS5=0 THEN ST=1 ELSE ST=VS 

970 IF BS=0 THEN EN=LOF (1) ELSE EN=BS 

980 FOR 1=ST TO EN 

990 GOSUB 1470 

1000 GET 1,1 

1010 GOSUB 1590 


GENIE DATA 


1020 GOSUB 1920 

10530 IF FF=0 THEN 1110 

1040 LPRINT 

1050 LPRINT ADs(1) 

1060 LPRINT AD$(2);5" "3AD$(3) 

1070 LPRINT AD$(4) 

1080 LPRINT AD® (5) 

1090 LPRINT AD$(&) ,"-";AD®S(7) 

1100 LPRINT:LPRINTILPRINT 

1110 NEXT IısRETURN 

1120 CLS:PRINT"Adresse suchen"ıPRINTLI®S 
1130 LINE INPUT"Bitte Namen eingeben: ";8Us 
1140 S8T=1 

1150 GOSUB 1500 

1160 GOSUB 1470 

1170 GET 1,9N: SN=8N+1 


1180 GOSUB 15901G0SUB 1650: PRINT"W --> Weitersuchen "}jCHR$(188) 


ı" D --> Drucken "jCHRS(188)5" E --> Ende" 
1190 PRINTSSO, "Satznummer ı ";SN-1j 

1200 GOSUB 1270 

1210 IF As="w" THEN GOTD 1160 

1220 IF At="d" THEN GOSUB 1720:160T01200 

12530 IF Aß="e" THEN RETURN 

1240 GOTO 1270 

1250 CLOSE:CLOSEıEND 

1260 END 

1270 A$=INKEY$: IFA$="" THEN 1270 

1280 RETURN 

1290 Si=LOF(1):51=S1+1 

1300 S2=ASC (LEFT$(AD$(3),1)):52= (52-64) 2100 
1310 GOSUB 1490 

1320 GET 2,52 

1330 IF LEN(IN$S)=0O THEN 8N=0:6G0T01350 

1340 SN=VAL (INS) 

1350 SN=8N+1 

153640 8S28=S5TR#$ (5N) 

1370 GOSUB 1490 

1380 LSET INS=S28:LSET NN6=826: PUT 2,82 

1390 GOSUB 1490 

1400 LSET IN$=STR$ (81) 

1410 LSET NN$=AD$ (3) 

1420 PUT 2,82+S5N 

1430 GOSUB 1470 

1440 FOR U=1 TO 10 

1450 LSET SP$ (U) =ADS (U) +CHRS (13) ı NEXT U 

1460 PUT 1,S1:RETURN 

1470 FIELD 1,20 AS SP#(1),35 AS SP#(2),35 AB SP#(3),35 AS SP#(4) 
‚35 AS SPS(5),5 AS SP#6(6),35 AS SP#(7),55 AB 8P8(8),5 AS SPS(9), 
10 AS SP# (10) 

1480 RETURN 

1490 FIELD 2,20 AS IN$,50 AS NNSı RETURN 

1500 82=ASC (LEFTS (6U#, 1) ) 1 82= (82-64) 8300 

1510 GOSUB 1490 

1520 GET 2,82 

1530 BI=VAL(INS)ı IF BI=O THEN PRINT"Nicht gefunden ! "RETURN 
1540 FOR U=ST+82 TD BI+82 

1550 GOSUB 1490 

1560 GET 2,U 

1570 IF LEFTS(NNS,LEN(SU$) )=SU$ THEN SN=VAL (IN$) ı RETURN 
1580 NEXT UsPRINT"Nicht Gefunden! ":ıRETURN 


15 





16 GENIE DATA 
mm en 


1590 FOR U=1 TO 10 

1600 AD$ (U) =SPs (U) 

1610 IF AD$(U)="" THEN 1640 

1620 HH=INSTR (AD$ (U) ,CHRS(13))s IF HH=O THEN 1640 

1650 ADS (U)=LEFT$(AD$ (U) ,HH-1) 

1&40 NEXT U:RETURN 

1650 PRINT$64, CHR$ (31); LI$j 

15860 PRINTAD$ (1) 

1670 PRINTAD$ (2) :PRINTAD$ (3) ı PRINTADS (4) ı PRINTADS (5) ı PRINTADS (6) 


sADS(7) 

1680 PRINT"Bemerkung 2...: "3jAD$s(8) 
1690 PRINT"Code-Buchstabe: "sADS$S(9) 
1700 PRINT"Kennzahl......: "3ADS$(10) 


1710 PRINTLI$: RETURN 

1720 LPRINT AD$(1) 

1730 W=LEN (AD$ (2) ) 

1740 IF MIDS(AD$ (2) ,W-1,1)=" " THEN W=W-11G0OTO 1740 
1750 AD$(Z2)=LEFTS(ADS (2), W) 

1760 LPRINT AD®s (2) ADS (3) 

1770 LPRINT AD$(4) sLPRINT AD®$ (5) 

1780 LPRINT LEFT$(AD$(6),3);3AD$(7) 

1790  LPRINTILPRINTILPRINTILPRINT 

1800 RETURN 

1810 PRINT"Bitte geben Sie die Druckmaske ein" 
1820 V8=0: BS=0:LK6="": CBs="" VK=Oı BK=O 

1850 INPUT "Drucken von Satznummer ";3VS 


1840 INPUT " bis Satznummer ";BS 

1850 PRINT 

1850 INPUT "Nur Landeskenner "ILK$ 

1870 INPUT "Nur Code-Buchstaben "s:CcB$ 

1880 PRINT 

1890 INPUT "Kennzahlen von "SNK 

1900 INPUT "Kennzahlen bis "=BK 

1910 RETURN 

1920 IF LK$="" THEN 1730:ELSE IF LEFT$(AD$ (6) ,LEN(LKS))<>LK$ THE 


N FF=0: RETURN 

1950 IF VK$="" THEN 1940:ELSE IF LEFT®S(ADS$(9) ,LEN(VKS))<>VKS$ THE 
N FF=0: RETURN 

1940 IF VK=0 THEN 1950:ELSE IF VAL (AD$(10))<VK THEN FF=0: RETURN 
1950 IF BK=0 THEN 1960:ELSE IF VA(ADS(10))>BK THEN FF=O: RETURN 
1960 FF=1: RETURN 

1770 FOR T=1 TO 10 

1980 IF RIGHT$(AD$(T),1)=" "THEN AD$(T)=LEFTS(ADS(T),LEN(ADS(T)) 
-1)ıGOTO 1980 

1970 NEXT T 

2000 RETURN 





Wichtige Mitteilung für alle 
Colour Genie Freunde! 
Ab sofort werden alle Programme der Firmen TCS (Trommeschläger), Röckrath, Aachen, und 
der Firma Hübben exclusiv von der Firma cc Computer Studio GmbH, Elisabethstraße 5, 4600 
Dortmund vertrieben. 
Fordern Sie das neueste Informationsmaterial mit stäık reduzierten Preisen an!!! 


3» Ihr zuverlässiger Partner für Computersysteme Elisabethstraße 5 
cc 


; 4600 Dortmund 1 
Computer Studio GmbH : 
. Pe Tel.: 02231-528184 


Jan P. Schneider, 


®TRS 80 ist eingetragenes Warenzeichen der Tandy Corp. 


GENIE DATA 13 





Assembler, Teil 


So, jetzt sind wir beim letzten 
Teil unseres Assembler-Kurses an- 
gelangt. Es folgen heute noch die 
Rotations- und Schiebebefehle, die 
Befehle zur Einzelbitverarbeitung 
und die Ein-/Ausgabebefehle. 


Fangen wir mit den Rotat ionen an: 


RLCA = Akku links rotieren, Bit 
7 im Bit 8 und in Carry. 

RLA = Der Inhalt des Akkus wird 
mit dem Inhalt des Carry nach 
links rotiert. 

RRCA = Akku rechts rotieren, Bit 
fd in Bit 7 und in Carry. 

RRA = Der Inhalt des Akkus wird 
mit dem Inhalt des Carry nach 


rechts rotiert. 

RLCr = Wie RLCA, aber mit einem 
beliebigen Register r. 

RLC (HL)= Wie RLCA, aber mit (HL). 
RLC (IN)= Wie RLCA, aber mit (IN). 
RLr = Wie RLA, aber mit einem 
beliebigen Register r. 

RL (HL)= Wie RLA, aber mit (HL). 
RL (IN)= Wie RLA, aber mit (IN). 
RRCr = Nie RRCA, aber mit einem 
beliebigen Register r. 

RRC (HL)= Wie RRCA, aber mit (HL). 
RRC {IN)= Wie RRCA, aber mit (IN). 
RRr = Wie RRA, aber mit einem 
beliebigen Register r. 

RR [HL)= Wie RRA, aber mit (HL). 
RR (IN)= Wie RRA, aber mit (IN). 


Alle oben beschriebenen Befehle 
lösen eine Rotation aus. D. h.: Es 
geht kein Bit verloren. In der 
folgenden Befehlsgruppe, 
Bits verschoben, wobei 
Bit verlorengeht. 


werden 
immer ein 


SLAr = Register links schieben, 
dabei in Bit Q eine Null und Bit 7 
in’s Carry-Flag. 


SLA (HL)= Wie SLA r, aber mit 


CHL). 
SLA (IN)= Wie SLA r, aber mit 
(IN). 
SRAr = Register arithmetisch 


schieben. Bit 8 in’s 
Bit 7 nach Bit 6 aber 


nach rechts 
Carry-Flag, 


Bit 7 bleibt erhalten. 


SRA (HL)= Wie SRA r, aber mit 


(HL). 
SRA (IN) = Wie SRA r, aber mit 
(IN). 
SRLr = Register nach rechts 


schieben, in Bit 7 eine Null, Bit 
8 in’s Carry-Flag. 


SRL (HL) = Wie SRL r, aber hit 
(HL). 
SRL (IN) = Wie SRL r, aber mit 
(IN). 


Und jetzt kommen die 
Einzelbitverarbeitung,. 


Befehle zur 


BIT b,r = Bit b wird 
und das Komplement wird 
flag eingetragen. 

BIT b,(HL)= Wie BIT b,r aber mit 
ÜHL). 

BIT b,(INn)= Wie BIT b,r aber mit 
(IN). 

SET b,r = Bitb im 
wird gesetzt. 

SET b,{HL)= Bit b in (HL) wird ge- 
setzt. 

SET b,{IN)= Bit b in (IN) wird ge- 
setzt. 

RES n,r = Bit b im 
wird auf 8 gesetzt. 
RES b,{HL)= Bit b in (HL) wird auf 
dB gesetzt. 

RES b,(IN)= Bit b in (IN) wird auf 
Ü gesetzt. 


getestet 
im Zero- 


Register r 


Register r 


Zum Schluß jetzt 
Ausgabebefehle. 


noch die Ein-/ 


IN A,{n) = n bezeichnet die Num- 
mer eines Ports. Von diesem Port 
wird ein Byte in den Akku geholt. 
n ist hierbei die untere Hälfte 
des Adreßbuses und im Akku steht 
die obere Hälfte. 

IN r,(C) = Im C Register 
die Nummer des Ports. In B steht 
die obere Hälfte des Adreßbuses. 
Der durch C adressierte Port gibt 
ein Byte an ein Register r, 

InI = Durch C wird ein Port 
adressiert. Dieser Port wird ab- 
gefragt und der Wert in (HL) abge- 


steht 


18 GENIE DATA 





legt. Jetzt wird HL inkrementiert zur Ausgabe. 


und B dekrementiert. OUT {C),r = Wie IN r,(C), jedoch 
INIR = Nie INI, Jedoch wird zur Ausgabe. 

die Operation solange ausgeführt, OUTI = Wie INI, Jedoch zur 
bis im B-Register eine Null steht. Ausgabe. 

IND = Wie INI, jedoch wird D0TIR = Wie INIR, Jedoch zur 
HL dekrementiert. Ausgabe. 

INDR = Entspricht INIR, je- 0UTD = Wie IND, jedoch zur 
doch wird HL dekrementiert. Ausgabe. 

OUT (n),A = Wie IN A,{n), jedoch PTDR = Wie INDR, jedoch zur 


Ausgabe. 








a 
Das Warten hat sich gelohnt. Das GENIE 16 ist ein Profi-Computer zum Einsteiger-Preis. 
Mit einem riesigen Software-Angebot. Denn das GENIE 16 ist PC-kompatibel. 
© 16-bit-Mikroprozessor 8086 © AT/DOS Betriebssystem 














© 128K RAM (bis 768K RAM Speicher (erweitertes MS/DOS) 
ausbaubar) nel © Eingebauter Lautsprecher 

© 64K ROM ge! ® Ergonometrisches Design 

© 16-Farben u © PC-kompatibel 

© 2x 360K Laufwerke ® Deutsche Tastatur 





Aleinvertrieb über den TCSZ 5461 Windhagen 
5.900.- DM (inklusive Mehrwertsteuer) Fachhandel durch Tel. 02645-3222 


s cOMPUTER GMBH 








Die kostenlose KUNDENDIENST-INFORMATION 


GENIE NACHRICHTEN 


N 
ns mal 
nt „ICHE 


COMPUTER GMBH 


BESTELL-COUPON 
: Bitte, senden Sie mir kostenlos die neueste Ausgabe 


oder anfordern bei | dee GENIE-NACHRICHTEN 

HEEL-VERLAG se Mae ee ei 
Postfach 320220 | Straße: 
5300 BONN 3 Y es 


bei Ihrem Händler zu haben! 


GENIE DATA 19 


STEFAN AUST 











ei 
n$ Inmia 


OEERRRNENT" 








ai a, 
EEE EEE 


Eın in Basic geschriebenes Spiel, bei dem man 
einen Wurm so durch ein Labyrinth steuern 
muß, daß er nur bestimmte Gegenstände frißt. 
Am Ende des Spieles wird dann die Leistung 
bewertet. Ansonsten erklärt sich das Spiel 
selbst. 


1000 REM EKEKK OWURM II XXXKX%X 


1001 : 

1100 : GOSUR4700 :REM MASCH.SFR. 
1101 : 

1200 : GOSUBZOOO :REM TITEL 

1300 2: GOSUBFOÖOO :REM ERELAERUNG 
1400 2 GOSUB4ÖO0OO :REM DEFINITION 
1500 :60SURSONG :REM BILDSCHIRM 
1600 :GOSURAOO0 ;REM SFIEL 

19700 2: GOSUR9IGCOO :REM SCHLUSS 
1701 : 

1750 :END 

19790 : 

2000 REM===== TITEL s==erı2==Smeeeoeaeeee 
2001 : 


20106 :CLS:CDOLOURE 
2015 :GOSURZB00 


2020 :PRINT:FRINT" "STRING$ (36,202) 
2030 :PRINT:PRINT" E EE E EEEEE EEE EEE ÄAKeee" 
2040 :PRINT" E EE Be EEE=eE € e" 
2050 :PRINT" € ee EE E E EEE e" 
2060 :FRINT" E dn E E EeE er - BEE«" 
2070 :FRINT" E du EEE E EEErEe. E E Su 
2080 :PRINT" E tn & E Be E Eu" 
2090 :PRINT" EEEErE EreeeEe E .- € A = E" 
2100 zPRINT" EEE» EEE . E E EEEEEe 
2110 :PRINT:FRINT" "STRING$ (36,202) 
2120 : 
2130 :COLOURI16:FRINT:FRINT" EIN REAKTIONSSFIEL HOECHSTER QUALITAET" 
2140 : 
2150 :COLOURI 
2160 :FRINTS686,"5 © Su 
2170 :PRINT" A 5 ud Be 
2180 :PRINT" 2 E - . A 
2190 :FRINT" = “E Aa" 
2200 :PRINT" it. Aa 
2210 :FRINT" es Pur 
2220 :PRINT" S aa 
2220 :COLOURS:FRINTTAR(18)"S Er; 


240 :COLOUR1:PRINTS829, "written by" 
2250 : PRINTS869, "Stefan Aust" 


20 GENIE DATA 





2260 : 

2300 :FORI=OTOS 

2310 :FORJ=0T023 

2320 :P0=18090+1840+J:P=PEEK (PO) 
2330 : IFP=202THENPOKEPO-21504,6& 
2340 : IFP=230THENPOKEPO-21504,8 
2350 zNEXT 

2360 :NEXT 


ns eve en un re 
2380 :A$=INKEY$ ZerErERREEEER et ++ 


SEHEHEREHTEHERERLERTEFEIREETRERRR 


2400 :POKE-4096,RND (16) * Wir führen alle Genie und * 
2410 sCALL4BOO * Tandy Produkte sowie Zubehör # 
2420 :FORI=1T040 * nashafter Hersteller. + 
2450 :A$=INKEYS$: IFA$< >" " THENZ2600 # Wir haben für Ihre Fragen # 
2460 ıNEXT * stets ein offenes Ohr. Testent 
2470 :GOTO2400 » Sieunseren SERVICE + 
2600 :FODRI=1T024 80433 testen Sie uns #Ettttt 
2610 :CALL480D + Wir haben eine riesen Auswahl * 
2620 :PLAY(2,3,5,15) * an Programmen für alle Tandy, * 
2630 :FORJ=1T040:NEXT * Genie und Colour Genie Geräte + 
2640 :PLAY(2,3,5,0) + Eigene Programaentwicklung und# 
2650 :NEXT * Lizenzen sind unsere Stärke, ?t 
2700 :RETURN * BeispielColourGeni et 
2750 : + 80 2. Karte, AD-Wandler, Logik# 
2800 ıREM --- TONROUTINE--- * Analysator ‚Sprektrum Analyzer * 
2810 :SOUND&6, 30: SOUND7,7 * Eproner ‚Oszilloskop, BMG .... # 


BERTRRRSEHRRREREHRERERFRR RER 
+ Tel 0441/56218 bis 21.00 Uhr # 
BRRHRRERERRRRRRRRTHFRRRTEHE HERE 
+ Katalog DM 2.-tCol.Gen. DM 1,-* 


2815 :SODUNDS, 16: SOUNDY, 16: SOUND1O, 16 
2820 :SOUND12, 255:SOUND13,0 

2830 :RETURN 

2900 REM==== ’TITEL’ ENDE ====-===:=:=2==== 


2999 ; * CONPUTER SERVICE GRUNDMANN * 
3000 REM===== ERKLAERUNG ============== #* Beverbäkstr.46/2906 Didenburg * 
3001 : EEREEREETEREI TER R ER IREEH 


3010 :CLS:COLOURS 

3020 3PRINTSTRING$ (40,209); 

3030 :PRINTTAB (15) "WURM 2" 

3040 :PRINTSTRING$ (40, 210) 

3050 :COLOUR11 

3060 :PRINT"ERKLAERUNGEN?" 

3070 :PRINTS174,"(J/N)" 

3080 :FORI=1TOJ3O 

3090 :A$S=INKEY$: IFAS< >" "THENIFAS="J" THENSZOOELSESFO0O 
3100 NEXT 

3110 :PRINTS174," “ 

3120 :FORI=-1T030 

3130 :A$=INKEYS$: IFA$< >" " THENIFA$="J" THEN3ZOOELSE39IO0O 
3140 :NEXT 

3150 :GOTOS070 

3160 : 

3200 :PRINT:PRINT"Steuern Sie den Wurm (siehe Tietelbild)" 
3210 :PRINT:PRINT"so, dass der Kopf des Wurmes (vorne)" 
3220 :PRINT:PRINT"weder Rand, Giftpilze (’";:COLOURS: PRINT "E"3; :3CDOLOUR11 
:PRINT"”’) noch eigene" 

3230 :PRINT:PRINT"Koerperteile beruehrt und frisst!" 
3240 :PRINT:PRINT"Energiepillen duerfen bzw. muessen" 
3250 :PRINT:PRINT"gefressen werden, denn erst wenn alle" 
3260 :PRINT:PRINT"EP’s gefressen worden sind, hat man" 
3270 :PRINT: PRINT"gewonnen." 

3280 :PRINT:PRINT:PRINT"Bitte eine Taste druecken!" 


GENIE DATA 21 





3300 zA$=INKEY$: TFAS=""THENS300 
3400 ;FORI=1T024 

3410 PRINT 2 

3420 NEXT 

3900 :RETURN 


39997 : 

4000 REM===== INITIALISIERUNG 
4001 : \ Are m 
4010 :’PA:= FOSITION WURM-KOFPF 
4020 :’PE:= FOSITION WURM-ENDE 
4030 :”’ZR:= ZEICHEN HINDERNISS 
4040 :’Z2X:= ZEICHEN EXPLOSION 
4050 :°’ZEs= ZEICHEN ENERGIEP. 
4060 :’ZW:= ZEICHEN WURM 

4070 :’ZL:= LEERZEICHEN 

4080 :’F := FARBSPEICHERADRESSE 
4090 :’A := ENERGIEP. ANZAHL 
4100 :’L := LAENGE WURM 

4200 : 


4210 :PA=17850 
4220 :PE=17847 
4230 : ZR=202 
4240 :2X=252 
4250 :ZE= 64 
4260 : ZW=230 
4270 :Z2L= 32 


4280 :F =21504 
4290 :L =2 
4300 : 


4310 :FORI=-3072T0-3065 
4320 :POKEI,O 

4330 :NEXT 

4400 3; 

4500 :RETURN 

4550 8 


4600 :DATA i, 48, 2, 33, 0,240, 


4610 :DATA 1,240,237,176,201, 
4620 :DATA192, 5, 35,191, 71, 
4630 :DATA 71,237,184, 0, 


4650 :DATA184,201 

4700 :RESTORE 

4710 FORI=0T035 

4720 :READD: FOKEXRH4800+1,D 
4730 NEXT 

4740 :RETURN 

A800 :; 


4900 REM===== 'INIT.’ENDE ======== 


4999 : 


5000 REM===== BILDSCHIRM .========- 


3001 : 

S5old :CLS 

5020 :FORI= 17409T017446 
5050 :POKEI,ZR:FOKEI-F,6 


Ss040 :POKEI+960, ZR: POKEI-F+960, 6 


5050 zNEXT 

5060 :FORI=17448T0183285TEP40 
5070 :FOKEI,ZR:FOKEI-F,6 

5080 :POKEI+39, ZR:POKEI-F+37,6 
50970 :NEXT 


TCSZ GENIE 16C 


Alles drin für 
DM 4.995,-* 


= ; 
ändler- +:OEM- 





s Preisempfehlung: inklusive Mehrwertsteuer: 
aa a a ferumfäny enmalten Konditionen! 


17 


i 


17.231 
1,192, 
4640 :DATA 33,191,243, 17,231,243,23 


= 


22 GENIE DATA 


m, 


5100 :POKE17408, 205: POKE-4096, 6 
3110 : POKE17447, 224: POKE-4057,6 
5120 :FPOKE18368, 228: POKE-3136, 6 
5150 :POKE18407, 226: POKE-3097,& 


5140 :POKEPA, ZW: POKEPA-F, 8: POKEPE, ZW: POKEPE-F,8 


5145 : FORI=PA+1TOPA+8: POKEI, 128: NEXT 
5150 :FORI=1T0100 

5160 :P=RND (880) +17448 

5170 : IFPEEK (P)<>ZLTHENS160 

5180 : IFRND (4) =3THENS210 

5190 :POKEP, ZE: POKEP-F , 15: A=A+1 

5200 :G0OTO5300 

5210 :POKEP, ZR:POKEP-F,6 

5220 :GOTOSS300 

5300 :NEXT I 

5400 :FORI=PA+1TOPA+8: POKEI, 32 NEXT 
5500 :RETURN 

5700 REM===’ BILDSCHIRM’ ENDE========-=== 
5999 : 

6000 REM===== SPIELAUSFUEHRUNG ======== 
6001 : 

6010 :A$=INKEY$ 

6020 :A$="".2B$=CHR$ (9) 

6030 :A$=INKEY$ 

6040 : IFA$< >" " THENB$S=A$ 

6100 : IFB$=CHR$ (9) THENRW= 1 

6110 : IFB$=CHR$ (8) THENRW=- i 

6120 : IFB$=CHR$ (10) THENRW= 40 

6130 : IFB$=CHR$ (91) THENRW=-40 

6140 : 

6150 :P=PEEK (PA+RW) 

8160 :PA=PA+RW 

6170 :POKEPA, ZW: POKEPA-F,8 

6180 : IFP= ZETHEN7010 

61970 : IFP< >ZLTHEN7S500 


6200 : 

6220 :R= 1:1IFPEEK (PE+R) =ZWTHENA300 
6250 =R=- 1: IFPEEK (PE+R) =ZWTHENG300 
6240 :R=-40: IFPEEK (PE+R) =ZWTHENA300 
6250 :R= 40: IFPEEK (PE+R) =ZWTHENG300 
6260 :PA=PE:GOTO7S500 

6270 : 


6300 :PÜKEPE,ZL 
65310 :PE=PE+R 


6400 :GOTDO&AOSO :REM NEUER DURCHLAUF 
6500 : 
7000 :REM --- FRESSEN --- 


7010 :FORI=1T02 
7020 :PLAY(1,7,2,15) 

7030 :FORJ=1T010:NEXT 

7040 :PLAY(1,7,2,0) 

7050 :FORJ=1T010:NEXT 

7060 :NEXT 

7100 :A=A-1: IFA=0THENRETURN 
7110 :L=L+1 

7120 :60T06030 

7500 :REM --- EXITUS -——- 
7505 : IFPA<17448THENPA=PA+BO 
7506 : IFPA>18367THENPA=PA-8O 
7510 :ZE=ZX:FORI=1T030 

7515 :60SUB2800 


LESER SUCHT LESER 


PROGRAMM - RS 232 Steuersoftware | 
Serieller-Port wird nicht angesprochen, wer 
kann mir helfen? 


Tel.: 0202/438491 

En a ae a ne 
Rudolf Ring, Duisburgerstraße 445, App. 304 
4330 Mülheim/R. 

Hauptinteresse: Colour Genie, allgemeiner Er- 
fahrungsaustausch, Pascal 





COLOUR GENIE 
Thomas Wagner, Paul-Klee-Str. 118, 5090 
Leverkusen 1, suche Kontakt zu Disk-An- 
wendern. 





GENIE III 
Wer hat die HRG-Karte EG 3211? 
Setzen Sie sich bitte mit mir in Verbindung! 
Guillermo Herlt, Mühlweg 19, 8480 Weiden/ 
Opf., Tel.: 0961/29988 


GENIE DATA 23 


nn 


7520 :POKEFA, ZE:POKEPA-40, ZE:POKEFA-1,ZE 
7530 :PFOKEFA+40, ZE: FOKEFA+1, ZE: FPOKEFA-79,ZE 
7540 :FOKEPA-81,ZE:POKEFA-42, ZE: FOKEPA+S8, ZE 
7550 :FOKEPA+79, ZE: FOKEFA+B1, ZE:FPOKEPA+42,ZE 
75580 :POKEPFA+42, ZE: FOKEPA-38,ZE 

7570 : IFZE=ZXTHENZE=ZLELSEZE=ZX 

7580 :NEXT 

7590 :PRINTSO,CHR$ (20); 

7600 :FORI=1T024 

7610 :CALL4BÖOD 

7620 :PLAY(2,5,5,15) 

7630 :FORJ=1TOIO: NEXT 

7640 :PLAY(2,5,5,0) 

7650 :NEXT 

7700 : RETURN 

7800 REM===== ’SFIEL’ ENDE ============ 

7999 : 

9000 REM===== SCHLUSS & BEWERTUNG ===== 

9001 
9010 : IFA=ÖTHENI4OO 

9020 :CLS 

9030 :COLOURI 

9040 :PRINTS126, "Sie haben leider verloren !" 

9050 :PRINT" "STRING$ (27,45) 

9060 :COLOUR4: PRINT 

9070 :PRINT"Ihr Wurm hatte eine Laenge von "sL 

9080 :FRINT"Gliedern, er konnte also "L-?2 

9090 :FRINT"Energiepillen fressen bis das bittere" 

9100 :PRINT"Ende ihn ereilte." 

9110 :COLOUR1:FRINT 

9120 : IFL{STHENFRINT"Lassen Sie lieber die Finger von diesem Spiel, Sie 
bringen den Wurm ja nur um!" 


91320 :IFL{11ANDL>STHENFRINT"Na ja, das war wirklich schlecht ! beb 
en Sie lieber auf anstatt den Kurm umzubringen !" 
7140 : IFLSZIANDL>1OTHENFRINT"Da hilft nur veben,ueben,ueben... um be 


sser zu werden." 
97150 :IFLZ41ANDL >2ÖTHENFRINT"Na wenigstens konnte der Wurm vor seinemna 
hen Tod einige Energiepillen fressen." 
7160 :IFLESIANDL>A4ÖOTHENFRINT"Nicht schlecht! Sie sollten weitermachen" 
9170 : IFLZ71ANDL>6ÖOTHENFRINT"Das war sehr gut. Sie schaffen es noch." 
9180 : IFL>69THENFRINT"Fech,gerade so kurz vorm Sieg geschlafenßleich no 
chmal!" 
9190 :FRINT:FRINT 
200 REM --- FRAGE: NOCHMAL? --- 
9210 :FRINT"Wollen Sie etwa nochmal spielen?" 
9220 :A$=INKEY$: IFA$I:"J"ANDAS$Z >"N"THENIZ2ZO 
9230 : IFA$="J" THENCLEAR: GOTD1400 
9240 :GOSUBZ8B00 
9250 :FRINT:PRINT::FRINT">>> Na dann nicht!" 
9260 :GOSUBZBOO 


9270 :END 
9400 REM --- GEWONNEN --- 
979410 :CLS 


9420 :FORI=2TO8 

9425 :FORK=1T07 

9430 :IFI{7THEN PLAY(1, I ‚„K,19) 
9450 : IFI<BANDI>2PLAY (2,I-1,K,15) 
9460 : IFI<FANDI:SPLAY(3,I-2,K,15) 
9476 :FORJ=1T050:NEXT:NEXT:NEXT 
9490 :FORK=1TOZF:FLAY (E,7,2,0):NEXT 


24 GENIE DATA 





9500 : 

7510 :COLOUR10:PRINTS240,STRING®$ (40,42) 

9520 :COLOUR11:PRINTTAB (8) "HERZLICHEN GLUECKWUNSCH ! " 
9530 :PRINT:PRINT" Sie haben gewonnen. ..." 

9540 :PRINT 

9550 :CDLDUR10: FRINTSTRING$ (40,42) 

950 : 

9570 :COLDUR2 

9580 :B$=" „.„.aber es war ja auch sehr 
einfach, oder ?”? 5 

9590 :FORI=1T085 

9600 :PRINTMID$(B$,I,1d; 

9610 :PLAY(1,58,5, 15) :FORJ=1TO10O:NEXT 

9620 :PLAY(1,6,6,0) :FORJ=1T0O&0: NEXT 

96830 :NEXT GRAF IKKONVERTIERUNG 
9640 :FPRINT:FRIN ILL... 
9650 :G0OT09200 


e=A 4=B zx=C =D ı = _E 
=F A=6 ö=-H ü=l1l eG = J 
N=K ä=l ö=-M ü=N k=0 
e=P e=dG di=R e=58 n=T 
f=UuU = WM ."=MW a =X ”"=Y 
„=7 E=3 a=, £=. a=/ 
Video Genie System EG 3008 + EG G=- 
3014, 48K. Doppelfloppy, 40 Spu- “=a --b == c ı = dd ıI=e 
ren, 5,25 Zoll, SS, DD, RTTY + = f 1=g u =h = ij mM = j 
CW-Interface + viel Literatur u. r=k - =] ı=m r=n r=o 
Software. i=p vg 2 = m ers 4=t 
VB. 1.200,- DM. Tel.: 0711/ += u v d=w U=x Ko y 
471930, ab 19.00 Uhr. = zZ ae 8 .=<«< t = > =? 


WIR HABEN DEN TEST GEMACHT... Sämtliche Büromaschinen, Computer, Drucker usw. 
erstrahlen in neuem Glanze 
mit dem SUPER-REINIGER BY-PAS® 

Verlangen Sie Angebote bei größeren Mengen oder bei Kleinabnahmen bestellen Sie sofort bei: 


BY-PAS®-Chemie 

Deutschland und Europa 
Hersteller und Vertrieb von: 
Reinigungs- u. Ptlegemitteln, Kosmetischer Produkte 

Julius Kreutzer 
Postfach 1105 

6686 EPPELBORN 
Telefon (0 68 81) 72 04 






Händleranfragen erwünscht! 








OU ERS 


WERSIBOARD 


| FÜR COMMODORE C 64/5X 64 
—— PERSONAL COMPUTER MUSIC —— 
























Das WERSIBOARD-SYSTEM MUSIC 64 besteht aus einem Orgel-Manual im Commodore 
Design, einem Interface-Modul und zugehöriger Software. Gemeinsam mit dem 
Commodore VC 64 entsteht ein Musikinstrument mit bemerkenswerten Fähigkeiten. 


Komplett-Paket bestehend aus: 


KEYBOARD 

— 49 Tasten, 4 Oktaven C-C 

— PROFIFORMAT 

— Gehäuse aus stoßfestem Kunststoff 
im Commodore-Design 

— Interface-Modul mit Verbindungs- 4 
kabel, anschlußfertig 


SOFTWARE 

— auf54' Diskette 

— Programm MONO 64 — 
monophoner Synthesizer 

— Programm POLY 64 — 
polyphones Keyboard 

— Klangfarben direkt am PC 
veränderbar 


EINFÜHRUNGSPREIS DM 495,- 


Direkt ab Werk, noch heute bestellen! inkl. MWSt. 


Absender BESTELLCOUPON 
Das WERSIBOARD MUSIC 64 ist Klasse 
U Ich bestelle zu sofortiger Lieferung das 


| WERSIBOARD MUSIC 64 zum 
! — zuzgl. Versandselbstkosten — 


Orgel- und Piano-Bausätze gewünschte Zahlungsart 
Industriestraße U] Scheck ist beigefügt 
5401 Halsenbach Tre. ___________  ÜD6per Nachnahme 
Telefon (06747) 7131 


Telex 42323 


ıy Datum Unterschrift 
Y — Bestellcoupon abtrennen und an Wersi senden — 





8 


'GENIE made in Germany, 


Der schnellste Z 80 Rechner der Welt. 
In Deutschland entwickelt 
und produziert. 





Sie suchen einen schnellen, leistungsstarken Rechner neuester Tech- 


nologie? Unser GENIE Ills arbeitet mit einer Z 80 CPU bei 7,2 MHz 


Taktfrequenz. Der 128 K Benutzerspeicher kann auf der Platine bis 
256 _K erweitert werden. Für die hochauflösende Grafik mit einer 
Auflösung von 512 x 512 Punkten stehen Ihnen in 2 unabhängigen 
Grafikseiten weitere 64 K Bildwiederholspeicher zur Verfügung. 
Das Bildformat ist frei wählbar, z.B. 80 x 25, 64 x 16 usw. Der Zeichen- 
satz ist frei programmierbar mit einer Matrix von bis zu 8 x 16 Punkten. 
Diverse Standardzeichensätze sind im Betriebssystem enthalten. Die 
deutsche Tastatur ist frei beweglich und enthält 8 frei belegbare 
Funktionstasten und natürlich einen separaten Numerikblock. 

Die Kapazität der beiden 5,25“ Slimline-Diskettenlaufwerke beträgt 
1,4 MByte. Jederzeit können weitere 31/2", 51/4"und 8“ Laufwerke 
direkt angeschlossen werden. Selbstverständlich kann auch eine 
Harddisk eingebaut werden. Betriebssysteme sind CP/M und GDOS 
(GDOS im Lieferumfang), natürlich mit integrierter Grafiksoftware. 





Alleinvertrieb 
über den Fachhandel durch: 


TCSE „un. 


COMPUTER GMBH "ei. 026 45 / 32 22 


Das GENIE Ills hat neben dem Centronics-Parallel-Druckerausgang 
und 2 RS 232 (V24) Schnittstellen zusätzlich einen universellen 16 Bit 
parallel Ein-Ausgang mit 4 Handshake-Leitungen. 

5 freie Steckplätze (Slots) geben Ihnen die Möglichkeit zur individuellen 
Erweiterung des Systems. 

Die Multilayerplatine sowie die beiden Laufwerke sind zusammen mit 
dem reichlich dimensionierten Schaltnetzteil in einem formschönen, 
kompakten Metallgehäuse eingebaut. 

Die gesamte Elektronik des GENIE Ilis wird von der SIEMENS AG in 
Deutschland exklusiv für TCS gefertigt. 

Mit den beiden Betriebssystemen CP/M und GDOS haben Sie Zugriff 


auf die größten Softwarenpotentiale der Welt. 
Informieren Sie sich über unser Angebot für Anwendersoftware. 


Bitte informieren Sie mich kostenlos und ausführlich | 


| 

| COUPON über das GENIE Ills und seine Anwendersoftware. | 
| Name... aughsanaden RER | 
| Straße... lat | 
| si 

Ortner ueaslrerene erkegsnedertee 

| e | 
| Telefon...............: ] ueacisceiannienaee ef