User Tag List

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

Тема: Как быстро скроллить память на 2 пиксела?

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

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

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    У меня как-то так получилось:
    58 тактов / байт

    Код:
    	LD HL,#401F
    	DUP 32 			; SCROLL 3
    	LD C,(HL)
    	RL C
    	EX AF,AF'
    	RL C
    	EX AF,AF'
    	RLA
    	RL C
    	RRA
    	LD (HL),C 	
    	DEC L
    	EDUP
    Стековый вариант 57,5 тактов на байт

    Если использовать прямую адресацию LD HL,(nn) / LD (nn),HL — получим 56 тактов на байт.

    Код:
    	LD (STACK+1),SP
    	LD HL,#401E
    	DUP 16 			; SCROLL 3
    	LD SP,HL
    	DEC L
    	DEC L
    	POP DE
    	RL D
    	EX AF,AF'
    	RL D
    	EX AF,AF'
    	RLA
    	RL D
    	RRA
    	RL E
    	EX AF,AF'
    	RL E
    	EX AF,AF'
    	RLA
    	RL E
    	RRA
    	PUSH DE	
    	EDUP
    STACK:
    	LD SP,#0000
    Если пишем стеком LD HL,(nn) / PUSH HL немного быстрее будет — 53,5 такта на байт.

    Код:
    ADR=#401E
    	LD (STACK+1),SP
    	LD SP,#4020
    
    	DUP 16 			; SCROLL 3
    	LD HL,(ADR)
    	RL H
    	EX AF,AF'
    	RL H
    	EX AF,AF'
    	RLA
    	RL H
    	RRA
    	RL L
    	EX AF,AF'
    	RL L
    	EX AF,AF'
    	RLA
    	RL L
    	RRA
    	PUSH HL
    
    ADR=ADR-2	
    	EDUP
    
    STACK
    	LD SP,#0000
    Вариант без EX AF,AF', по скорости одинаково.
    Код:
    ADR=#401E
    	LD (STACK+1),SP
    	LD SP,#4020
    
    	DUP 16 			; SCROLL 3
    	LD HL,(ADR)
    	RL H
    	RLA
    	RL H
    	RLA
    	RL H
    	RRA
    	RRA
    	RL L
    	RLA
    	RL L
    	RLA
    	RL L
    	RRA
    	RRA
    	PUSH HL
    
    ADR=ADR-2	
    	EDUP
    
    STACK
    	LD SP,#0000
    Последний раз редактировалось drbars; 11.04.2015 в 13:18.

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

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

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

Похожие темы

  1. Как быстро добраться до мыши?
    от TomCaT в разделе Для начинающих
    Ответов: 38
    Последнее: 02.03.2010, 11:00
  2. Поиск идей: как быстро залить TAP/TZX в Speccy ???
    от ILoveSpeccy в разделе Несортированное железо
    Ответов: 23
    Последнее: 24.12.2007, 06:32
  3. Быстро вывести число 0-255 на экран
    от Aprisobal в разделе Программирование
    Ответов: 7
    Последнее: 26.01.2005, 08:05
  4. Быстро переместить 384b
    от Aprisobal в разделе Программирование
    Ответов: 6
    Последнее: 23.01.2005, 15:23

Ваши права

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