User Tag List

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

Тема: Быстрая и медленная память 128к

Комбинированный просмотр

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

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

    По умолчанию

    Цитата Сообщение от Hacker VBI Посмотреть сообщение
    http://zxmak2.codeplex.com/SourceCon...w/22900#391359
    Я вижу, что это связано с обращениями к памяти до #8000, и всё.
    В общем, расположение кода лучше с #8000.
    нет, не только, вот ULA от Spectrum128:
    Код:
            protected override void WriteMem4000(ushort addr, byte value)
            {
                contendMemory();
                base.WriteMem4000(addr, value);
            }
    
            protected override void WriteMemC000(ushort addr, byte value)
            {
                if ((m_pageC000 & 1) != 0)
                    contendMemory();
                base.WriteMemC000(addr, value);
            }
    
            protected void ReadMem4000(ushort addr, ref byte value)
            {
                contendMemory();
            }
    
            protected void ReadMemC000(ushort addr, ref byte value)
            {
                if ((m_pageC000 & 1) != 0)
                    contendMemory();
            }
    
            #region The same as 48
    
            private void WritePortAll(ushort addr, byte value, ref bool iorqge)
            {
                contendPortEarly(addr);
                contendPortLate(addr);
                if ((addr & 0x0001) == 0)
                {
                    int frameTact = (int)((CPU.Tact - 2) % FrameTactCount);
                    UpdateState(frameTact);
                    PortFE = value;
                }
            }
    
            private void ReadPortAll(ushort addr, ref byte value, ref bool iorqge)
            {
                contendPortEarly(addr);
                contendPortLate(addr);
                int frameTact = (int)((CPU.Tact - 1) % FrameTactCount);
                base.ReadPortFF(frameTact, ref value);
            }
    тут есть и обращение к портам и к области #4000 и к #C000 (причем в зависимости от замапленой страницы)
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

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

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

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

Похожие темы

  1. Мега быстрая загрузка с кассеты???
    от ALEXEY.GORDEEV в разделе Софт
    Ответов: 48
    Последнее: 12.05.2021, 01:48
  2. Медленная память
    от Slider в разделе Для начинающих
    Ответов: 5
    Последнее: 28.02.2012, 12:46
  3. Быстрая тригонометрия...
    от ALKO в разделе Программирование
    Ответов: 8
    Последнее: 25.01.2011, 00:29
  4. Ответов: 4
    Последнее: 16.06.2010, 20:37
  5. Contended memory /Медленная память/ на Original Speccy
    от MadCat! в разделе Программирование
    Ответов: 15
    Последнее: 05.03.2005, 11:18

Ваши права

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