english description added

Michael Riedl Michael Riedl 2018-06-08

<< < 1 2 (Page 2 of 2)
changed TIO.def
changed TIO.mod
changed Test02.mod
changed Timer.def
changed UnixLib.def.m2cc
changed UserLib.def
changed XFormAus.def.m2cc
changed XFormAus.mod.m2cc
changed mkall.mod
copied fslength.c -> UnixCalls.c
copied fslength.def.m2cc -> UnixCalls.def
TIO.def Diff Switch to unified view
Loading...
TIO.mod Diff Switch to unified view
Loading...
Test02.mod Diff Switch to unified view
Loading...
Timer.def Diff Switch to unified view
Loading...
UnixLib.def.m2cc Diff Switch to unified view
Loading...
UserLib.def Diff Switch to unified view
Loading...
XFormAus.def.m2cc Diff Switch to unified view
Loading...
XFormAus.mod.m2cc Diff Switch to unified view
Loading...
mkall.mod Diff Switch to unified view
Loading...
fslength.c to UnixCalls.c
--- a/fslength.c
+++ b/UnixCalls.c
@@ -1,16 +1,29 @@
-/*---------------------------------------------------------------------------*/
-/* fslenght : Kann von FileSystem.Length gerufen werden, um die L"ange einer */
-/*             Datei zu ermitteln.                                           */
-/*                                                                           */
-/* Autor            : M. Riedl, Bochum den 08.03.1996                        */
-/*                                                                           */
-/* Letzte "Anderung :                                                        */
-/*                                                                           */
-/*   08.03.1996, M.Riedl : Initial version                                   */
-/*   11.01.2015, M.Riedl : Changed order of arguments to FileLength to avoid */
-/*                         Problems occuring with HIGH parameter handling of */
-/*                         different M2 compilers "C" interface              */
-/*---------------------------------------------------------------------------*/
+  /*------------------------------------------------------------------------*/
+  /* UnixCalls - call to Unix functions which need some "C" code around ... */
+  /*                                                                        */
+  /* FileLength : Kann von FileSystem.Length gerufen werden, um die L"ange  */
+  /*              einer Datei zu ermitteln.                                 */
+  /* SetErrFlag : Ermitteln der Fehlermeldung des letzen fehlgeschlagenen   */
+  /*              Systemfunktionsaufrufs, siehe man errno und man strerror  */
+  /*                                                                        */
+  /* Letzte "Anderung :                                                     */
+  /*                                                                        */
+  /* 08.03.96, MRi: Initial version                                         */
+  /* 11.01.15, MRi: Changed order of arguments to FileLength to avoid       */
+  /*                Problems occuring with HIGH parameter handling of       */
+  /*                different M2 compilers "C" interface                    */
+  /* 08.06.18, MRi: Umbenennen von fslength to UnixCalls                    */
+  /*------------------------------------------------------------------------*/
+  /* Offene Punkte                                                          */
+  /*                                                                        */
+  /* - Abschaffen von FileLength                                            */
+  /* - Umstellen von strrerror durch strerror_r                             */
+  /*------------------------------------------------------------------------*/
+  /* Implementation : Michael Riedl                                         */
+  /* Licence        : GNU Lesser General Public License (LGPL)              */
+  /*------------------------------------------------------------------------*/
+
+  /* $Id: UnixCalls.c,v 1.1 2018/06/08 07:46:37 mriedl Exp $ */
 
 #undef debug
 
@@ -50,6 +63,6 @@
       strcpy(Fehlerflag, strerror(errno));
 } /* SetErrFlag */
 
-void BEGIN_fslength()
+void BEGIN_UnixCalls()
 
 { /* Leer, f"ur mtc */ }
fslength.def.m2cc to UnixCalls.def
--- a/fslength.def.m2cc
+++ b/UnixCalls.def
@@ -1,29 +1,14 @@
-#ifdef __XDS__
-<*+ M2ADDTYPES *>
-<*+ M2EXTENSIONS *>
-<*+ NOHEADER *>
-<* IF NOT DEFINED(GENCTYPES) THEN *> <* NEW GENTYPEDEF+ *> <* END *>
-<*+ CSTDLIB *>
-  
-DEFINITION MODULE ["C"]   fslength; (* XDS *)
-
-#endif
-#ifdef __GM2__
-DEFINITION MODULE FOR "C" fslength; (* GNU M2 *)
-
-#endif
-#ifdef __MOCKA__
-FOREIGN MODULE fslength; (* Mocka  *)
-#endif
+DEFINITION MODULE ["C"] UnixCalls; (* XDS *)
 
   (*========================================================================*)
-  (* WICHTIG: BITTE NUR DIE DATEI fslenght.def.m2cc EDITIEREN !!!           *)
+  (* WICHTIG: BITTE NUR DIE DATEI UnixCalls.def.m2cc EDITIEREN !!!          *)
   (*========================================================================*)
-  (* Ermitteln der Laenge einer Datei                                       *)
+  (* Aufrufe von UNIX Prozeduren mit "C" Huelle                             *)
+  (* Call to UNIX procedures with a "C" wrapper                             *)
   (*                                                                        *)
   (* Es sind 3 Versionen enthalten die mit                                  *)
   (*                                                                        *)
-  (*   m2cc -D __{Parameter}__ < fslength.def.m2cc > fslength.def           *)
+  (*   m2cc -D __{Parameter}__ < UnixCalls.def.m2cc > UnixCalls.def         *)
   (*                                                                        *)
   (* mit Parameter = {XDS|GM2} erzeugt werden koennen.                      *)
   (*                                                                        *)
@@ -31,25 +16,40 @@
   (*   GM2   : Parameter werden fuer den GNU Modula-2 Compilter gesetzt     *)
   (*   MOCKA : Parameter werden fuer den MOCKA        Compilter gesetzt     *)
   (*                                                                        *)
+  (* There are three version contained for XDS,GM2 and the Mocka compiler,  *)
+  (* they can obtained with the m2cc command line shown above               *)
   (*------------------------------------------------------------------------*)
-  (* Offene Punkte                                                          *)
-  (*                                                                        *)
-  (* - Abschaffen des Moduls                                                *)
-  (*------------------------------------------------------------------------*)
-  (* Licence : GNU Lesser General Public License (LGPL)                     *)
+  (* Implementation : Michael Riedl                                         *)
+  (* Licence        : GNU Lesser General Public License (LGPL)              *)
   (*------------------------------------------------------------------------*)
 
-  (* $Id: fslength.def.m2cc,v 1.2 2018/01/14 15:30:34 mriedl Exp $ *)
+  (* $Id: UnixCalls.def.m2cc,v 1.3 2018/06/08 07:46:25 mriedl Exp mriedl $ *)
 
 PROCEDURE FileLength(VAR DateiLaenge : LONGCARD;
                      VAR Fehler      : INTEGER;
                      VAR DateiName   : ARRAY OF CHAR); (* Als letztes wg. HIGH *)
 
-          (*-----------------------------------------------------*)
-          (* Kann von FileSystem.Length gerufen werden, um die   *)
-          (* L"ange einer Datei zu ermitteln.                    *)
-          (*-----------------------------------------------------*)
+          (*----------------------------------------------------------------*)
+          (* Kann von FileSystem.Length gerufen werden, um die  L"ange      *)
+          (* einer Datei zu ermitteln.                                      *)
+          (*                                                                *)
+          (* Can be user by FileSystem.Lenght to get the length of a file   *)
+          (* for internal use only.                                         *)
+          (*----------------------------------------------------------------*)
 
 PROCEDURE SetErrFlag(VAR Fehlerflag : ARRAY OF CHAR);
 
-END fslength.
+          (*----------------------------------------------------------------*)
+          (* Ermitteln der letzten System-Fehlermeldung. Dies wird mittels  *)
+          (* strerror(errno) und kopieren des gelieferten Zeigerinhalt in   *)
+          (* Fehlerflag erreicht.                                           *)
+          (*                                                                *)
+          (* Can be used to get the system error massage of the last error  *)
+          (* errno is an integer variable which is set by system calls and  *)
+          (* some library functions in the event of an error to indicate    *)
+          (* what went wrong. "strerror" provides a pointer to a string     *)
+          (* that describes the error code passed in the argument errnum.   *)
+          (* The procedure copies that content to Fehlerflag via strcpy     *)
+          (*----------------------------------------------------------------*)
+
+END UnixCalls.
<< < 1 2 (Page 2 of 2)