home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / ibm1 / uptime.arj / UPTIME.DOC < prev   
Text File  |  1991-01-20  |  3KB  |  63 lines

  1. Uptime - A System running timer by Kevin Withnall
  2.     u8902741@wraith.cs.uow.edu.au
  3.     Kevin Withnall 3:712/206.0 Fidonet
  4.  
  5. This program was written because when trying to modify a cache, its handy to
  6. know that the stats the cache gives you are valid. ie if the cache has stopped
  7. 79% of transfers but the machine has only been up for 5 minutes, ten its
  8. probably not a good number to look at. however, if the machine was up for 2
  9. days, then its reaonable to use the percentage in attempting to modify the
  10. cache configuration to improve it.
  11.  
  12. The way this works is it stays in memory after the first time it is run. ( a
  13. TSR ) This will from then on, whenever its called, give you a indication of how
  14. long sonce the program was first run. If you load this in the autoexec.bat file
  15. it will give you a fairly good estimate of how long the machine has been up.
  16.  
  17. The output of the program uses dos functions 09h to pring the strings so
  18. therefore the output it totally re-directable. The program was written totally
  19. in assembler to make it as small and fast as possible.
  20.  
  21. It works by looking at the clock about twice a second ( evey 10 times int 1Ch
  22. is called ) and if the seconds have changed, it will make a note of it and
  23. increase the number of secods. if this gets to 60, it will increase the minutes
  24. and reset the seconds etc. It uses a word for each number ( 16 bits ) even
  25. though its not necessary, its easy. The only limit on this, is when the days
  26. get to 65536 and then it will wrap around. Thats about 179 years so i dont
  27. think its a problem.
  28.  
  29. Programmers can use this by calling interrupt 7Fh ( first make sure its not
  30. pointing at 0000:0000 in the interrupt table by using dos's function 35h )
  31. Then, once youre happy that int 7fh is pointing to a iret or another program,
  32. then call it with ah = 07h ( this programs number ) and al = 05h ( function to
  33. ask for signature ) After this call, ax should be 0067h to say that the program
  34. is there.
  35. Make sure that when you call it, ah is 07h as that is this programs number.
  36. every tsr i write uses int 7fh and has its own number. if you dont make ah =
  37. 07h it will ignore you and jump to the next thing in the chain.
  38.  
  39. some of the other functions available are...
  40. al = 00h    This will cause normal operation. ie if its the 10th time to be
  41.         called like this, check the clock etc. this is called from the
  42.         int 1C handler and you probably wont need to use this.
  43. al = 01h    This gets you the address of the int 7Fh handler, ive never
  44.         needed to use this but i thought it may be handy.
  45.         it returns it in ax:bx
  46. al = 02h    This will get the operation status of the program. ie al = 0 (
  47.         program is disabled ) or al = 1 ( program is enabled )
  48. al = 03h    This enables the timer
  49. al = 04h    This disables the timer
  50. al = 05h    This give a number 0067h in ax to say that the program is
  51.         installed and working.
  52. al = 06h    get the time since installation
  53.         This returns
  54.             ax:sec
  55.             bx:min
  56.             cx:hour
  57.             dx:day
  58. any other al value will cause the carry flag to be set.
  59.  
  60.  
  61. If you like this program, please send mail to me at ano of the above addresses.
  62. Id like to hear if anyone is using this.
  63.