User Tag List

Страница 9 из 224 ПерваяПервая ... 5678910111213 ... ПоследняяПоследняя
Показано с 81 по 90 из 2231

Тема: ZXMAK2 - Виртуальная машина ZX Spectrum

  1. #81
    ZEK
    Гость

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Вот это уж совсем сомнительно.
    .NET при выделении не ищет кусок памяти подходящего размера, а выделяет кусок всегда в конце, так что выделение происходит мгновенно (ну потери на инициализацию, дотнет всегда инициализирует к минимум значением по умолчанию), фрагментация и пустых кусков не возникает, работает сборщик мусора с поколениями, очень оптимизирован, для разных поколений принята своя политика сборки.
    Последний раз редактировалось ZEK; 21.09.2011 в 23:35.

  2. #82

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,374
    Спасибо Благодарностей отдано 
    1,695
    Спасибо Благодарностей получено 
    2,214
    Поблагодарили
    868 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEK Посмотреть сообщение
    .NET при выделении не ищет кусок памяти подходящего размера, а выделяет кусок всегда в конце, так что выделение происходит мгновенно.
    И в си все прекрасно выделяется и быстро.

  3. #83
    ZEK
    Гость

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    И в си все прекрасно выделяется и быстро.
    http://www.rsdn.ru/article/dotnet/GCnet.xml в 4 версии сборщик пережил серьезный пересмотр, но и в этой статье достаточно наглядно

  4. #84

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Вот это уж совсем сомнительно.
    когда встречаешь чтото впервые всегда сомнительно. Этот момент уже неоднократно обжевывался со всех сторон, можешь на RSDN топик поискать
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  5. #85

    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,082
    Записей в дневнике
    11
    Спасибо Благодарностей отдано 
    173
    Спасибо Благодарностей получено 
    493
    Поблагодарили
    343 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEK Посмотреть сообщение
    Ну вроде как есть [COLOR="Silver"]
    собралось
    и даже qemu-z80 собрался
    осталось отснифать детали протокола, и готово!
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI YTINK 9 Channel

  6. #86

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,374
    Спасибо Благодарностей отдано 
    1,695
    Спасибо Благодарностей получено 
    2,214
    Поблагодарили
    868 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    когда встречаешь чтото впервые всегда сомнительно. Этот момент уже неоднократно обжевывался со всех сторон, можешь на RSDN топик поискать
    Посмотрим.
    Впрочем, для меня постоянное выделение памяти не актуально. Баз данных я не пишу. А все, что надо, выделяется один раз. Или изредка.

  7. #87

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEK Посмотреть сообщение
    По поводу эмуляции, допустим берем порт FE
    у него должен быть параметр как он дешифрируется, у разных компов по разному, нада еще логика iorqge, к примеру в кае выбор FE каралечный, условия выбора: не выбран AY8910, чтение из порта io, не активен DOS, A0=0, неактивен iorqe
    кемстон еще коралечней, там A0=1

    Т.е надо что бы можно было задавать порядок отработки делегатов, и ввести сигнал iorqe, который (если используется платформа с этой логикой) должен учитываться обработчиками чтения из портов
    IORQ - это сигнал обращения к портам ввода/вывода и подтверждения запроса не прерывание. Если активен при активном RD или WR, то означает доступ к портам. В противном случае означает подтверждение прерывания в цикле M1. Активный уровень IORQ - 0. Так что тут все в порядке.
    А вот условия выбора при неактивном AY и DOS - это конечно сложней. Сейчас приоритет вызова выше у девайсов находящихся в списке ближе к началу. ULA всегда имеет максимальный приоритет, Memory всегда минимальный, остальные сортируются в алфавитном порядке по имени . Т.е. получается девайсы должны быть завязаны друг на друга, это плохо.

    PS: Снижение производительности памяти устранил, заключалась она в вызове UpdateMapping на каждое обращение к памяти из-за установки SEL_TRDOS из BetaDiskInterface. Производительность повысилась на 10%
    Последний раз редактировалось ZXMAK; 22.09.2011 в 06:29.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  8. #88
    ZEK
    Гость

    По умолчанию

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    IORQ - это сигнал обращения к портам ввода/вывода и подтверждения запроса не прерывание.
    Не, с некоторых слотовых машинах есть сигнал IORQGE, формируется он так
    На первый слот идет IORQ от процессора, если там стоит устройство которое отозвалось на адрес порта оно выставляет в своем слоте сигнал IORQG который блокирует прохождение IORQ во второй слот, и так далее по колву слотов, на данный момент максимальное кво слотов 4, выход с последнего слота идет в мать и там юзается для выбора внутренних устройств. То есть если на слоте отозвалось устройство у которого A0=0 то чтение из порта FE блокируется.

    Такое поведение не во всех слотовых машинах, и его нет в неслотовых.

    ---------- Post added at 06:34 ---------- Previous post was at 06:31 ----------

    И еще IBusDevice.BusInit вызывется 2 раза это правильно?
    Ситуация такая
    Запускаю эмуль, жму Tools->Options
    В окне ничего не меняю жму отмена, получаю в логе
    Код:
    Warning	06:54:03.294	device ctor	
    Warning	06:54:03.426	device bus init	
    Warning	06:54:03.489	device bus connect	
    Warning	06:54:07.209	device ctor	
    Warning	06:54:07.347	device bus init	
    Warning	06:54:07.547	device bus connect	
    Warning	06:54:07.554	device bus disconnect	
    Warning	06:54:13.846	device bus disconnect
    Код
    Код:
        public class Device : IBusDevice
        {
            Log _logger;
    
            public Device()
            {
                _logger = Logger.GetLogger();
                _logger.LogWarning("device ctor");
            }
    
            public void BusConnect()
            {
                _logger.LogWarning("device bus connect");
            }
    
            public void BusDisconnect()
            {
                _logger.LogWarning("device bus disconnect");
            }
    
            public void BusInit(IBusManager bmgr)
            {
                _logger.LogWarning("device bus init");
    
               ........
            }
    
    
          ...........
        }
    Последний раз редактировалось ZEK; 22.09.2011 в 08:00.

  9. #89

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Cвежая версия 214:
    - на 10% улучшена производительность памяти (UpdateMapping)
    - новые опции установки размера окна: x3, x4
    - мелкие доработки для обработки ошибок в некорректных девайсах
    - для удобочитаемости объект UlaPentagonCropped перименован в UlaPentagonCrop (из за этого старый конфиг машины работать не будет - нужно его либо грохнуть, либо добавить новый девайс ULA, после этого не забыть нажать F9 - Run)
    - исправлена ошибка эмуляции R в undocumented инструкциях BIT x,(IX+drel) (спасибо [bETA]mEN)
    - добавлено устройство-заглушка Kempston Joystick (пока эмулирует только порт, реальный джойстик не читает)
    - скорректирована дешифрация портов для устройства CMOS

    ---------- Post added at 10:25 ---------- Previous post was at 10:21 ----------

    Цитата Сообщение от ZEK Посмотреть сообщение
    Не, с некоторых слотовых машинах есть сигнал IORQGE, формируется он так
    На первый слот идет IORQ от процессора, если там стоит устройство которое отозвалось на адрес порта оно выставляет в своем слоте сигнал IORQG который блокирует прохождение IORQ во второй слот, и так далее по колву слотов, на данный момент максимальное кво слотов 4, выход с последнего слота идет в мать и там юзается для выбора внутренних устройств. То есть если на слоте отозвалось устройство у которого A0=0 то чтение из порта FE блокируется.
    теперь понял, нужно будет что-то типа приоритетов для девайсов соорудить на базе такой логики. При реализации Kempston Joystick уже столкнулся




    Цитата Сообщение от ZEK Посмотреть сообщение
    [/COLOR]И еще IBusDevice.BusInit вызывется 2 раза это правильно?
    все правильно, окно настроек создает отдельный BusManager-песочницу, в которой и производит изменения, если все ок, тогда конфиг сериализуется и десериализуется в основном BusManager'е
    Последний раз редактировалось ZXMAK; 22.09.2011 в 12:30.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  10. #90
    ZEK
    Гость

    По умолчанию

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    BusManager-песочницу
    А можно в bmrg признак вставить что это песочница?

Страница 9 из 224 ПерваяПервая ... 5678910111213 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 7
    Последнее: 06.04.2012, 21:37
  2. Машина Тьюринга для Z80
    от ZXMAK в разделе Эмуляторы
    Ответов: 4
    Последнее: 15.08.2011, 03:26
  3. Продвинутая Мелко Машина 1
    от Black_Cat в разделе Зарубежные компьютеры
    Ответов: 74
    Последнее: 03.03.2009, 09:05
  4. Что за машина такая??? Commodore 128...
    от ILoveSpeccy в разделе Commodore 16/64/128
    Ответов: 5
    Последнее: 31.10.2007, 10:25
  5. Java-машина
    от Error404 в разделе Программирование
    Ответов: 2
    Последнее: 15.01.2007, 15:11

Ваши права

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