Какой тулзой можно запихать имеющийся wav файл в спек для дальнейшего его воспроизведения на AY? Есть что-то такое под Шиндовс ?(можно и под люникс и под Дос, но предпочтительнее венда)
Какой тулзой можно запихать имеющийся wav файл в спек для дальнейшего его воспроизведения на AY? Есть что-то такое под Шиндовс ?(можно и под люникс и под Дос, но предпочтительнее венда)
Reobne (11.08.2022)
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Да можно прямо так 8-битный закинуть и выводить с преобразованием по таблице, качество вполне сносное, почти 8 бит.
Использует все три канала сопроцессора.
А размер - 8 bit vs 4 bit ?
Ну это всё теория. А на практике на уровне асма я не шарю, как там управлять АЮшкой. Какие команды в какой порт слать, чтоб уровнями громкости оно колыхало.
Интересуясь про софтину, я в том числе и подразумевал компиляцию вместе с ней и плеера.
К тому же 8 бит на квант слишком расточительно.
Всё-таки экономия на полубайтах в два раза - существенная.
Решил глянуть, как делали в Ламбаде. А там однобитный звук выводится в AY. Я всегда думал что четырёхбитный. Ну, раз в AY, значит четырёхбитный. Логично же.
Подробней, что там
А тама вот чтоВо всех регистрах AY нули, только в амплитуде канала B = $0F. И в регистр миксера пишется то $FF то $FD. То есть канал B то включается, то выключается.Код:ORG 0FB0CH LOOP1 LD C,10 LOOP2 DEC C JR NZ,LOOP2 RLC (HL) JR C,THEN1 PUSH BC CALL OUT0 POP BC JR NEXT1 THEN1 PUSH BC CALL OUT1 POP BC NEXT1 DJNZ LOOP1 INC HL DEC DE LD B,8 LD C,8 LD A,D OR E JR NZ,LOOP2 EI RET OUT0 LD BC,0FFFDH LD A,7 ; Регистр миксера OUT (C),A LD BC,0BFFDH LD A,0FDH ; Выключаем B OUT (C),A RET OUT1 LD BC,0FFFDH LD A,7 OUT (C),A LD BC,0BFFDH LD A,0FFH ; Включаем OUT (C),A RET[свернуть]
- - - Добавлено - - -
Получается, во все регистры пишем 0, в миксер (седьмой) пишем FF. Меняем амплитуду B (одинадцатый регистр) - вот нам и цифровой четырёхбитный звук? Логично же?
- - - Добавлено - - -
Это я на это отвечал.
ALKO (11.08.2022)
Да, в ламбаде на удивление чистый звук, как для однобитного. Высокая степень дискретизации значит, + сэмпл гармошки, ей шибко гладая синусоида и не нужна.
Только вот каким образом записать вавку, чтоб еë в текстовом редакторе открыть в представлении по два четырëхбитных состояния на байт...
ну можно не париться и отгрузить 8-битный сэмпл, а "сжатие" сделать уже на Спектруме:
BC указываем как длину 8-бит данных, поделенную пополам, т.к. в один байт выходного массива запихивается два исходного.Код:LD DE,8BIT_DATA LD HL,4BIT_DATA LD BC,LEN ;8BIT/2 M1 LD A,(DE) AND #F0 LD (HL),A INC DE LD A,(DE) AND #F0 RRCA x4 OR (HL) LD (HL),A INC DE CPI JP PE,M1
Reobne (11.08.2022)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)