en:docs:fapi:dosgetmachinemode

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:docs:fapi:dosgetmachinemode [2018/09/05 07:32] – [Note] prokusheven:docs:fapi:dosgetmachinemode [2021/12/05 09:59] (current) prokushev
Line 1: Line 1:
-{{logos:os2.gif?35x35}} {{logos:dos.gif?35x35}}+{{page>en:templates:fapiint}}
  
 ====== DosGetMachineMode ====== ====== DosGetMachineMode ======
Line 5: Line 5:
 This call returns the current mode of the processor, whether the processor is running in the DOS mode or the OS/2 mode. This allows an application to determine whether a dynamic link call is valid or not. This call returns the current mode of the processor, whether the processor is running in the DOS mode or the OS/2 mode. This allows an application to determine whether a dynamic link call is valid or not.
  
-==Syntax==+===== Syntax =====
  
-  DosGetMachineMode (MachineMode)+<code c> 
 +DosGetMachineMode (MachineMode) 
 +</code>
  
-==Parameters==+===== Parameters =====
  
-  * MachineMode (PBYTE) - output: Address of the value to indicate the current processor mode. This value may be:+ 
 +  * MachineMode ([[PBYTE]]) - output: Address of the value to indicate the current processor mode. This value may be:
     *0 - DOS (real) mode     *0 - DOS (real) mode
     *1 - OS/2 (protected) mode.     *1 - OS/2 (protected) mode.
  
-==Return Code==+===== Return Code =====
  
-  * rc (USHORT) - return+rc ([[USHORT]]) - return
  
 Return code description is: Return code description is:
Line 23: Line 26:
   *0 NO_ERROR   *0 NO_ERROR
  
-==Remarks==+===== Remarks ===== 
 All dynamic link calls are available to an application if the MachineMode value indicates the program is in OS/2 mode. This method provides a self-tailoring application that allows the application to adapt to the execution environment by limiting or enhancing the functions it provides. All dynamic link calls are available to an application if the MachineMode value indicates the program is in OS/2 mode. This method provides a self-tailoring application that allows the application to adapt to the execution environment by limiting or enhancing the functions it provides.
  
 If the MachineMode value indicates the program is in DOS mode (or real), the application is limited to a subset of dynamic link calls listed in the [[en:docs:fapi|Family API]]. If the MachineMode value indicates the program is in DOS mode (or real), the application is limited to a subset of dynamic link calls listed in the [[en:docs:fapi|Family API]].
  
-==Example Code==+===== Example Code =====
  
-===C Binding===+==== C Binding ====
  
 +<code c>
   #define INCL_DOSMISC   #define INCL_DOSMISC
      
Line 37: Line 42:
   PBYTE   MachineMode;   /* Processor mode (returned) */   PBYTE   MachineMode;   /* Processor mode (returned) */
   USHORT  rc;            /* return code /*/   USHORT  rc;            /* return code /*/
 +</code>
  
-===MASM Binding===+==== MASM Binding ====
  
 +<code asm>
   EXTRN  DosGetMachineMode:FAR   EXTRN  DosGetMachineMode:FAR
   INCL_DOSMISC      EQU 1   INCL_DOSMISC      EQU 1
Line 45: Line 52:
   PUSH@  BYTE    MachineMode   ;Processor mode (returned)   PUSH@  BYTE    MachineMode   ;Processor mode (returned)
   CALL   DosGetMachineMode   CALL   DosGetMachineMode
 +</code>
  
 Returns WORD Returns WORD
  
-====== Note ======+===== Note =====
  
 Text based on [[http://www.edm2.com/index.php/DosGetMachineMode]] Text based on [[http://www.edm2.com/index.php/DosGetMachineMode]]