Важная информация

User Tag List

Страница 3 из 18 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 174

Тема: команда BIT n,(HL)

  1. #21
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Знахарь
    Ну... На unrealе не эмулится - так, а на каком эмулится ? И что это значит ?
    вопрос не понял, особенно последний. чтобы понять, что это значит, прочти сопроводительную доку и тексты от чела, который портировал это в спектрум. понятно, что если адрес компиляции поменялся, флаги, пришедшие из адресных регистров - тоже

  2. #22
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Хм. А киким образом call nz инициализирует скрытый регистр? я так понял, этот регистр получает значение после внутренних сложений, для call и jp сложение вроде бы и не при чем.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  3. #23
    Master Аватар для boo_boo
    Регистрация
    10.05.2005
    Адрес
    Москва
    Сообщений
    715
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vladimir Kladov
    Хм. А киким образом call nz инициализирует скрытый регистр? я так понял, этот регистр получает значение после внутренних сложений, для call и jp сложение вроде бы и не при чем.
    самый подробный кусок инфы, который я нашел:
    Код:
    Internal MEMPTR Register
    This is an internal Z80 register, modified by some instructions, and usually completely hidden to the user, except that Bit 11 and Bit 13 can be read out at a later time by BIT N,(HL) instructions.
    The following list specifies the resulting content of the MEMPTR register caused by the respective instructions.
    
      Content Instruction
      A*100h  LD (xx),A               ;xx=BC,DE,nn
      xx+1    LD A,(xx)               ;xx=BC,DE,nn
      nn+1    LD (nn),rr; LD rr,(nn)  ;rr=BC,DE,HL,IX,IY
      rr      EX (SP),rr              ;rr=HL,IX,IY (MEMPTR=new value of rr)
      rr+1    ADD/ADC/SBC rr,xx       ;rr=HL,IX,IY (MEMPTR=old value of rr+1)
      HL+1    RLD and RRD
      dest    JP nn; CALL nn; JR nn   ;dest=nn
      dest    JP f,nn; CALL f,nn      ;regardless of condition true/false
      dest    RET; RETI; RETN         ;dest=value read from (sp)
      dest    RET f; JR f,nn; DJNZ nn ;only if condition=true
      00XX    RST n
      adr+1   IN A,(n)                ;adr=A*100h+n, memptr=A*100h+n+1
      bc+1    IN r,(BC); OUT (BC),r   ;adr=bc
      ii+d    All instructions with operand (ii+d)
    
    Also the following might or might not affect MEMPTR, not tested yet:
    
      OUT (N),A and block commands LDXX, CPXX, INXX, OUTXX
      and probably interrupts in IM 0, 1, 2
    
    All other commands do not affect the MEMPTR register - this includes all instructions with operand (HL), all PUSH and POP instructions, not executed conditionals JR f,d, DJNZ d, RET f (ie. with with condition=false), and the JP HL/IX/IY jump instructions.

  4. #24
    Master Аватар для boo_boo
    Регистрация
    10.05.2005
    Адрес
    Москва
    Сообщений
    715
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    сляпал на коленке некий тестик для bit (hl)...
    плз, у кого реал под рукой, запустите там это дело, и запостите scr с образовавшимся на экране беспределом.
    бум сравнивать

  5. #25
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    очень интересная инфа, бо-бо. Кстати, SMT, у тебя первая колонка - это ты сам реал гонял? (И когда только успел, разве только на турбе...)
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  6. #26
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    это автор порта на спектрум гонял. это лежит там же, где boo_boo взял текст про memptr. и ссылка была где-то тут. так что пролистай тему вверх и всё увидишь

  7. #27
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    SMT, порта чего? эта что ли: http://www.work.de/nocash/zxdocs.htm
    вверх... это у вас верх, а у меня вниз (настройки у меня такие: ну, оригинал я, все не так делаю как остальные ).

    Понятно насчет первой колонки. Предлагаю (повторно) еще кому-нибудь погонять на реале. Желательно 2 раза и/или на 2х реалах. Если есть турбо, можно на турбе (разница, хотя, может быть какая-то, из-за того же int). Очень хочется еще раз убедиться.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  8. #28
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    порта чего?
    я понял, портировали из cp/m - в исходниках упоминается bdos, а старый адрес компиляции - #0100

  9. #29
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вот такая штука. Стал смотреть что у меня по тесту неверно с командами CPD[r], CPI[r]. Нашел ошибку, исправил. Стало совпадать. Но по дороге качнул исходник US 0.34b, и посмотрел, так же он делает как я с этими командами. Оказалось, что совсем не так. У SMT в коде для CP к примеру:
    void __fastcall ope_A9(Z80 *cpu) { // cpd
    cpu->t += 8;
    unsigned char cf = cpu->f & CF;
    cp8(cpu, rm(cpu->hl--));
    cpu->f = (cpu->f & ~(CF|PV)) | cf;
    if (--cpu->bc16) cpu->f |= PV;
    }
    флажки XF и YF строятся на основании результата сранения A-(HL). А у меня по Янгу: YF=bit1 of n, XF=bit3 of n, где n=A-(HL)-HF. Результат "всеобъемлющего" теста тем не менее совпадает в обоих случаях. Какой же это тогда "всеобъемлющий" тест?

    Разбирясь с тем, как выполняет Spectaculator команду bit 0,b (первую же в этом тесте, я наткнулся вот на какую штуку. [...вырезано: LD SP,(addr) нет в списке влиящих на memptr, еще надо найти, какая же команда установила memptr перед попаданием на 9C09h, мда] Факт, однако: тест zexall по команде bit n,(HL) Spectaculator проходит, т.е. его контрольная сумма совпадает с результатами колонки Z80(real) для этой команды (замечу: у единственного из всех эмуляторов. Правда, у него есть другие ошибки, но на прошлой неделе это впрямь был самый точный среди всех ).

    Сейчас пытаюсь "прогнать" еще и Spin. Ага, есть результаты. Вот обновленная табличка.
    (Я свой EmuZWin пока не обновляю, хочу еще посмотреть чего-нибудь, и надо для случая fast CPIR/CPDR код поправить).

    Кстати, у кого под рукой линукс, не займетесь пополнением инфы для тамошних эмуляторов? Лично меня особо интересует Fuse, можно и глюкалку прогнать (так, кажется называется альтернатива на той платформе?).
    Последний раз редактировалось Vladimir Kladov; 24.02.2006 в 17:03.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  10. #30
    Master Аватар для boo_boo
    Регистрация
    10.05.2005
    Адрес
    Москва
    Сообщений
    715
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vladimir Kladov
    Кстати, у кого под рукой линукс, не займетесь пополнением инфы для тамошних эмуляторов? Лично меня особо интересует Fuse, можно и глюкалку прогнать (так, кажется называется альтернатива на той платформе?).
    с глюкалкой связываться смысла нет -- там 5 и 3 биты F ВООБЩЕ не эмулируются. Fuse лучше, ~80% пунктов теста проходит. Мое ядро (libz80ex) проходит все, кроме bit n,<b,c,d,e,h,l,(hl),a> (из-за bit n,(hl), который фиг знает как эмулировать, и ни одна редиска _мой_ тест на реале прогнать не сподобилась )

Страница 3 из 18 ПерваяПервая 1234567 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Команда Outland corp
    от nyuk в разделе Люди
    Ответов: 12
    Последнее: 10.11.2006, 10:16

Ваши права

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