This wiki is out of date, use the continuation of this wiki instead

Timer

From FenixWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 18:38, 27 December 2007 (edit)
Sandman (Talk | contribs)
m (Definition)
← Previous diff
Current revision (00:19, 21 January 2008) (edit) (undo)
Sandman (Talk | contribs)
m (Example)
 
(4 intermediate revisions not shown.)
Line 2: Line 2:
[[category:predefined]] [[category:predefined]]
[[category:global variables]] [[category:global variables]]
 +[[category:time]]
[[Global variables|'''Up to Global Variables''']] [[Global variables|'''Up to Global Variables''']]
Line 11: Line 12:
'''INT[9]''' timer '''INT[9]''' timer
-'''Timer''' is a [[global variable]], holding ten integers. Each frame a certain value is added to all of them. This value is the time it took to build the last frame, in 1/100 seconds.+'''Timer''' is a [[global variable]], holding ten integers. Each [[frame]] a certain value is added to all of them. This value is the difference in time between the start of the last frame and the current frame, in 1/100 seconds.
-So when all the timers are never altered, their values will be about 1234 when the program has been running for 12.34 seconds.+So when all the timers are never altered, their values will be 1234 when the program has been running for about 12.34 seconds.
== Example == == Example ==
-Display how long the program has been running:+* Display how long the program has been running:
<pre> <pre>
-Private+Program timers;
- int ft; // Help variable+
- int i; // how long the program has been running in 1/100s+
- float f; // how long the program has been running in 1/100s+
Begin Begin
- set_mode(320,400,8);+ write_int(0,0,100,0,&timer[0]);
- write_int (0,0,300,0,&timer);+
- write_int (0,0,310,0,&i);+
- write_float (0,0,320,0,&f);+
Repeat Repeat
- 
- // Calculate how long the program has been running in 1/100s without a float 
- ft %= 10; // keep the milliseconds from last time 
- ft += frame_time*1000; // add the last passed time to it in milliseconds 
- i += ft/10; // add it to the integer without the milliseconds 
- 
- // Calculate how long the program has been running in 1/100s with a float 
- f+=frame_time*100; 
- 
frame; frame;
Until(key(_ESC)) Until(key(_ESC))
Line 44: Line 30:
End End
</pre> </pre>
 +Used in example: [[write_int]](), [[key]]()
 +
 +This can be done more accurately with the use of [[frame_time]].
-Let a [[process]] wait for a certain time by calling this function:+* Let a [[process]] wait for a certain time by calling this function:
<pre> <pre>
Function int wait(int t) Function int wait(int t)
Line 55: Line 44:
</pre> </pre>
-This can be done without a timer too, as is displayed [[frame_time|here]].+This can be done without a timer too, as is displayed [[frame_time#Example|here]].
{{Globals}} {{Globals}}

Current revision

Up to Global Variables



[edit] Definition

INT[9] timer

Timer is a global variable, holding ten integers. Each frame a certain value is added to all of them. This value is the difference in time between the start of the last frame and the current frame, in 1/100 seconds.

So when all the timers are never altered, their values will be 1234 when the program has been running for about 12.34 seconds.

[edit] Example

  • Display how long the program has been running:
Program timers;
Begin

    write_int(0,0,100,0,&timer[0]);

    Repeat
        frame;
    Until(key(_ESC))

End

Used in example: write_int(), key()

This can be done more accurately with the use of frame_time.

  • Let a process wait for a certain time by calling this function:
Function int wait(int t)
Begin
    t += timer[0];
    While(timer[0]<t) frame; End
    return t-timer[0];
End

This can be done without a timer too, as is displayed here.


Global variables
ArgcArgvCdinfoDump_typeFadingFileinfoFpsFrame_timeFull_screenGraph_modeMouseOs_idRestore_typeScale_modeScrollSound_channelsSound_freqSound_modeText_flagsText_zTimer
Personal tools