Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - as32888

Страницы: [1]
1
Наверное, многие в курсе, что HDD в иксбоксе не только для сохранений игр, но также и для кеширования данных с игрового DVD, чтобы иметь более быстрый доступ к игровым ресурсам. Для этого есть три раздела по ~749 МиБ, и обычно игра использует какой-то из свободных разделов, а, может быть, и не один, если ей надо, но обычно один.

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

Копирование происходит с маленьким буфером, потому что при копировании между 2 физическими устройствами (DVD&HDD) большой буфер не нужен, через цифровой интерфейс можно очень маленькие порции слать туда-сюда, а здесь диск становится один, но игра не знает про это и продолжает использовать маленький буфер, так что диск начинает напрягаться.

Размер буфера маленький также и в дашбордах (пробовал unleashx и xbmc4xbox последний), копирование около 6 МиБ в секунду (8 показывало в режиме UDMA100, который можно использовать в Cerbios) с раздела на раздел, диск при этом крякает страшно, но там обычно это и не нужно, потому что копируем обычно на hdd из сети или с dvd игру например.

Видится мне пара решений...
0)кто играет с dvd, это не про них
1)решение в лоб - ssd через конвертер ide-sata, хорошие конвертеры могут работать в режиме UDMA5, который доступен в современных биосах, например, в Cerbios, ну и сам ссд более быстро справляется с множеством мелких чтений и записи, и можно забить на вредную активность игр
2)в Cerbios запилили возможность использовать два HDD, но пока не подоспели утилиты для разметки и дашборды, которые будут видеть все разделы, но суть в том, что игра будет кешироваться с hdd на другой hdd или ssd, я пробовал сегодня зашить биос с этой настройкой, но единственное, чего я добился, это появление ошибки "нету HDD", когда не подключен второй HDD, буду еще посмотреть на эту тему, интересно
3)самое разумное, но я пока не нашел, - это патч игр, чтобы они перестали кешироваться в эти разделы, только этот вариант недоступен для тех игр, в которых использованы ограничения fatx файловой системы, к примеру, на длину путей, чтобы игру нельзя было скопировать, такие игры заливать нужно в виде iso в папочку, класть рядом attach.xbe и монтировать на место D диска (виртуальный DVD есть в последних софтмодах и биосах)
4)NCQ в более новых SATA дисках... оно вроде работает только в нативном сата режиме? не помню...

вообще удивительно, что последние биосы датируются аж 2023 годом (Cerbios тот же например), до сих пор какая-то работа идет, что-то пилят, к примеру, запилили поддержку очень больших дисков

2
В общем, такой момент. Есть ЭЛТ монитор с 110 кГц частотой строк (FE2111SB), есть видеокарта без аналогового выхода, есть конвертер HDMI-VGA с али за 150 рублей, который тянет 220 мегагерц.

С несколько сокращенным гашением вписывается режим 1600х1200 85 Гц, но хочется большие разрешения (в ущерб частоте кадров), этакий аппаратный суперсемплинг. Но раз в строке тоже растет число пикселей, то и частота пикселей будет неумолимо расти.

Итак, есть ли какие-то проверенные конвертеры, которые дадут более высокую частоту пикселей, в идеале 400 МГц? Пока что думаю пользоваться проверкой котов в мешке с возвратом товара.

3
Есть какой-то китайский картридж, где микросхема-капля и разводка под DIP42 ПЗУ, куда я впаял кроватку и в нее поставил зашитую соником3 с наклзом m27c322. Все работает, кроме сохранений, понятное дело, потому что SRAM нету. Нашел UM62256E-70LLT в закромах, значит.

Далее полез в гугл, выяснил, что вторые 2 мегабайта переключаются на SRAM на время записи сохраненок, а переключение управляется записью в регистр по адресу $A130F1 единички или нуля (нужен D триггер, который по сигналу /TIME запоминает значение VD0 на слоте картриджа)

Также из часто встречаемого в интернете то, что ром игры с подобным переключением банков побит на 2 и живет в двух ПЗУ половинных объемов. Но искать игру из списка, покупать картридж, чтобы туда потом вместо родных ПЗУ впаять свои, как-то не хотелось, и слишком не интересно.

Поразмыслив, родил такую схему переключения, где можно обойтись одним ПЗУ на 4 мегабайта. Надеюсь, ничего не забыл и не напутал.

Схема примитивная, потому что сделано допущение, что обращение идет только на один адрес в диапазоне $A13000-$A130FF, и что не надо различать адреса поэтому, и достаточно использовать сигнал /TIME и по нему считывать состояние нулевой линии данных на слоте.

Заказал микросхемы, как придут, буду паяться. О результатах отпишусь.

Такой вопрос - какой объем SRAM вообще используется, вероятно, 62256 слишком большая микросхема, мб можно не все адресные линии паять тогда?

4
Купил на али за 1500+доставка такую фиолетовую платочку.
В принципе, устраивает всё, кроме времени зашивки больших ромов (если 256 КиБ  еще быстро, то 4 МиБ уже заставляет понервничать). SPI speed test показывает 90 с чем-то kb/s, ну. думаю, понятно.

Решил проверить идею о подключении к внутренней m29w640ft впараллель еще одной такой же, чтобы зашить ее для использования в другом картридже и сделать, вероятно, многоигровочки.

И что я выяснил на данный момент:
1. Переключение старших адресов меняет смещение адреса для записи, но не влияет на адреса стираемых блоков, потому что блоков у флешки 135 штук (127 по 64 КиБ и 8 по 8 КиБ). то есть картридж будет стирать только во вторых 4 МиБ у своей и у добавленной флешки. Если флешку где-то предварительно стереть, то, скорее всего, ее можно будет там же и прошить (если это не тупая стиралочка на МК, которая с помощью сдвиговиков дает команду chip erase на чип и больше ниче не умеет), и тогда этот бубен не нужен. Пока буду считать, что средствами картриджа стирать можно вторые 4 МиБ.

2. Подтирать картридж будет часть вторых 4 МиБ согласно размеру рома, ибо зачем стирать все 4 МиБ, это долго, если надо записать меньше, поэтому можно придумать последовательность записи ромов меньше 4 МиБ из ромсета, чтобы не подтирать нужную нам инфу.
Записывать сначала файл 4 МиБ с заголовком как для SMD, но с FFFFFF содержанием, чтобы картридж сделал целиком стирание вторых 4 МиБ и не изменил содержимое ячеек, а потом записывать игры с конца, начать с более маленьких и закончив самой большой, таким образом, операции стирания не затронут ранее записанные игры. Это чтобы не склеивать несколько ромов на компе и не лить их на сд карту каждый раз

Флешка вторая будет иметь высокий уровень на /output enable, то есть будет работать только на запись.

Какие еще подводные? Наверняка что-то упустил. Ага, наверное. будет работать, если оборудование дает команды стирания, а потом просто ждет некоторое заложенное время, а следующую команду дает по истечении этого времени.

Смещение адресов ромов в многоигровках предполагается кратное их размеру, получается таким автоматически, если большие ромы в начале и маленькие в конце,
 тогда смешать сигналы смещения адреса и адресные линии можно через лог элемент 2ИЛИ. Если со счетчика/переключателей приходит лог 0, таким образом, лог.1 сможет прийти с шины адреса, как обычно, и это не помешает адресовать большие ромы.

Получается, к примеру, такая последовательность ромов: 2048, 1024, 512, 256, 256.. и так пока не заполнятся все 4 МиБ, заполнять с конца.

5
Заметил как-то, что на одном клоне сеги с такой маркировкой платы стоит перемычка между +5 Вольт и контактом HSYNC на слоте картриджа. Убрал ее, на работе посмотрел осциллографом синхроимпульсы и забыл.

Сейчас же у меня есть второй такой же клон, где эта перемычка стоит. Подключаю к скалеру (GBS8200 с модом gbscontrol и синтезатором частот si5351), на ЭЛТ мониторе с этой сегой сбит видеорежим, картинка не по размеру и уехала. Думаю, что же такое. Смотрю, в меню монитора указана другая кадровая и строчная частота, чуть больше. Потом смотрю в консоль скалера по веб морде, а там другая частота кадров.
Было 59,377.. что-то близкое к такому соотношению 4433618,75/285/262 = ~59,376
Стало показывать 60,437..., манипуляции с калькулятором наводят на мысль, что изменилось количество периодов поднесущей в строке, примерно бьется такое деление: 4433618,75/280/262 = 60,4365....
Уменьшение количества строк в кадре не бьется.

На сеге с чипом TCT6035 такое же (видимо, ничего не меняли, кроме того, что повыбрасывали сигналы, которые они на плате не распаивают совсем, типа RGB и чего-то для сега мега сиди)

В общем такой занятный факт, а что с ним делать, - не знаю.

6
Все знают, что эмуляторы старых консолей дают номинально 50 или 60 фпс (как и сами консоли). А частота обновления экрана у ПК может быть иная. Например, у меня на ЭЛТ стоит 85Гц, чтоб не пороть глаза мерцанием (при 85Гц мерцания не вижу).
Преобразование частоты кадров там сделано методом повторения кадров. То есть самый мерзкий метод - в нужные моменты кадр повторяется от 0 до нескольких раз. Или выбрасываются кадры, если частота понижается. Результат похож на унылое говно. Особенно если преобразование не кратное (50>85, 60>85, 50>60).

Есть же много разных методов преобразования частоты кадров, которые могут дать результат намного лучше (особенно разновидности компенсации движения). Так почему ни одному автору ни одного эмулятора это не пришло в голову? o_0

Вот для Kega Fusion есть графические фильтры, которые увеличивают пространственное разрешение картинки и по какому-то алгоритму обрабатывают кадры. Можно ли теоретически написать фильтр, который будет повышать частоту кадров (увеличивать временнОе разрешение) методом компенсации движения, например?

Навеяно софтом под названием Smooth Video Project (SVP). Как-то раз записал на эмуляторе видео, а потом проиграл его с включенным SVP. Результат порадовал. При 85Гц кадровой на раб. столе такая же плавность, как на эмуле, когда тот в режиме NTSC и частота кадров стоит 60Гц (отсутствие преобразования).

Смысл этого всего:
1. На ЭЛТ - избежать видимого мерцания при сохранении плавности и четкости картинки в движении.
2. На ЖК с поддержкой 120Гц - уменьшить размытие картинки в движении.

Страницы: [1]