home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1990 / 12 / praxis / test_co.asm < prev    next >
Encoding:
Assembly Source File  |  1990-09-18  |  1.6 KB  |  49 lines

  1. ;              ---------------
  2. ;--------------- TEST_CO.ASM -------------------------------
  3. ;--            ---------------                            --
  4. ;--      Autor: Ulrich Schmitz & toolbox 1990             --
  5. ;--  Assembler: Microsoft Assembler ab Version 5.1        --
  6. ;--     AUFRUF: byte coprozessor(void);                   --
  7. ;--    EINGABE: keine.                                    --
  8. ;--   RÜCKGABE: 0 --> kein Coprozessor vorhanden.         --
  9. ;--             1 --> Coprozessor installiert.            --
  10. ;--   Funktion: Prüft über den BIOS-Interrupt 11h sowie   --
  11. ;--             direkt, ob ein Coprozessor vorhanden ist. -- 
  12. ;-----------------------------------------------------------
  13. ;
  14. PUBLIC test_co, Start, No_Co, Co, next_test
  15. .MODEL SMALL, C
  16. .STACK
  17. .CODE
  18. test_co PROC 
  19.         JMP Start
  20. Status  DW  '??'
  21.  
  22. ;-------- Test über Interrupt -----------------------------
  23. Start:
  24.         int 11h
  25.         mov Status, ax        ;System-Statuswort in ax
  26.         test ax, 2            ;Bit 1 gesetzt?
  27.         JZ next_test          ;nächster Test auf Coprozessor
  28.         mov al, 1             ;Coprozessor erkannt
  29.         jmp Ende
  30.  
  31. ;-------- direkter Test auf Coprozessor --------------------
  32. next_test:
  33.         FINIT
  34.         FSTSW Status 
  35.         MOV ax, Status
  36.         CMP Status, 0000h 
  37.         JNE No_Co             ;kein Coprozessor installiert
  38.    Co:
  39.         MOV al, 1             ;Coprozessor installiert
  40.         JMP Ende
  41. No_Co:
  42.         MOV al, 0 
  43. Ende:                
  44.         RET
  45. test_co ENDP
  46. END
  47. ;---------------  Ende TEST_CO.ASM -------------------------
  48.