HELP ME !!! — ZXNet «code.zx»

HELP ME !!!

ZXNet echo conference «code.zx»



from: Aleksandr Majorov
to: Ilya Abrosimov
date: 2 December 1999
Хаюшки, Ilya! Как-то 29-11-99 примерно в 00:19:26 некто Ilya Abrosimov сообщил(а/о) для All о том, что "HELP ME !!!" [ ] IA> Срочно нужен плейер AY-музыки (любого редактора), который в любой момент IA> времени тратит одинаковое количество тактов (т.е. всегда по максимуму). IA> Если таковой существует, то намыльте plz. Да, такой существует. Тока ты его сам напиши. Сам плеер-то маленький, а вот файл музона - охрененный! Значиться в чем прикол: где тратиться различное время в плеерах? правильно, на интерпретации команд. А если ты в памяти будешь держать значение всех регистров AY в данный момент времени, то твой плеер должен будет только запихать эти цифирки в AY м все... т.е. типа вот: MUS_ADR EQU $+1 : LD HL,music_address LD E,13 LD C,#FD LOOP LD B,#FF OUT (C),E LD A,(HL) LD B,#BF OUT (C),A INC HL DEC E JP P,LOOP LD (MUS_ADR),HL и вот это вызываешь в прерывании... Спросишь как создать дамп AY? Берешь откомпиленную музыку, ищешь в плеере место, куда записываются значения регистров. Во всех плеерах вначале вычисляются значения AY, а потом эти 14 байт быстренько запихиваются в AY. Затем хоть на бейсике пишешь такое: 1) проиграть ноту 2) скопировать 14 байт дампа AY в свой буфер повторяй столько, сколько нот у тебя... Имхо это единственный вариант плеера который отрабатывается одинаковое кол-во тактов... К тому-же он жрет мало тактов ;-)))) В принципе можно ввести комресию... Hу вот и все *MAS* с кувалдой