A: NEU IN PROFAN 6.5 (seit Version 6.0)
B: NEU IN PROFAN 6.6 (seit Version 6.5)
=======================================

**** HTTP://WWW.PROFAN.DE ****

A: NEU IN PROFAN 6.5
====================

INHALT
------

1. INSTALLATION
2. BERSICHT UND AUSBLICK
3. VERBESSERTE ENTWICKLUNGSUMGEBUNG
4. STRENGERER COMPILER
5. NEUE (UND ERWEITERTE) BEFEHLE
   - CONTINUE
   - BREAK
   - CLEAR V1[,V2,V3,V4...]
   - DELETEOBJECT H
   - SETFONT H,F
   - SETSTYLE H,N
   - SETERRORLEVEL N
6. NEUE (UND ERWEITERTE) FUNTIONEN
   - @ADDR(VAR)
   - @DBGO(S[,N])
   - @ShellExec(S1,S2,N)
   - @SCRN(Z,S)
   - @TAB(N)
   - @CREATEFONT(S,N1,N2,N3,N4,N5)
   - @GETSTYLE(H)
7. NEUE SYSTEMVARIABLEN
   - %LASTMESSAGE
   - %CSRLIN
   - %POS
   - %ERRORLEVEL
8. OPERATOREN
   - Operatoren sind uneingeschrnkt erlaubt
   - Das LET kann nun weggelassen werden
9. SONSTIGES
   - Nur noch eine (NT-taugliche) 32-Bit-Version
   - Neue Verschlsselung (nur 32 Bit)
   - Neues Ersatzzeichen
   - Zuweisungen von Bereichsvariablen
   - Behobene Bugs
A. KOMPATIBILITT ZU FRHEREN VERSIONEN

---------------
1. INSTALLATION
---------------

Aus Kostengrnden gibt es keine neue CD, sondern Zusatzdisketten
zur CD. Wer die Vollversion oder ein Update von Versionen vor 6.0
bestelt, bekommt die 6.0er CD und zustzlich die Disketten fr das
Update auf Version 6.5. Version 6.0 mu vor der Installation des
Updates auf Version 6.5 bereits von der CD installiert worden
sein.

Whlen Sie die passende Version und installieren Sie diese in
Ihr entsprechendes PROFAN-Verzeichnis! Whlen Sie als Zielverzeichnis
das Verzeichnis, in das sie auch die entsprechende Version 6.0
installiert haben.

------------
2. BERSICHT
------------

Die aufflligste nderung betrifft, wie bei .5er Versionsnummern bei
PROFAN blich, die Entwicklungsumgebung: Geflligeres Aussehen und
endlich auch die farbige Syntaxhervorhebung, die bei einer modernen
Entwicklungsumgebung nicht mehr fehlen darf. Die bersicht ber ein
Programm wird erheblich vebessert.

Um der zunehmenden Zahl von BASIC-Umsteigern entgegenzukommen, wurde
PROFAN nun um "echte" Operatoren erweitert, soda der bisherige
Prprozessor fr Operatoren ($O+) berflssig wurde. Ebenso kann bei
Zuweisungen das LET weggelassen werden. Da umgeschriebene BASIC-
Programme zunchst den emulierten Textmodus mit LOCATE, PRINT und
INPUT benutzen, wurde dieser um die Systemvariablen %CRSLIN und %POS,
sowie um die Funktion @SCRN() erweitert.

Endlich ist es auch mglich, wirklich jedem Button oder Dialogelement
eine eigene Schrift zuzuweisen und Profis sowie Fans der API-Programmierung
werden sich ber die Mglichkeit freuen, mit SETERRORLEVEL -2 das
PROFAN-interne Messagehandling weitgehend auszuschalten. Befehle wie CLEAR
und Funktionen wie @ADDR und @SHELLEXEC schlieen Lcken im Befehls-
vorrat von PROFAN. Ingesamt wurde PROFAN um ber 20 neue Befehle, Funktionen
und Systemvariablen erweitert.

Der COMPILER wurde etwas strenger gestaltet, soda manche Fehler schon
beim Compilieren auffallen, die bisher im schlimmsten Fall erst beim
Kunden aufgetreten sind.

-----------------------------------
3. VERBESSERTE ENTWICKLUNGSUMGEBUNG
-----------------------------------

Der Mode folgend hat jezt auch die PROFAN-Entwicklungsumgebung flache
Buttons, die erst dann zu "richtigen" Buttons werden, wenn man mit der
Maus ber diese geht.

Fr den Programmierer wichtiger ist die Syntaxhervorhebung, d.h. unter-
schiedliche Elemente werden in unterschiedlichen Farben gekennzeichnet:
- Strukturbefehle (wie z.B. IF - ENDIF, WHILE - ENDWHILE) sind in fettem Schwarz
- Kommentare sind rot
- Declare-Befehle sind blau
- String-Literale sind grn
- der Rest ist normal schwarz
Selbstverstndlich lt sich die Farbgebung auch abschalten (OPTIONEN - SYNTAX-
FARBEN). Zeilen, die lnger als 254 Zeichen sind werden normal dargestellt.

Es gibt eine zweite Toolbar, die eine Schnellsuche enthlt un in manchen Fllen
bei der Suche deutlich flotter ist, als der bliche Weg. In das Eingabefeld,
das auch bner Strg-S per Tastatur erreichbar ist, wird der Suchbegriff eingegeben
und ber die Pfeil-Buttons kann beliebig nach vorne oder hinten im Text gesucht
werden. Die <ENTER>-Taste hat hier die gleiche Wirkung, wie der Pfeil nach vorne.
Wem der Platz zum Editieren durch diese Schnellsuche zu eng wird, kann diese
auch ber OPTIONEN - SCHNELLSUCHE abschalten.

----------------------
4. STRENGERER COMPILER
----------------------

Der neue Compiler fhrt einige Prfungen durch, die bisher hchst mhsam per
Hand oder mit Zusatztools zu erledigen waren:
Er kontrolliert, da die Klammern in einer Zeile ausgewogen sind, d.h. da es
genauso viele ffnende wie schlieende Klammern gibt. Gerade bei schlieenden
Klammern am Zeilenende waren Interpreter und Runtime bisher recht grozgig.
In einigen speziellen Fllen konnte dies jedoch zu Rechenfehlern fhren.
Auerdem wird berprft, da es zudem IF auch ein ENDIF gibt (und umgekehrt).
Gleiches gilt fr WHILE und ENDWHILE (bzw. WEND) sowie fr PROC und ENDPROC.

--------------------------------
5. NEUE (UND ERWEITERTE) BEFEHLE
--------------------------------

CONTINUE
--------
Nur innerhalb einer WHILE-Schleife zu verwenden.
Springt zum Beginn einer WHILE-Schleife (wie in Pascal)

BREAK
-----
Nur innerhalb einer WHILE-Schleife zu verwenden.
Springt ans Ende einer WHILE-Schleife (hinter das ENDWHILE bzw. WEND
- wie in Pascal)

CLEAR V1[,V2,V3,V4...]
----------------------
V1, V2, ... Variablen

Die entsprechende Variable wird auf 0, bzw. Leerstring zurckgesetzt. Im Falle von
Arrays, wird das ganze Array zurckgesetzt; im Falle von Bereichsvariablen wird der
Bereich mit Null-Bytes gefllt. Beispiel:
CLEAR A%, Text$, Feld%[], Bereich#

DELETEOBJECT H
--------------
H: Handle des Objekts (zur Zeit nur ein mit @CREATEFONT erzeugter Font)

Das Objekt H wird gelscht und die Resourcen wieder freigegeben.

SETFONT H,F
-----------
H - Handle des Dialogelementes
F - Handle des Fonts (erzeugt mit @CREATEFONT)

Einem Dialogelement wird ein Font zugewiesen.

SETSTYLE H,N
------------
H - Handle des Dialogelementes
N - Stil

Einem Dialogelement wird ein neuer Stil zugewiesen. (Stilwerte siehe in der PROFAN-
Hilfe unter @CONTROL)

SETERRORLEVEL N
---------------
N - Errorlevel

Neuer Wert -2: Wird als Errorlevel -2 angegeben, wird das PROFAN-interne Message-Handling
(Im Interpreter nach jeder Befehlszeile - im Runtimemodul nach jeder 20.) abgeschaltet.
(Der Errorlevel wird NICHT verndert.) Zurckgesetzt wird diese Einstellung durch die
Wahl eines "richtigen" Errorlevels mit dem gleichen Befehl. Mit "SETERRORLEVEL %ERRORLEVEL"
wird der augenblickliche Errorlevel verwandt, das Messagehandling aber wieder in den
"Normal"-Zustand versetzt.
ACHTUNG: Programme ohne WAITINPUT (und dergleichen) knnen mit -2 z.B. bei Endlosschleifen
dann nicht mehr unterbrochen werden und belasten u.U. den Prozessor strker. Nur fr
erfahrene Programmierer.

-----------------
6. NEUE FUNTIONEN
-----------------

@ADDR(VAR) (ab 6.1)
----------
VAR: Variable
Ergebnis: LongInt - Adresse der Variablen

Es kann die Adresse einer Variablen ermittelt werden, indem die
Funktion @ADDR verwandt wird:
  Let A& = @Addr(N%)
  Let A& = @Addr(Namen$[0])
Bei Stringvariablen ist das erste Byte die Lnge des Strings.

@DBGO(S[,N]) (ab 6.1)
------------
@dbGo bekommt einen weiteren (optionalen) Parameter, der die
Bewegung um n Stze unter Bercksichtigung eines etwaigen Index
in der Tabelle erlaubt:
  Beispiel: @dbGo(">",5)
Wird der zustzliche Parameter weggelassen, geht es 1 Schritt
weiter (wie bisher)
Will man auf den n%-ten Satz einer Tabelle (unter Bercksichtigung
des Index!) positionieren, wird als erster Parameter ein "*"
gesetzt:
  @dbGo("*",n%)
Anstelle des "*" kann auch "INDEX" gesetzt werden:
  @dbGo("INDEX",56)

@ShellExec(S1,S2,N) (ab 6.1)
-------------------
S1 - Dokument/Programm (ggf. mit Pfad)
S2 - Modus ("open", "print", "explore")
N  - Anzeigemodus (wie bei @WinExec)
Ergebnis: Integer

Die Funktion SHELLEXEC ermglich das Ausfhren eines Dokumentes,
indem die entsprechende Anwendung gestartet wird. Der Rckgabewert
entspricht dem von @WinExec.
- Bei "open" wird das Dokument mit der verknpften Anwendung
geffnet.
- Bei "print" wird es ausgedruckt. Ist dies nicht mglich wird es
geffnet.
- Bei "explore" mu S1 ein Pfad sein. Der Explorer wird in diesem
Pfad geffnet.

@SCRN(Z,S)
------------
Z - Zeile (Textmodus)
S - Spalte (Textmodus)
Ergebnis: Integer

Der Code des Zeichens (mit PRINT geschrieben) in Zeile Z/Spalte S wird ermittelt.
HINWEIS: Funktioniert nur fr Ausgaben im emulierten Textmodus (PRINT, TBOX).

@TAB(N)
-------
N - Spalte (Textmodus)
Ergebnis: Leerstring

Funktion zum Einsatz in PRINT-befehlen, um zur entsprechenden Spalte zu gelangen. Ggf.
wird in die nchste Zeile gesprungen. Beispiel: PRINT "Name";TAB(30);"Nachname"

@CREATEFONT(S,N1,N2,N3,N4,N5)
-----------------------------------
S  : String - Fontname
N1 : Wert - Zeichenhhe
N2 : Wert - Zeichenbreite
N3 : Wert - Fett? (0 .. 1)
N4 : Wert - Kursiv? (0 .. 1)
N5 : Wert - Unterstrichen? (0 .. 1)
Ergebnis: Integer - Handle des Fonts

Es wird ein Font (z.B. fr die Zuweisungmit SETFONT) erzeugt.
N1: Zeichenhhe. Steht hier 0, wird ein Defaultwert fr Breite und Hhe genommen.
N2: Zeichenbreite. Steht hier 0, wird ein Defaultwert genommen
N3: 1 = fett , 0 = normal
N4: 1 = kursiv, 0 = normal
N5: 1 = unterstrichen, 0 = normal

@GETSTYLE(H)
------------
H - Handle des Dialogelementes
Ergebnis: Longint - augenblicklicher Stilwert des Dialogelementes


-----------------------
7. NEUE SYSTEMVARIABLEN
-----------------------

Eine neue Systemvariable %LastMessage hlt die Message fest, die
beim letzten WAITINPUT, GETMESSAGE oder PEEKMESSAGE ausgelst
wurde. Im Gegensatz zu %Message, die immer die akuelle Message
anzeigt, wird %LastMessage nur bei den drei genannten Befehlen
verndert. Interessant im Zusammenhang mit SETERRORLEVEL -2!

Weitere neue Systemvariablen:

%CSRLIN     - Augenblickliche Zeile im simulierten Textmodus (BASIC: CSRLIN)
%POS        - Augenblickliche Spalte im simulierten Textmodus (BASIC: POS(0))
%ERRORLEVEL - Augenblicklicher Errorlevel

In Vorbereitung auf weitere PROFAN-Portierungen gibt es die
Systemariblen %WIN16, %DOS32, %DOS16, %OS2 und %LINUX, die bei
der jeweiligen PROFAN-Version 1 zurckliefern. %WIN16 gibt bei
der 16-Bit-Version von PROFAN 1 zurck.

-------------
8. OPERATOREN
-------------

1. Operatoren sind uneingeschrnkt (hoffe ich) erlaubt
------------------------------------------------------
Der Schalter $O+ ist nun voreingestellt. Alle Programme, die bisher mit $O+ funktionierten,
sollten jetzt auch weiterhin einwandfrei laufen. Die Operatoren werden jetzt nicht mehr
durch einen Prprozessor ermglicht, sondern sind Bestanteil der Sprache PROFAN.
Mit $O- wird die Verwendung der Operatoren ausgeschaltet. Das An- und Abschalten der
Operatoren kann zeilenweise geschehen.

HINWEIS: Das Minus als Vorzeichen ist nur bei Literalen (Ziffern) erlaubt, nicht aber
bei Ausdrcken oder Variablen. Statt z.B. "B% = -A%" ist "B% = 0-A%" zu schreiben!

ACHTUNG: Zeilen mit Operatoren werden (auch bei compilierten Programmen) deutlich
langsamer abgearbeitet als Zeilen ohne Operatoren. Da die bisherigen Funktionn
erhalten bleiben, knnen diese zur Temposteigerung weiterhin verwandt werden.

Folgende Operatoren in folgenden Hierarchiestufen gibt es:

1.  ^              (Potenz, war bisher @POW)
2.  MOD AND * / \  (Achtung: AND als Operator ist logisch,
                    die Funktion @AND ist weiterhin binr)
3.  OR + -         (Achtung: OR als Operator ist logisch,
                    die Funktion @OR ist weiterhin binr)
4.  = > <
5.  <> >= <=

Klammerung ist wie blich erlaubt, etwa: LET C% = 5 * (A% + B%)
Klammern knnen beliebig (d.h. bis zum Stackberlauf) verschachtelt werden.

ACHTUNG: logisch bedeutet, da das Ergebnis wahr (1) oder falsch (0) ist,
bei binren Funktionen werden die Werte bitweise verknpft:
  2 OR 4   ergibt 1, weil mindestens einer der Werte <> 0 (= wahr) ist
           identisch mit: (2 > 0) OR (4 > 0)
  @OR(2,4) ergibt 6: %0010 OR %0100 = %0110

HINWEIS: Die Hierarchie entspricht in etwa der unter PASCAL und weicht von der BASIC-Hierarchie
ab. Die Vergleichsoperatoren (Stufe 4 + 5) sind in BASIC hher eingestuft.
Aus BASIC:    If A% > 6 AND A% <= 20 THEN
                ...
              End If
wird PROFAN:  If (A% > 6) AND (A% <= 20)
                ...
              EndIf
PASCAL:       If (A > 6) AND (A <= 20) THEN BEGIN
                ...
              End;

Alle Operatoren sollten von Leerzeichen eingerahmt werden, bei MOD, AND und OR ist es
absolute Pflicht. Bei den brigen erhht es die Lesbarkeit.

Wenn das - auch Parameter trennt (wie etwa beim WINDOW und den vielen Grafik-Befehlen),
ist es sinnvoll Subtraktionen einzuklammern, etwa:

  Window a%,(b% - 5) - (c% - 6),500

In bestimmten Situationen wrde der Parser ohne Klammern durcheinanderkommen.


2. Das LET kann nun weggelassen werden
--------------------------------------
Wie auch in BASIC kann bei Zweisungen das LET weggelassen werden. Das Weglassen des
LET hat keinerlei Auswirkung auf Ablaufgeschwindigkeit oder Gre des compilierten
Programmes.

------------
9. SONSTIGES
------------

Nur noch eine (NT-taugliche) 32-Bit-Version
-------------------------------------------
Es gibt nur noch eine 32-Bit-Version. Diese ist auch fr Windows NT (ab 4.0) geeignet.
Der Zugriff auf Resourcen aus 16-Bit-DLLs und - EXE-Dateien ist somit nicht mehr
mglich. Die Funktion @GETUSAGE gibt IMMER 0 als Ergebnis zurck. Das Unterverzeichnis
WINNT kann nun gelscht werden.

Neue Verschlsselung (nur 32 Bit)
--------------------
Mit $P+ als Direktive wird wie bisher verschlsselt. Mit $P* wird in der 32-Bit-Version
ein deutlich sichereres aber auch deutlich langsameres Verschlsselungsverfahren
verwandt. Bei sehr langen Programmen kann dies zur Verlngerung der Ladezeit des fertigen
Programmes fhren. Bei Programmen, die mehrere Zehntausend Zeilen haben, kann die
Ladezeit dann im Minutenbereich liegen. Der Ablauf des geladenen Programmes wird von
der Verschlsselungstechnik allerdings nicht beeintrchtigt. In der 16-Bit-Version hat
$P* die gleiche Wirkung wie $P+.
ACHTUNG: Mit $P* verschlsselte Compilate knnen nicht von der 16-Bit Runtime abgearbeitet
werden!

Neues Ersatzzeichen
-------------------
Zustzlich zu den bisherigen Ersatzzeichen ist nun auch noch das "\z" fr ein Null-Byte
erlaubt.

Zuweisungen von Bereichsvariablen (ab 6.1)
---------------------------------
Die Adresse einer Bereichsvariablen kann einem LongInt zugewiesen
werden und umgekehrt:
  Let Wert& = Bereich#
  Let Bereich# = Wert&
(Gefhrlich! Kann zum Systemabsturz mit Datenverlust fhren!)
Es geht sogar: Let Bereich1# = Bereich2#. Beide Bereichsvariablen
zeigen dann auf den selben Speicherberech!

Neue Grenzen (32 Bit, ab 6.1)
------------
Es sind jetzt bei Arrays bis zu 65535 Elemente eines Variablentyps
mglich. Auch mit DIM%, DIM&, DIM! und DIM$ knnen jetzt bis zu
65535 Elemente erzrugt werden. (ACHTUNG: DIM$ 65535 oder DECLARE A$[65535]
wrde ber 32 MB Speicher verbrauchen!)
Die maximale Anzahl der Programmzeilen wurde auf 65535 erhht.

Behobene Bugs:
--------------

1.
%HInstance liefert einen korrekten Wert zurck (32 Bit, ab 6.1)

2.
@LoadFile$ funktioniert auch ohne Dateiendung (32 Bit, ab 6.1)

3.
Bei Transparenz wird jetzt wirklich der linkeste unterste Pixel
verwandt (und nicht der daneben) (32 + 16 Bit, ab 6.1)

4.
COPYBMP und MCOPBMP kopierten im Tranzparenzmodus unter Umstnden
den falschen Bildschirmbereich. Der Bug wurde behoben
(16 + 32 Bit, ab 6.1)

5.
Wenn das Ergebnis von @Control einem Integer zugewiesen wurde,
wurde unter Umstnden der Wert verflscht. Das wurde korrigiert.
(32 Bit, ab 6.1)

6. Auch Edit- und Multieditfelder werden jetzt im geflligen 3D-Look
angezeigt. (32 Bit, ab 6.1)


7.
bei MID$() und SUBSTR$() konnten Fehler auftreten, wenn sie
verschachtelt wurden. (16 + 32 Bit)

8.
Tastatur-Puffer wird nach WAITINPUT, WAITKEY, WAITSCANKEY oder
GETKEY$() gelscht (konnte bisher zu Problemen fhren,
wenn nach diesen Befehlen ein INPUT-Befehl folgte). (16 + 32 Bit)

9.
Auch in der 32-Bit-Version wird jetzt ein etwaiger Parameter von
STARTPRINT ausgewertet! (32 Bit)

10.
Auch in der 32-Bit-Version gelten jetzt fr dBase-Dateien die
ber das dBasse-III-Format hinausgehenden Grenzen, wie sie in der
Referenz beschrieben sind (1024 Felder mit zusammen max. 16000
Zeichen pro Satz). (32 Bit)
HINWEIS: Die max. Lnge des Index ist immer noch 128 Zeichen,
auch wenn der Index ber mehrere Felder gebildet wird!

11.
DBPUTMEMO sollte jetzt auch korrekt funktionieren, wenn das
entsprechende DBGETMEMO nicht direkt davor stattgefunden hat.

12.
Die Entwicklungsumgebung "vergit" nicht mehr hin und wieder das
eingestellte Runtime-Modul. Wenn ein Projekt geladen wird, wird
auch immer das mit diesem Projekt eingestellte Runtime-Modul
verwandt. (16 + 32 Bit)
HINWEIS: Wenn man auf die Preojektverwaltung verzichtet, wird immer
das zuletzt eingestellte Runtime-Modul bzw. das des zuletzt
geladenen Projektes benutzt!


---------------------------------------
A. KOMPATIBILITT ZU FRHEREN VERSIONEN
---------------------------------------

PROFAN 6.5 ist 100%ig Quelltext-kompatibel zu PROFAN 4.x und 5.x.
Aus Kompatibilittsgrnden werden auch noch GOTO, GOSUB und Labels
untersttzt. Es kann jedoch nicht garantiert werden, da diese Befehle
auch noch in knfigen Versionen vorhanden sind.

Das Runtime-Modul von PROFAN 6.5 kann kompilierte PRC-Dateien
frherer PROFAN-Versionen (ab 2.0) und von PROFAN fr DOS
aufrufen.

Es ist jedoch empfehlenswert, ltere Programm neu zu kompilieren.
Programme, die in der 32-Bit-Version mit der Verschlsselung $P*
kompiliert werden, knnen NICHT zu DOS- oder 16-Bit-Windows-
programmen gelinkt werden.

B: NEU IN VERSION 6.6
=====================

Neu seit Version 6.5:

BESCHLEUNIGUNG
--------------
Der Parser wurde vllig (!) neu geschrieben und verarbeitet
Operatoren deutlich schneller.

Einige Meergebnisse (233MMX, 64 MB, Win 95):

"Sternenhimmel" im Interpreter 6.5: 35 Sek.
                               6.6: 12 Sek.
                               
"Sternenhimmel" compiliert     6.5: 22 Sek
                               6.6:  4 Sek. (1)
                                             
"Bench"         im Interpreter 6.5: 6,0  13,5  11,6  Sek. (2)
                               6.6: 8,1   8,2   7,1  Sek.
                               
"Bench"         compiliert     6.5: 1,1   1,1   6,3  Sek.
                               6.6: 0,8   0,8   1,5  Sek.                              

(1) Ersetzt man die Operatoren durch entsprechende Funktionen, lt
    sich der Wert auf etwa 2.5 Sek drcken.                              
    
(2) Hier bedeuten die drei Spalten jeweils:
    1. Operatoren mit $O- ausgeschaltet
    2. Operatoren mit $O+ eingeschaltet, aber nicht benutzt
    3. Funktionen durch entsprechende Operatoren ersetzt
    
Konstanten 
----------
Es knnen jetzt auch Konstanten definiert und im Programm
verwendet werden. Konstanten werden wie Systemvariablen
dargestellt und definiert:

Def $Text "Das ist ein Testtext"
Def !GK 0.981762
Def %wm_command 217
Def &ws_irgendwas $340

Print $Text
Print "GK: ";!GK
...

Zustzlicher Parameter bei CONTROL
----------------------------------
Bei CONTROL kann nun mit einem zustzlichen Parameter der
erweiterte Windows-Stil angegeben werden. In diesem Fall
entspricht CONTROL der API-Funktion CREATEWINDOWEX.

Jetzt sind wirklich 15 Parameter erlaubt
----------------------------------------
Da gabe es einen Bug, der bei Prozeduren die Sache auf 14
Parameter und in definierten Funktionen gar auf 12 Parameter
begrenzte ... SORRY!

Neuer Befehl DBSETMEMOWIDTH
---------------------------
Damit kann der automatische Zeilenumbruch bei Memo-Feldern
gesteuert werden. Bisher war er auf 80 fest eingestellt.
