home *** CD-ROM | disk | FTP | other *** search
- /* TXT2EXE Interprogram-Communication-Area [PFH93] */
-
- #include <stdio.h>
- #include <dos.h>
- #include <process.h>
-
- #include "t2ecomm.h"
-
- main()
- {
- /* do or call or spawn something *(;-.) */
-
- if (!TXT2EXEset(T2E_Ueberschrift,5)) /* ein mit TXT2EXE erstelltes Programm */
- /* beginnt nun mit der Anzeige bei der */
- /* fünften Überschrift */
- {
- printf("T2ECIA nicht installiert\n"); /* nicht installiert --> Fehler */
- exit(1); /* Programm beenden */
- }
-
- /* do or call or spawn something ++&-<;-( */
-
- TXT2EXEset(T2E_Seite,342); /* ein mit TXT2EXE erstelltes Programm */
- /* beinnt mit der Anzeige ab Seite 342 */
-
- /* do or call or spawn something *++()<<-)> */
-
- TXT2EXEset(T2E_Zeile,65537); /* ein mit TXT2EXE erstelltes Programm */
- /* beinnt mit der Anzeige ab Zeile 65537 */
-
- return(0);
- }
-
-
- int TXT2EXEset(int mode, long value)
- /*************************************************************************/
- /* */
- /* Setzt Zeile, Seite, Ueberschrift für die Stelle an der mit TXT2EXE */
- /* erzeugte Programme mit der Anzeige beginnen sollen. Jedoch muß */
- /* zuvor das TSR T2EICA (600 Bytes) installiert sein. */
- /* */
- /* AUFRUF INT 2Fh */
- /* AX = 5547h */
- /* Bh = Function : 0 -- installed // 1 -- set val // 2 -- get val */
- /* Bl = Modus : 0 -- Zeile // 1 -- Seite // 2 -- Ueberschrift */
- /* CX = Wert div 65536 (Hi-Word) */
- /* DX = Wert mod 65536 (Lo-Word) */
- /* */
- /* Zurück : */
- /* AX = 524Eh wenn OK */
- /* */
- /*************************************************************************/
- {
- unsigned TXT2EXE_ICA_KENNUNG = 0x5547; /* "GU" */
- unsigned TXT2EXE_ICA_ANTWORT_OK = 0x524e; /* "NR" */
-
- union REGS r; /* Register */
-
- r.x.ax = TXT2EXE_ICA_KENNUNG; /* Kennung in AX */
- r.h.bh = 0; /* ICA installiert ? */
- int86(0x2f, &r, &r); /* call int 2fh */
-
- if (r.x.ax == TXT2EXE_ICA_ANTWORT_OK) /* AX=Antwort-> OK */
- {
- switch (mode) { /* Modus auswerten */
- case
- T2E_Zeile : r.h.bl = 0; break; /* Zeile : bl = 0 */
- case
- T2E_Seite : r.h.bl = 1; break; /* Seite : bl = 1 */
- case
- T2E_Ueberschrift : r.h.bl = 2; break; /* Ueberschrift : bl = 2 */
-
- default : return(0); /* Falscher Parameter oder */
- /* falsche Funktion */
- }
-
- r.h.bh = 1; /* Funktion PUT-Value to ICA */
- r.x.ax = TXT2EXE_ICA_KENNUNG;
- r.x.cx = value / 65536; /* long --> hi-word */
- r.x.dx = value % 65536; /* long --> lo-word */
- int86(0x2f, &r, &r); /* call int 2fh */
-
- if (r.x.ax == TXT2EXE_ICA_ANTWORT_OK) /* AX=Antwort -> OK */
- return(1); /* Alles glatt gegangen */
- else
- return(0); /* schiefgeganen ... */
- }
- else
- return(0); /* T2EICA nicht installiert */
- }
-
-