Как вобще можно вставить в свою программу play mod файла?
Имеется ввиду GS а не оцифровка.
Так-же вопрос-можно ли как нибудь воспроизвести музыку с редактора Instrument?
Как вобще можно вставить в свою программу play mod файла?
Имеется ввиду GS а не оцифровка.
Так-же вопрос-можно ли как нибудь воспроизвести музыку с редактора Instrument?
Моё железо
Скрытый текст
ZX_Evolution rev.b + NEO_GS + TSFM
Ленинград-128/256kb + AY + TR_Dos
Delta_micro /repair status/
Москва_48кb /repair status/[свернуть]
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
http://vtrdos.ru/system.htm ну наверное тут смотри, в плеерах.
Вот немного модифицированный драйвер GS, написанный для 10-го номера Insanity. Пользуйтесь на здоровье
Код:; / Driver General Sound for Insanity / ; Version 1.1 ;-= (c) 2001-2003 Stingrey/GPC/Insanity Org. =- ;----------------------------------------------------- ; Реализованные в данной версии точки входа в драйвер: ; ; INIT - Инициализация и проверки General Sound ; LOAD_MOD - Навороченная процедура загрузки и запуска MOD'а ; VOLUME_MOD - Регулировка громкости ; STOP_MOD - Пауза ; CONT_PLAY - Продолжаем слушать музыку ; ORG #C000 ; Инициализация: ; Входные параметры: (отсутствуют) ; На выходе: z=0 - GS PRESENT/ z=1 - GS NOT PRESENT OR BROKEN ; (c=0 - ALL O'K/ c=1 - BROKEN GS) ; ---- ; Total RAM of GS = E * 65536 + HL (bytes) INIT DI LD A,#23 LD B,A OUT (#BB),A LOOP1 IN A,(#BB) RRCA JR NC,GS_PRESENT DEC BC LD A,B OR C JR NZ,LOOP1 IN A,(#7B) ; блокировка ПЗУ ZX-LPRINT RET ; GS отсутствует совсем ! GS_PRESENT EI HALT DI IN A,(#B3) INC A AND 252 RET Z ; Глючный GS !!! LD A,#20 LD C,#B3 CALL SENDCOM IN L,(C) CALL WAITNEXT IN H,(C) CALL WAITNEXT IN E,(C) CCF RET ; Загрузка модуля в память GS и его проигрывание: ; Входные параметры: HL - адрес буфера в памяти ZX; ; A - количество 16K (32K) блоков в модуле: ; (ABS [bloks] = MODULE_LENGHT (bytes)/16384) ; DE - длина текущего блока в байтах ; ; Выходные параметры: A - количество оставшихся блоков ; z=1 - модуль полностью загружен LOAD_MOD DI LD C,A LD A,(BLOKS) OR A JP NZ,LOAD2 LD A,C LD (BLOKS),A CALL FADE_VOL LD A,#30 CALL SENDCOM LD A,#D1 CALL SENDCOM LOAD2 LD A,D CPL LD D,A LD A,E CPL LD E,A INC DE LD C,#BB LOOP2 LD A,(HL) IN B,(C) JP P,READY IN B,(C) JP M,LOOP2 READY OUT (#B3),A INC HL DEC E JP NZ,LOOP2 INC D JP NZ,LOOP2 LD A,(BLOKS) DEC A LD (BLOKS),A RET NZ LOOP3 IN B,(C) JP M,LOOP3 LD A,#D2 CALL SENDCOM LD A,1 OUT (#B3),A LD A,#31 CALL SENDCOM LD A,(M_VOL) JP VOL2 FADE_VOL LD A,(M_VOL) LD B,A LOOP4 LD A,B CALL VOL2 EI HALT DI DJNZ LOOP4 CALL STOP_MOD RET BLOKS DB 0 M_VOL DB #40 ; Установка громкости: ; Входной параметр: A - уровень громкости (#00 - #40) VOLUME_MOD LD (M_VOL),A VOL2 OUT (#B3),A LD A,#2A JP SENDCOM ; Остановка проигрывания модуля (типа кнопки PAUSE): ; (параметров не требует) STOP_MOD LD A,#32 JP SENDCOM ; Продолжение проигрывания после 'PAUSE': ; (параметров не требует) CONT_PLAY LD A,#33 JP SENDCOM SENDCOM OUT (#BB),A WAITCOM IN A,(#BB) RRCA RET NC JR WAITCOM WAITNEXT IN A,(#BB) RLCA RET C JR WAITNEXT END
Profi+ ver.4.15: Concurrent BIOS, 512KB, 3 slots ZX-BUS/NEMO-BUS, General Sound-512KB
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)