Browse Source

Use Byte Ptr instead of Int.

woollybah 11 years ago
parent
commit
b70a8b3602
2 changed files with 12 additions and 8 deletions
  1. 8 5
      timer.mod/timer.bmx
  2. 4 3
      timer.mod/timer.win32.c

+ 8 - 5
timer.mod/timer.bmx

@@ -6,12 +6,15 @@ bbdoc: Events/Timers
 End Rem
 Module BRL.Timer
 
-ModuleInfo "Version: 1.02"
+ModuleInfo "Version: 1.03"
 ModuleInfo "Author: Simon Armstrong, Mark Sibly"
 ModuleInfo "License: zlib/libpng"
 ModuleInfo "Copyright: Blitz Research Ltd"
 ModuleInfo "Modserver: BRL"
 
+ModuleInfo "History: 1.03"
+ModuleInfo "History: Update to use Byte Ptr instead of int."
+
 Rem
 History:
 
@@ -36,8 +39,8 @@ Import "timer.linux.c"
 ?
 
 Extern
-Function bbTimerStart( hertz#,timer:TTimer )
-Function bbTimerStop( handle,timer:TTimer )
+Function bbTimerStart:Byte Ptr( hertz#,timer:TTimer )
+Function bbTimerStop( handle:Byte Ptr,timer:TTimer )
 End Extern
 
 Function _TimerFired( timer:TTimer )
@@ -81,7 +84,7 @@ Type TTimer
 	
 	Function Create:TTimer( hertz#,event:TEvent=Null )
 		Local t:TTimer=New TTimer
-		Local handle=bbTimerStart( hertz,t )
+		Local handle:Byte Ptr=bbTimerStart( hertz,t )
 		If Not handle Return
 '		t._cycle=t
 		t._event=event
@@ -93,7 +96,7 @@ Type TTimer
 	Field _wticks
 	Field _cycle:TTimer	'no longer used...see history
 	Field _event:TEvent
-	Field _handle
+	Field _handle:Byte Ptr
 
 End Type
 

+ 4 - 3
timer.mod/timer.win32.c

@@ -21,7 +21,7 @@ static void __stdcall timerProc( UINT timer,UINT msg,DWORD user,DWORD u1,DWORD u
 	bbSystemPostSyncOp( timerSyncOp,(BBObject*)user,timer );
 }
 
-int bbTimerStart( float hertz,BBObject *bbTimer ){
+void * bbTimerStart( float hertz,BBObject *bbTimer ){
 	int timer;
 	
 	if( n_timers==MAX_TIMERS ) return 0;
@@ -32,12 +32,13 @@ int bbTimerStart( float hertz,BBObject *bbTimer ){
 	BBRETAIN( bbTimer );
 	
 	timers[n_timers++]=timer;
-	return timer;
+	return (void*)timer;
 }
 
-void bbTimerStop( int timer,BBObject *bbTimer ){
+void bbTimerStop( void* t,BBObject *bbTimer ){
 	int i;
 	
+	int timer=(int)t;
 	for( i=0;i<n_timers && timer!=timers[i];++i ) {}
 	if( i==n_timers ) return;