home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 2: PC
/
frozenfish_august_1995.bin
/
bbs
/
d07xx
/
d0745.lha
/
ARexxBox
/
History.txt
< prev
next >
Wrap
Text File
|
1992-10-12
|
8KB
|
196 lines
History of ARexxBox Releases
----------------------------
V0.99 erster Beta-Release
V0.99a FIXED: Argument- und Resultat-Liste konnte mit
ungⁿltigem Kommando arbeiten -> Enforcer-Hit/Absturz.
(Report: RALF_KAISER@AWORLD)
V0.99b ENHANCED: GadToolsBox-Source fixed um den System Default
Font statt des Screenfonts fⁿr Layout und Gadgets zu
benutzen.
(Report: SYSOP@INSIDER [Garry Glendown])
V0.99c FIXED: Fⁿr Argumente wurde das Gleichheitszeichen
nicht zugelassen.
FIXED: Nach ─nderung eines Argumentes oder
Resultates verbleibt die Anzeige auf diesem Element
statt (wie bisher) das letzte Listenelement
anzuzeigen.
FIXED: In den Font-Routinen war noch ein Fehler.
(Report: F.J.Reichert [F_J_REICHERT@SAARAG])
V0.99d FIXED: Alle Pointer-Conversions bereinigt. Der Code wird
jetzt selbst bei Compiler 'superscharf' v÷llig ohne
Warnings durchgezogen.
Pragma-#includes und _toupper() nun auch fⁿr SAS/C drin.
(Report: W_KUETING@HSP)
--- V0.99d wurde nicht verteilt! ---
V0.99e FIXED: Wenn _kein_ Resultatfeld belegt war, wurde ein
"out of memory"-Fehler erzeugt.
ENHANCED: ReplyRexxCmd() erzeugt nun die Variable RC2, sie
enthΣlt den "Secondary Returncode", der in jeder
rxif-Struktur unter dem Namen rc2 steht. Diese
Variable kann z.B. benutzt werden, um detaillierte
Fehlercodes an das Rexxprogramm zurⁿckzugeben.
Dieses Feature ist eine Erweiterung der Style-Guide-
Richtlinien, m.E. eine sinnvolle. Wenn jemand anderer
Ansicht ist, bitte Mail an mich!
RC2 wird nur erzeugt, wenn a) Resultate erwⁿnscht sind und
b) RC != 0 ist. Das Feld rc2 kann sowohl einen Fehlercode
(long, default) als auch eine Fehlerbeschreibung (char *)
enthalten. Unterschieden wird anhand des Vorzeichens von rc,
d.h. rc < 0 <=> rc2 long bzw. rc > 0 <=> rc2 char *.
Negatives rc wird vor der Rⁿckgabe nach positiv gewandelt.
Beispiel fⁿr FehlerCODE:
rd->rc = 10;
rd->rc2 = ERROR_OBJECT_NOT_FOUND;
Beispiel fⁿr FehlerSTRING:
rd->rc = -10;
rd->rc2 = (long) "Objekt nicht gefunden!";
Die Standard-Fehlerstrings sind _nicht_ lokalisiert. Wenn sich
C= mal bequemt, mir Infos und Werkzeuge dafⁿr zu schicken,
werde ich das natⁿrlich nachholen.
ENHANCED: SendRexxCommand() nimmt jetzt zur besseren
Unterstⁿtzung des Standardbefehls "RX" (zum Starten
von ARexx-Programmen) einen zusΣtzlichen Parameter,
ein FileHandle (BPTR!), der als Stdin/Stdout fⁿr das
Script eingesetzt wird. FreeRexxCommand() ⁿbernimmt das
Schlie▀en des Kanals.
Au▀erdem liefert SendRexxCmd() nun die Adresse der abge-
schickten RexxMsg zurⁿck (oder NULL wenn Fehler).
ENHANCED: Die RexxHost-Struktur hat jetzt ein zusΣtzliches
Feld namens "APTR userdata". Es kann z.B. benutzt werden, um
in einen RexxHost einen Zeiger auf eine eigene Projekt-
Verwaltungs-Struktur einzuhΣngen o.Σ., um den Host ein-
deutig einem offenen Projekt zuzuordnen.
ENHANCED: Jeder Befehl hat jetzt ein globales "enabled"-
Flag, wenn dies gel÷scht ist, verweigert der Dispatcher
die Ausfⁿhrung des Befehls. Dieses Flag sollte mit den
Standard-ARexx-Befehlen (Style Guide) ENABLE und DISABLE
beeinflussbar sein (siehe rxif/*.c).
CHANGED: CommandShells ben÷tigen jetzt einen eigenen
RexxHost auf dem sie alleine arbeiten k÷nnen. D.h.
der dafⁿr bereitgestellte Host DARF NICHT gleichzeitig
als normaler ARexx-Port benutzt werden. Eine abwechselnde
Benutzung als ARexx- und Cmd-Port ist denkbar, aber nicht
empfehlenswert...
ENHANCED: Damit einhergehend bekommt nun jede rxif-Funktion
den RexxHost des ARexx-Ports bzw. der CmdShell als
(ersten) Parameter (host) ⁿbergeben. Dadurch kann
die Funktion z.B. entscheiden, zu welchem Projekt der
Befehl ausgefⁿhrt werden soll.
ENHANCED: Ebenfalls damit einhergehend existiert jetzt zur
Unterstⁿtzung des Standardbefehls CMDSHELL in jedem
RexxHost ein Flag (ARB_HF_CMDSHELL), das anzeigt, ob der
Host gerade eine CommandShell fΣhrt. Wenn dieses Flag
(durch CMDSHELL CLOSE) gel÷scht wird, terminiert die ARexx-
Box die CommandShell.
FIXED: Aus Spaces oder nur aus Optionen bestehende
Argument- bzw. Resultatfeldnamen werden nicht mehr
akzeptiert.
CHANGED: Da einige rxif-Funktionen darauf zugreifen
mⁿssen ist "struct rxs_command" und "rxs_commandlist"
nun im Headerfile definiert. Fⁿr den Zugriff auf die
Liste (finden eines Kommandos) ist eine neue Funktion
da:
struct rxs_command *FindRXCommand( char *name );
FIXED: Argumente mit '=' wurden nicht korrekt in
C-Variablennamen umgesetzt. Nun wird der letzte
Alias als Variablenname benutzt.
ENHANCED: Es gibt jetzt eine eigene Handlerfunktion
fⁿr dem Parser unbekannte Kommandos:
char *ExpandRXCommand( struct RexxHost *host,
char *commandline );
Diese wird aufgerufen, bevor der Parser "Not implemented"
als Fehler ausgibt. Wenn die Funktion NULL zurⁿckgibt,
wird der Fehler ausgegeben, ansonsten versucht der
Parser, den zurⁿckgegebenen String zu analysieren.
Diese Funktion kann z.B. die Expansion von Aliases
oder die Bearbeitung von Non-Standard-Kommandos ⁿber-
nehmen.
Achtung! Es wird erwartet, da▀ Expand() eigens
Speicher fⁿr den Resultatstring allokiert, dieser
wird von den ARB-Routinen dann freigegeben!
ENHANCED: Die Checks beim Generieren der Source-
Module sind jetzt sicherer. Es wird nun auch auf
Existenz des C- und H-Moduls geprⁿft.
NOTE: Als ich die vom Style Guide vorgeschlagenen
Standardkommandos eingab, sah ich, da▀ die Argumente
"VAR" und "STEM" an einer Stelle auch dazu benutzt
werden, die EINgabe der Funktion von den damit be-
nannten Variablen zu holen. Ich wei▀ nicht, ob das so
eine glⁿckliche Wahl ist, da man auf diese Art&Weise
keine Resultate mehr haben kann. Besser wΣre eine
andere Benennung, z.B. "FROMVAR" und "FROMSTEM".
VorschlΣge?
Die ARB kⁿmmert sich wenig um die bereits eingegebenen
Argumente, wenn Resultatfelder existieren, werden
VAR und STEM immer in das Template aufgenommen.
Allgemein sind einige Definitionen an der Stelle im
Style Guide sehr ungenau oder unzureichend. Ich habe
die Definition (sinnvoll) erweitert. Wer mit meinen
─nderungen nicht einverstanden ist, soll sich bitte
melden.
NOTE: Beim ⁿbernehmen alter Interface-Routinen daran
denken, da▀ ein neuer Parameter dazu gekommen ist!
FIXED: Numerische Resultate funktionieren jetzt.
V0.99f ENHANCED: Es werden zwei FileRequester verwendet,
einer fⁿr Binaries und einer fⁿr Sourcen. Die Patterns
bleiben nun erhalten und sind standardmΣssig mit #?
statt *.
(Report: Stefan Zeiger)
FIXED: Window-Topedge ist nun Fontsensitiv.
(Report: Stefan Zeiger)
V0.99g FIXED: Beim Parsen der Argumente wird nun der von
ReadArgs() erzeugte Fehlercode als rc2 benutzt.
CHANGED: Den Templates wird nun vor dem Parsen kein
\n mehr angehΣngt (unn÷tig).
CHANGED: Die ARexxBox benutzt nun den ASL-Filerequester.
(Wunsch: Garry Glendown [Sysop@Insider])
V1.00 ENHANCED: Source wird nun auch vom GCC fehlerfrei
und warnungsfrei ⁿbersetzt - naja, fast warnungsfrei.
Die verbleibenden Warnungen k÷nnen aber getrost
ignoriert werden.
CHANGED: FindRXCommand() akzeptiert nur noch echte
Abkⁿrzungen der vorhandenen Befehle.
--- ERSTER ╓FFENTLICHER RELEASE ---