#include #include #include "..\CD_SND.H" #include "c:\things\borlandc\jd_lib\wav_lib\wavplay.h" int Load_Snd(void); void Sonido( char Sonido ); typedef struct { char Nombre_del_Programa[70]; char Comentario_Inicial[70]; char VerHi, VerLow; char Register; long Records; } CABECERA; typedef struct { char Wave_Name[13]; // Nombre del Wave char ID_code; // Codigo ID_ del Wave unsigned long Pos; // Posici¢n de comienzo dentro del archivo destino unsigned long Len; // Longitud } CD_SND; CD_SND CD_Snd[19]; int Load_Snd(void) { CABECERA Cabecera; FILE *DESTINO; if ( ( DESTINO = fopen( "CD_OUT.SND", "rb") ) == NULL ) { return 0; } fread( &Cabecera, sizeof( Cabecera ), 1, DESTINO ); fread( CD_Snd, sizeof( CD_SND ), 19, DESTINO ); fclose(DESTINO); return 1; } void main(void) { /*Û*/cprintf("Inicializando sonidos. "); /*Û*/ /*Û*/ switch ( InitSB() ) { /*Û*/ /*Û*/ case 0: /*Û*/ /*Û*/ cprintf(" --> Speaker Ok!\n\r"); /*Û*/ /*Û*/ break; /*Û*/ /*Û*/ case 1: /*Û*/ /*Û*/ cprintf(" --> Sound Blaster Ok!\n\r"); /*Û*/ /*Û*/ break; /*Û*/ /*Û*/ case 2: /*Û*/ /*Û*/ cprintf(" --> Dac Casero Ok!\n\r"); /*Û*/ /*Û*/ break; /*Û*/ /*Û*/ } /*Û*/ Load_Snd(); cprintf("\n\rFichero Posici¢n Longitud ID_Code\n\r"); for( int Sonido=0; Sonido < 19; Sonido++ ) { while( kbhit() ) getch(); cprintf("%s %8ld %8ld %d\n\r", CD_Snd[Sonido].Wave_Name, CD_Snd[Sonido].Pos, CD_Snd[Sonido].Len, (int)CD_Snd[Sonido].ID_code); if ( PlayWav((char far *)"CD_OUT.SND", CD_Snd[Sonido].Pos, CD_Snd[Sonido].Len ) == -1 ) PlayLongWav((char far *)"CD_OUT.SND", CD_Snd[Sonido].Pos, CD_Snd[Sonido].Len ); while( kbhit() ) getch(); } }