Try this... Hope it works

Code:
///////////////////////////////////////////////
// startup splash screens
// script written by william mason May 05,07
///////////////////////////////////////////////
bmap splash1 = <splash1.pcx>;
bmap splash2 = <splash2.pcx>;
bmap splash3 = <splash3.pcx>;
bmap splash4 = <splash4.pcx>;
bmap splash5 = <splash5.pcx>;

sound song_wav = <song.wav>;
var_nsave song_handle = 0;


panel splash_1(){bmap = splash1;layer = 25;}
panel splash_2(){bmap = splash2;layer = 25;}
panel splash_3(){bmap = splash3;layer = 25;}
panel splash_4(){bmap = splash4;layer = 25;}
panel splash_5(){bmap = splash5;layer = 25;}

panel* screen_syn = splash_1;

var temper;

starter splash_start
{
freeze_mode = 1;
WHILE (1) {
temper=0;

song_handle = snd_loop(song_wav,100,0);

WHILE (temper < 48) {
screen_syn .visible = on;
temper += time;
IF (key_space == 1) { screen_syn.VISIBLE = OFF; Goto finish; }
wait (1);
}
screen_syn.VISIBLE = OFF;
IF (screen_syn == splash_5) { screen_syn = splash_2; continue; }
IF (screen_syn == splash_4) { screen_syn = splash_5; }
IF (screen_syn == splash_3) { screen_syn = splash_4; }
IF (screen_syn == splash_2) { screen_syn = splash_3; }
IF (screen_syn == splash_1) { screen_syn = splash_2; }
}
finish :

if(snd_playing(song_handle)) {snd_stop(song_handle);}

freeze_mode = 0;
// remove bmaps from memory
bmap_purge(splash1);
bmap_purge(splash2);
bmap_purge(splash3);
bmap_purge(splash4);
bmap_purge(splash5);


}