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

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 13

Тема: Интересная мысль

  1. #1
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,567
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    395
    Спасибо Благодарностей получено 
    1,205
    Поблагодарили
    393 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    Exclamation Интересная мысль

    ─ Обсуждение железа (500:4232/0) ──────────────────────────────── HARDWARE.ZX ─
    Сооб : 1000 из 1000 -999
    От : Ivan Kuvshinov 500:95/462.35 03 Июн 05 11:43:22
    Кому : All 05 Июн 05 11:24:50
    Тема : Ускоритель видеологики.
    ────────────────────────────────────────────────── ─────────────────────────────

    Если уж делать расширенный экран для Спектрума, то
    почему бы его не поместить в адресное пространство ПЗУ? Это
    же 16 Кб чистого экрана да ещё и с освобождением адресного
    пространства, что весьма прилично!

    Аргументы такие - экран редко читается и можно обойтись
    без этого, в ПЗУ не требуется писать, так что можно
    разделить чтение и запись: чтение - из ПЗУ, а запись - в
    экран по одним и тем же адресам. Видеоконтроллер может
    читать на прямую. С совместимостью никаких проблемм, ведь
    запись на чтении никак не отражается, и по барабану какое
    ПЗУ подсунуто, главное что это ПЗУ, да и банками не надо
    щёлкать.

    > А как один бит в байт добавить (линию pисуем)? Для этого
    >надо читать или всёже не надо? А если надо, копию этого
    >байта следует где-то ещё заpанее делать? Может быть,
    >аппаpатно сделать возможность записи не всех бит в байт для
    >сохpанения тех, что писать не надо (тогда станет возможным
    >ставить\снимать один бит без чтения)? А как тогда быть с
    >совместимостью и быстpодействием?

    Подумаши пришёл к такому выводу - всё будет чики-чики,
    если для того что бы поставить точку не надо будет ничего
    читать, а это значит байт (или несколько) на точку или
    расположить там только цветовые аттрибуты.
    Для 16Кб имеем где-то 128*128 или 160*102 при 256 цветах
    (как раз видео клипы смотреть :-) ). Или одни аттрибуты
    (байт на байт) для разрешения 512*240 - как раз уложимся
    (15360).

    По большому счёту видеопамять требуется только для
    записи, если рассматривать её с точки зрения программ.
    Конечно, речь идёт только о количественной оценке, а не о
    абсолютном утверждении, но тем не менее это может оказаться
    полезным.
    Итак была приведенна идея о том как использовать выгоду
    одностороннего чтения, но.. - она не учитывает ОСОБОЙ
    структуры экрана на Спектруме, благодаря которому, что бы
    поставить обычную точку следует, произвести логическую
    операцию со значением в видеопамяти, что не мыслимо без
    чтения. Однако сами принципы работы с экраном не меняются и
    если бы такие логические операции могли проводиться без
    чтения, то всё очень хорошо бы легло в предложеннную идею.
    Hо решение лежит на поверхности - ведь логические операции
    элементарны их очень мало и очень просто реализуются в
    железе, а непосредственное значение ячеек видеопамяти
    программам не нужно, то есть можно сделать переключаемые
    режимы работы с видеопамятью, которые будут осуществлять
    логические операции с копируемыми туда данными. Это может
    существенно увеличить скорость работы с графикой на
    Спектруме и даёт возможность применить и основную идею
    изложенную в самом начале.
    Вопрос к опытным программистам: на сколько быстрее
    (приблизительно.. так - на вскидку) стала бы работа с видео
    обладающим такими режимами? Или игра не стоит свеч?

    КИА

    * Origin: < Hardware.ZX > (500:95/462.35)
    С уважением, Станислав.

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

  3. #2
    Member
    Регистрация
    04.04.2005
    Адрес
    Невинномысск
    Сообщений
    49
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    чтобы решить проблему с чтением - а если ориентироваться на адрес цикла М1 ? образно говоря - если было выполнение команды в пзу, то на время следующих нескольких тактов чтение из экрана отключается. а если выборка команд идёт из озу то чтение из пзу вызывает чтение из экрана. имхо проблема будет только с программами использующими пзу-шный шрифт.

  4. #3
    Veteran Аватар для GriV
    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Сколько помню, только более менее новые демонстрашки

    и наши игрушки не используют чтение экрана, а почти весь багаж западных игрушек читает экран.. Нарпимер наложение изображения поверх имеющегося по AND или }{OR - часто используемая операция.

    А вот идея насчёт адреса цикла запроса по M1... С другой стороны опять же как быть с программами которые запускают п/п из ПЗУ, ведь тогда получается что первая строчка ПЗУ будет оттранслирована как экранная область (т.е. произойдёт не чтение из ПЗУ а чтение из экранной области)...

    З.Ы. А методика очень хороша, не будь в ней сложности...
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  5. #4
    Veteran Аватар для GriV
    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Насчёт ускорения - насколько сильно оно будет -

    от 100% до 0%, всё зависит от того, какой контент.

    Вот тот же пример приводился, в небезызвестной Awaken процедура копирования из буфера/обновления экрана занимает порядка 30-40%% процессорного времени, да и почти в любой игрушке или демке основное время процессор тратит именно на закрученные выводы - те же "хитрые" конструкции типа {Pop HL Ld (экран), HL 16 раз подряд} или там {LDI 32 раза подряд} тоже не от высокой скорости вывода придуманы были.
    Использования аппаратной части для указанных операций кроме того позволит сэкономить не только процессорный ресурс, но и ресур памяти.
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  6. #5
    Master Аватар для Conan
    Регистрация
    22.01.2005
    Адрес
    Moscow
    Сообщений
    2,250
    Спасибо Благодарностей отдано 
    42
    Спасибо Благодарностей получено 
    279
    Поблагодарили
    108 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Часто новое, это очень хорошо забытое старое

    Размещение дополнительного экрана в нулевой страничке (под ПЗУ) реализовано в расширенном экране ZX-Next. Там размещалась память экрана 640*200 (CGA). Плюсом такого решения было сохранение обычного экрана 256*192, в который (из которого) можно было переключаться в расширенный.

    Были и некоторые тонкости: при работе TR-DOS (и бейсика) в нижнюю память происходила запись (в экране возникали точки и полоски). Для предотвращения этого использовался порт управления нижней областью ОЗУ (блокировка записи и возможность отключения ПЗУ, для чтения из экрана).

  7. #6
    Moderator Аватар для Максагор
    Регистрация
    16.01.2005
    Адрес
    Москва
    Сообщений
    1,981
    Спасибо Благодарностей отдано 
    207
    Спасибо Благодарностей получено 
    303
    Поблагодарили
    113 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Conan
    Размещение дополнительного экрана в нулевой страничке (под ПЗУ) реализовано в расширенном экране ZX-Next. Там размещалась память экрана 640*200 (CGA). Плюсом такого решения было сохранение обычного экрана 256*192, в который (из которого) можно было переключаться в расширенный.

    Были и некоторые тонкости: при работе TR-DOS (и бейсика) в нижнюю память происходила запись (в экране возникали точки и полоски). Для предотвращения этого использовался порт управления нижней областью ОЗУ (блокировка записи и возможность отключения ПЗУ, для чтения из экрана).
    Наверное из-за блокировки записи, которую мы, по видимому, просто не отключили, нам тогда, когда у Романа пивко пили, не удалось заполнить байтами экран ZX-NEXT...
    Максагор, NedoPC group
    ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
    [ZX rulezzz 4reva!!!]
    http://atmturbo.nedopc.com
    http://vk.com/atmturbo
    http://maksagor.livejournal.com
    http://moskprf.ru
    [СССР][Коммунизм][КПРФ] ну [ZX], естественно...

  8. #7
    Master Аватар для Conan
    Регистрация
    22.01.2005
    Адрес
    Moscow
    Сообщений
    2,250
    Спасибо Благодарностей отдано 
    42
    Спасибо Благодарностей получено 
    279
    Поблагодарили
    108 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Максагор
    Наверное из-за блокировки записи, которую мы, по видимому, просто не отключили, нам тогда, когда у Романа пивко пили, не удалось заполнить байтами экран ZX-NEXT...
    Думаю ключевое слово все же "пиво". Надо поискать, где то был конвертор .PCX-ов, вьювер и насройщик под это дело. Только бы у Ромки ПЗУ-шки скопировались.

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

    По умолчанию

    ukms[z]: M1 не подходит - нельзя будет прочитать шрифты/таблицы кнопок/адресов (любые данные) из ПЗУ. вообще, лучше порт присобачить в добавок к M1
    Последний раз редактировалось SMT; 05.06.2005 в 17:17.

  10. #9
    Master Аватар для Ronin
    Регистрация
    28.03.2005
    Адрес
    Krasnodar, Russia
    Сообщений
    585
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    доступ под нижними 16к (под ПЗУ) к памяти через шину реализован в Nemo-bus => люая видеокарта, ибо она будет именно слотовая, просто обязана будет заюзать эту возможность.

  11. #10
    Activist Аватар для acidrain
    Регистрация
    01.03.2005
    Адрес
    Russia, Krasnodar
    Сообщений
    433
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А что, если добавить ускоритель вывода 2д графики в данной области. Т.е. хард копировщики и спрайто-выводители итп? Прям как на амиге и спринтере Скорость значительно увеличиться, не надо будет ухищрений с пушами и лди - просто указываешь адрес в озу спека, ее размер, что с этой областью делать и старт блиттеру =)
    Полноценная карта будет =)
    http://amigasc.nm.ru

    Free coder and hardwareman
    Amiga addicted

Страница 1 из 2 12 ПоследняяПоследняя

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

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

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

Ваши права

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