diff --git a/doc/lfun/SetCoinsPerUnits b/doc/lfun/SetCoinsPerUnits
index 07e3879..0533275 100644
--- a/doc/lfun/SetCoinsPerUnits
+++ b/doc/lfun/SetCoinsPerUnits
@@ -1,38 +1,63 @@
+
 SetCoinsPerUnits()
+******************
 
-FUNKTION:
-     void SetCoinsPerUnits(int coins, int units);
 
-DEFINIERT IN:
-     /std/unit.c
+FUNKTION
+========
 
-ARGUMENTE:
-     coins
-          Zahl der Muenzen
-     units
-          Zahl der Einheiten
+   void SetCoinsPerUnits(int coins, int units);
 
-BESCHREIBUNG:
-     Es wird festgelegt, wieviel eine bestimmte Menge der Einheiten kostet.
-     Eine einzelne Einheit kostet coins/units Muenzen.
 
-RUeCKGABEWERT:
-     keiner
+DEFINIERT IN
+============
 
-BEMERKUNGEN:
-     Bei der Preisberechnung wird abgerundet. Hat man also ein Verhaeltnis
-     von einer Muenze pro zwei Einheiten, so ist der Preis einer einzelnen
-     Einheit 0!
+   /std/unit.c
 
-BEISPIELE:
-     Eine Einheit soll 3.5 Muenzen wert sein:
 
-     /* 7 Muenzen / 2 Einheiten = 3.5 Muenzen / Einheit */
-     SetCoinsPerUnits(7,2);
+ARGUMENTE
+=========
 
-SIEHE AUCH:
-     QueryCoinsPerUnits(), SetGramsPerUnits(), QueryGramsPerUnits(),
-     /std/unit.c
+   coins
+        Zahl der Muenzen
+   units
+        Zahl der Einheiten
 
-----------------------------------------------------------------------------
+
+BESCHREIBUNG
+============
+
+   Es wird festgelegt, wieviel eine bestimmte Menge der Einheiten kostet.
+   Eine einzelne Einheit kostet coins/units Muenzen.
+
+
+RUeCKGABEWERT
+=============
+
+   keiner
+
+
+BEMERKUNGEN
+===========
+
+   Bei der Preisberechnung wird abgerundet. Hat man also ein Verhaeltnis
+   von einer Muenze pro zwei Einheiten, so ist der Preis einer einzelnen
+   Einheit 0!
+
+
+BEISPIELE
+=========
+
+   Eine Einheit soll 3.5 Muenzen wert sein:
+
+   /* 7 Muenzen / 2 Einheiten = 3.5 Muenzen / Einheit */
+   SetCoinsPerUnits(7,2);
+
+
+SIEHE AUCH
+==========
+
+   QueryCoinsPerUnits(), SetGramsPerUnits(), QueryGramsPerUnits(),
+   /std/unit.c
+
 Last modified: Wed May 8 10:24:57 1996 by Wargon
