/* ---------------------------------------- */ void SoundFree(void) { #ifndef NOSOUND unsigned char i; #ifdef DREAMCAST if (SoundEnable == FALSE) { return; } snd_sfx_stop_all(); sndoggvorbis_stop(); SoundTrack = 0; for(i=0; i<SEMAX; i++) { if (SEPool[i] != 0) { snd_sfx_unload(SEPool[i]); SEPool[i] = 0; } } sndoggvorbis_stop(); sndoggvorbis_shutdown(); snd_stream_shutdown(); #else if (SoundEnable == FALSE) { return; } if (SoundTrack != 0) { Mix_HaltMusic(); Mix_FreeMusic(SoundTrack); SoundTrack = 0; } for(i=0; i<8; i++) { Mix_HaltChannel(i); } for(i=0; i<SEMAX; i++) { if (SEPool[i] != 0) { Mix_FreeChunk(SEPool[i]); SEPool[i] = 0; } } Mix_CloseAudio(); #endif #endif }
int main(int argc,char** argv){ pvr_vertex_t v; Texture spr; pvr_poly_cxt_t p_cxt; pvr_poly_hdr_t p_hdr; Init(); Load_VQTexture("/rd/billy.kmg",&spr); sndoggvorbis_start("/rd/billy.ogg",-1); int q = 0; while(q == 0){ vid_border_color(255,0,0); pvr_wait_ready(); vid_border_color(0,255,0); pvr_scene_begin(); pvr_list_begin(PVR_LIST_OP_POLY); pvr_list_finish(); pvr_list_begin(PVR_LIST_TR_POLY); pvr_poly_cxt_txr(&p_cxt,PVR_LIST_TR_POLY,spr.fmt,spr.w,spr.h,spr.txt,PVR_FILTER_BILINEAR); pvr_poly_compile(&p_hdr,&p_cxt); pvr_prim(&p_hdr,sizeof(p_hdr)); // submit header v.x = 0.0; v.y = 0.0; v.z = 1.0; v.u = 0.0; v.v = 0.0; v.argb = 0xffffffff; v.oargb = 0; v.flags = PVR_CMD_VERTEX; pvr_prim(&v,sizeof(v)); v.x = 640.0; v.y = 0.0; v.u = 1.0; v.v = 0.0; pvr_prim(&v,sizeof(v)); v.x = 0.0; v.y = 480.0; v.u = 0.0; v.v = 1.0; pvr_prim(&v,sizeof(v)); v.x = 640.0; v.y = 480.0; v.u = 1.0; v.v = 1.0; v.flags = PVR_CMD_VERTEX_EOL; pvr_prim(&v,sizeof(v)); pvr_list_finish(); pvr_scene_finish(); vid_border_color(0,0,255); MAPLE_FOREACH_BEGIN(MAPLE_FUNC_CONTROLLER, cont_state_t, st); if(st->buttons & CONT_START) q = 1; MAPLE_FOREACH_END(); } DeleteTexture(&spr); sndoggvorbis_stop(); pvr_shutdown(); sndoggvorbis_shutdown(); return 0; }