Quote:
т.е. в какие регистры задается адрес спрайта, в какие ширина/длина и т.д.
В DE адрес спрайта, в HL место в видеопамяти. Высота, это верхняя строчка (MOV B,16), ширина захардкоджена на 12. Чтобы ее изменить нужно добавлять фрагменты
Code:
LDAX D
INX D
MOV M, A
INX H
для каждых четырех пикселей. И, соответственно, в строке LXI B, 62 уменьшать значение на единичку.
Хотя, для больших спрайтов имеет смысл сделать два цикла.
Quote:
Существует экран, куда будет выводится игра(сама карта с самолетом) это 256х200, существует игровое поле (Playingfield) размером больше 256х250 (256х300) в котором будет формироваться игра.
Получается, что вся игра меньше двух экранов?
Quote:
Видимо Playingfield необходимо располагать от 32768 там же и процедуру вывода на экран (DisplaceAndReproducePlayingField)
Не влезет. 256х256 пикселей - это уже 16К байт. А у Вас выше 32768 всего 16К, дальше идет ПЗУ.
Quote:
Возникающие у меня вопросы существует ли процедуры скролла подходящего мне ? Где ?
В этой же теме. Сообщение самого Калашникова от 04 июн 2012 02:50 am
http://lvovpc.ho.ua/forum/viewtopic.php ... t=30#p1648
Скролл на PUSH/POP и перемещении вершины стека. Это, фактически максимум для "Львова". Но, боюсь, даже его не хватит для нормальной полноэкранной игры.
Quote:
Для «тупая перерисовка» всего поля (байт в байт) быстродействия ведь нехватит!?...
Нужно писать логику, чтобы не перерисовывать все поле. Например, по краям у нас вечная зелень, зачем ее перерисовывать? Можно схитрить и больше, как напирмер Чистяков в Аэрокобре:
http://lvovpc.ho.ua/forum/viewtopic.php?f=3&t=108
Так же, думаю стоит уменьшить отображаемый экран.
Quote:
«Долго» ли выполняется само переключение памяти «ОЗУ» и «Экранное ОЗУ»?.. стоит ли включать и отключать за каждым выводом спрайта?
Нет, не особо долго. Но тут вопрос сколько и каких спрайтов у Вас на экране планируется. Для спрайта, скажем, выстрела 4х4, если их будет с добрый десяток, то тут переключение ОЗУ будет сильно бить по производитлеьности. Если же планируется 4-5 спрайтов игрока и врагов (24х24 либо 16х15), то можно переключать.
Quote:
Можно ли (по быстродействию) «Экранное ОЗУ» испоьзоваить для стравнения и с игровым полем (Playingfield)?
Можно.
Quote:
Нужны эффективные процедуры выводов спрайтов и их наложением на другие спрайты и т. д. С описанием как их использовать
Для данной игры это бессмысленно. У Вас и так ожидается аховая ситуация с производительностью. Рисуйте спрайты на однотонном фоне. Самолетик и так не может вылетить за пределы реки, а при пересечении должен сразу взрываться. Конечно, некрасиво будет при пролете заправки, но это уже минимальное зло.