home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 9 / 09.iso / l / l040 / 13.ddi / RTLSYS.ZIP / EI87.ASM < prev    next >
Encoding:
Assembly Source File  |  1992-10-28  |  1008 b   |  56 lines

  1.  
  2. ; *******************************************************
  3. ; *                            *
  4. ; *     Turbo Pascal Run-time Library                   *
  5. ; *    Hardware Emulator Initialization        *
  6. ; *                            *
  7. ; *     Copyright (c) 1988,92 Borland International     *
  8. ; *                            *
  9. ; *******************************************************
  10.  
  11.     TITLE    EI87
  12.  
  13.     INCLUDE    SE.ASM
  14.  
  15. CODE    SEGMENT    BYTE PUBLIC
  16.  
  17.     ASSUME    CS:CODE
  18.  
  19. ; Externals
  20.  
  21.     EXTRN    E087_Entry:NEAR,E087_Shortcut:NEAR
  22.     EXTRN    Check8087:NEAR,Init8087:NEAR,HaltTurbo:NEAR
  23.  
  24. ; Publics
  25.  
  26.     PUBLIC    InitEM87
  27.  
  28. ; Initialize hardware emulator. Called right after main startup
  29. ; code by programs compiled in the {$N+,E-} state.
  30.  
  31. InitEM87:
  32.  
  33.     CALL    Check8087
  34.     OR    AL,AL
  35.     JE    @@1
  36.     MOV    SI,OFFSET E087_Entry
  37.     MOV    DI,OFFSET E087_Shortcut
  38.     JMP    Init8087
  39. @@1:    PUSH    DS
  40.     MOV    DX,OFFSET CS:ErrorStr
  41.     PUSH    CS
  42.     POP    DS
  43.     MOV    AH,9
  44.     INT    DOS
  45.     POP    DS
  46.     MOV    AX,255
  47.     JMP    HaltTurbo
  48.  
  49. ; 8087 error string
  50.  
  51. ErrorStr    DB    'Numeric co-processor required',cr,lf,'$'
  52.  
  53. CODE    ENDS
  54.  
  55.     END
  56.