home *** CD-ROM | disk | FTP | other *** search
/ The Best of Select: Games 9 / CD_1.iso / dosgames / carracer / dpmiuser.doc < prev    next >
Text File  |  1993-04-05  |  11KB  |  252 lines

  1.                         Borland Pascal 7.0
  2.                        DPMI-Dienstprogramme
  3.                        ====================
  4.  
  5. Diese Datei beschreibt die Programme RTM.EXE, RTMRES.EXE, DPMI16BI.OVL,
  6. DPMIINST.EXE und DPMILOAD.EXE. Sie dürfen diese Programme unter denselben
  7. Lizenzbedingungen weitergeben, die für Borland Pascal 7.0 gelten. Stellen
  8. Sie den Anwendern Ihrer Programme auch die in dieser Datei enthaltenen
  9. Informationen zur Verfügung.
  10.  
  11. Es werden folgende Themen behandelt:
  12.  
  13.   o Das Ausführen eines DOS-Protected-Mode-Programms
  14.  
  15.   o Was Sie tun können, wenn der DPMI-Server von Borland auf Ihrem System
  16.     nicht läuft
  17.  
  18.   o Wie Sie DOS-Umgebungsvariablen für die mit Borland Pascal 7.0
  19.     erzeugten Programme setzen
  20.  
  21.   o Besonderheiten bei der Ausführung unter Windows
  22.  
  23.   o Wie Sie die Speicherbelegung durch den DPMI-Lader steuern können
  24.  
  25.   o Ein Hinweis für Anwender von Borland C++ und Paradox 4.0
  26.  
  27.  
  28. ================================================
  29. Das Ausführen eines DOS-Protected-Mode-Programms
  30. ================================================
  31.  
  32. Wenn Sie ein Protected-Mode-Programm starten, müssen Sie sicherstellen,
  33. daß sich DPMI16BI.OVL (der DPMI-Server), RTM.EXE (der DPMI-Lader)
  34. und alle von der Anwendung benötigten DLLs an einem der folgenden Orte
  35. befinden:
  36.  
  37.   - im aktuellen Verzeichnis
  38.   - im selben Verzeichnis wie die Anwendung
  39.   - im Suchpfad.
  40.  
  41.  
  42. Protected Mode und Speicher
  43. ---------------------------
  44.  
  45. DPMI (für DOS Protected Mode Interface) ermöglicht es einem DOS-
  46. Programm, im Protected Mode zu laufen und dadurch auf den gesamten
  47. Arbeitsspeicher Ihres Computers zuzugreifen. Von einigen Ausnahme-
  48. fällen abgesehen, ist diese Technik vollkommen transparent und es
  49. sind keine besonderen Maßnahmen nötig, um ein Programm im Protected
  50. Mode auszuführen.
  51.  
  52.  
  53. DPMIINST
  54.  
  55. Ein solcher Ausnahmefall kann auftreten, wenn Sie ein Protected-
  56. Mode-Programm das erste Mal auf einem Rechner mit 80286-Prozessor
  57. ausführen. Zur Konfiguration der Protected-Mode-Schnittstelle wird
  58. eine interne Datenbank mit verschiedenen Rechner-Charakteristika
  59. verwendet. Aufgrund dieser Informationen wird entschieden, wie der
  60. Protected Mode auf Ihrem Rechner aktiviert werden kann. Wenn Sie einen
  61. Rechner mit einem älteren 80286 haben, kann es vorkommen, daß dieser
  62. nicht erkannt wird. In diesem Fall sehen Sie bei Start des Protected-
  63. Mode-Programms die folgende Meldung:
  64.  
  65.   Machine not in database (RUN DPMIINST)
  66.  
  67. Falls Sie diese Meldung erhalten, dann lassen Sie einfach DPMIINST
  68. laufen. Tippen Sie an der DOS-Eingabeaufforderung DPMIINST ein und
  69. folgen Sie den Instruktionen des Programms.
  70.  
  71. DPMIINST unterzieht Ihren Rechner einer Reihe von Tests, um zu
  72. ermitteln, wie der Protected Mode am besten aktiviert werden kann,
  73. und konfiguriert die DPMI-Schnittstelle entsprechend. Sie müssen
  74. dieses Programm nur ein einziges Mal ausführen.
  75.  
  76. Einige Speicherverwaltungsprogramme, Gerätetreiber und speicher-
  77. residente Programme können unter Umständen verhindern, daß DPMIINST
  78. die nötigen Tests durchführt. Entfernen Sie vorübergehend alle
  79. derartigen Programme, wenn DPMIINST nicht korrekt abläuft, oder
  80. schalten Sie sie ab, so daß DPMIINST den uneingeschränkten Zugriff
  81. auf Ihr System erhält.
  82.  
  83. Beachten Sie, daß DPMIINST weder auf einem Rechner, auf dem HIMEM
  84. (oder ein äquivalentes Programm) läuft, noch auf einem Rechner mit
  85. 80386- oder 80486-Prozessor je benötigt wird.
  86.  
  87.  
  88. DPMIMEM
  89.  
  90. Per Vorgabe belegt die DPMI-Schnittstelle alles verfügbare Extended
  91. Memory. Wenn Sie das verhindern möchten, können Sie eine DOS-Umge-
  92. bungsvariable definieren, die eine Obergrenze für den verwendeten
  93. Speicher festlegt. Diese Definition können Sie entweder an der DOS-
  94. Eingabeaufforderung oder in die Datei AUTOEXEC.BAT eingeben. Die
  95. Syntax lautet:
  96.  
  97.   SET DPMIMEM=MAXMEM nnnn
  98.  
  99. wobei nnnn für die Speichergröße in Kilobyte steht.
  100.  
  101. Falls beispielsweise Ihr Rechner 4 MB hat und DPMI nur 2 MB ver-
  102. wenden soll, können Sie die Umgebungsvariable DPMIMEM wie folgt
  103. definieren:
  104.  
  105.   SET DPMIMEM=MAXMEM 2048
  106.  
  107. Einige Speicherverwaltungsprogramme wie QEMM oder 386^Max können ein und
  108. denselben Speicherbereich wahlweise als Expanded oder Extended Memory
  109. reservieren. Viele ältere Programme können nur Expanded Memory (EMS)
  110. nutzen. Mit der Umgebungsvariablen DPMIMEM können Sie erreichen, daß
  111. nur ein Teil des Extended Memory für DPMI genutzt wird, so daß diesen
  112. älteren Programm weiterhin EMS-Speicher zur Verfügung steht.
  113.  
  114.  
  115. RTMRES
  116.  
  117. RTMRES lädt das DPMI-System vorab. Wenn Sie das tun, startet ein
  118. Protected-Mode-Programm etwas rascher. Wenn Sie beim Aufruf ein
  119. Programm mit angeben, wird es geladen. Ansonsten lädt RTMRES eine
  120. DOS-Shell, die Sie wie üblich mit EXIT beenden können.
  121.  
  122. RTMRES ist dann besonders von Nutzen, wenn Sie ein Protected-Mode-
  123. Programm immer wieder starten und beenden. Normalerweise würde bei
  124. jedem Start der DPMI-Server geladen, was Sie sich ersparen können,
  125. wenn Sie ihn mit RTMRES resident machen.
  126.  
  127.  
  128. EXTENDED MEMORY
  129.  
  130. Die Kommunikation eines Protected-Mode-Programms mit dem  DPMI-
  131. Server geschieht über den DPMI-Lader RTM.EXE. Per Vorgabe
  132. benutzt ein Protected-Mode-Programm allen vom DPMI-Kernel reser-
  133. vierten Speicher.
  134.  
  135.  
  136. ===================================================
  137. Ein Protected-Mode-Programm unter Windows ausführen
  138. ===================================================
  139.  
  140. Ein DOS-Protected-Mode-Programm läuft unter dem erweiterten
  141. 386er-Modus von Windows. Mit Hilfe einer PIF-Datei können Sie fest-
  142. legen, wieviel Speicher dem Programm zur Verfügung gestellt wird.
  143. Was eine PIF-Datei ist und wie Sie eine anlegen, erfahren Sie im
  144. Benutzerhandbuch zu Microsoft Windows.
  145.  
  146.  
  147. Ein Protected-Mode-Programm im Windows-Standardmodus ausführen
  148. --------------------------------------------------------------
  149.  
  150. Wenn Sie ein Protected-Mode-Programm im Windows-Standardmodus aus-
  151. führen wollen, müssen Sie die DOS-Umgebungsvariable DPMIMEM
  152. definieren und RTMRES starten, bevor Sie Windows starten. Beides
  153. ist weiter oben beschrieben. Lassen Sie bei der Definition von DPMIMEM
  154. genügend Speicher für Windows übrig.
  155.  
  156. Sobald Sie DPMIMEM geladen haben, können Sie Windows nicht mehr im
  157. erweiterten 386er-Modus ausführen. Sie müssen RTMRES erst wieder
  158. verlassen (tippen Sie dazu an der DOS-Eingabeaufforderung EXIT ein).
  159.  
  160.  
  161. Die DOS-Eingabeaufforderung von Windows
  162. ---------------------------------------
  163.  
  164. Um ein DOS-Protected-Mode-Programm von der DOS-Eingabeaufforderung
  165. unter Windows zu starten, müssen Sie die Datei DOSPRMPT.PIF in Ihrem
  166. Windows-Verzeichnis bearbeiten. Andernfalls kann das Protected-Mode-
  167. Programm kein Extended Memory nutzen.
  168.  
  169. Starten Sie den PIF-Editor von Windows, öffnen Sie die Datei
  170. DOSPRMPT.PIF und geben Sie darin an, wieviel Extended Memory das
  171. Protected-Mode-Programm benutzen soll. Wenn Sie mit dem PIF-Editor
  172. nicht vertraut sind, können Sie Einzelheiten im Benutzerhandbuch zu
  173. Microsoft Windows nachlesen.
  174.  
  175.  
  176. ================================================================
  177. Wie Sie die Speicherbelegung durch den DPMI-Lader steuern können
  178. ================================================================
  179.  
  180. Der DPMI-Lader versucht, möglichst viel konventionellen Speicher
  181. zur Verfügung zu stellen, bevor er eine Anwendung lädt (er lagert
  182. nach Mögichkeit Speicherblöcke ins Extended Memory aus). Er versucht
  183. hingegen nicht, Extended Memory freizugeben. Falls Sie andere
  184. Protected-Mode-Programme benutzen wollen, die den DPMI-Lader
  185. nicht verwenden (beispielsweise Paradox 4.0), so können Sie die
  186. Speicherbelegung mit Hilfe der DOS-Umgebungsvariablen RTM steuern.
  187.  
  188. Mit Hilfe des SET-Befehls können Sie die Umgebungsvariable RTM in der
  189. DOS- Kommandozeile definieren. Es gilt folgende Syntax:
  190.  
  191.   SET RTM=[Option nnnn]
  192.  
  193. Die folgende Tabelle listet die verfügbaren Optionen auf. nnnn kann
  194. eine dezimale oder hexadezimale Zahl sein, letztere im Format xAB54
  195. oder xab54.
  196.  
  197.    Option          Beschreibung
  198.    -------------------------------------------------------------
  199.    EXTLEAVE nnnn   Es werden stets nnnn Kilobyte Extended Memory
  200.                    freigelassen. Der Vorgabewert i