Цитата Сообщение от Vladimir_S Посмотреть сообщение
norduk, Сразу замечание - межстрочный сдвиг 4ЕН.
Верно. Это кривой коммент, так как по сути это не межстрочный сдвиг, а разница между концом верхней строки и началом следующей.

- - - Добавлено - - -

Цитата Сообщение от zebest Посмотреть сообщение
Код:
	; рисуем DE		
	push H
	lhld scr_addr		; вытаскиваем указатель на адрес видеопамяти из scr_addr
	call draw_byte_pair
	inx H			; двигаем указатель на байт вправо
	shld scr_addr
	pop H
у мня в мнемониках 8080 плохо в голове думается Возможно когда двигаешь - не учитываешь флаг переноса. При малых значениях адреса не происходит переполнения, а при бОльших - происходит, и указатель прыгает на (адрес-256) назад.
Ну и да, дважды твой код запустить нельзя, он модифицирует начальные установки. Неаккуратненько
Ну про то, что его причёсывать надо ещё - это понятно. А насчёт малых значений и больших, в том и суть, что нет порога. На одной и той же строке 077B8h - ок, 077B9h - слетает, 077BAh - слетает, 077BBh - слетает, 077BCh - снова работает)) На js-эмуляторе. На emu80 вообще дико себя ведёт) Завтра планируется сделать кабель для загрузки ПО в живой комп, попробую и там поглядеть как себя вести будет. Предполагаю, что как на emu80.

- - - Добавлено - - -

Всё указывает на то, что нужно писать сразу на живой машине)