Фото Б2М с ГФ24 (правая нижняя часть, выше кварц, ниже конденсатор)
С учетом ГФ24 на океан-240 с его уникальным делением базовой частоты на 5 для проца (и уникальной организацией арбитража доступа видео и проца к озу) это совсем не похоже.
Вид для печати
Фото Б2М с ГФ24 (правая нижняя часть, выше кварц, ниже конденсатор)
С учетом ГФ24 на океан-240 с его уникальным делением базовой частоты на 5 для проца (и уникальной организацией арбитража доступа видео и проца к озу) это совсем не похоже.
Как это нет? Жаль, частоту кварца не видно...
https://pic.maxiol.com/images2/16708...07.b2mgf24.png
В таком случае, видимо, кварц был 18МГц. По крайней, мере каналы 2 и 3 таймера тактировались частотой 2МГц. Третий канал использовался как делитель входного клока ВВ51 и инициализировался числом 13 для получения стандартной скорости обмена 9600. 2000000/13/16 = 9615,4
Бордюр на дисплее был, не помню точно, но что-то около 3 символов. На цветном телевизоре приходилось выкручивать ручки в крайнее положение, чтобы вся видимая область помещалась.
При пиксельклоке 9МГц горизонтальный счётчик должен считать до 72. Что-то типа 3+48+3+18, или 4+48+4+16 (что проще реализовать на логике, хотя там рядом со счётчиками КР556РТ11).
Кварц на 16. Могу проверить еще раз
Собственно, фрагмент фото:
Скрытый текст
Отсюда делаю вывод, что тактовая частота процессора скорее всего 1,78 МГц, что неплохо согласуется со слегка завышенной по субъективным ощущениям скоростью работы некоторых игр на 2 МГц.
Может быть, в этом случае процессор работает даже и без циклов ожидания, но это нужно все-таки по возможности проверить.
Будем считать, что ВИ53 тактируется 2 МГц, пиксельклок наверное все-таки 8.
Параметры развертки наверное стоит оставить как у Специалиста до выяснения подробностей. На фото чуть больше смещено вправо, но спишем пока на настройки конкретного монитора.
А может и без. Там возле памяти регистры стоят, скорее всего как в Специалисте, видеопамять читается во временные регистры в свободном окне. Сигналы DBIN и WR активны в течении одного такта (почти в 2 раза меньше 1 мкс), между ними как минимум 2 такта (около 3.5 мкс). Так что вполне должен успевать каждые 1 мкс читать видеопамять.
- - - Добавлено - - -
И насколько я помню, сигнал READY использовался контроллером дисковода при чтении регистра состояния (если был установлен специальный бит порта ВВ55).
Сами авторы писали про "коэффициент прозрачности озу" (или что-то в этом духе) в зависимости от видеорежима (16 Кб или 8 Кб видеоданных). Читал (очень давно) в МПСиС, вероятно и в книжке должно быть.
Реализация точно как в специалисте быть не может, но если использовали подобную идею, то это здорово, интересно было бы узнать детали.
Т.е. "залипание" IN 1Ch реализовано именно с использованием READY?
- - - Добавлено - - -
"Оконечные" видеорегистры вероятно ИР10 и с них идет на ИР26. ИР27 и ИР23 вероятно промежуточные, кто-то для видео, кто-то для проца.
Существует ли компилятор для встроенного Бейсика?
Возникли три вопроса по Бейсику:
1) Можно ли убрать статусную строку внизу, дабы освободить место для 25-й символьной строки?
2) Каким образом можно реализовать LOCATE?
3) Можно ли при помощи POKE вызвать COLOR 3?
1) Насколько я помню, нет, это часть драйвера вывода символа. Только если использовать свой код для вывода символов, что мы собственно и делали в своих программах.
2) Чем не устраивает встроенный LOCATE? Есть также ESC-последовательность (если не ошибаюсь ESC Y букваХ букваY)
3) Сложно сказать, скорее всего нет. А зачем?
Средствами Бейсика это сделать невозможно?
Только тем, что не работает. =) Выдаёт ошибку, как на ошибочный синтаксис. Удалось реализовать через:
Попутно обнаружил, что CLS можно заменить на:Код:DEF FNL$(X, Y) = CHR$(27) + "Y" + CHR$(32 + Y) + CHR$(32 + X)
Чтобы компилировать в MBasic с целью создания исполняемого файла для CP/M.Код:PRINT CHR$(31)
Почему-то компилированная для CP/M версия к «Башкирии» выдаёт ошибку:
Вложение 83202
При этом версия для CP/M к «Вектору», пусть и с недочётами, но пашет.
На всякий случай оставлю здесь исходник для CP/M — Вложение 83209
Нет.
Вложение 83210
Ясно.
b2m, спасибо за уточнение, моя невнимательность, вместо «:» было «;», теперь исходник исправлен — https://zx-pk.ru/threads/9503-oteche...=1#post1220481
Почему программа, нормально запускающаяся на «Башкирия-2М» во встроенном Бейсике, при компиляции в CP/M вызывает ошибку?
При этом на той же «Ирише» эта же компиляция запускается!
Вложение 83212 Вложение 83213