Hinweise zum compilieren mit Turbo Pascal 6.0:



MCUT *muss* mit TPC compiliert werden, die IDE und der Debugger sind

viel zu gross. Ich selbst arbeite mit Boxer oder Xemacs.



Und so gehts: Path auf das TP-Verzeichnis setzen. Die mitgelieferte

TPC.CFG an die eigene Verzeichnis-Struktur anpassen. In das MCUT

Source Verzeichnis wechseln und "tpc t\mcut" eingeben.



Der TPC schmiert beim Compilieren des ganzen Sources mehrmals ab.

Das ist normal und ein Fehler von TP, einfach so oft TPC T\MCUT

im source-directory aufrufen, bis es durchcompiliert ist.



ein TPC /B ist recht aussichtslos, lieber alle dateien mittels touch

auf die aktuelle uhrzeit setzen und mehrmals tpc ohne /b drueberlaufen

lassen.        



***



Hinweise zum compilieren mit FPK-Pascal 0.9.1:



Die DOS-Source compiliert derzeit garnicht mit FPK, es gibt aber einen

speziell angepassten Tree, mit dem es geht. Allerdings wird dieser

nicht weiter gepflegt, da FPK 0.9.3 und hoeher aller vorraussicht nach

den TP6-Source compilieren koennen wird. Der Source fuer FPK/0.9.1 fuer

Linux ist auf unserer Homepage http://home.pages.de/~1409 abrufbar.



***



Generelle Hinweise zum Aufbau des Quellcodes:

  Im Unterverzeichnis U befindet sich der Source von externen Utilities,

  die eigene Programme ergeben.

  Unter T ist alles, was irgendwie mit dem Terminal zu tun hat.

  Unter B alles, was mit der BBS zu tun hat.

  Das Verzeichnis C enthaelt den Convers.

  Das Verzeichnis H die online-Hilfe.

  Im Verzeichnis V sind verschiedene Hilfs-Units von Jochen, dg6Vj

  Im Verzeichnis I sind verschiedene Units von HP, dg4Iad aber auch

  Code von Gerd, DG8NDY.

 

  Es sind folgende Conditional Defines moeglich:

       FLEXNET  - aktiviert das FLEXNET-Interface, es ist FLXAPP.TPU

                  von DG9FDL noetig (nicht mitgeliefert)

       WA8DED   - Das Hostmode-Interface

       BOX      - Erzeugt eine Version mit Mailbox

       B1       - Aktiviert F6FBB Stufe 3 (B1 im SID) - noch unfertig!

       CONVERS  - ... mit convers

       CONVNETZ - ... mit Ping-Pong-Convers (sehr instabil!)

       EDITOR   - der interne Editor

       HILFE    - die Online-Hilfe

       OVR      - Compiliert mit Overlays - unter TP6 unbedingt noetig!

       



  Sehr wichtig sind folgende Units:

     T\MCUT.PAS   - das Hauptprogramm

     T\IADVAR.PAS - globale Variablen und Speicherverwaltung.

 

  Neue Remote-Befehle sind in T\MCUTREM.PAS einzuflechten.

  Neue Terminal-Befehle in T\TERM_O.PAS.

  Die Keyboard-Bearbeitung findet man in T\MCUTTERM.PAS.

  Die Konfiguration MCUT.CFG wird in T\QUICKSET.PAS gelesen und geschrieben.



  Eine neue Dialogbox muss eine neue Dialog-Box Nummer bekommen auf

  die die Variable which_dialog gesetzt wird. Zudem muss fuer jede

  Dialogbox eine Auswertungs-Routine geschrieben werden, die unter

  T\MCUTTERM.PAS in DoKeyboard eingetragen werden muss. (DIALOG1/2.PAS

  sollten genuegend Beispiele enthalten).

   

  Soll die Console um eine weitere Betriebsart erweitert werden, bitte

  in IADVAR.PAS eine neue CONS_ Konstante definieren und diese in

  DoKeyboard und in I\SCREEN.PAS abfangen.

  

  Soll eine interaktiver Remote-Befehl oder aehnliches geschrieben werden,

  so ist handle() in T\MCUTLIB zu erweitern. KS[]^.Status und KS[]^.LastState

  sind entsprechend zu setzen.



  Saemtliche Ausgaben auf Packet-Radio sind mittels Putdata(Kanal,String)

  zu erzeugen. Dateien mit PutFile/PutBinFile senden.

  

  Die Speicherbelegung ueberpruefen, moeglichst immer 60Kbytes frei lassen!

  

  Saemtliche Bildschirmausgaben sollten moeglichst entweder ueber PopUPs

  oder Dialogboxen erfolgen, oder aber mit prints() ausgegeben werden,

  niemals die CRT-Routinen benutzen!

  

  Immer XREADKEY und XKEYPRESSED statt der CRT-Routinen benutzen!

  

  Moeglichst immer mit dynamischen Variablen arbeiten!

  

  Jede Aenderung kommentieren und Patches an dg4iad@db0hdb oder

  hzorn@ix.urz.uni-heidelberg.de schicken.



  Bitte fhrt ein ChangeLog!

  Bitte kommentiert ausgiebig!

  

  Ich werde alle eingehenden Patches in die offizielle Version aufnehmen.

  Wenn es _irgendwie_ geht, keine eigenen Versionen verteilen, auch wenn

  es durch die GPL natuerlich gestattet ist. Trotzdem, bitte schickt

  patches (diff,modify-scripts,ganze units, egal!)



***





