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

User Tag List

Показано с 1 по 7 из 7

Тема: Вариант расширения памяти Spectrum

  1. #1
    Activist Аватар для AzAtom
    Регистрация
    05.04.2015
    Адрес
    г. Майкоп
    Сообщений
    292
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Вариант расширения памяти Spectrum

    Добрый день.

    Обзор: Есть процессор Z80 с АП (адресным пространством) 64 КБ, есть стандартное, фирменное расширение памяти до 128 КБ методом отображения 8 страниц по 16 КБ в окно 48-64 КБ АП процессора. Есть не фирменные, но тоже в своём роде стандартные расширения на 256 КБ, 512 КБ и 1024 КБ.
    Далее, здесь, на форуме, просматривал темы, в которых уже были идеи подключить 4096 КБ в 16 КБ окно, используя один порт целиком.

    Моя идея в следующем: Сделать 2 дополнительных порта и 2 окна в АП: 32-48 и 48-64 КБ, в которые через указанные порты можно подключить любую страницу из тех 256 по 16 КБ (4096 КБ).
    Что это даёт и как можно использовать?
    1. Программа пишет в неизменяемые 8 КБ (24-32 КБ) некий менеджер памяти, который будет переключать страницы как нужно. В 0 окне (32-48 КБ) может находится страница с кодом программы, а в 1 окне (48-64 КБ) может находится страница с данными. Например, если движок игры помещается в 1 страницу, то данные могут занимать несколько страниц. Для каждого уровня своя страница, для главного меню и настроек своя страница, для заставок тоже свои страницы. Если произошло событие, то его звуковое сопровождение может находится в отдельной странице. Если это большая прикладная программа, то разные исполняемые модули могут находится в разных страницах. Например, код текстового редактора может уместиться в 1 страницу, а данные могут спокойно занять много страниц.

    2. Можно в те 8 КБ записать драйвер, управляющий выделением страниц и запуском программ, и программа из одной страницы может вызвать функцию из другой страницы. Тогда в памяти может находится драйвер виртуального диска и загружать данные в нужные страницы для другой программы и конфликтовать они не будут. Плюс - все программы можно писать для работы с одного адреса: 32768. В принципе, можно и оба окна одновременно использовать под код и данные, как обычно.

    3. Можно в добавок к менеджеру памяти сделать что-то типа планировщика задач и система получится многозадачной. Даже если одновременная работа будет затруднена, то можно будет хотя бы переключаться между ними.

    Конечно, первые 0-16 КБ с торчащим ПЗУ мозолит глаза и уменьшает непрерывную область. Можно будет и там подумать, как работать. Если отключить ПЗУ и перенести экран в 0-16 КБ, то можно будет там разместить менеджер, в 16-32 разместить страницу с кодом программы, а в 32-64 разместить страницу данных. Только тогда страницы будут разного размера, что вызовет сложности в дальнейшем.

    Предлагаю обсудить эту идею. Какие достоинства и недостатки вы видите? Вопрос к программистам: Насколько это будет удобно лично вам?
    Последний раз редактировалось AzAtom; 02.08.2016 в 12:47.

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

  3. #2
    Master Аватар для s_kosorev
    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Схема?

  4. #3
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,099
    Спасибо Благодарностей отдано 
    22
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AzAtom Посмотреть сообщение
    Какие достоинства и недостатки вы видите?
    Насколько все это совместимо со "старой" адресацией памяти 128К машины? На уровне портов, скорости страниц памяти и включением "банок" в нижних 48 К.

    Когда есть, но не знаешь где - это все равно, что нету.

  5. #4
    Guru Аватар для bigral
    Регистрация
    12.07.2006
    Адрес
    г. Киев, Украина
    Сообщений
    2,147
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    95
    Поблагодарили
    82 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AzAtom Посмотреть сообщение
    Предлагаю обсудить эту идею. Какие достоинства и недостатки вы видите? Вопрос к программистам: Насколько это будет удобно лично вам?
    Был тут такой, спекки-супер-стандартизатор BlackCat, слава богу он тебе не ответит уже. Вот от него за такие посты люди отгребали так что некоторые потом на форуме токо в readonly жили а некоторых более никто не видел. Но есть все шансы - у него есть свой форум где он уединился, если не страшно иди там предложи свою идею.

    А по вопросу коротко: есть уже некоторые модели (ATM2) где такая гибкость и даже больше доступна. Проблема в том что писать софт только под такие "финты" (сильно непохожие на оригинал) значит не получить внимания владельцев обычных zx-ов. Приживаются только вещи которые дают "ощутимую разницу" (типа GS, Ts-conf) либо которые обратно совместимые и старый софт не видит разницы (trdos переделки).

  6. #5
    Activist Аватар для AzAtom
    Регистрация
    05.04.2015
    Адрес
    г. Майкоп
    Сообщений
    292
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от null_device Посмотреть сообщение
    Насколько все это совместимо со "старой" адресацией памяти 128К машины?
    (Ерунду убрал) Я не предлагаю убирать порт 7ffd - он по прежнему понадобится для переключения ПЗУ, экранов и блокировки записи в порты, включая те 2 новых. А один из старших неиспользуемых битов можно пустить на флаг - сброшен - память 128 КБ и расширенные порты не используются, установлен - вместо порта 7ffd схема переключает страницы в соответствии со значениями из новых портов.

    Насчёт использования АП 0-16 КБ - можно при отключении ПЗУ в эти адреса встраивать какое-либо внешнее устройство для обмена с ним данными, тогда все страницы будут по 16 КБ и будет возможно копирование из своей большой памяти в память внешнего устройства. Например, это будет полезно, если захочется подключить ISA'шную VGA видеокарту.
    Даже, можно завести ещё один порт, который будет выбирать устройство, которое будет подключено в 0-16 КБ. При значении 0, например, ПЗУ самого компа, 1 и т.д. будут активировать разные устройства, например, по очереди можно подключать контроллер жёсткого диска, внешнюю видеокарту и т.д.

    А какие проблемы могут быть со скоростью памяти? Она же вся с одной скоростью работает.

    - - - Добавлено - - -

    Цитата Сообщение от bigral Посмотреть сообщение
    BlackCat, слава богу он тебе не ответит уже. Вот от него за такие посты люди отгребали
    Не застал его. Он был модератор и против новых расширений?

    Вообще, как-то расширяться нужно. IBM PC выехал только за счёт обновления, расширения и обратной совместимости. У спектрума, к сожалению, пока всё не так. В первую очередь, это процессор. Тут что-то видел про Z380, надо бы почитать подробнее.

    Другая проблема в том, что с развитием технологий всякие схемки на коленке из рассыпухи не соберёшь как раньше. Нужно использовать что-то готовое, а что-то готовое уже есть на PC. Дилемма, в общем.

    - - - Добавлено - - -

    Цитата Сообщение от s_kosorev Посмотреть сообщение
    Схема?
    Сначала нужно всё обдумать.

    - - - Добавлено - - -

    Цитата Сообщение от bigral Посмотреть сообщение
    писать софт только под такие "финты" (сильно непохожие на оригинал) значит не получить внимания владельцев обычных zx-ов. Приживаются только вещи которые дают "ощутимую разницу" (типа GS, Ts-conf)
    GS это звук? Так и эти вещи не для "обычного" zx. На моём экземпляре, например, нет звукового сопроцессора и все эти штуки не для меня. Единственное, звучащая программа может и у меня играть без проблем и без звука.

    В целом ты прав, конечно, если нужна доработка, то люди её сделают, если она даёт хорошее преимущество. Основное - наличие программ, использующих это преимущество. Программы будут, если программисту будет удобно и интересно писать программу под данное расширение. Поэтому я и спросил программистов "будет ли удобно и эффективно работать с такой конфигурацией?"
    Последний раз редактировалось AzAtom; 03.08.2016 в 10:19.

  7. #6
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,099
    Спасибо Благодарностей отдано 
    22
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AzAtom Посмотреть сообщение
    Я не предлагаю убирать порт 7ffd
    Цитата Сообщение от AzAtom Посмотреть сообщение
    один из старших неиспользуемых битов можно пустить на флаг
    А как насчет совместимости с расширением памяти pentgon 512K?!

    Цитата Сообщение от AzAtom Посмотреть сообщение
    А какие проблемы могут быть со скоростью памяти? Она же вся с одной скоростью работает.
    Зависит от того, какую модель спектрума вы собрались "расширять" и как будет устроен контроллер управления памятью.

    Цитата Сообщение от AzAtom Посмотреть сообщение
    это будет полезно, если захочется подключить ISA'шную VGA видеокарту
    Есть ли на данный момент софт для этого, или - так, задел на будущее?

    Цитата Сообщение от AzAtom Посмотреть сообщение
    можно завести ещё один порт, который будет выбирать устройство,
    Цитата Сообщение от AzAtom Посмотреть сообщение
    например, по очереди можно подключать контроллер жёсткого диска
    Что за контроллер: SMUC, NEMO или какой-то еще? Зачем для этого "отключать" ПЗУ из нижних 16К?
    ....
    Лично для меня, пока - вопросов, больше, чем ответов.
    Когда есть, но не знаешь где - это все равно, что нету.

  8. #7
    Veteran Аватар для Hacker VBI
    Регистрация
    05.03.2013
    Адрес
    г. Канев, Украина
    Сообщений
    1,596
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    Thumbs up

    AzAtom, готово
    очень удобно.

  9. Этот пользователь поблагодарил Hacker VBI за это полезное сообщение:

    AzAtom (31.10.2023)

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

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

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

Похожие темы

  1. ZX-Spectrum (Львовский вариант) - не стартует при вставленных ПЗУ
    от andreysur в разделе Несортированное железо
    Ответов: 3
    Последнее: 07.07.2016, 22:23
  2. Платы расширения Spectrum
    от Sentenced в разделе Несортированное железо
    Ответов: 5
    Последнее: 14.03.2016, 11:19
  3. Куплю ПК Поиск и блок расширения памяти.
    от DATAsoft в разделе Барахолка (архив)
    Ответов: 8
    Последнее: 20.04.2012, 00:19
  4. Ответов: 49
    Последнее: 21.04.2010, 18:45
  5. GS плата расширения памяти ищется...
    от Frago в разделе Барахолка (архив)
    Ответов: 5
    Последнее: 16.04.2009, 13:31

Ваши права

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