User Tag List

Показано с 1 по 9 из 9

Тема: Попиксельный скролл на Асме

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    27.11.2008
    Адрес
    Красноярск
    Сообщений
    747
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Усли надо чтоб просто уползало добавляем в основной цикл AND A

    loop push hl ; save address

    ld b,8 ; set counter = 8 pixel rows
    scrl1 push bc
    push hl

    AND A ;что бы слева выехал пустой пиксель!!!!!!!!!!!!!!!!!!

    ld b,32 ; set counter = string lenght
    scrl2 rr (hl) ; shift data in memory
    inc l ; next symbol
    djnz scrl2

    pop hl ; recover hl

    inc h ; next pixel row
    pop bc ; recover counter
    djnz scrl1

    pop hl ; recover address
    call pause
    jp loop



    А если нужна ротация строки, то добавляем пару команд

    loop push hl ; save address

    ld b,8 ; set counter = 8 pixel rows
    scrl1 push bc
    push hl

    AND A

    ld b,32 ; set counter = string lenght
    scrl2 rr (hl) ; shift data in memory
    inc l ; next symbol
    djnz scrl2

    pop hl ; recover hl

    jr nc,$+4 ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    set 7,(hl) ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    inc h ; next pixel row
    pop bc ; recover counter
    djnz scrl1

    pop hl ; recover address
    call pause
    jp loop

    эти две команды для того, что если справа есть точка и она заехала за экран то она появляется слева
    Ну что то вроде того

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    15.12.2009
    Адрес
    Angarsk
    Сообщений
    191
    Спасибо Благодарностей отдано 
    97
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Про "AND A" я вроде все понял. И да, строчка "уезжает" как положено.
    Но хочется, чтобы строчка эта крутилась и крутилась.
    Попробовал добавить предложенные вами строчки в программу - заработало!!!
    Поясните, пожалуйста, что это за "$+4" и "set 7,(hl)"? ну всмысле логику работы данного участка кода.
    Спасибо за помощь!
    Последний раз редактировалось helcril; 16.12.2009 в 08:43.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Программный вертикальный скролл
    от x-code в разделе Вектор
    Ответов: 39
    Последнее: 05.10.2015, 09:59
  2. Процедуры на асме (умножение деления)
    от gres8 в разделе Программирование
    Ответов: 3
    Последнее: 25.01.2007, 10:26
  3. Ответов: 0
    Последнее: 18.08.2006, 22:40

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •