Объясните пожалуйста мне тупому и некомпетентному, зачем надо изучать времянки ВГ75 программисту для РК86?
Считывать КСИ надо только программистам для ZX-Spectrum. А на РК86 до 15-ти ксониксов в XONIX-е прекрасно бегают и без этого и пэкман тоже. И ничего не мерцает. В играх РК86 спрайты односимвольные и оттого выводятся мгновенно (буквально мгновенно). А в ZX-Spectrum спрайты большие и цвет отдельно, отчего выводятся относительно долго. Поэтому, как мне кажется, их стремятся выводить во время кадрового бланка.
Для счёта времени, я предпочитаю не прерывание, а счётчик 561ИЕ10, чьи выходы заведены на вход порта B ППА D14, на вход счётчика подан КСИ 50 ГЦ, а вход R подключен к неиспользованному биту PC1 ППА клавиатуры. Так, что когда надо считать время, то выкинул импульс на PC1, обнулил счётчик и считывай из порта B ППА D14 сколько времени (в тиках по 20 МСЕК) прошло. Максимальное измерямое время - чуть более 4-х секунд. Это я использовал для частотомера на базе РК86. И для часов реального времени, без всякого 512ВИ1.
И для игр РК86 мне кажется такой таймер намного лучше, чем прерывания 50 ГЦ. Даже самый простейший таймер по типу БК010 и ОРИОНА, когда меандр 5 ГЦ заведён на МГ-вход. Это позволяет в производстве музыки выдержать правильный темп (а без этого намного сложнее её программировать).
Как сказано выше, вывод спрайтов, даже большИх, на РК86 не мигает. Остаётся только проблема с панорамированием, плавным сдвигом всего экрана. Пересылка экрана размером в 2 кб длится
Что при такте 1.77 МГЦ было бы равно 53920:1.77= 30.4 МСЕК, но при реальном такте ~1.3 МГЦ равно ~41 МСЕК. За время кадрового бланка в 4 МСЕК это не переслать. Поэтому, просто тупо гасим экран, отчего скорость возрастает до 1.77 МГЦ и сдвигаем весь экран за 30 МСЕК, это менее двух кадров. Затем снова включаем экран. Глаз, в силу своей инерционности этого даже не заметит. А экран гасим просто для ускорения.Код:. LD B,32 LOO: rept 64 LD A,(HL) ; 7 LD (DE),A ; 7 INC HL ; 6 INC DE ; 6 endm DEC B ; 4 JP NZ,LOO ; 17 Итого: (26*64+21)*32= 53920 машинных тактов
Так что изучать и документировать тиминги программистам для РК86 не требуется. 30 лет как-то обходились без этого. РК86 не хватало только графики, цвета и компилятора BDS-СИ или PL/M, а не прерываний.




Ответить с цитированием