Привет из прошлого, Ассемблер Z80

Читая один из постов Аввы, наткнулся на ассемблерные алгоритмы быстрой очистки экрана, вспомнил, что мне тоже что-то такое приходилось использовать, я одно время много на Ассемблере программировал, на Ассемблере под Зет80 («Спектрум») — тоже. Чтобы было понятно как иногда приходилось извращаться в те годы, цитирую:

penguinny: Опыт работы в ассемблере даёт это знание самым непосредственным образом. Кстати, тесно связанный трюк в ассемблере Z80 служил как один из самых быстрых (и точно самый компактный) способ очистки экрана:

ld hl,screen_addr ld de,screen_addr+1 ld bc,6143 ld (hl),0 ldir

Команда ldir копирует bc байт информации, начинающейся с адреса hl, в блок памяти, начинающийся с адреса de. С учётом выбранных адресов, 0 вручную пишется в первый байт, а затем копируется из первого во второй, из второго в третий, и т. д. Экран очищается по индукции.

kray_zemli: говорят, как-то через стек можно ещё было. вы его имели в виду?

penguinny: Да, именно так. Регистр стека устанавливался в конце экрана, один из 16-битных регистров очищался и затем в частично развёрнутом цикле многократно сохранялся в стек. 16-битные операции на 8-битном процессоре! Шок.

14 комментариев

Где откроются двери в метро

Где же откроются двери? (104.90КиБ)

В московском метро (пока не на всех станциях) сделали специальную разметку, чтобы люди понимали где именно откроются двери в электричку. До появления этой разметки я пользовался простым приёмом, который мне когда-то показал Нияз Сайфутдинов (Ниязик, спасибо!).

Нужно всего лишь присмотреться к самому-самому краю платформы. Там где грязнее, двери не открываются, там где двери, мрамор чище — потому что протёрт множеством ног пассажиров. Всегда срабатывает.

17 комментариев

Казань ✈ Москва ✈ Тбилиси → Сингаги → Мцхета → Кутаиси → Батуми ✈ Москва ✈ Казань

В первые майские праздники едем в Грузию, давно хотел посетить эту замечательную страну. Побываем в пяти городах: Тбилиси, Сингаги, Мцхета, Кутаиси, Батуми, увидим Метехский Храм, крепость Нарикала, Майдан, серные бани, гору Мтацминда, монастыри Бодбе и Джвари, Алазанскую Долину, Кавказский Хребет, Цинандали, соборы Светицховели и Баграта, Гелатскую Академию и наверное что-то ещё.

Спасибо казанской фирме «Корсо», которая второй раз подряд отправляет нас на отдых и второй раз подряд делает какие-то чудеса. На этот раз не было билетов в Тбилиси и из Батуми, девушка из турагенства забронировала билеты от которых могли отказаться владельцы, повезло, они почему-то отказались.

24 комментария