diff --git a/doc/efun/mktime.de b/doc/efun/mktime.de
new file mode 100644
index 0000000..03f7913
--- /dev/null
+++ b/doc/efun/mktime.de
@@ -0,0 +1,43 @@
+SYNOPSIS
+        #include <time.h>
+
+        int mktime(int *ts)
+
+BESCHREIBUNG
+        Ist das Argument <ts> ein Array mit 9 Elementen (int) entsprechend
+        des Rueckgabewertes von localtime(), so liefert die Funktion
+        die Anzahl Sekunden seit dem 01. Januar 1970, 00:00:00 zurueck.
+        Hierbei wird immer die aktuelle Zeitzone des Hostrechners zugrunde
+        gelegt.
+        Dies ist von Nutzen, wenn man ein Datum/Uhrzeit hat, diese aber als
+        Ganzzahl-Wert speichern will oder eine Zeitdifferenz zwischen zwei
+        Daten ausrechnen will.
+
+        Das Array muss dabei so aufgebaut sein:
+            int TM_SEC    (0):  Sekunde in der Minute (0..59)
+            int TM_MIN    (1):  Minute in der Stunde (0..59)
+            int TM_HOUR   (2):  Stunde des Tages (0..23)
+            int TM_MDAY   (3):  Tag im Monat (1..31)
+            int TM_MON    (4):  Monat des Jahres (0..11)
+            int TM_YEAR   (5):  Jahr (z.B. 2001)
+            int TM_WDAY   (6):  Wochentag (0..6, Sonntag = 0)
+            int TM_YDAY   (7):  Tag im Jahr (0..365)
+            inz TM_ISDST  (8):  Sommerzeit, Daylight Saving Time (1,0,-1)
+
+        TM_YDAY und TM_WDAY werden ignoriert und koennen beliebige Zahlen
+        enthalten.
+        TM_ISDST kann 1 (Sommerzeit), 0 (keine Sommerzeit) oder -1 sein. Bei
+        -1 wird versucht, zu erraten, ob Sommerzeit fuer die angegebene Zeit
+        aktiv sein sollte.
+
+BEISPIELE
+        Man hat ein Datum/Uhrzeit (z.B. Benutzereingabe), welches als
+        Unix-Zeitstempel gespeichert werden soll:
+        // "Mit, 24. Okt 2007, 10:48:00" entspricht folgendem Zeitstempel:
+        int unixzeit = mktime(({0, 48, 09, 24, 09, 2007, 0, 01, 0}));
+
+GESCHICHTE
+        Eingefuehrt in LDMud 3.3.718.
+
+SIEHE AUCH
+        ctime(E), gmtime(E), localtime(E), time(E), utime(E)
