Автор Тема: Mister project  (Прочитано 42638 раз)

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

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1146
  • Пол: Мужской
    • Просмотр профиля
Mister project
« Ответ #210 : 21 Августа 2026, 10:44:20 »
А можн ссыль на девайс, что т я такого не видел. Это не конвретрер с вга на ргб?
Гугл работает? :) пишешь "mister fpga rgb cable" — продаётся много где, от авито до алика.

Ну а эт уже спорный вопрос, насчет нативности - ядра-эмуляторы\запускаторы\как угодно пишутся также программно
Ну я бы для начала разобрался с тем, что за зверь такой этот кабель для мистера и с тем, как там работает порт VGA, прежде чем утверждать что-то о принципах работы ПЛИС и приравнивать язык описания оборудования к языку программирования, явно не имея об этом ни малейшего представления.

Не просто программно, но и теми же самыми способами, что программные эмуляторы: попытками угадать, как работает оригинальное железо. Использование FPGA никак не помогает магическим образом сделать точную копию исходного устройства, это всегда лишь какое-то приближение, в меру понимания устройства железа и чипов разработчиками. А реальными преимуществами низкоуровневой эмуляции — возможностью работы с любыми оригинальными устройствами, теми же картриджами — почти никто и не пользуется.
Ты хороший программист, сделал очень многое для ретро сообщества и Денди — тут снимаю шляпу. Но вот конкретно насчет FPGA — тут похоже даже ты запутался в терминах. И это то, почему я против термина "хардверная эмуляция" — даже опытные и прошаренные технари услышав слово "эмуляция" видят ПЛИС как микроконтроллер, выполняющий программный код на низком уровне, в то время, как сам ПЛИС работает совершенно иначе. При загрузке ядра, внутри происходит построение реальной, физической архитектуры. Т.е. это не виртуалка, не программа, которая эмулирует архитектуру. Это самое настоящее железо. Вся "эмуляция" заключается в том, что архитектура держится на транзисторах, а не "спаяна намертво". Т.е. от эмуляции там одно слово. При этом никто не говорит, что аппарат получается точной копией оригинала. Речь о том, что это реальное железо, которое аппаратно совместимо с запускаемой на нём игрой. Даже если оно не повторяет оригинал — это всё ещё железо. Ну а если носиться с этим словом "эмцляция" подобно дурню со ступой (сейчас это пример, а не оскорбление в твой адрес) и называть всё, что не оригинал эмуляторами — то как я и говорил, давайте будем последовательны: mega drive 2 — это эмцлятор mega drive 1. И он умеет эмулировать SMS. Да и вообще, кремний — это эмулятор процессора: да, на нём есть схема и куча транзисторов, но камень остаётся камнем, это не процессор изначально! И это звучит не менее бредово, чем "хардверная эмуляция".

А реальными преимуществами низкоуровневой эмуляции — возможностью работы с любыми оригинальными устройствами, теми же картриджами — почти никто и не пользуется.
Любое оригинальное устройство становится низкоуровневым эмулятором по той же логике. Подключил к плазме — эмуляция. Запустил игру с флешака — эмуляция. Всё, что не канон — есть эмуляция :biggrin:

Так что завязывайте уже, народ. И сами путаетесь и других путаете.

Оффлайн shiru8bit

  • Пользователь
  • Сообщений: 31
  • Пол: Мужской
    • Twitter
    • Youtube
    • Просмотр профиля
Mister project
« Ответ #211 : 21 Августа 2026, 11:20:55 »
Я не только программист и разработчик эмуляторов, но и разработчик железа. Я прекрасно знаю, как работает FPGA. И уверен, что не путаюсь в терминах. Разница не в транзисторах и VM. Разница в том, что Mega Drive 2 сделан на базе оригинальной спецификации, на основе доработанной схемы, как развитие основы. А программные эмуляторы и FPGA-реплики сделаны с (частичной) утратой этого знания. В случае с любительскими эмуляторами — на основе догадок, измерений, декапов, анализа косвенных признаков. И результат их работы — по определению имитация; догадки в основе = имитация, подражание. Эмуляция — синоним этих слов. И я не называю FPGA эмулятором, я называю это FPGA-репликами. Но каким бы реальным железо не было (можно подумать, ПК или RPi в конечном счёте не реальны), оно занимается имитацией. То есть эмуляцией. И разделение эмуляции на программную и аппаратную — это совершенно нормальная практика, появившаяся в 60-х. Собственно, изначально «эмуляцией» называли аппаратное решение, чтобы отличать от программного, которое тогда называли «симуляцией». Потом, как водится, у любителей всё перевернулось.

Дальнейшие попытки вывернуть сказанное до абсурда показывают проблемы в понимании. К программному эмулятору реальные устройства подключить затруднительно, потому что он не работает в реальном времени. В нём нет реальных сигналов и таймингов шины, только верхняя логика. Он работает с максимальной скоростью, отсчитывая такты в программном счётчике и синхронизируя эмулируемые устройства по нему, а лишнее время ждёт. Если сделать программный эмулятор всей архитектуры, но взять реальный процессор, соединить его с программным эмулятором будет крайне сложно. Хорошие FPGA-реплики опускаются до этого уровня, воспроизводят логику работы шины, все тайминги. К ним можно подключить внешние устройства, хоть процессор, хоть что угодно, причём не зная заранее, что. Например, хорошая реплика Сеги с возможностью подключения картриджа уже позволяла бы запускать Paprium задолго до его появления. Но если ей потребовались бы доработки, это явно указывает на эмуляцию.

Многие ядра для FPGA игнорируют оригинальную архитектуру и тайминги, и воспроизводят не детальное внутреннее устройство, а конечный логический результат, как программные эмуляторы. Некоторые действительно честно пытаются воспроизвести оригинальную логику на самом низком уровне, ориентируясь по транзисторным схемам, полученным из декапа. Но физика там совсем другая, другая технология и процесс, другие логические уровни. Для информации, во всём 6502, который изначально был разработан на транзисторном уровне, 4500 транзисторов, тогда как в одном блоке современной FPGA порядка тысячи транзисторов. В среднем FPGA-ядре 6502 порядка 700 блоков, то есть на два порядка больше реальных транзисторов, чем в оригинале — говорить про такую же физику процесса просто не приходится.

Оффлайн Gameszzz

  • Пользователь
  • Сообщений: 4590
    • Просмотр профиля
Mister project
« Ответ #212 : 21 Августа 2026, 12:24:22 »
Но физика там совсем другая, другая технология и процесс, другие логические уровни. Для информации, во всём 6502, который изначально был разработан на транзисторном уровне, 4500 транзисторов, тогда как в одном блоке современной FPGA порядка тысячи транзисторов. В среднем FPGA-ядре 6502 порядка 700 блоков, то есть на два порядка больше реальных транзисторов, чем в оригинале — говорить про такую же физику процесса просто не приходится.

А как обстоят дела с ядрами сатурна и ps1 ?

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1146
  • Пол: Мужской
    • Просмотр профиля
Mister project
« Ответ #213 : 21 Августа 2026, 13:06:27 »
можно подумать, ПК или RPi в конечном счёте не реальны
Так речь же о том, реальна ли целевая архитектура. ПК и малинка - это, естественно, физические машины. Вот только чтобы сыграть в дендик на них нужно накатывать виртуалочку/эмулятор, потому что сами пк с малинкой архитектурно не поддерживают то, что требует от них ром (не мне тебе рассказывать как это работает, в конце концов). А ПЛИС "подключает" свою, с позволения сказать, рассыпуху из блоков таким образом, чтобы сама хостовая машина стала аппаратно совместимой (я же правильно понимаю, как работает ПЛИС?). Так что в конечном счёте, эмуляция или нет для меня сводится к тому, нативно ли работает игра. Потому что сам видишь - даже если ты понимаешь истоки терминологии и шаришь, то людей, привыкших к тому, что эмуляция = что-то виртуальное и программное, это сильно сбивает столку. Я сам, когда только узнал о существовании ПЛИС, очень долго не мог понять, что это за зверь такой - "это эмулятор, но работает нативно. Загружаешь ядро - получаешь 100% аппаратное решение... но это все равно эмуляция... тьфу!" Я чуть себе голову фейспалмом не прошиб, когда пытался изучить, что это вообще за джигурда. :lol: А всё из-за термина "эмуляция". И таких как я, поверь, оооочень много. Термины терминами, истоки истоками, а сбивает с толку нормисов из-за этого не меньше.

говорить про такую же физику процесса просто не приходится
Я и не говорю о таком уровне. ПЛИС работает, как мы знаем, на уровне логики. На уровне транзюков это совершенно другая машина, но при этом она аппаратно совместима со всем, что только можно описать в ядре (в рамках имеющихся логических блоков, конечно). В этом и парадокс и, отчасти, путаница...

P.S. подписался на твой twitter - реально интересные вещи делаешь :thumbup:
« Последнее редактирование: 21 Августа 2026, 13:51:57 от Takamura-kun »

Оффлайн MaRC

  • Пользователь
  • Сообщений: 799
    • Просмотр профиля
Mister project
« Ответ #214 : 21 Августа 2026, 14:24:57 »
Ворвусь в обсуждение - глянул, что про эмуляцию пишет википедия - это имитация работы эмулируемой системы, с этим я полностью согласен. Тоесть чтобы оно со стороны выглядело как обьект эмуляции, без учета, как оно реально там внутри организовано. На ПЛИС  ты ничего не имитируешь, а повторяешь в железе оригинальное устройство, настолько, насколько у тебя хватает знаний о его работе. Получается не точная, но таки железная копия, не имитация. По той же логике и денди можно назвать эмулятором, проц и ппу там тоже не оригинал и разница с FPGA только в том, что в в них транзисторы жестко сконфигурированы на заводе, без возможности их переконфигурировать в Master System:)

Оффлайн godun

  • Пользователь
  • Сообщений: 4079
    • Просмотр профиля
Re: Mister project
« Ответ #215 : 21 Августа 2026, 14:53:20 »
По той же логике и денди можно назвать эмулятором, проц и ппу там тоже не оригинал и разница с FPGA только в том, что в в них транзисторы жестко сконфигурированы на заводе, без возможности их переконфигурировать в Master System:)
Наверное самый удачный пример , может теперь плоскоземельщики успокоятся  :)

Оффлайн ShadowFlash

  • Пользователь
  • Сообщений: 2760
  • Пол: Мужской
    • Просмотр профиля
Mister project
« Ответ #216 : 21 Августа 2026, 16:14:57 »
Сейчас плесну бензина в огонь.

Как мы будем с тем, что есть такие штуки, которые представляют собой аппаратную реализацию железки, которая втыкается в другую железку и пользуются ее ресурсами в разной степени - от банальной электрики, когда от хост-машины требуется только питание и может быть в нее подается сигнал аудио и видео, до работы с  дисками, видео, клавиатурой и портами ввода-вывода?

Причем оно бывает полностью аппаратным - собственный BIOS и софт на хост машине не требуется (редко), требует драйверов или вообще есть софт, позволяющий загружать образы дисков, виртуализируя их для гостевой железки как реальные диски, или выводить видео в окошке в ОС машины, на которой все работает и копипастить данные туда.

Из-за чего оно считается полностью аппаратным или программно-аппаратным.

Простые примеры еще из тех времен, когда я пешком под стол ходил - в PC или VAX втыкается плата, на которой по сути собран компьютер на Z80, который запускает софт под CP/M - Z80.

Конец 80ых - настоящее время - в PC вставляется плата, на которой полностью аппаратно реализован БЭСМ-6/PDP8-11/VAX/S/370/Cray и так далее и тому подобное (подставляем практически любую широко распространенный мейнфрейм или миникомпьютер из 70ых-80ых.

На плате как правило есть широкий разъем, к которому подключается ящик с бэкплейном и портами, который позволяет запустить любую выпущенную штуку для этого железа. И да, модуль расширения памяти тоже работает. Ибо шины тогда были медленные и два толстых SCSI кабеля или еще какие с большим количеством линий никак тайминги не сбивают.

С середины десятых уже правда чаще, что корзинка подключается к USB, а на хосте работает просто программный эмулятор.

У меня в конце90ых-начале нулевых был PPC Мак, в котором была воткнута плата с 486 и SVGA видеокартой и можно было DOS софт запускать. Даже Win95 ЕМНИП. Такое же для Амиги было. Карта Apple II для 68к у меня до сих пор лежит вместе с софтом.

Еще примеры - Super Game Boy, по сути это 90% портативки, только без экрана, питания и управления - за это отвечает SNES. GB Player - тут уже программно-аппаратное, без диска железка не заводится, хотя по сути опять же на плате почти весь GBA.

И все это считается эмуляторами.

А Денди это просто клон. Точный или нет - не особо важно. Ибо это просто самостоятельная железка на 90% повторяющая по схеме оригинал. И да, вон оригинальные мегадрайвы тоже не были идентичными - на разных ревизиях что-то может не идти. Тайминги или какие-нибудь недокументированные функции в новых ревизиях сломали.

И часто в случае старых консолей точность зависит не столько от наличия информации по оригинальным железкам - она давно доступна, или отреверсили на 100% 25 лет как минимум, а от того, как хорошо люди напишут эмулятор или ядро для FPGA. И только.

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


Оффлайн Maelstrom

  • Пользователь
  • Сообщений: 5322
  • Пол: Мужской
  • Deinonychus Antirrhopus
    • Youtube
    • Просмотр профиля
Re: Mister project
« Ответ #217 : 21 Августа 2026, 16:22:21 »
Денди - не эмулятор, а клон. И клон это хуже эмулятора, поскольку мало того что копируется наобум, так ещё и неизменяемо.

Оффлайн Фамиклон

  • Пользователь
  • Сообщений: 1424
    • Просмотр профиля
Mister project
« Ответ #218 : 21 Августа 2026, 20:15:10 »
Некоторые действительно честно пытаются воспроизвести оригинальную логику на самом низком уровне, ориентируясь по транзисторным схемам, полученным из декапа. Но физика там совсем другая, другая технология и процесс, другие логические уровни. Для информации, во всём 6502, который изначально был разработан на транзисторном уровне, 4500 транзисторов, тогда как в одном блоке современной FPGA порядка тысячи транзисторов. В среднем FPGA-ядре 6502 порядка 700 блоков, то есть на два порядка больше реальных транзисторов, чем в оригинале — говорить про такую же физику процесса просто не приходится.
И что же там с физикой не так? Pentium 4 по сравнению с Pentium 3 имеет значительные архитектурные изменения, другой техпроцесс и кол-во транзисторов, да ещё и какая-то отсебятина в виде новых инструкций. Но выполняют один и тот же код. Выводы?
Есть такие понятия как "аналог", "функциональный аналог", если угодно. Какая нам по большому счёту разница сколько там транзисторов, идентичность копирования продиктована совместимостью с имеющимся софтом, каким образом она будет достигнута или не достигнута, уже другой вопрос. Как справедливо замечено выше, даже с кучей оригиналов той же Сеги не всё гладко. И в клонах встречаются различные ошибки.

И клон это хуже эмулятора, поскольку мало того что копируется наобум, так ещё и неизменяемо.
"Наобум", это как, как карта ляжет, или как левая нога захочет? ))

Оффлайн godun

  • Пользователь
  • Сообщений: 4079
    • Просмотр профиля
Mister project
« Ответ #219 : 22 Августа 2026, 00:25:03 »
Еще примеры - Super Game Boy, по сути это 90% портативки, только без экрана, питания и управления - за это отвечает SNES. GB Player - тут уже программно-аппаратное, без диска железка не заводится, хотя по сути опять же на плате почти весь GBA.

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

Оффлайн ShadowFlash

  • Пользователь
  • Сообщений: 2760
  • Пол: Мужской
    • Просмотр профиля
Mister project
« Ответ #220 : 22 Августа 2026, 08:54:44 »
в гейм кубе  софтовая прослойка скорее добавляет графический удобный интерфейс ну и как  прослойка между разными выводами картинки. тможно думаю было это реализовать и на пзу и на флешке, но в то время было дешевле грузить с диска.

Честно, не разбирался как он работает. Возможно там просто нужен драйвер для того, чтобы железо работало с вводом и выводом геймкуба, а самостоятельно стартовать железка при подключении через порт не может. Я не смотрел реальный объем загрузочного диска для GB Player, но очень сомневаюсь, что оно 1.2Гб. Думаю там 200Мб максимум, и если бы была возможность его запускать прямо через порт, то так бы и сделали.

А почему  SGB или плата Apple II для мака, например считается аппаратным эмулятором - да просто потому, что это не самостоятельная железка и часть функций (ввод-вывод) работает через хост-машину.

Потому, что если ты возьмешь плату от SGB, сделаешь к ней вывод видео, звука и подключение контроллеров, то у тебя получится просто GB в виде стационарной консоли.

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

Покупать весь корпус, экран, и чинить плату и покупать или делать корпус для дока получалось довольно дорого, поэтому было два варианта - на доноры пустить или попробовать превратить в sWiitch 2 :lol:.

Просто начертил расположение стоек и креплений, измерил длину шлейфов, потом придумал корпус попроще в изготовлении, но симпатичный, сделал на станке, а не печатал - получилась коробочка, в которой постоянно подключенный док и прочая начинка, необходимая для работы, карточка вставляется спереди, с боков есть гнезда, куда примагничиваются джойконы для зарядки, HDMI и через обычную плату аудиостриппера дополнительный вывод аудио для подключения к аналоговому ресиверу. Причем и тюльпаны TOSLink оптический, как на PS2/PS3. Получилось в стационарном варианте удобнее оригинала. Ибо легче подключать контроллеры и донглы спереди и карты вставлять и вынимать удобнее. Плюс горизонтальный корпус и широкие ножки - с проводными контроллерами не кувыркается легко. Ну и охлаждение пассивное - ни шума, ни пыли внутри. Правда не скажу, чтобы Switch V2 - Switch 2 сильно шумели. Вот первая версия первого свича да, греется и врубает ветродуй на все обороты в жару.

Добавлено позже:
"Наобум", это как, как карта ляжет, или как левая нога захочет? ))

Еще бывает такой сюрприз, что некоторые клоны, официальные или нет бывают лучше оригинала. Например мне попадались фамиклоны без джейлбаров и помех от звука при подключении по AV, что древние, что достаточно современные. А вот оригинальные фамики (в том числе и AV, тут даже тема есть) и NES таки дорабатывать надо.

С клонами угадать при этом сложно - в одном и том же корпусе могут годами выпускать совершенно разные железки, да и у оригинала от возраста еще и конденсаторы поплыть могут и ревизии разные.

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

И даже игры с пистолетами не аргумент - есть современные пистолеты, работающие с ЖК/OLED и к любому компу, хоть PC, хоть одноплатнику прикрутить виимоут как делать нечего. Про мистер не скажу у меня его сейчас нет, а у кого есть, тот особо в стрелялки с пистолетами не играет, но уверен, что если пока нельзя, то потом можно будет.
« Последнее редактирование: 22 Августа 2026, 09:05:41 от ShadowFlash »

Оффлайн Gameszzz

  • Пользователь
  • Сообщений: 4590
    • Просмотр профиля
Mister project
« Ответ #221 : 22 Августа 2026, 10:16:03 »
реальный объем загрузочного диска для GB Player, но очень сомневаюсь, что оно 1.2Гб. Думаю там 200Мб максимум, и если бы была возможность его запускать прямо через порт, то так бы и сделали.

У запускающего диска есть альтернативная софтина - GameBoy Interface. Весит 34 мегабайта при том что внутри ещё мусора лишнего дофига,но гораздо функциональней чем родная утилита.
Даже название софтины говорит о том чем этот софт является

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1146
  • Пол: Мужской
    • Просмотр профиля
Mister project
« Ответ #222 : 07 Сентября 2026, 16:15:09 »
Подведём итоги:
Точность точностью, а сколько железо эмулятором ни называй, железом оно быть не перестанет :D
Да, есть термин "хардверная эмуляция", но он лишь означает "хардверная реплика, которую можно разобрать и собрать что-то другое". Классический спор о терминах: можно ли назвать реплику эмулятором? - можно, но с тем же успехом можно назвать и кремний эмулятором процессора.