Автор Тема: Точный FPGA клон Sega Megadrive уже близок!  (Прочитано 4008 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #30 : 25 Август 2023, 17:46:33 »
Ящик бомбовский!
Цветной 14" и стол под него ещё не освободил.

Оффлайн Умный

  • Пользователь
  • Сообщений: 440
  • Пол: Мужской
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #31 : 25 Август 2023, 17:50:40 »
Цветной 14" и стол под него ещё не освободил.
Крутой "Сапфир" с геометрией все хорошо, круто!

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #32 : 25 Август 2023, 17:51:07 »
Крутой тел, видно что с геометрией все ок! На таком играть круто даже, но не пойму что  за фирма/модель
Сапфир-23ТБ-307/Д

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #33 : 25 Август 2023, 18:03:05 »
Борда подключена по композиту?
Да. Но хватит уже об телике. Хочешь подробностей - стучись в личку.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3245
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: Точный FPGA клон Sega Megadrive уже близок!
« Ответ #34 : 25 Август 2023, 21:28:43 »
Хорошо. Покурю код, сделаю, чтобы графика обновлялась.
Так то я просто бит 128к режима включаю и все, а надо и графен весь прогрузить. :)

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3245
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #35 : 26 Август 2023, 22:40:57 »
Добавил пункт меню.
Включает режим 128кб, ждет vsync, обновляет шрифт и содержимое экрана.

Оффлайн NukeYKT

  • Пользователь
  • Сообщений: 15
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #36 : 26 Август 2023, 22:57:52 »
266689-0

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #37 : 27 Август 2023, 07:54:13 »
Тот же результат:

И при возврате остаются артефакты:

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

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3245
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #38 : 27 Август 2023, 16:23:38 »
Добавил очистку всего экрана.
Я так полагаю, что новые 64кб нужны чисто под таблицы.
В игрулях с режимом 128кб попросту ничего не изменилось:
-проблем с приоритетами слоев нет
-проблем с палитрами нет
-проблем с врашением спрайтов нет
Если так, значит структура тайла в таблице не поменялась, а это значит врятли тайлы из новой памяти можно отображать.
Разве что найдется какой-то незадействованный регистр, где можно указать место с таблицей с доп. битом для тайлов в таблице и в спрайтах, в чем я очень силньо сомневаюсь.

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #39 : 27 Август 2023, 17:19:49 »
Segaman, твои выводы неверны. При включении 128К просто второй банк интерливится с первым, делая шину доступа к данным 16 бит. Это ускоряет практически в 2 раза некоторые DMA операции. На остальное это никак не влияет, игры которым достаточно 64К будут использовать 64К, не трогая верхнюю половину. Но скорость обмена при этом повысится. Вот несколько замеров:



Некоторые игры активно используют DMA, они работают заметно плавнее при принудительном включении 128К режима.

PS Что-то ты всё равно делаешь не так:

Правда, починил возврат в 64К:

Напомню, что 128К хак соника работает идеально. Так же Ньюк сделал на FPGA корке принудительную активацию 128К режима и Zero Tolerance так же работал без артефактов.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3245
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #40 : 27 Август 2023, 17:46:28 »
Та мне бы самому такую железку.
Сам я хрен соберу ибо у меня лапки.
Так шо я бы купил  :)
Надо ж норм тестить. Я на 128к молюсь уже пару лет, но из-за лапок ничего поделать не мог

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #41 : 27 Август 2023, 18:08:17 »
Segaman, ну TmEE, например, тестит вот так:

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #42 : 27 Август 2023, 18:51:51 »
Ну вот, согласно этой доке адрес A16 в режиме 128К можно задать любой базе. Ну и глупо было бы добавлять 64К и не давать её использовать.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3267
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #43 : 28 Август 2023, 07:56:30 »
Но скорость обмена при этом повысится. Вот несколько замеров:
В этом тесте vramx2 это как раз для 128 Kb режима. Интересно почему они не поставили 2 x 32 Kb, если передумали ставить вторую на 64 Kb?

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #44 : 28 Август 2023, 10:40:31 »
В этом тесте vramx2 это как раз для 128 Kb режима. Интересно почему они не поставили 2 x 32 Kb, если передумали ставить вторую на 64 Kb?
Потому-что нет такой матрицы. Матрица памяти всегда равна степени двойки, ибо она квадратная.

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 389
  • Пол: Мужской
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #45 : 28 Август 2023, 15:46:00 »
...А ещё тут установлено 128КБ VRAM, максимальный размер, с которым может работать VDP. При этом выбор между стандартными 64КБ и расширенными 128КБ задаётся через регистр управления самого VDP, тут никакой внешней логики даже не надо.....
   А как тогда задать этот режим существующим  играм ?  :neznayu:
Это ROM игры,тогда,нужно патчить ?

 

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #46 : 28 Август 2023, 16:54:36 »
   А как тогда задать этот режим существующим  играм ?  :neznayu:
Это ROM игры,тогда,нужно патчить ?
Да. Отлавливать команду записи в регистр управления и патчить число чтобы флаг был установлен.

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 389
  • Пол: Мужской
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #47 : 29 Август 2023, 05:07:14 »
Да. Отлавливать команду записи в регистр управления и патчить число чтобы флаг был установлен.
  А реально ли это сделать аппаратно? Дешифрировать адрес $C00004 порта управления VDP ,а также условие записи в этот порт и "подменить" бит7 на лог.1  :-\
Ну примерно как в Mega Key...

   

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #48 : 29 Август 2023, 07:17:28 »
  А реально ли это сделать аппаратно? Дешифрировать адрес $C00004 порта управления VDP ,а также условие записи в этот порт и "подменить" бит7 на лог.1  :-\
Ну примерно как в Mega Key...
Реально, но не так, как мегакей. Тут сложнее.

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 389
  • Пол: Мужской
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #49 : 30 Август 2023, 03:17:00 »
Реально, но не так, как мегакей. Тут сложнее.
  Ну если можно обойтись горстью мелкологики,я бы хотел попробовать...
 Платы клонов на серии ТА есть для опытов.
Видеопамять тоже есть.
 Дайте мне пинок в нужном направлении  :)

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3245
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #50 : 30 Август 2023, 14:01:08 »
  Ну если можно обойтись горстью мелкологики,я бы хотел попробовать...
 Платы клонов на серии ТА есть для опытов.
Видеопамять тоже есть.
 Дайте мне пинок в нужном направлении  :)
Такс. Судя по доке https://segaretro.org/Sega_Mega_Drive/VDP_registers
Тебе надо отлавилвать запись 0x81xx и делать ему логичекое или (OR) с числом 0x80
Говоря языком пограммиста:
if ((value & 0xFF00) == 0x8100)
  return value | 0x0080;
else
  return value;

Добавлено позже:
Но я бы предпочел написать скрипт на lua для генса, который отловит все записи регистра 0x81 и записал точки этой записи в файл.
Прошел бы игру с этим скриптом.
А далее прошелся по всем полученным местам в роме и добавил логичекое OR с 0х80.
Как правило даже при большой оптимизации таких точек в роме будет максимум штук 20-30.

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 389
  • Пол: Мужской
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #51 : 31 Август 2023, 17:59:43 »
Такс. Судя по доке https://segaretro.org/Sega_Mega_Drive/VDP_registers
Тебе надо отлавилвать запись 0x81xx и делать ему логичекое или (OR) с числом 0x80
Говоря языком пограммиста:
if ((value & 0xFF00) == 0x8100)
  return value | 0x0080;
else
  return value;
...
  0_0
Segaman, к сожалению,для меня это китайская грамота .
Всё-таки хочется хардварного решения....и,по возможности ,универсального для всех игр и хоумбрюшек...
   


Оффлайн Segaman

  • Пользователь
  • Сообщений: 3245
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #52 : 31 Август 2023, 21:13:40 »
  0_0
Segaman, к сожалению,для меня это китайская грамота .
Всё-таки хочется хардварного решения....и,по возможности ,универсального для всех игр и хоумбрюшек...
   


думается мне хардверное решение обойдется сильно дороже.
надо отрезать процессор от шины и ставить посрединка между ним и видео-чипом.
надо парсить то, что получает процессор и что пытается писать и куда.
потом сравнивать с нужным значением и заменять в случае совпадения.
если ты хочешь потратить несколько месяцев на то, что можно сделать за пару-тройку часов на софтверном уровне, то рекомендую сильно задуматься.
алсоу нефакт что ты такими манипуляциями не прибъёшь консоль.
короче тут только ромхакер порешает  :)

Оффлайн onimush

  • Пользователь
  • Сообщений: 471
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #53 : 01 Сентябрь 2023, 01:27:08 »
На основе крупных фото декапа можно прямо написать код для fpga?  o_0

Оффлайн HardWareMan

  • Ушел с форума
  • Сообщений: 7562
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #54 : 01 Сентябрь 2023, 05:19:52 »
На основе крупных фото декапа можно прямо написать код для fpga?  o_0
Именно для этого оно и делается. Что не так? К слову, код уже по сути написан, нужно только сделать ещё пару итераций независимых разрабов чтобы убедиться, что он правильный.

Оффлайн onimush

  • Пользователь
  • Сообщений: 471
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #55 : 05 Сентябрь 2023, 13:38:54 »
А на чипы ранних пс1 разрешающей способности оборудования у тех людей что этот декап делают хватит?

Оффлайн HayaoYokogawa

  • Пользователь
  • Сообщений: 2149
  • Пол: Мужской
  • большой и толстый розовый динозавр
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #56 : 05 Сентябрь 2023, 13:48:50 »
А на чипы ранних пс1 разрешающей способности оборудования у тех людей что этот декап делают хватит?
Так вроде реализации потихоньку уже пилят. По крайней мере ядро для MiSTer уже есть.

Оффлайн onimush

  • Пользователь
  • Сообщений: 471
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #57 : 05 Сентябрь 2023, 13:55:09 »
Так вроде реализации потихоньку уже пилят. По крайней мере ядро для MiSTer уже есть.

Так и мегадрайвовское ядро есть но тем не менее мы в этой теме.

Оффлайн HayaoYokogawa

  • Пользователь
  • Сообщений: 2149
  • Пол: Мужской
  • большой и толстый розовый динозавр
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #58 : 05 Сентябрь 2023, 15:46:56 »
Так и мегадрайвовское ядро есть но тем не менее мы в этой теме.
Так я к тому и клоню, вообще-то. Раз ядро есть, значит знание предмета изнутри уже присутствует.

Правда, я не совсем в курсе, возможно ли писать прошивку FPGA по принципу черного ящика или отталкиваясь от софтверной интерпретации, но, как мне кажется, даже если и возможно, то это сильно дольше и геморройнее  :)

Оффлайн Nhisti

  • Пользователь
  • Сообщений: 1003
    • Просмотр профиля
Точный FPGA клон Sega Megadrive уже близок!
« Ответ #59 : 06 Сентябрь 2023, 12:59:07 »
Так я к тому и клоню, вообще-то. Раз ядро есть, значит знание предмета изнутри уже присутствует.

Правда, я не совсем в курсе, возможно ли писать прошивку FPGA по принципу черного ящика или отталкиваясь от софтверной интерпретации, но, как мне кажется, даже если и возможно, то это сильно дольше и геморройнее  :)
HardWareMan же это уже объяснял, причём именно в ответ тебе  :-\
PS  Analogue Mega Sg основана не на декапе. На данный момент существует несколько проектов MD на FPGA, даже есть корки для MiSTER. Но они не основаны на декапе а лишь повторяют пересказ некоторых достаточно точных эмуляторов.
Насколько я понял, есть примерное понимание основных принципов и логики работы проца, и на основании этого строились эмуляторы и другие ФПГА, а "декап" даёт именно точное знание этих принципов и логики, безо всяких гипотез и догадок.(заранее извиняюсь у спецов-технарей за наверняка кривую интерпретацию).
Поэтому onumush и спрашивает возможен ли "декап" ПС1.