Программирование игр для Windows. Советы профессионала


Демонстрационная программа Test.c - часть 2


static char *Names [NOBJ]= // имена файлов звуковых эффектов

{

"TEST1.SND", "TEST2.SND", "PEND.3ND", "TEST.SND" };

static SNDSTRUC *snd;        // Структура звуковых данных DIGPAK

static char *soundbuffer=0;  // Адрес буфера звуковых данных

static long int ssize[NOBJ]; // Длина загружаемого звукового эффекта

static int NALLOC=0;

char *Sounds[NOBJ];          // адреса всех звуковых эффектов

void UnloadSounds(void);     // Выгрузка звуковых эффектов из памяти

int  LoadSounds(void);       // Загрузка звуковых эффектов в память

void PlaySound(int sound);   // Воспроизведение звукового эффекта

void TestDigPak(void);       // Тестирование функций       

// воспроизведения DIGPAK

// Приложение должно обеспечить функции резервирования памяти. Они

// используются загрузчиком и DOS функциями поддержки. Вы можете

// заменить эти функции любой другой системой управления памятью.

unsigned char far * far memalloc(long int siz) {

unsigned char far *mem;

mem = farmalloc(siz) ; // функция Си для резервирования

                  // памяти по дальнему адресу return(mem);

}

void far memfree(char far *тетогу)

farfree(memory); // функция Си для освобождения памяти по

// дальнему адресу

}

void main(void)

{

long int siz;

char *fname;

// Вызов загрузчика для начальной загруаки стандартного

// драйвера DIGPAK

if ( !LoadDigPak("SOUNDRV.COM") )

{

printf("Failed to load sound driver.\n");

exit(l);

} if ( !InitDigPak() ) // Инициализация драйвера DIGPAK

{

// Выгрузка драйвера из памяти в случае неудачной

// инициализации и завершение работы программы.

UnLoadDigPak();

printf("Failed to initialize sound driver.\n") ;

exit(l);

}

if ( LoadMidPak('MIDPAK.COM", "MIDPAK.ADV", "MIDPAK.AD") ) // Загрузка компонентов MIDPAK {

printf("Loaded MIDPAK.СОМ MIDPAK.ADV and MIDPAK.AD into Low Men\n");

if ( InitMidPak() )

{

printf("MIDPAK driver initialized.\n");




Начало  Назад  Вперед



Книжный магазин