diff src/timer/amigaos/SDL_systimer.c @ 1662:782fd950bd46 SDL-1.3

Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API. WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid. The code is now run through a consistent indent format: indent -i4 -nut -nsc -br -ce The headers are being converted to automatically generate doxygen documentation.
author Sam Lantinga <slouken@libsdl.org>
date Sun, 28 May 2006 13:04:16 +0000
parents 92947e3a18db
children 4da1ee79c9af
line wrap: on
line diff
--- a/src/timer/amigaos/SDL_systimer.c	Sun May 21 17:27:13 2006 +0000
+++ b/src/timer/amigaos/SDL_systimer.c	Sun May 28 13:04:16 2006 +0000
@@ -59,145 +59,142 @@
 #if !defined(__PPC__) || defined(STORMC4_WOS) || defined(MORPHOS)
 static clock_t start;
 
-void SDL_StartTicks(void)
+void
+SDL_StartTicks (void)
 {
-	/* Set first ticks value */
-	start=clock();
+    /* Set first ticks value */
+    start = clock ();
 }
 
-Uint32 SDL_GetTicks (void)
+Uint32
+SDL_GetTicks (void)
 {
-	clock_t ticks;
+    clock_t ticks;
 
-	ticks=clock()-start;
+    ticks = clock () - start;
 
 #ifdef __SASC
 // CLOCKS_PER_SEC == 1000 !
 
-	return(ticks);
+    return (ticks);
 #else
 // CLOCKS_PER_SEC != 1000 !
 
-	return ticks*(1000/CLOCKS_PER_SEC);
+    return ticks * (1000 / CLOCKS_PER_SEC);
 #endif
 }
 
-void SDL_Delay (Uint32 ms)
+void
+SDL_Delay (Uint32 ms)
 {
 // Do a busy wait if time is less than 50ms
 
-	if(ms<50)
-	{
-		clock_t to_wait=clock();
+    if (ms < 50) {
+        clock_t to_wait = clock ();
 
 #ifndef __SASC
-		ms*=(CLOCKS_PER_SEC/1000);
+        ms *= (CLOCKS_PER_SEC / 1000);
 #endif
-		to_wait+=ms;
+        to_wait += ms;
 
-		while(clock()<to_wait);
-	}
-	else
-	{
-		Delay(ms/20);
-	}
+        while (clock () < to_wait);
+    } else {
+        Delay (ms / 20);
+    }
 }
 
 #else
 
 ULONG MY_CLOCKS_PER_SEC;
 
-void PPC_TimerInit(void);
+void PPC_TimerInit (void);
 APTR MyTimer;
 
 ULONG start[2];
 
-void SDL_StartTicks(void)
+void
+SDL_StartTicks (void)
 {
-	/* Set first ticks value */
-	if(!MyTimer)
-		PPC_TimerInit();
+    /* Set first ticks value */
+    if (!MyTimer)
+        PPC_TimerInit ();
 
-	PPCGetTimerObject(MyTimer,PPCTIMERTAG_CURRENTTICKS,start);
-	start[1]>>=10;
-	start[1]|=((result[0]&0x3ff)<<22);
-	start[0]>>=10;
+    PPCGetTimerObject (MyTimer, PPCTIMERTAG_CURRENTTICKS, start);
+    start[1] >>= 10;
+    start[1] |= ((result[0] & 0x3ff) << 22);
+    start[0] >>= 10;
 }
 
-Uint32 SDL_GetTicks (void)
+Uint32
+SDL_GetTicks (void)
 {
-	ULONG result[2];
-	PPCGetTimerObject(MyTimer,PPCTIMERTAG_CURRENTTICKS,result);
+    ULONG result[2];
+    PPCGetTimerObject (MyTimer, PPCTIMERTAG_CURRENTTICKS, result);
 
-//	PPCAsr64p(result,10);
+//      PPCAsr64p(result,10);
 // Non va, la emulo:
 
-	result[1]>>=10;
-	result[1]|=((result[0]&0x3ff)<<22);
+    result[1] >>= 10;
+    result[1] |= ((result[0] & 0x3ff) << 22);
 
 // Non mi interessa piu' result[0]
 
-	return result[1]*1000/MY_CLOCKS_PER_SEC;
+    return result[1] * 1000 / MY_CLOCKS_PER_SEC;
 }
 
-void SDL_Delay (Uint32 ms)
+void
+SDL_Delay (Uint32 ms)
 {
 // Do a busy wait if time is less than 50ms
 
-	if(ms<50)
-	{
-		ULONG to_wait[2],actual[2];
-		PPCGetTimerObject(MyTimer,PPCTIMERTAG_CURRENTTICKS,result);
-		actual[1]=0;
-		to_wait[1]+=ms*1000/MY_CLOCKS_PER_SEC;
+    if (ms < 50) {
+        ULONG to_wait[2], actual[2];
+        PPCGetTimerObject (MyTimer, PPCTIMERTAG_CURRENTTICKS, result);
+        actual[1] = 0;
+        to_wait[1] += ms * 1000 / MY_CLOCKS_PER_SEC;
 
-		while(actual[1]<to_wait[1])
-		{
-			PPCGetTimerObject(MyTimer,PPCTIMERTAG_CURRENTTICKS,actual);
-		}
-	}
-	else
-	{
-		Delay(ms/50);
-	}
+        while (actual[1] < to_wait[1]) {
+            PPCGetTimerObject (MyTimer, PPCTIMERTAG_CURRENTTICKS, actual);
+        }
+    } else {
+        Delay (ms / 50);
+    }
 }
 
-void PPC_TimerInit(void)
+void
+PPC_TimerInit (void)
 {
-	struct TagItem tags[]=
-		{
-			PPCTIMERTAG_CPU,TRUE,
-			TAG_DONE,0
-		};
+    struct TagItem tags[] = {
+        PPCTIMERTAG_CPU, TRUE,
+        TAG_DONE, 0
+    };
 
 
-	if(MyTimer=PPCCreateTimerObject(tags))
-	{
-		ULONG result[2];
+    if (MyTimer = PPCCreateTimerObject (tags)) {
+        ULONG result[2];
 
-		PPCGetTimerObject(MyTimer,PPCTIMERTAG_TICKSPERSEC,result);
-		D(bug("Timer inizializzato, TPS: %lu - %lu\n",result[0],result[1]));
-//		PPCAsr64p(result,10);
-		result[1]>>=10;
-		result[1]|=((result[0]&0x3ff)<<22);
-		result[0]>>=10;
-
-		D(bug("Shiftato TPS: %lu - %lu\n",result[0],result[1]));
-		MY_CLOCKS_PER_SEC=result[1];
+        PPCGetTimerObject (MyTimer, PPCTIMERTAG_TICKSPERSEC, result);
+        D (bug
+           ("Timer inizializzato, TPS: %lu - %lu\n", result[0], result[1]));
+//              PPCAsr64p(result,10);
+        result[1] >>= 10;
+        result[1] |= ((result[0] & 0x3ff) << 22);
+        result[0] >>= 10;
 
-		PPCGetTimerObject(MyTimer,PPCTIMERTAG_CURRENTTICKS,result);
+        D (bug ("Shiftato TPS: %lu - %lu\n", result[0], result[1]));
+        MY_CLOCKS_PER_SEC = result[1];
+
+        PPCGetTimerObject (MyTimer, PPCTIMERTAG_CURRENTTICKS, result);
 
-		D(bug("Current ticks: %lu - %lu\n",result[0],result[1]));
-		result[1]>>=10;
-		result[1]|=((result[0]&0x3ff)<<22);
-		result[0]>>=10;
-//		PPCAsr64p(result,10);
-		D(bug("Shiftato: %lu - %lu\n",result[0],result[1]));
-	}
-	else
-	{
-		D(bug("Errore nell'inizializzazione del timer!\n"));
-	}
+        D (bug ("Current ticks: %lu - %lu\n", result[0], result[1]));
+        result[1] >>= 10;
+        result[1] |= ((result[0] & 0x3ff) << 22);
+        result[0] >>= 10;
+//              PPCAsr64p(result,10);
+        D (bug ("Shiftato: %lu - %lu\n", result[0], result[1]));
+    } else {
+        D (bug ("Errore nell'inizializzazione del timer!\n"));
+    }
 }
 
 #endif
@@ -208,60 +205,65 @@
 static int timer_alive = 0;
 static SDL_Thread *timer_thread = NULL;
 
-static int RunTimer(void *unused)
+static int
+RunTimer (void *unused)
 {
-	D(bug("SYSTimer: Entering RunTimer loop..."));
+    D (bug ("SYSTimer: Entering RunTimer loop..."));
 
-	if(GfxBase==NULL)
-		GfxBase=(struct GfxBase *)OpenLibrary("graphics.library",37);
+    if (GfxBase == NULL)
+        GfxBase = (struct GfxBase *) OpenLibrary ("graphics.library", 37);
 
-	while ( timer_alive ) {
-		if ( SDL_timer_running ) {
-			SDL_ThreadedTimerCheck();
-		}
-		if(GfxBase)
-			WaitTOF();  // Check the timer every fifth of seconds. Was SDL_Delay(1)->BusyWait!
-		else
-			Delay(1);
-	}
-	D(bug("SYSTimer: EXITING RunTimer loop..."));
-	return(0);
+    while (timer_alive) {
+        if (SDL_timer_running) {
+            SDL_ThreadedTimerCheck ();
+        }
+        if (GfxBase)
+            WaitTOF ();         // Check the timer every fifth of seconds. Was SDL_Delay(1)->BusyWait!
+        else
+            Delay (1);
+    }
+    D (bug ("SYSTimer: EXITING RunTimer loop..."));
+    return (0);
 }
 
 /* This is only called if the event thread is not running */
-int SDL_SYS_TimerInit(void)
+int
+SDL_SYS_TimerInit (void)
 {
-	D(bug("Creating thread for the timer (NOITIMER)...\n"));
+    D (bug ("Creating thread for the timer (NOITIMER)...\n"));
 
-	timer_alive = 1;
-	timer_thread = SDL_CreateThread(RunTimer, NULL);
-	if ( timer_thread == NULL )
-	{
-		D(bug("Creazione del thread fallita...\n"));
+    timer_alive = 1;
+    timer_thread = SDL_CreateThread (RunTimer, NULL);
+    if (timer_thread == NULL) {
+        D (bug ("Creazione del thread fallita...\n"));
 
-		return(-1);
-	}
-	return(SDL_SetTimerThreaded(1));
+        return (-1);
+    }
+    return (SDL_SetTimerThreaded (1));
 }
 
-void SDL_SYS_TimerQuit(void)
+void
+SDL_SYS_TimerQuit (void)
 {
-	timer_alive = 0;
-	if ( timer_thread ) {
-		SDL_WaitThread(timer_thread, NULL);
-		timer_thread = NULL;
-	}
+    timer_alive = 0;
+    if (timer_thread) {
+        SDL_WaitThread (timer_thread, NULL);
+        timer_thread = NULL;
+    }
 }
 
-int SDL_SYS_StartTimer(void)
+int
+SDL_SYS_StartTimer (void)
 {
-	SDL_SetError("Internal logic error: AmigaOS uses threaded timer");
-	return(-1);
+    SDL_SetError ("Internal logic error: AmigaOS uses threaded timer");
+    return (-1);
 }
 
-void SDL_SYS_StopTimer(void)
+void
+SDL_SYS_StopTimer (void)
 {
-	return;
+    return;
 }
 
 #endif /* SDL_TIMER_AMIGA */
+/* vi: set ts=4 sw=4 expandtab: */