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

User Tag List

Страница 4 из 120 ПерваяПервая 12345678 ... ПоследняяПоследняя
Показано с 31 по 40 из 1192

Тема: Эмулятор УКНЦ - EmuStudio

  1. #31
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Вопрос к знатокам УКНЦ на счет регистра октета точки.
    В некоторых программах с заливкой, она заливается у меня на эмуляторе мимо. Стал выяснять почему, вырисовывается такая картина. Программа пишет байты в регистр октета точки в цикле записи. Тогда как в инструкции написано, что для того, чтобы было рисование по маске, в этот регистр надо производить чтение-модификацию-запись. Т.е. при чтении загружается регистр цвета фона, а при записи уже на этот фон накладывается новое изображение. Почему же тогда программы, просто записывающие байт в регистр октета точки преспокойно рисуют по старому фону?
    Заметили таки! Да, я тоже помучился, когда писал редактор шрифтов FNT. А все довольно просто. В инструкции все правильно сказано насчет чтения-модификации-записи. А вот в описании на процессор 1801ВМ2 очень существенный момент упустили (его нет и в техописании, которое выкладывали Вы). А этот тонкий момент состоит в том, что по записи в источник словные и байтовые команды отличаются. Команд этих всего три - MOV(B), CLR(B) и MFPS. В байтовом варианте при записи приемника DST, он сначала прочитывается из памяти (фиктивное чтение), а затем записывается. В словном варианте производится безусловная запись приемника без его предварительного чтения. Такие тонкости относятся к MOV и CLR. Команда MFPS имеет только байтовый вариант, поэтому здесь всегда производится чтение-модификация-запись для приемника.
    Поэтому, если надо наложить по старому фону, то можно сделать так:
    Код:
            TST     @#177024
            MOV     R0,@#177024
    или более быстро и просто:
    Код:
            MOVB    R0,@#177024
    Особенности работы этих команд проверены и на других регистрах, в частности на регистре данных приемника канала 0 177562. Если в регистре 177560 устанавливался бит готовности 7, то после этого производилась запись в регистр 177562. Сама по себе запись в этот регистр бесполезна. При словной записи бит готовности в 177560 не сбрасывался, а при байтовой записи сбрасывался, что подтверждает то, что к регистру 177562 применялась операция чтения. Сразу оговорюсь, что 1801ВП1-120, где находятся эти регистры, сигнал записи байта WTBT не обрабатывает.

    Команды MOVB по отношению к регистру 177024 применяется и в системном ПЗУ УКНЦ при обработке графических функций (это где-то в адресах 140000-152000).

    В эмуляторе UKNCBTL это уже учтено, исходники свободны, смотрите.

    P.S. Сразу отмечу, что EmuStudio некорректно работает с регистрами контроллера дисковода. При чтении зараз большого объема данных он не читается, выдает ошибку. Из-за этого при исполнении команды DIR/BAD/FIL выдается ошибка "Too many bad blocks", нельзя загрузить большие исполнимые файлы (не смог GOBLIN, не грузилась дискета с JEK-ом, не загрузить TurboBasic, не работает Writer).
    Последний раз редактировалось Alex_K; 03.02.2012 в 15:27.

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

  3. #32
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    не смог GOBLIN
    EmuSoft - заточен на игры ))) Goblin - отлично работают, обе версии причём и та ,что
    на дискете с EmuStudio, и та что на сборнике игрушек для UKNCBTL )))

    Скрытый текст



    [свернуть]


    И вот такая публикация получилась, прошу всех желающих ознакомится.
    http://www.old-games.ru/forum/showpo...69&postcount=5
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  4. #33
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,554
    Спасибо Благодарностей отдано 
    1,217
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    EmuSoft - заточен на игры ))) Goblin - отлично работают, обе версии причём и та ,что
    на дискете с EmuStudio, и та что на сборнике игрушек для UKNCBTL )))

    И вот такая публикация получилась, прошу всех желающих ознакомится.
    http://www.old-games.ru/forum/showpo...69&postcount=5
    Что ты сделал с цветами в Гоблине, и зачем промасштабировал скриншоты в статье? Они же все испортились из-за этого!

    ---------- Post added at 15:02 ---------- Previous post was at 15:01 ----------

    Цитата Сообщение от Alex_K Посмотреть сообщение
    А этот тонкий момент состоит в том, что по записи в источник словные и байтовые команды отличаются. Команд этих всего три - MOV(B), CLR(B) и MFPS. В байтовом варианте при записи источника, он сначала прочитывается из памяти (фиктивное чтение), а затем записывается.
    Вот это да. А не может быть такого, что это железо конкретных регистров так реагирует на байтовую запись?

    ---------- Post added at 15:04 ---------- Previous post was at 15:02 ----------

    Цитата Сообщение от Alex_K Посмотреть сообщение
    P.S. Сразу отмечу, что EmuStudio некорректно работает с регистрами контроллера дисковода. При чтении зараз большого объема данных он не читается, выдает ошибку. Из-за этого при исполнении команды DIR/BAD/FIL выдается ошибка "Too many bad blocks", нельзя загрузить большие исполнимые файлы (не смог GOBLIN, не грузилась дискета с JEK-ом, не загрузить TurboBasic, не работает Writer).
    Вполне возможно. Хотя Турбобейсик у меня грузится, но не с той дискеты, с которой он поставлялся. Когда загружаюсь с другой системной, грузится. Заметил разницу, что с той дискеты, на которой он поставлялся, когда грузится, головка дисковода двигается гораздо медленнее. Гоблин тоже работает у меня.

  5. #34
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    EmuSoft - заточен на игры ))) Goblin - отлично работают, обе версии причём и та ,что
    на дискете с EmuStudio, и та что на сборнике игрушек для UKNCBTL ))
    hobot, что значит - заточен под игры? Игры во время работы используют возможности аппаратуры компьютера, а значит эмулятор должен эмулировать эту аппаратуру.
    И насчет GOBLIN - повнимательней почитайте мой пост. Там рассказывается о некорректной реализации регистров контроллера дисковода 177130/177132, из-за этого при запросе на чтения большого объема данных возникает ошибка. GOBLIN-а я не смог запустить по этой причине. Использовал диск GAME2.DSK. Может расположение по дорожкам влияет как-то, не знаю, вопрос к автору. Исходников нет, да и отладчика тоже, сказать сложно.

    ---------- Post added at 15:09 ---------- Previous post was at 15:04 ----------

    Цитата Сообщение от Titus Посмотреть сообщение
    Вот это да. А не может быть такого, что это железо конкретных регистров так реагирует на байтовую запись?
    У меня тоже была такая мысль, но я проверил на других регистрах, ниже я описал, что проверял на 177560/177562. Так что так работают MOVB, CLRB, MFPS.
    А по поводу байтовой записи в блок регистров 177010-177056, то там на байтовую запись реагирует только регистр данных планов 1 и 2 177014. Все остальные игнорируют этот сигнал и в неиспользуемый байт пишется ноль.

  6. #35
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,554
    Спасибо Благодарностей отдано 
    1,217
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    У меня тоже была такая мысль, но я проверил на других регистрах, ниже я описал, что проверял на 177560/177562. Так что так работают MOVB, CLRB, MFPS.
    А по поводу байтовой записи в блок регистров 177010-177056, то там на байтовую запись реагирует только регистр данных планов 1 и 2 177014. Все остальные игнорируют этот сигнал и в неиспользуемый байт пишется ноль.
    Это надо проверить, пока не буду обновлять.

  7. #36
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    А не может быть такого, что это железо конкретных регистров так реагирует на байтовую запись?
    Т.е. что процессор 1801ВМ2 не выполняет циклов DATIO в командах MOVB, CLRB и MFPS..

    Проверить это довольно просто - запустить тест времянок для команд MOV, MOVB, BIS и BISB ( с адресацией типа MOV R0, @#ADDR ) и сравнить время выполнения каждой из команд.

  8. #37
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Т.е. что процессор 1801ВМ2 не выполняет циклов DATIO в командах MOVB, CLRB и MFPS..
    Почему не выполняет. Как раз для приемника в MOVB,CLRB,MFPS выполняется цикл DATIO, а для MOV и CLR - только DATO.
    Последний раз редактировалось Alex_K; 03.02.2012 в 15:28.

  9. #38
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Что ты сделал с цветами в Гоблине, и зачем промасштабировал скриншоты в статье? Они же все испортились из-за этого!
    1.C цветами не делал ничего, так выглядит, извиняйте эмулятор и игру писал не я, я просто нажал PrtScr.
    2.Для зарегистрированных пользователей картинки выглядят совсем по другому (честно-честно) ))) - ничего не масштабировал (повторяю) моё участие печать экрана в файл, загрузка файла на хостинг, линк на картинку в форуме )))

    И вот ни одного мнения об обзоре ! )))

    Цитата Сообщение от Alex_K Посмотреть сообщение
    hobot, что значит - заточен под игры?
    по моему это очевидно ))) Titus, в шапке сам признался, что делал эмуль с целью в игрушки поиграть. Суть моего ответа была в том, что заявленная игра прекрасно работает и более того одна из её версий даётся вместе с EmuStudio - та в которой жизни вечные и уровни немного другие и классическая со сборника игр для UKNCBTL в шапке темы (на игровом форуме) - вот для чего делался проверенный на запуск сборник игр??? Что бы потом не было вопросов - у меня не работает игра, а со сборника работает ))) В обоих эмуляторах! )))
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  10. #39
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Почему не выполняет. Как раз для источника в MOVB,CLRB,MFPS выполняется цикл DATIO, а для MOV и CLR - только DATO.
    В смысле - для приёмника :)

  11. #40
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,554
    Спасибо Благодарностей отдано 
    1,217
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Т.е. что процессор 1801ВМ2 не выполняет циклов DATIO в командах MOVB, CLRB и MFPS..

    Проверить это довольно просто - запустить тест времянок для команд MOV, MOVB, BIS и BISB ( с адресацией типа MOV R0, @#ADDR ) и сравнить время выполнения каждой из команд.
    Вот как раз это я и собирался сделать)

Страница 4 из 120 ПерваяПервая 12345678 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Эмулятор УКНЦ - UKNCBTL
    от nzeemin в разделе Эмуляторы отечественных компьютеров
    Ответов: 1113
    Последнее: 12.11.2023, 18:44
  2. PS/2 клавиатура в УКНЦ
    от balu_dark в разделе ДВК, УКНЦ
    Ответов: 83
    Последнее: 10.01.2021, 10:51
  3. Как проверить УКНЦ и КМД ? Help
    от Andrey_Ak в разделе ДВК, УКНЦ
    Ответов: 37
    Последнее: 23.07.2020, 15:50
  4. УКНЦ и шина МПИ
    от KALDYH в разделе ДВК, УКНЦ
    Ответов: 18
    Последнее: 14.03.2014, 14:30
  5. Продаю УКНЦ
    от Gryphon в разделе Барахолка (архив)
    Ответов: 10
    Последнее: 01.04.2009, 10:22

Ваши права

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