stopwatc.s
上传用户:hepax88
上传日期:2007-01-03
资源大小:1101k
文件大小:1k
源码类别:

TCP/IP协议栈

开发平台:

Visual C++

  1. ; Stopwatch primitives - used in sw.c
  2. ; Copyright 1991 Phil Karn, KA9Q
  3. include asmglobal.h
  4. public stopval,swstart
  5. .CODE
  6. dbase dw @Data
  7. ; start the interval timer
  8. swstart proc far
  9. push ax
  10. ; send the mode word to the 8254
  11. mov al,0b8h ; select counter 2, write lsb,msb, mode 4, binary
  12. out 43h,al
  13. ; initialize the counter at 0
  14. xor al,al
  15. out 42h,al ; lsb
  16. out 42h,al ; msb
  17. ; gate the counter on
  18. in al,61h
  19. or al,1
  20. out 61h,al
  21. pop ax
  22. ret
  23. swstart endp
  24. ; stop the interval timer and return its value
  25. stopval proc far
  26. ; gate the counter off
  27. in al,61h
  28. and al,0feh
  29. out 61h,al
  30. ; latch counter 2
  31. mov al,080h
  32. out 43h,al
  33. ; get the value
  34. in al,42h
  35. mov ah,al
  36. in al,42h
  37. xchg ah,al
  38. ret
  39. endp
  40. end