• Реверс-инжиниринг звукового усилителя популярной портативной консоли — обсуждаем основные находки
    0
    Так микросхема усилителя и не цифровая изначально, с чего бы ожидать от неё схемотехнику цифровой микросхемы.

    И почему-то в статье нет ничего ни про собственно реверс конкретной микросхемы, ни о его целях, ни про связь с эмуляцией.
  • Программист должен решать проблемы бизнеса
    +3
    Хорошо бы для начала договориться об определениях и чётко обозначить, что такое проблемы бизнеса и задачи бизнеса. В зависимости от определения проще разобраться, должен ли этим заниматься специалист того или иного профиля.
  • Игрострой: порог входа в индустрию, специальности и возможный доход
    +1
    во-вторых, хорошо оплачиваемая

    Смотря с чем сравнивать, и далеко не у всех такие зарплаты, как указано в статье. Зачастую хуже множества других более простых и скучных работ в IT.
    и в-третьих… ну, геймдевелопер может показать результат своего труда, и его в большинстве случаев смогут оценить даже непосвященные.

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

    Геймдев должен быть не работой, а страстью всей жизни. Только в этом случае можно

    … смириться с тем, что платят так себе, а когда спрашивают, чем же ты занимался все эти годы, показать толком нечего, хотя от компьютера почти не отходил.
  • Расскажи мне, что тебя тревожит
    +1
    Разобрать не весь кулак в волю.
  • Сердце разработчика: девкиты Sega Saturn
    0
    Надо заметить, что во все времена были консоли из off-the-shelf компонентов, и/или переделанные из компьютеров. TMS9918 был сделан для компьютера TI99/4 (1979), и потом типовая схема в виде Z80+TMS9918+PSG (AY-3-8910 или SN76489) расползлась по множеству компьютеров и приставок — между MSX1 (компьютеры, 1983), Coleco Vision (приставка, 1982), Sega SG-1000 (приставка, 1983) и ещё десятком аналогичных систем очень много общего. Компьютер Atari 400/800 (1979) напрямую переделали в приставку Atari 5200 (1982), а Atari XL (1982) в приставку Atari XEGS (1987). Опять же, первый Xbox по сути перелицованный в приставку PC тех лет с зафиксированной архитектурой.

    И в то же время было и есть множество полностью уникальных игровых систем.
  • Сердце разработчика: девкиты Sega Saturn
    +1
    вскоре появились аркадные кабинеты, работающие с полноценной 3D-полигональной графикой

    В контексте статьи речь очевидно идёт не про шкафы и корпуса, т.к. шкафы и корпуса с полигональной графикой не работают.
  • Сердце разработчика: девкиты Sega Saturn
    +1
    В твоей статье про N64 упоминается вот что: 'Заниматься он должен был задачами T&L и процессинга звука. Судя по всему — во втором качестве очень редко, т.к. с этим мог справится и ЦП. '. На самом деле, для звука RSP использовался постоянно, иначе нагрузка на ЦП совершенно неприличная (16-канальный XM плюс 8 ADPCM сэмплов — 40% в моих тестах). SGI предоставляла микрокод (в составе общего N64 SDK), где было микширование сэмплов, в том числе ADPCM, и плеер MIDI (см. доку Nintendo_64_Audio_Development_Guide). По информации из доки, это позволяло иметь до 40 каналов звука с 40% нагрузкой на RSP и небольшой на основной процессор. Дополнительное веселье в том, что RSP нужен и графической библиотеке, и для производительности это всё должно работать параллельно основному процессору, т.е. надо следить за завершением задач и перезагружать микрокод, и обеспечивать целостность данных, к которым он будет обращаться.

    Это всё к чему: у NVidia — hardware T&L, который делал только это и ничего более. А тут вполне универсальный (со)процессор, который чуть ли не половину времени тратил на звук, причём на довольно сложные форматы, т.е. код с высокой степенью ветвления. И поэтому трудно сказать, что T&L на RSP аппаратный или аппаратно ускорен — он реализуется программой, хотя и использующей аппаратную векторную математику. Или не реализуется.
  • Сердце разработчика: девкиты Sega Saturn
    +1
    RSP — это универсальный векторный процессор. Задачи, которые он по факту решает — обеспечение приличной производительности на иначе очень дохлой системе. Но можно работать и без него, просто производительность будет значительно ниже. Задачи, с которыми можно провести параллели с T&L, решал конкретный микрокод для RSP, и кстати, он от SGI, а не Nintendo. Касательно доверия к разработчикам, мы все конечно свечку не держали, и ориентируемся по медиапространству, но есть факт — детальнейшая дока SGI_Nintendo_64_RSP_Programmers_Guide от 1996 года (т.е. года выхода консоли на рынок), где N64 ещё именуется Ultra 64. Т.е. похоже, что информация по программированию RSP была доступна изначально. Просто это очень нелёгкая затея, и мало оказалось желающих с этим связываться, при наличии приличных библиотек от SGI.
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    0
    Часть официальной документации на разные приставки давно утекла и ходит по рукам, в том числе и рукам авторов эмуляторов. В частности, по SNES ходят две книги, одна по базовому устройству приставки (250 страниц), другая по чипам SA-1, Super FX, DSP1 (450 страниц). Они все по программной части, и качество информации оставляет желать лучшего, местами просто невозможно понять, о чём идёт речь, местами фактические ошибки. Вероятно накладывается написание документации по предварительным планам и другими людьми, потом перевод с японского на английский в каком-нибудь бюро, где не было специалистов с практическим опытом, понимающих, о чём речь (удивительно, но подавляющее большинство японских разработчиков тех лет не говорит на английском до сих пор). В общем, эти книги полезны для разработчиков игр (как-то же разрабатывали, имея только этот источник информации), но в них нет ответов на важнейшие тонкости, которые требуется знать при написании эмуляторов. Скорее всего документации, где они описаны, просто не существовало, и единственная действительно близкая к реальности документатация — фотошаблоны чипов. Которые можно получить и травлением чипа, и потом их всё равно надо реверсить.
  • Самодельный компьютер из платы АОНа
    +1
    Маскируемое прерывание по таймеру — оно же по таймеру, т.е. другим способом, кроме как по таймеру, его не сделаешь. Можно сделать без таймера, но это в любом случае какой-то новый счётчик в схеме, и достаточно низкочастотный, т.е. нужно больше деталей (колбаса из счётчиков). Двух каналов звука для такого устройства более чем достаточно, особенно если сделать соотношение громкости каналов 2:1. Смысл использования таймера же в том, чтобы играть звук, не сильно нагружая процессор, но звук достаточно примитивный (ни тембров, ни громкости). Если же ресурсов процессора не жалко и в фоне ничего делать не надо, можно играть гораздо более интересный и многоканальный звук без таймера вовсе. А с прерыванием программируемой частоты можно ещё и балансировать между качеством звука и возможностью что-то делать в фоне.
  • Самодельный компьютер из платы АОНа
    +1
    Один из каналов заведён на маскируемое прерывание, это полезная фишка, которой не стоит лишаться. Один на звук, ещё один watchdog или свободен. Вот его можно приспособить под второй канал.
  • Главная причина, почему не Linux
    0
    Причем эти россказни элементарно разбиваются простейшим вопросом — а в вашем мобильном телефоне как называется «редактор презентаций»? Вообще нет? А как же нужность?

    Один из популярных редакторов презентаций для Android называется Microsoft Powerpoint. Более миллиарда скачиваний.
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    0
    Клоны SNES таки были, но очень редкие. Также были клоны оригинального Game Boy. Чипы там без официальных обозначений. Возможно клонированные, но может быть просто пускали налево часть производимых для официальных консолей чипов.
  • Главная причина, почему не Linux
    0
    Наверное половина всех релизов в PSN и Marketplace — переиздания старых игр, а также их римейки и продолжения.
  • Главная причина, почему не Linux
    +1
    Возможно, чтобы у Линукса появился шанс захождения большему количеству людей с первого раза.
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    0
    Такое явление имело место быть в некоторый период времени, когда любители делали переводы игр с японского языка на английский, но отлаживались в эмуляторах, на тот момент очень далёких от совершенства. Подобные переводы требовали модификации кода игр, а занимались этим далеко не самые продвинутые в устройстве приставок люди, и нередко случалось так, что изменённый ими код работал в эмуляторах, но не на железе.
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    0
    Конечно же там всё далеко не идеально, примерно на уровне эмуляторов 15-летней давности. Там ограниченный набор игр, и главная задача продукта — чтобы они игрались хоть как-нибудь. Даже если половина эффектов в играх отвалится, это не будет существенной проблемой в таком контексте.
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    0
    Можно не имея понимания тонкостей устройства железа, просто методом тыка, сделать программу, которая будет эксплуатировать некий пограничный случай (о котором, возможно, даже сами разработчики железа не задумывались) и выдавать на железе некий результат, который недостаточно точные эмуляторы не смогут воспроизвести. И это не какая-то абстрактная ситуация, она очень практическая. Собственно, это и есть главная причина, почему точность эмуляторов важна.
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    0
    Так потому эмуляция в SNES Classic и менее продвинутая, потому что продвинутой для запуска ограниченного набора игр не требуется, и в случае проблем всегда можно подкрутить саму игру. А продвинутая эмуляция требует производительности, которая стоит денег, тогда как для обеспечения прибылей в подобных устройствах ставят минимально достаточные по производительности дешёвые процессоры (или, в случае с китайской самодеятельностью, откровенно недостаточные).
  • Эмуляторы SNES всего в нескольких пикселях от абсолютного совершенства
    +2
    Позиция Nintendo давно ими озвучена и с тех пор не менялась: www.nintendo.com/corp/legal.jsp
  • Почему Xbox Series X станет главной покупкой 2020 года
    0
    Ну а можно не делать так, а просто купить консоль. Кто-то идёт одним путём, кто-то другим. Кто-то даже лежит на диване в двух метрах от телевизора.

    Фанатизм — это в том числе желание навязывать своё видение другим и неприятие самой возможности существования альтернатив.
  • Почему Xbox Series X станет главной покупкой 2020 года
    0
    Нормальные игры для XONE за пределами ограниченного бюджетого набора — от 2000 на авито. И тех толком нет, приходится покупать из других городов и стран.
  • Почему Xbox Series X станет главной покупкой 2020 года
    +1
    Некоторые ищут повод хоть иногда отходить от компьютера, а не сидеть на одном стуле в одной позе всю жизнь. Ну и некоторые игровые эксклюзивы таки стоят покупки приставки или другого девайса.
  • Техника собеседования «MoSt»
    +1
    Вы же не можете изучать программирование, не прибегая к поиску информации и общению с другими программистами.

    Не так уж давно были времена и места (на периферии изменения происходили позже), когда именно так и изучали, т.к. просто негде было искать информацию и не было способа найти едва существующих единомышленников. Эти времена породили немало специалистов, которые успешно работают до сих пор, и вполне ещё далеки от пенсионного возраста. Но получается так, что по вашим критериям у них нет интереса.
  • Техника собеседования «MoSt»
    +1
    Есть разные области знаний и прикладных задач. Есть области, где вообще нет не то, что GC — динамического выделения памяти в принципе. Есть области, где нет и не может быть 25 человек на проекте. Есть проекты, где нужно именно 4000 строк дичайшей экзотики, которую способно осилить десять человек в мире, и которую никогда не придётся поддерживать — но без этих строк никак не обойтись, и сам продукт/компания/бизнес без них невозможен.

    Тут возникает вопрос, вы пишете про собеседование в конкретно вашу компанию, или всё же даёте универсальные советы.
  • Техника собеседования «MoSt»
    +2
    У меня аналогичная ситуация. Мне не интересны основы, истории, и прочее сферическое программирование в вакууме, с красотой кода. Интересно только прикладное значение, как способ решать мои задачи, и в частностях типа GC или типизации я разбираюсь только тогда, когда это становится необходимым для решения задачи.

    Так что в принципе можно предположить, что да, формально программирование не интересно. Но не обязательно считать это проблемой.
  • Почему Xbox Series X станет главной покупкой 2020 года
    +13
    По нынешним временам, 40 тысяч — это 400 кило гречки или 57 километров туалетной бумаги. Выбор очевиден.
  • Программа для поиска единомышленников ВКонтакте [Open source]
    0
    Я никого не баню превентивно и добавляю всех подряд, т.к. у меня много публичных проектов, и аккаунты в соцсетях используются именно для организации обратной связи. Не самый типичный сценарий, как мне кажется.
  • Программа для поиска единомышленников ВКонтакте [Open source]
    +2
    Мне нравится множество постов у вас на странице, да и, судя по подпискам, увлечения у нас похожи

    Незнакомый человек пришёл к вам на страницу, читает посты, проверяет подписки — следит за вами, подозрительно, лучше забанить от греха.

    И из собственного опыта: ко мне в друзья добавляется немало незнакомых людей (не ботов, со схожими интересами, с общими знакомыми, активность примерно трети добавляющихся наблюдаю в различных комьюнити). При этом из них пишут что-либо единицы, в основном остаются висеть годами, не написав ни единого слова.
  • Программа для поиска единомышленников ВКонтакте [Open source]
    +5
    найти сообщество, которое максимально близко тебе по мировоззренческим / эстетическим / хоббийным показателям

    … в котором последний пост от живого человека был лет пять назад — в таком состоянии сейчас пребывает большинство ВК сообществ по интересам.

    шансы найти единомышленников появляются даже у интровертов с очень специфичными вкусами

    Особенно после первой попытки интроверта написать подсказанному приложением пользователю, который знакомиться ни с кем не собирался. Если несколько лет назад это ещё могло прокатить, как когда-то прокатывали сообщения случайным пользователям аськи, сейчас больше шанс или сходу попасть в игнор, или, при нажатии добавить в друзья либо — остаться в подписчиках (скорее всего), либо (если повезёт) получить резонный вопрос — 'а ты кто' или 'знакомы'?

    Социальные сети в нынешнем их состоянии требуют добавления буквы А-, их социальная функция давно редуцировалась до поддержания уже существующих связей. И это происходит не только с соцсетями, но и вообще социальными сервисами всех видов, теми же СЗ.
  • STM-32 Минимальная аудио плата
    0
    У меня и у других страдальцев типовой SSD1306 (у меня i2c) не то, что шумит — он буквально гудит на частоте около 100 Гц с изменениями в зависимости от изображения. Не только по питанию, но и физически — слышно голым ухом. Изменение частот развёрток и прочих настроек меняет частоту гудения.
  • STM-32 Минимальная аудио плата
    0
    В моём случае эксперимент показал, что питание от отдельных LDO не помогает совершенно — было три штуки, на МК, SD/OLED и усилитель отдельно. Дроссели тоже практически не влияют на уровень шума.
  • STM-32 Минимальная аудио плата
    +1
    Нет, дело не в разделении земель, при сильных помехах по питанию это не полное решение. Проблема в подобных конструкциях (МК+SD+OLED) в последнее время довольно распространена, много тем в интернете, но таких, где автор нашёл решение и отписался о нём, пока не попадалось. Народ предлагает обвешивать все потребители наборами конденсаторов 10-0.1-.01 мкф, ставить дроссели на питание, даже менять частоту рефреша OLED, но что-то не очень помогает. Некоторые предлагают радикальные решения, типа отказа от OLED; также в продаже немало 'малошумящих' SD карт для аудиотехники.

    За ссылки спасибо, конечно.
  • ИИ DeepMind научился играть лучше человека в 57 игр Atari, но до идеала далеко
    +1
    во всех 57 играх приставки Atari 2600

    Это и постоянное упоминание числа заставляет думать, что на приставке их было всего 57. На самом деле несколько сотен, а речь идёт про некий набор. Довольно интересно было бы узнать, почему именно 57, почему именно эти игры, и какие ещё, помимо упомянутых.
  • Есть ли будущее у геймпадов?
    0
    Аналоговыми стиками управляют теми же самыми большими пальцами, дополнительных пальцев не задействуется.
  • STM-32 Минимальная аудио плата
    +2
    Как боретесь с шумом по питанию от SD-карты (чириканье при чтении/записи) и при работе OLED (постоянное гудение)?
  • МТС просит воздержаться от пересылки мемов
    0
    А что за нагрузка от удалёнки? Я не знаю, как у других, может быть там постоянный видеочат, но в моём опыте это пара сотен текстовых сообщений в групповом чате в день.
  • МТС просит воздержаться от пересылки мемов
    +1
    Логика простая, они же просят отказаться от потребления части услуг — значит и от оплаты этой части надо отказаться.
  • #00 — И целого байта мало… | Приглашение на Revision Online 2020
    +1
    Точно знаю, что из-за смены формата на онлайн одна мощная работа перенесена авторами аж на следующий год.
  • Как работает музыка в NES
    +7
    Осталось добавить, что аппаратные огибающие, sweep, frame counter и его прерывание в 90% игр не используются. Это всё наследие старых времён, когда ещё не было ясно, что именно требуется для звука в играх, и придумано оно было по большому счёту для звуковых эффектов — в ~1981, когда это задумывалось, не ожидали, что в играх будет фоновая музыка. В реальных же играх 1985+ все эти фичи оказались невостребованными, плееры музыки сами считают свои собственные программные огибающие и просто выставляют моментальные значения питча и громкости.