Article View: comp.lang.modula2
Article #2120Re: High Precision Timer for Modula-2
From: Tim Channon
Date: Thu, 19 Nov 1992 00:53
Date: Thu, 19 Nov 1992 00:53
222 lines
13539 bytes
13539 bytes
> I am looking for a High Precision Timer Module in Modula-2, especially in
> TopSpeed. It should be something like TPHRT3 for Turbo-Pascal 5.0 to 5.5.
> It should use the 8253-chip on the PC to measure time
> accurate to micro!!seconds.
>
Well here is something of interest for pc users.
It has bugs but mostly works. The core was translated from UK published C
source __but it did not work adequately__. The technique now used is wildly
different.
Contained in this are I think some useful gems including about real bugs in
the pc bios. How it works depends on the bios -- machine hangs.
A test program (source for the lot under TopSpeed V3.02) is following
uuencode.
A test shell is included which I hope makes a fair assessment
of the timer performance. The implication is +-12us over 1 second (timed
against the real time clock). 1.8MHz crystal inaccuracy is a problem :-)
Long period timers should be fairly easy to make but you would need > 32 bit
math.
The bombshell -- this timer routine does NOT use interrupts. They are
unreliable on the pc compats and I have a machine here which I can made to
appear to run at 1/3rd speed according to the Dos clock! This is done by
timing dummy disk accesses to find the bad spot. Ever wonder why that clock
sometimes goes slow on some machines?
The code presented here has at least one dire bug. Someone fix it please the
reported timings will sometimes go crazy. Minor bugs in test shell please
ignore and bad style -- this was not intended for public release.
If anyone wants the executable please mail me. It's about 24k uuencoded but if
many ask I'll try to find somewhere for ftp.
TC.
E-mail: tchannon@black.demon.co.uk or tchannon@cix.compulink.co.uk
section 1 of uuencode 5.10 of file timetest.zip by R.E.M.
begin 644 timetest.zip
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
M.IX:=I=248N&<<,69AXB\3)63W*R3%&&./<%].RYGDEU:5U53&^QN)^[8@
MOF!GY1PUB[I;+ADI81S1VW3KLW68QYI7<(YFFZ!BR2O'8M2#YUTN'9-O0)AK
MQ/H.XG@UL742;.%7VYEW,E]6&*OH]1O]^Q_)UN9X78?C<O;\+."Z',?'>LMX
M-NBE]A):3[DXDLY`SS&][6=VP=D$@H@['G55-8OY'A,FC->JCWV4<BA!W+Y3
M&%$IJR90!=^J?I[;M,S--\VHH=8:#2)GO(ZK3%$]R6.IL3JFC,#H)BLM5L8L
MUI24+`YR:+_8L&3>Q""><305,C>^QEQ2/)$^C\X74J1@DUWZ;KL>KF#I-AD9
M=@UK*(O6=71SQ3KFBT;K.;>6(=(+:&4[)7<]QB!+P1]#5DJRH5-MW3F#96Z8
MW`Y'Y4RJ!FEDE4IYEWVSD5(,L,U2/?%M4B.G>.\Q@^IN8%E1V6BMZ)69*B?9
M%OYEM!;.OVQMN/(\V'(L"\P6?0JI#/6[ND1ZFRGCOLXYJF->GE<Q&)Z$'_L"
M._W;G/IP=YAQ.I9KDA1<7F/$OMDY,))MAA(U8<9Q)*;5Z%^LG(*_$-\LI*F#
M6?QG1<.IVX)5/E(BC,U0+0''QF$WGWDW<XRT5-`35;LVWY-D=+V(JDN59>:L
MPPRSJY2I*%Q1):N$UB=@T5Q1GCB%,:3(J,ZV[1O/T6T>ZF[?8LAH0BY.D&\$
M!0=MV<JLB)/7=:.YG,V:QKSSE#V+*,,$6C!=+2O'TFE-@<BX3#+O&Y2)4=6C
M!,?SBBUCD%E3=].860=WX\9R%R??DYXHPLD45K99E$8#GTTIDP`=?0HXQ5Z3
M`UD&B@'O;A(LTS%?V8(RRYN16K!8$[,JUU">EZ5]CE04BS\;MQ*-)<X,)GQY
ML\Y5TD^'*:0VV`M/N"DD`1)?<:26`_8"PZP4%S;G)#T=R;Z8=F;:P.</G)QR
M,K/31$LVK?N\9>?DTW0Z`154Q%,WQ896F=(OVX9QX0/%&J.:PQ8'FZI2*+@"
MK"F<=K/I.LWL6O-ZV*-9:H`UESTWK>KH'=W&M>Z63FL;&E\2!%-4E"93)[LY
MQ^%:K7@8YBMRT9U;,,@789K1FI_1.\5$"(,M94&8W&FF9IOW<)S1\[!J:#-D
M1"2K4LHT.SH"ZWE=,-D\GGC8IN]"9(B>PFC4Q0GJS6)\"&!*"BOAQ;K(`@\S
M0P0&)T-8D,I8@&FXK[@B)UK+BM[8KDRC$I6/T_M=.10S(B<""&L_3;4/;J90
MR6D4&N\"Q7O,'"J^NQC@[%J=+SU5V_5#*XJ^T:X!=B$4@7?L=JQ4U9:16VV?
MS`7F='+'*EZ`C+CM3C.0W`X"\S(T?1'76'`#8<]"81!_'`JE&$*BA(L&D9Z"
M2$&^J(47\\[+C%49]2IH,[*"H]!_.`AX7)(.4E%%VMT&;B'08_//LX)A*#9^
M#J6XFPJGTB`X>F"R]1*<MYZ"X4S\1&&,3,N8]FR`\&4^*7`_"W9PQBTQOXK-
M$QCD%Q%*R2&V7D>LGS<9R&#\^JB:CLR,/,;O1@0N)*OQ?&D3^W1/^!)+9ARB
MJ0Y!S#A>P;MH"P,2#7`LAH,84$L!`@L`"@````8`'::1%WJ?L@@I`@``-P0`
M``@``````````0`@`````````%1)344N1$5&4$L!`@L`"@`&``8`,6)R&5#5
MK+12#@``?"@```@``````````0`@````3P(``%1)344N34]$4$L!`@L`"@``
M``8`DA*-%Y3U!IJ!`@``^P0```P``````````0`@````QQ```%1)345415-4
M+DU/1%!+`0(+``H````!`&AB<AF.FQ;810```$<````+``````````$`(```
M`'(3``!424U%5$535"Y04E!+`0(+``H````&`)-D<AGZT%XQD@D```H1```*
M``````````$`(````.`3``!214%$344N5$E-4$L%!@`````%``4`%P$``)H=
$````````
`
end
sum -r/size 57279/10889 section (from "begin" to "end")
sum -r/size 29187/7879 entire input file
Technical Details
Message-ID:
<722159602snx@black.demon.co.uk>Path:
arc1-ca.pugleaf.net!sparky!uunet!sun-barr!cs.utexas.edu!hermes.chpc.utexas.edu!news.utdallas.edu!corpgate!bnrgate!bnr.co.uk!pipex!demon!black.demon.co.uk!tchannonShow Full Headers
Complete Article Headers
Newsgroups: comp.lang.modula2 From: tchannon@black.demon.co.uk (Tim Channon) Path: arc1-ca.pugleaf.net!sparky!uunet!sun-barr!cs.utexas.edu!hermes.chpc.utexas.edu!news.utdallas.edu!corpgate!bnrgate!bnr.co.uk!pipex!demon!black.demon.co.uk!tchannon Subject: Re: High Precision Timer for Modula-2 Reply-To: tchannon@black.demon.co.uk Distribution: world X-Mailer: cppnews $Revision: 1.20 $ Organization: null Lines: 222 Date: Thu, 19 Nov 1992 00:53:22 +0000 Message-ID: <722159602snx@black.demon.co.uk> Sender: usenet@gate.demon.co.uk