С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Угумс. Еще - посмотрел пока бегло MUSIC2.ASM. Я в этой архитектуре (ЮТ-88) ничего не понимаю, даже признаться честно не знаю/не помню что там за проц, но вопрос - почему некоторые значения 16-ти разрядные? К примеру:
LUT2_17:
.word 7216;~0
.word 8588;~0
.word 12140;~0
Или это просто нужно мне вкурить программирование ВИ53, всмысле что такой последовательностью задаются режимы, например "выбор канала 2", "пила", "считать от 23"?
Tronix, там не просто дамп регистров, там специальный формат со сжатием. Каждый паттерн разделяется на три канала и каждый отдельно сжимается по RLE. В итоге примерно 60% от первоначального объёма остаётя.
Вот пример:
Ещё есть хитрость с тишиной. Она обозначена как запись числа 4 в ви53. Однако, её надо записывать в начале следующего такта, то есть, цикл воспроизведения такой:Код:LUT1_1: ;Начинаются данные первого паттерна второго канала (первый канал идёт без меткс сразу после объявления паттерна) .word 4052;~0 Заносим это число в ВИ53. Заносятся только числа, делящиеся на 4 без остатка. То есть, два младших бита которого равны нулям .word 3820;~0 .byte 17; пауза 8 ; Если младший бит равен 1, то это пауза, в ((n-1)/2 позиций. В ВИ53 за это время ничего не пишется. Это только для этого канала, другие в это время играют) .word 4052;~8 .word 4292;~0 .byte 9; пауза 4 .word 3820;~4 .byte 21; пауза 10 .word 4052;~10 .word 4292;~0 .word 30642;~1 ; если два младших бита равны 10, то пауза в один такт.
1.
Заглушить каналы.
Проиграть следующую позицию, и отметить заглушаемые каналы.
Пауза
Перейки к п.1
Незнаю, почему так, но оно так.
Заглушка происходит записью числа 2 в ВИ53.
Сам ви53 программируется очень просто.
Есть 4 порта. порты 0,1,2 - один для канала. Порт 3 - Регистр управления. Его трогать не надо, только вначале инициализировать каналы, записав подряд три значения ($3E, $7E, $BE)
Заставить канал играть так: записать в него сначала младший бит делителя, потом старший.
Делитель определяется так (частота ви53/частота звука). В ЮТ-88 частота ви53 2 мгц, в РК - 1,77.
То есть, чтоб на РК нам заставить играть нулевой канал в 1000 гц, нам нужно:
1777778/1000 = 1777
1777 = мл(241) ст(6)
OUT port0, 241
OUT port0, 6
Всё, канал 0 заиграет частотой 1000 гц.
Вроде всё. Если непонятно, спрашивайте, разъясню. Кстати, в This Is Apogey формат намного проще, там просто дамп регистров, и 0, если не надо играть. Данные идут так: канал0, канал1, канал2, (далее ждём), канал0, канал1,канал2, (опять ждём)... ...Когда встретили 255 - конец паттерна.
Мне надо все это дело переварить, спасибо за подробное объяснение... Вопросы конечно еще будут, но после того как я подумаю -) Хотя пожалуй начну я просто со сборки самого девайса.
Извиняюсь за задержку, вот версия демки decode для 1.77 мгц
http://yadi.sk/d/qge4vQyrKxn3t
Блин, облом.
Из-за бэдов на харде пришлось его отформатировать, однако, он ещё дал скопировать с него данные. Много важной инфы и исходников перенёс, а вот прогу-конвертер мелодий забыл.
АААААААААААААААААА!!!!
АААААААААААААААААА!!!!
АААААААААААААААААА!!!!
Придётся переписывать, или что-то новое придумывать.
Последний раз редактировалось Kakos_nonos; 06.04.2014 в 22:50.
Может я чего-то недопонимаю...
Коллеги, а как вы грузите демку в ЮТ-88? Через wrkwin32 со стандартной константой записи (20) скорость не та. Экспериментальным путём подобрал константу 13, тогда только демка пошла работать. И то этак через минуту проигрывания начинаются глюки (посторонние звуки при воспроизведении).
P.S. Демку брал для ВИ53 на портах #50-53 и тактовой частоты процессора 1,77МГц из этого поста.
Заяц-прусак
zxbyte.ru- компьютер Байт и прочий хлам
Prusak, память расширил?
А грузим обычным wav из медиаплеера.
wav можно создать в эмуле из файла .rk
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
С причиной глюков разобрался. wrkwin32 даже с константой загрузки равной 13 не подходит для загрузки файлов для Монитора-0. В остальном да, всё заработало. Видео работы можно посмотреть тут.
Последний раз редактировалось Prusak; 04.06.2014 в 17:22.
Заяц-прусак
zxbyte.ru- компьютер Байт и прочий хлам
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)