User Tag List

Страница 3 из 3 ПерваяПервая 123
Показано с 21 по 28 из 28

Тема: Как работает команда LDIR ?

  1. #21

    Регистрация
    29.08.2005
    Адрес
    г. Гатчина
    Сообщений
    10
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    2Лас

    Спасибо за инфу .

    Честно говоря не помню ничего про LDIR в книгах Ларченко/Родионова про это , а они были настольными книгами любого спектрумиста.

    А так я раньше 1998г прекратил спектрумом заниматься , поэтому в прессе по ZX не читал про это. Да и эмуляторов на тот момент практически не было.
    Кстати я использовал данную особенность работы LDIR , как защиту против автоматической трассировки диззасемблерами Как все это давно было .....

    Цитата Сообщение от newart Посмотреть сообщение
    Еще как будут.
    Ну я попытаюсь перевести в trd , или могу диски все дать кто в Питере первести в trd , так как у меня ничего не осталось от ZX.
    Последний раз редактировалось Spinoza; 08.05.2013 в 09:03.

  2. #22

    Регистрация
    19.01.2005
    Адрес
    Санкт-Петербург
    Сообщений
    11,551
    Спасибо Благодарностей отдано 
    205
    Спасибо Благодарностей получено 
    188
    Поблагодарили
    83 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Spinoza Посмотреть сообщение
    Ну я попытаюсь перевести в trd , или могу диски все дать кто в Питере первести в trd , так как у меня ничего не осталось от ZX.
    vtcd@mail.ru

    Пиши, переведу.

  3. #23

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Spinoza Посмотреть сообщение
    Честно говоря не помню ничего про LDIR в книгах Ларченко/Родионова про это , а они были настольными книгами любого спектрумиста.
    вроде бы в zx ревю было что-то про это.

  4. #24

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

    По умолчанию

    А разве для очистки не LDDR использовали?
    ZXM-Phoenix v.03/2048/FDD/HD/YM-2149F/PS2-kbd; U8EP3C development board БК-0011М by Woland + SMK 512

  5. #25

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от iceoflame Посмотреть сообщение
    А разве для очистки не LDDR использовали?
    что угодно можно

  6. #26

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

    По умолчанию

    Вы,надеюсь,знаете стандартную процедуру
    очистки памяти через LDIR:

    LD HL,addr ;адрес очищаемой области
    LD DE,addr+1
    LD BC,len-1 ;len:длина этой области
    LD (HL),0 ;заполнение её нулём
    LDIR ; (очистка)

    Но эта процедура довольно медленна, и,
    например, за счёт неё, очистить экран за
    один фрейм (71680t) не удастся.
    Для этого можно воспользоваться стеком.


    http://alonecoder.nedopc.com/zx/books/zxg4html/asm4.htm

    ---------- Post added at 12:45 ---------- Previous post was at 12:36 ----------

    А вот почему затирается 0м
    Repeats LDI (LD (DE),(HL), then increases DE, HL, and decreases BC) until BC=0. Note that if BC=0 before this instruction is called, it will loop around until BC=0 again.

    Перевожу на асм
    met1 LD (DE), (HL)
    INC DE
    INC HL
    DEC BC
    LD a,b
    OR C
    JR NZ, met1

    т.е. оно последовательно переносить один байт сначала (#8000) записываем 0, потом из 8000, в 8001 переносим его, потом из 8001 в 8002 и так дальше, потому и затирается.
    ZXM-Phoenix v.03/2048/FDD/HD/YM-2149F/PS2-kbd; U8EP3C development board БК-0011М by Woland + SMK 512

  7. #27

    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,822
    Спасибо Благодарностей отдано 
    274
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    95 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от iceoflame Посмотреть сообщение
    Вы,надеюсь,знаете стандартную процедуру
    очистки памяти через LDIR:
    Таким методом можно не только зачищать, но и заполнять память одинаковыми парами, тройками, четвёрками (и т.д.) байт.

  8. #28

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,292
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ранние эмули часто ловили на возможности записи/чтения в rom.
    а ещё на недокументированных флагах.
    что-то типа
    ld r,a
    jp po,#...

    посмотрите kolobokZoom2 так есть такое

Страница 3 из 3 ПерваяПервая 123

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

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

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

Похожие темы

  1. Не работает PS/2 Mouse
    от Mifody в разделе Устройства ввода
    Ответов: 139
    Последнее: 29.10.2025, 19:56
  2. ВГ93 (WD1793) и команда step in
    от SAM style в разделе Внешние накопители
    Ответов: 7
    Последнее: 05.03.2022, 14:10
  3. Не работает КР1858ВМ3
    от Mifody в разделе Для начинающих
    Ответов: 30
    Последнее: 29.03.2009, 12:12
  4. Команда Outland corp
    от nyuk в разделе Люди
    Ответов: 12
    Последнее: 10.11.2006, 10:16
  5. команда BIT n,(HL)
    от boo_boo в разделе Эмуляторы
    Ответов: 173
    Последнее: 24.05.2006, 20:59

Ваши права

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