home *** CD-ROM | disk | FTP | other *** search
/ Best of German Only 2 / romside_best_of_german_only_2.iso / dos / utility / viba / morerose / vstop.inc < prev    next >
Text File  |  1993-09-22  |  5KB  |  104 lines

  1. ;;*****************************************************************************
  2. ;;                        V S T O P . I N C
  3. ;;*****************************************************************************
  4. ;;
  5. ;;   VSTOP.INC - Includedatei für das Programm VSTOP unter Verwendung
  6. ;;   von MASM 6.00 bzw. MASM 6.10.  Diese Includedatei soll:
  7. ;;
  8. ;;      1.)   als Kurzanleitung gedacht sein
  9. ;;      2.)   Drittanbieter die Möglichkeit geben, direkt mit VSTOP zu
  10. ;;            kommunizieren
  11. ;;      3.)   Allgemein die Programmierung in Assembler zu demonstrieren...
  12. ;;      4.)   Includedatei für VSTOP.ASM, HSM.ASM und CHKPC.ASM
  13. ;;
  14. ;;   Am Ende dieser Includedatei befindet sich ein kurzer Programmausschnitt
  15. ;;   aus dem Programm VSTOP als Beispiel.  Diese Datei (VSTOP.INC) ist als
  16. ;;   "FREEWARE" freigegeben!
  17. ;;
  18. ;;
  19. ;; (C)opyright 1987-93 by:
  20. ;; -----------------------
  21. ;;
  22. ;;
  23. ;;                       ┌────────────────────────────────┐
  24. ;;                       │ ROSE, Ralph Roth               │█
  25. ;;                       │ Softwareentwicklung & Vertrieb │█
  26. ;;                       │ Finkenweg 24                   │█
  27. ;;                       │                                │█
  28. ;;                       │ D 78658 Zimmern o. R.          │█
  29. ;;                       │                                │█
  30. ;;                       │ FAX: (049) 0741 3 23 28        │█
  31. ;;                       └────────────────────────────────┘█
  32. ;;                         ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  33. ;;
  34. ;;*****************************************************************************
  35. ;;
  36. ;;      Standards:      MASM 6.0 Macrosprache, Hochsprachenkonstrukte
  37. ;;                      Ungarische Namenskonvention (analog zu C++)
  38. ;;
  39. ;;*****************************************************************************
  40.  
  41.  
  42. VS_API_FUNKT EQU   0FE14h               ;; VStop API Funktionscode, kann sich
  43.                                         ;; eventuell noch bei
  44.                                         ;; Inkompatibilitäten ändern!
  45. ;;---------------------------------------------------------------------------
  46. ;; VS_API Funktionen:
  47. ;;---------------------------------------------------------------------------
  48.  
  49. UNSAVESET EQU   -10                     ;; unsichere Erkennungen setzen
  50. UNSAVERESET EQU -20                     ;; -""- zurücksetzen
  51. UNLOAD    EQU   -30                     ;; VSTOP deinstallieren
  52. INSTALLED EQU   -40                     ;; VSTOP install check!
  53. GETUNSAVE EQU   -50                     ;; Status unsichere Erkennungen
  54.  
  55.  
  56.  
  57. @VS_API macro   nFunktion               ;; Macro für VSTOP
  58.         mov     dx, nFunktion           ;; DX enthält IMMER den Funktionscode!
  59.         mov     ax, VS_API_FUNKT        ;; VStop Application Interface Funktion
  60.         int     21h                     ;; Interrupt-Service Routine aufrufen
  61.         .IF     al == 0                 ;; noch nicht installiert!
  62.         mov     ax, -5                  ;; Fehler!
  63.         .ELSE                           ;; falls VSTOP installiert ist!
  64.         mov     ax, dx                  ;; DX enthält Antwort!
  65.         .ENDIF                          ;; AX -> BOOLEAN, TRUE 0/FALSE 1
  66. ENDM                                    ;; Macroende
  67.  
  68.  
  69.  
  70. ;;****************************************************************************
  71. ;;
  72. ;;  Beispiel für die Verwendung der oben aufgeführten Konstanten und
  73. ;;  des VSTOP Makros:
  74. ;;
  75. ;;        :
  76. ;;        :
  77. ;;
  78. ;;        @VS_API INSTALLED               ;; Schon da?
  79. ;;        .IF     AX == TRUE
  80. ;;        @ShowStr Inst                   ;; String ausgeben
  81. ;;
  82. ;;        invoke  IsOption, 'E'           ;; Entfernen?
  83. ;;        .IF     AX == TRUE              ;; JA!
  84. ;;        @VS_API UNLOAD                  ;; VSTOP entfernen!
  85. ;;        .IF     AX == TRUE              ;; Konnte VSTOP entfernt werden?
  86. ;;        @ShowStr UnloadOK               ;; String ausgeben
  87. ;;        .ELSE
  88. ;;        @ShowStr UnloadError            ;; String ausgeben
  89. ;;        .ENDIF
  90. ;;        .EXIT   0                       ;; .....Programmende
  91. ;;        .ENDIF                          ;; if unload
  92. ;;
  93. ;;        .IF     nUnsave == TRUE         ;; Setzen?
  94. ;;        @VS_API UNSAVESET               ;; API Funktion für setzen
  95. ;;        .ELSE
  96. ;;        @VS_API UNSAVERESET             ;; API Funktion für Rücksetzen
  97. ;;        .ENDIF
  98. ;;
  99. ;;        .EXIT   1                       ;; .....Programmende
  100. ;;        .ENDIF
  101. ;;
  102. ;;****************************************************************************
  103.  
  104.