Формат такой записи может быть открытым (чтобы были сторонние инструменты просмотра/анализа). Движок такого проигрывателя — также может быть открытым, чтобы эти инструменты анализа создавать.
Тогда получим такую связанную умозрительную полуоткрытую систему: платный закрытый эмуль, который может записывать эти состояния и вообще всячески крут по разным направлениям. И открытый инструментарий (формат записи, движок проигрывания и скриптования записи), который «притягивает» и привязывает разработчиков к основе — к Spectramin'у.
Все эти репозитории и прочая — не серебряная пуля, их использование не даст никакой гарантии хорошего результата. А вот неиспользование может породить кучу проблем, забивание на которые в длительной перспективе может привести к умиранию проекта. Это как писать говнокод — быстро и просто, пользователи довольны (им же похрен на внутренности, главное чтоб работало и задачи выполняло). Но долго такой проект жить и развиваться не сможет.
С точностью до строки кода? А возможность откатить изменения протокол дает? А работать с разных машин и безболезненно сливать изменения?
Если что, на bitbucket.org есть приватные бесплатные репозитории. Бонусом там же можно выкладывать бинари для скачивания и делать несложные лендинги. На github приватные репозитории платные, $7/mo.
Что касается меня, то я бы очень сильно оценил что-то в этом направлении hype.retroscene.org/blog/dev/73.html
Как доведённая до абсурда идеала, это могло было бы быть так:
1) потактовая запись состояния всего эмулируемого оборудования (винчестеры и ОЗУ нынче огромны и запись состояния даже потактово, даже в прямом виде без сжатия на лету влезет без проблем).
2) проигрывание этого состояния (с любой дискретизацией, от фрейма до такта) с возможностью скриптинга (LUA или JS — что угодно) — позволит проанализировать весь путь выполнения программы.
2.1) скриптинг с возможностью отрисовки дополнительных окон — даст возможность визуализации участков памяти (графики, текста,
игровой карты)
2.2) потактовый просмотр луча отрисовки — тоже весёлая штука.
3) ну и поддержка отладчиком всяких метаинформации о метках и проч от sjasm (или других компиляторов).
Ориентировка на hardcore-аудиторию может, конечно сузить круг покупателей, но зато задачи интересные. Как-то так.
<зануда_mode>
С учетом того, что всего эмулей с открытым исходным кодом было даже меньше двух десятков, ЕМНИП, «десятки оставленных за скобками» эмуляторов как раз и будут всеми.
</зануда_mode>
Ладно, принято:)
Коварный вопрос от опенсорсного фанатика с подвохом: ты разработку ведешь в приватном репозитории или по-старинке, на рабочем компе и бекапы в архивах?
Ты пытаешься мне доказать, что некоторая часть открытого софта очень неплоха? Да, это вроде очевидное место.
Но оба эмулятора, которыми я пользуюсь активно — закрытый софт. И если бы мне пришлось пересесть на только открытый софт — я бы лично проиграл. Поэтому твой аргумент не катит.
Я всего лишь указал на несоответствие твоих слов реальности («наличие открытого кода совершенно никак не помогло десяткам эмуляторов» — не забываем про парашютики Unreal Speccy, ассемблер из EmuZWin, тот же Vortex, SjAsm, если расширить набор софта за пределы эмуляторов).
Ты сейчас делаешь ту же ошибку, которую совершают люди, рассказывающие как много денег теряют звукозаписывающие компании из-за пиратского распространения музыки. Они обычно считают, что каждый скачанный пиратский диск — это потерянная продажа, в то время как исследователи не раз показали, что возможность послушать диск бесплатно — это просто возможность послушать диск бесплатно. Совсем не факт что люди его бы купили, и, как правило, оказывается, что люди даже не собирались его покупать.
Так вот, ты сейчас сказал (не ты один), что для тебя как для пользователя, есть достоинства в эмуляторе с открытым кодом. Это ОК. Но при этом ты сделал предположение, что для автора нет никакой разницы, закрыт код его эмулятора или не закрыт. Лично мне это предположение глубоко непонятно. Я считаю что они ни из чего не следует. Я скажу даже сильнее, я вполне осознанно закрываю код для существенного кол-ва моего софта и, если бы у меня не было выбора, закрывать софт или нет, я бы точно так же осознанно перестал бы кодить совсем.
Экстраполируя вот эти свои мысли на нашу ситуацию, с твоей точки зрения обсуждается выбор между эмулятором с открытым кодом или эмулятором с закрытым кодом. Я же вижу выбор иначе — мы сейчас выбираем между довольно точным эмулятором с закрытым кодом (который автор уже довёл до довольно продвинутой стадии) и ничем, пустым местом, поскольку автор уже неоднократно объяснил, что совершенно не мотивирован открывать свой код.
Т.е., нет никакой непоследовательности. Кто-то открывает код, для каких-то продуктов — это круто. Я тоже что-то релизил в открытом коде, у меня нет какой-то религиозной точки зрения по этому поводу. Но совершенно нереально навязать open source каждому, такого просто не произойдёт.
Лично мне не нужен ещё один эмулятор с открытым кодом, т.к. дописывать чужой эмулятор я возьмусь едва ли и т.к. наличие открытого кода совершенно никак не помогло десяткам эмуляторов, которые мы тут оставили за скобками.
Но почему-то ты не стесняешься использовать эмуляторы, доработанные другими людьми и восторгаться недавними переделками вортекса.
Вопрос на засыпку: было бы это возможно для продуктов с закрытыми исходниками?
Binary Love:
766 — 10
d87 — 9
eaf — 7
000 — 6
dbd — 6
877 — 4
25e — 3
da4 — 2
791 — 2
671 — 1
636 — 1
Speccy 2:
с21 — 10
500 — 10
1fe — 9
3c6 — 8
63c — 8
ceb — 7
1ff — 6
c25 — 6
d59 — 6
107 — 5
ad6 — 4
01 — 766a5b9539bcb8e520ab672550ce1041.wav
02 — eaf72a8c8d9c8a8255ec019e77f5d87d.wav
03 — d87a939d81bf14ec7371bf26211f17ff.wav
04 — dbddb06fdfc90730ae074fa8fd4eefbf.wav
05 — 25e42383f5519abb14853630f05e2faa.wav
06 — 877e06f092043f1e899dbe7a9274550b.wav
07 — 000f0d1f000fbcfa29a66f9b06f3b272.wav
08 — 79124877eaa7919087bb35f37f560211.wav
09 — da45b7e6382cb11b06ad6f9953f30b00.wav
10 — 636df7829943e84b43b87ac2166df856.wav
11 — 6715a48a71d09139da510e6ebd578e8b.wav
Speccy 2
01 — c21076281d6edfd50f9b21579add1baf.wav
02 — 5007b1992e40e0c1f52db9c4dc0ac4f2.wav
03 — 1fe1daf511b2986fd9279667d406d945.wav
04 — 1ff35d9e36d5e8993d49fe6b5ca9269e.wav
05 — 3c6658aa6187787fc45cb594d2621704.wav
06 — 63c30f2248592a57a1faeb623e71ec68.wav
07 — ceb1b8235330a6e1989168805db72f19.wav
08 — c25f5003f38bb5461e72275818229787.wav
09 — 10700a827360bbec25dc50c3e33b23c6.wav
10 — d59c8664b280c4a82b77dc50c0796e4d.wav
11 — ad6b127902e9f6e5fefb7369cc9f3532.wav
Результаты моих прослушиваний по убыванию качества на мой слух.
Сравнивал в наушниках AKG 271MK II если это поможет :D
Тогда получим такую связанную умозрительную полуоткрытую систему: платный закрытый эмуль, который может записывать эти состояния и вообще всячески крут по разным направлениям. И открытый инструментарий (формат записи, движок проигрывания и скриптования записи), который «притягивает» и привязывает разработчиков к основе — к Spectramin'у.
Все эти репозитории и прочая — не серебряная пуля, их использование не даст никакой гарантии хорошего результата. А вот неиспользование может породить кучу проблем, забивание на которые в длительной перспективе может привести к умиранию проекта. Это как писать говнокод — быстро и просто, пользователи довольны (им же похрен на внутренности, главное чтоб работало и задачи выполняло). Но долго такой проект жить и развиваться не сможет.
Если что, на bitbucket.org есть приватные бесплатные репозитории. Бонусом там же можно выкладывать бинари для скачивания и делать несложные лендинги. На github приватные репозитории платные, $7/mo.
Как доведённая до
абсурдаидеала, это могло было бы быть так:1) потактовая запись состояния всего эмулируемого оборудования (винчестеры и ОЗУ нынче огромны и запись состояния даже потактово, даже в прямом виде без сжатия на лету влезет без проблем).
2) проигрывание этого состояния (с любой дискретизацией, от фрейма до такта) с возможностью скриптинга (LUA или JS — что угодно) — позволит проанализировать весь путь выполнения программы.
2.1) скриптинг с возможностью отрисовки дополнительных окон — даст возможность визуализации участков памяти (графики, текста,
игровой карты)
2.2) потактовый просмотр луча отрисовки — тоже весёлая штука.
3) ну и поддержка отладчиком всяких метаинформации о метках и проч от sjasm (или других компиляторов).
Ориентировка на hardcore-аудиторию может, конечно сузить круг покупателей, но зато задачи интересные. Как-то так.
Внешний репозиторий на ура решает проблемы вида «сдох винт и все нажитое непосильным трудом» и «когда и зачем я писал этот код?»
С учетом того, что всего эмулей с открытым исходным кодом было даже меньше двух десятков, ЕМНИП, «десятки оставленных за скобками» эмуляторов как раз и будут всеми.
</зануда_mode>
Ладно, принято:)
Коварный вопрос от опенсорсного фанатика с подвохом: ты разработку ведешь в приватном репозитории или по-старинке, на рабочем компе и бекапы в архивах?
Какой, блядь, аргумент?!
Еще раз:
Данная конкретно взятая мысль не соответствует действительности. Точка.
Ты сам сейчас в попытке огнем и мечом воспитать приглючившихся фанатиков от опенсорса показал себя таким же фанатиком.
Но оба эмулятора, которыми я пользуюсь активно — закрытый софт. И если бы мне пришлось пересесть на только открытый софт — я бы лично проиграл. Поэтому твой аргумент не катит.
парашютикиUnreal Speccy, ассемблер из EmuZWin, тот же Vortex, SjAsm, если расширить набор софта за пределы эмуляторов).Не надо страдать СПГС. «Иногда банан — это просто банан» © Фрейд
Так вот, ты сейчас сказал (не ты один), что для тебя как для пользователя, есть достоинства в эмуляторе с открытым кодом. Это ОК. Но при этом ты сделал предположение, что для автора нет никакой разницы, закрыт код его эмулятора или не закрыт. Лично мне это предположение глубоко непонятно. Я считаю что они ни из чего не следует. Я скажу даже сильнее, я вполне осознанно закрываю код для существенного кол-ва моего софта и, если бы у меня не было выбора, закрывать софт или нет, я бы точно так же осознанно перестал бы кодить совсем.
Экстраполируя вот эти свои мысли на нашу ситуацию, с твоей точки зрения обсуждается выбор между эмулятором с открытым кодом или эмулятором с закрытым кодом. Я же вижу выбор иначе — мы сейчас выбираем между довольно точным эмулятором с закрытым кодом (который автор уже довёл до довольно продвинутой стадии) и ничем, пустым местом, поскольку автор уже неоднократно объяснил, что совершенно не мотивирован открывать свой код.
Т.е., нет никакой непоследовательности. Кто-то открывает код, для каких-то продуктов — это круто. Я тоже что-то релизил в открытом коде, у меня нет какой-то религиозной точки зрения по этому поводу. Но совершенно нереально навязать open source каждому, такого просто не произойдёт.
Вопрос на засыпку: было бы это возможно для продуктов с закрытыми исходниками?