Точно - совсем забыл про такой "бесплатный" аппаратный даблскрин, не требующий перенастройки пдп каждый кадр.
Вид для печати
Hammer, Я использовал такие процедуры для установки экрана в 50 гц и 60 гц без перерывов между строк. Настраиваются и вт57 и вг75
WAITIN - процедура ожидание обратного хода луча, чтоб делать установку в начале циклаКод:WAITIN:
LXI H, VG75+1
MOV A,M
WAIT1:
MOV A,M
ANI $20
JZ WAIT1
RET
SET50HZ:
LHLD VADDR
XCHG
LXI H,VG75+1
MVI M,0
DCX H
MVI M,77
MVI M,36
MVI M,7
MVI M,NREZH;53
INR L
MVI M,23h ;27h
CALL WAITIN ;ожидание конца кадра перед прог.DMA
LXI H,VT57+8
MVI M,$80
MVI L,4
MOV M,E
MOV M,D
INR L
LXI D,2885+$4000
MOV M,E
MOV M,D
MVI L,8
MVI M,$A4
LXI H,VG75+1
MVI M,23H
RET
SET60HZ:
LHLD VADDR
XCHG
LXI H,VG75+1
MVI M,0
DCX H
MVI M,77
MVI M,29
MVI M,7
MVI M,NREZH;53
INR L
MVI M,23h ;27h
CALL WAITIN ;ожидание конца кадра перед прог.DMA
LXI H,VT57+8
MVI M,$80
MVI L,4
MOV M,E
MOV M,D
INR L
LXI D,2339+$4000
MOV M,E
MOV M,D
MVI L,8
MVI M,$A4
LXI H,VG75+1
MVI M,23H
RET
VADDR - по этому адресу распологается адрес видеопамяти. Можно ставить любой
30 не получится. В стандартном режиме из 30 могут не поместиться на экран и не используются 3 верхних и 2 нижних, остаются 25. Точно так же и здесь лучше не использовать 4 верхних, остается 26. Ну, может быть, 3, а не 4...
Хотя иногда встречается такое: экран программируется на 37 строк, используется стандартная видеообласть, в конце пишется F3, и вывод производится стандартными средствами.
Получаем обычные 25 строк, но смещенные в верхнюю часть экрана, плюс самая верхняя строка рискует быть слегка обрезанной на некоторых устройствах отображения.
Еще можно поиграться с параметром Vertical Retrace Row Count, его увеличение с одновременным уменьшением количества видимых строк скорее всего сдвинет картинку вниз. Но, опять-таки, это еще больше отклоняет видеосигнал от стандарта, и нет гарантии, что такое везде будет отображаться корректно...
- - - Добавлено - - -
Хотя можно еще попробовать добавить в начале коды F1 (End of Row - Stop DMA), которые вставят пустые строки и сместят картинку вниз.
В общем, ВГ75 дает большой простор для творчества ;)
для игор с "псевдографикой" полная высота символов вообще не нужна
можно подрезать символы и сместить на 1 пиксель
и выдать хоть 64
ну и получить на "заезженную" одинаковую РК графику
а ннечто новое и сменьшим числом горизонтальных дырок
правдо это конешно дополнительная нагрузка на память с проceранием тактов проца
Могу посоветовать отличнейший сайт https://pixeljoint.com/pixels/new_ic...&action=search
Я оттуда много графики на пальмиру - кр04 взял. Ну и сам ардубой - хранилище 1 битовых спрайтов.
Не, я считаю те строки, которые мы засылаем в ВГ57, а не те, которые отображаются.
Пока волшебная комбинация получилась такой...
Увеличение количества строк даёт сбой синхронизации. Пока так оставлю. На реальной железке продолжу эксперименты. Нигде не могу купить плату Радио-86РК со статической памятью версии Сергея Малинова с черри-клавиатурой (SRAM). Для меня сей девайс прям киберпанк и ретрофутуризм в одном изделии. Наверное сразу надо будет купить набор РК с Али, чтобы скопом нужные компоненты иметь?Код:MVI M, 04Dh ; 78 столбцов
MVI M, 01Dh ; 30 строк
MVI M, 077h ; 8 линий в знакоместе
MVI M, 053h ; 0101.0011
; Старт КР580ВГ57
INR L
MVI M, 027h
; End of Screen - Stop DMA
LXI HL, KR580VG75 - 1
MVI M, 0F3h
Я так уже попробовал в предыдущем куске кода. Как-то странно он режет, кусками по высоте. Сверху на картинке порезанные пиксели, снизу целые:
https://vtub.me/_public/misc/tmp.jpg
Ага, спасибо, изучу!
Если увеличивать количество строк, то память переползает за 7FF3, но благодаря F3 ничего страшного не происходит, но сбой синхронизации имеет место быть. Я уже понял, что сходу это всё не настроить, поэтому не спешу.
А как-то можно знакоместо сверху обрезать? Тогда получилось бы псевдопиксели квадратные сделать.
- - - Добавлено - - -
Хотя да, перепутал адреса...