by TS-Labs » Sun, 13.07.2014 16:26:05
Ну, так а собсно - поменять пару строк в плеере, убрать б-гмерзъкъ SP, сколько там тех нещасных тактов.
Еще одна вещь, которую я никогда не понимал в плеерах под АУ. Почему сброс новых значений в АУ происходит В КОНЦЕ плеера, а не в начале? Его ж колбасит вверх/вниз. Не, ну я понимаю, что человеческое ухо вроде как не слышит, но это же не труЪ! Первыми командами на обработке прерывания с плеером обязан стоять дамп в порты, который будет вызываться в детерминированно постоянной фазе относительно чего-угодно, лишь бы не плавал. Там же должна стоять обновлялка ковоксного хрипера, причем АТОМАРНАЯ, это значит, что 16 бит значения должны записываться через ld (player_addr), reg_pair, а если нужно еще и указывать пагу, то делать обязательно DI: HALT перед записью всех 24 бит, а то может выйти что одно записалось, пришел инт, тогда только записалось другое, и поплыли в адЪ...