User Tag List

Показано с 1 по 10 из 26

Тема: mouse driver

Древовидный режим

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

    Регистрация
    16.01.2005
    Адрес
    Severodonetsk, Ukraine
    Сообщений
    92
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Писал я его еще хрен знает когда. За идею брал то ли исходник, толи туториал из какого-то Формата.
    Вобщем, все рабочее, если кому не нравится оптимальность/стройность или еще чего - милости просим свой вариант. Лично меня устраивает.

    Код:
    MKEY    LD A,(FIRE):LD (LFIRE),A
               LD BC,#FADF:IN A,(C)
               CPL:LD E,A
               AND 1:SLA A:LD D,A:LD A,E
               AND 2:SRL A:OR D:LD D,A
               LD A,E:AND 252:OR D:LD (FIRE),A
               RET
    
    KMDRV  LD HL,(X_COORD):LD DE,(LAST_X)
               LD BC,#FBDF:IN A,(C)
               LD (LAST_X),A:SUB E:JR Z,NEXT
               CP 1:JR Z,ONR
               CP 255:JR Z,ONL
               CALL RE_XY
    ONR      JP P,MAR
    ONL      ADD A,L:JR C,RGK+1
               XOR A:JR RGK+1
    MAR     ADD A,L:JR C,RGK
               CP 255:JR C,RGK+1
    RGK      LD A,255:LD L,A
    NEXT    LD BC,#FFDF:IN A,(C)
               LD (LAST_Y),A:SUB D:JR Z,NEXT1
               NEG
               CP 1:JR Z,OND
               CP 255:JR Z,ONU
               CALL RE_XY
    OND      JP P,MAD
    ONU      ADD A,H:JR C,DKR+1
               XOR A:JR DKR+1
    MAD     ADD A,H:JR C,DKR
               CP 191:JR C,DKR+1
    DKR      LD A,191:LD H,A
    NEXT1   LD (X_COORD),HL
               RET
    RE_XY  ADD A,A:RET
    
    FIRE       DB 0
    LFIRE      DB 0
    LAST_X   DB 0  
    LAST_Y   DB 0  
    X_COORD DB 0  
    Y_COORD DB 0
    Тут три функции. Первая опрашивает кнопки (и по тупому левую кнопку устанавливает в первый бит результата, правую - во второй)
    Вторая - непосредственно переопрос координат. Реальные откорректированные координаты берем в (X_COORD), (Y_COORD) или словом из первого.
    ну а RE_XY - произвольная функция масштабирования перемещения.

    В аттач вложил текстовый вариант, дабы легче было, если что, импортировать в свой асм.

    p.s. у меня все это в Шторме написано было, но вроде-бы никаких спецефических моментов не видно.
    Вложения Вложения
    • Тип файла: txt MDRV.txt (943 байт, Просмотров: 496)

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

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

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

Ваши права

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