home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wunderki.zip / TFUN.ASM < prev    next >
Assembly Source File  |  1993-08-16  |  1KB  |  88 lines

  1.  
  2. ; *******************************************************
  3. ; *                            *
  4. ; *     Turbo Pascal Run-time Library                   *
  5. ; *    Textfile Support Functions            *
  6. ; *                            *
  7. ; *     Copyright (c) 1988,92 Borland International     *
  8. ; *                            *
  9. ; *******************************************************
  10.  
  11.     TITLE    TFUN
  12.  
  13.     INCLUDE    SE.ASM
  14.  
  15. CODE    SEGMENT    BYTE PUBLIC
  16.  
  17.     ASSUME    CS:CODE
  18.  
  19. ; Externals
  20.  
  21.     EXTRN    ReadText:NEAR
  22.  
  23. ; Publics
  24.  
  25.     PUBLIC    GetSEoln,GetSEof,GetTEoln,GetTEof
  26.  
  27. ; SeekEoln standard function
  28.  
  29. GetSEoln:
  30.  
  31.     MOV    CX,0301H
  32.     JMP    SHORT TextStatus
  33.  
  34. ; SeekEof standard function
  35.  
  36. GetSEof:
  37.  
  38.     MOV    CX,0201H
  39.     JMP    SHORT TextStatus
  40.  
  41. ; Eoln standard function
  42.  
  43. GetTEoln:
  44.  
  45.     MOV    CX,0101H
  46.     JMP    SHORT TextStatus
  47.  
  48. ; Eof standard function
  49.  
  50. GetTEof:
  51.  
  52.     MOV    CX,0001H
  53.  
  54. TextStatus:
  55.  
  56.     ARG    FileP,DWORD,1
  57.  
  58.     ENTRY    WINFAR
  59.     LES    BX,FileP
  60.     MOV    AX,OFFSET CS:@@10
  61.     XOR    DX,DX
  62.     CALL    ReadText
  63.     MOV    AL,CL
  64.     EXIT
  65. @@10:    LODSB
  66.     CMP    AL,eof
  67.     JE    @@13
  68.     TEST    CH,1
  69.     JE    @@11
  70.     CMP    AL,cr
  71.     JE    @@13
  72. @@11:    TEST    CH,2
  73.     JE    @@12
  74.     CMP    AL,' '
  75.     JA    @@12
  76.     CMP    SI,BX
  77.     JNE    @@10
  78.     MOV    AX,OFFSET CS:@@10
  79.     RET
  80. @@12:    DEC    CX
  81. @@13:    DEC    SI
  82.     XOR    AX,AX
  83.     RET
  84.  
  85. CODE    ENDS
  86.  
  87.     END
  88.