Автор Тема: Хакинг аркадных игр на процессоре TMS34010  (Прочитано 3868 раз)

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

Оффлайн KOHR

  • Пользователь
  • Сообщений: 2
  • Пол: Мужской
    • Facebook
    • ВКонтакте
    • Просмотр профиля
Я - ромхакер, работающий над аркадным хаком UMK3 Ultimate Cup Edition. Сегодня я открываю публичный доступ к своему софту и документацию к нему. С помощью моего ассемблера можно заниматься хакингом аркадных игр, использующих процессор TMS34010. Руководства по конкретным играм я писать не буду. Поддерживаются не любые игры на данном процессоре, всё таки аркадное железо очень разное от автомата к автомату:
  • Mortal Kombat (T-unit version)
  • Mortal Kombat 2
  • NBA Jam
  • NBA Jam Tournament Edition
  • Judge Dredd (prototype)
  • Mortal Kombat 3
  • Ultimate Mortal Kombat 3
  • NBA Hangtime
  • NBA Maximum Hangtime
  • 2 On 2 Open Ice Challenge
  • WWF Wrestlemania
  • Rampage World Tour
И, возможно, другиe игры (как проверить поддержку, написано в документации). Скорее всего, вы сможете заниматься ромхакингом, если:
  • Вы знаете английский язык (вся помощь в дебаггере и справочник по языку ассемблера на английском).
  • Вы знаете какой-нибудь язык программирования. Без знания языков не не сможете изучить ассемблер. Хорошо если он подходит для работы с большими объемами текста, так как вам придется анализировать 100 мегабайтовые логи дебаггера.
  • Дополнительно, но не обязательно: знать perl 5, так как UCE Assembler написан на нём.
  • Дополнительно, но не обязательно: знать СИ, так как на нём написан эмулятор МАМЕ.
   
   
   
   

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 4598
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #1 : 15 Март 2019, 02:58:55 »
знать СИ, так как на нём написан эмулятор МАМЕ.
Сейчас он на C++ (97.8%). При перехода на C (или слияния с MESS, который точно был на C) наплодилось багов, так как были добавлены абстракции посложнее. Там есть баг не закрытый, который я добавлял в Issues и даже написал грязный фикс, но не хватило терпения разобраться в их шаблонах, а повторная компиляция MAME у меня длится несколько минут. Никто не помог, так как платформа непопулярная и может с англ. проблемы.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #2 : 16 Март 2019, 13:00:51 »
Sharpnull, что за баг ?

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #3 : 09 Апрель 2021, 23:44:54 »
апну темку
на днях были опубликованы исходники кучки аркадных игр от Midway - WWF Wrestlemania, NBA Jam, NBA Hangtime, Open Ice, RevolutionX и прочие
https://github.com/historicalsource?tab=repositories

помимо прочего в репозитории Revolution-X так же содержится оригинальный нормальный ассемблер TMS34010/020, которого так не хватало для сборки исходников MK3 ликнутых пару лет назад.

Оффлайн worm

  • Пользователь
  • Сообщений: 1065
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #4 : 10 Апрель 2021, 12:28:04 »
KOHR, всегда указывай своё авторство в хаках - не повторяй моих ошибок) Это вообще первое, что надо делать, как показывает ситуация с моим хаком мк1 под сегу :lol:

Оффлайн Mr2

  • Пользователь
  • Сообщений: 1476
  • Пол: Мужской
  • Free roaming sorcerer
    • Facebook
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #5 : 10 Апрель 2021, 16:01:31 »
KOHR, всегда указывай своё авторство в хаках - не повторяй моих ошибок) Это вообще первое, что надо делать, как показывает ситуация с моим хаком мк1 под сегу :lol:
Кохр даже Буна потёр в титрах, и в знак раскаяния насадил свой фейс на пику на арене Pit Bottom. :)

Оффлайн mr287cc

  • Пользователь
  • Сообщений: 60
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #6 : 10 Апрель 2021, 23:13:45 »
Круто, что люди интересуются аркадами. Этот проц, если я верно понял, бегло просмотрев на драйвер, рулит сразу всем, не нужно морочиться с дополнительными процессорами, например как на звук? Если так, то относительно дружелюбное железо. WWF топовый.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #7 : 11 Апрель 2021, 00:00:10 »
Этот проц, если я верно понял, бегло просмотрев на драйвер, рулит сразу всем, не нужно морочиться с дополнительными процессорами, например как на звук?
TMS340x0 это 2в1 процессор общего назначения со специальными функциями/командами для работы с 2Д-графикой + видео генератор (т.е. он сам и видео сигнал выдает)
в Midway-евских аркадах к нему еще прилеплены DMA-блиттер (чтоб разгрузить процессор) и отдельная звуковая подсистема собственной разработки.

worm, Mr2, вам что, посраться больше негде ?

Оффлайн worm

  • Пользователь
  • Сообщений: 1065
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #8 : 11 Апрель 2021, 18:58:52 »
Вообще для меня, как для того, кто в детстве видел только сеговские версии МК/реслмании и др, было огромным потрясением узнать о существовании аркадных (оказывается) оригиналов. В глаза сразу бросилось качество графона и звука, я уже тогда успел узнать о ромхакинге, однако аркаду я так и не начал изучать - где-то в теме про умкт, кабал запугал всех, что это практически невозможно то ли из-за динамической адресации, то ли из-за чего-то там еще, поэтому аркаду никто не трогает... Ну в то время я лично и правда хаков на аркаду не видел... надо поизучать все таки это дело, если удастся побороть лень.

MetalliC, а где мы сремся? :neznayu:

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #9 : 11 Апрель 2021, 19:37:40 »
надо поизучать все таки это дело
да там и без тебя поизучали уже, например https://mortalkombatplus.com/

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

Оффлайн worm

  • Пользователь
  • Сообщений: 1065
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #10 : 11 Апрель 2021, 19:46:21 »
да там и без тебя поизучали уже
и как этот факт повлияет на лично мои знания об архитектурах аркадных автоматов?)

да сам же выше вон пишешь про какие-то свои детские травмы от украденных копирайтов, и зачем ?
не вижу ответа на вопрос, но вижу раздражительность в твоих словах))

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #11 : 11 Апрель 2021, 22:41:49 »
и как этот факт повлияет на лично мои знания об архитектурах аркадных автоматов?)
а должно ?

не вижу ответа на вопрос, но вижу раздражительность в твоих словах))
хотите об этом поговорить ?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1289
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #12 : 11 Апрель 2021, 23:25:23 »
Мальчики, не ругайтесь, я скоро доделаю SNES отладку для IDA:)

Оффлайн worm

  • Пользователь
  • Сообщений: 1065
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #13 : 12 Апрель 2021, 03:48:12 »
DrMefistO, тут какая-то сверхлогика - похоже, что мой мозг пока не готов такое осилить))
пишу, что хочу поизучать аркадный хацкинг - отвечает, что до меня уже всё изучили.
спрашиваю, каким образом это отражается на моих познаниях (если я для того и хочу изучить тему, логично же вроде?) - отвечает "а должно?" :wacko:
Хотя может у человека что-то случилось, мало ли...

Оффлайн HayaoYokogawa

  • Пользователь
  • Сообщений: 1913
  • Пол: Мужской
  • большой и толстый треногий динозавр
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #14 : 12 Апрель 2021, 07:12:10 »
я так мельком полистал листинги Smash TV - похоже, что исходники там для первых ревизий

кто-нибудь уже пробовал собирать из исходников, используя родной тулчейн? я, увы, не шибко в этом разбираюсь, поэтому сталкиваюсь с непонятными ошибками.
« Последнее редактирование: 12 Апрель 2021, 08:56:48 от HayaoYokogawa »

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #15 : 12 Апрель 2021, 12:10:54 »
HayaoYokogawa, хз, я не пробовал собирать, но по крайней мере под досбоксом утилитки вроде работают

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

я вон ковырнул WWF - вернулся к одному багу в этой игре под МАМЕ, с которым возился некоторое время назад, и тогда было не совсем понятно это косяк эмуляции или же глюк разработчиков. по исходникам вполне очевидно что второй вариант.

Оффлайн worm

  • Пользователь
  • Сообщений: 1065
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #16 : 12 Апрель 2021, 12:52:45 »
если хочется пофлексить на тему "вот если бы у меня было желание что-то похакать я бы похакал, но что-то его нет, ай ай ай какая досада" то может стоит заниматься этим в какой-то другой теме ?
В теме про аркадный хакинг - говорю про аркадный хакинг :) не вижу здесь оффтопа.

я вон ковырнул WWF
вот и отлично) делиться своими мыслями по теме - это нормально.

не совсем понятно это косяк эмуляции или же глюк разработчиков
с эмуляцией у MAME явно не все так гладко - какие-то трески слышны во время игры в тот же МК (когда боец приземляется, например). Это было еще и в аркейд коллекшен, кстати, что лично меня наводит на мысль о том, что midway тупо взяли опенсурсный эмуль, как это сделала nintendo со своей мини...

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #17 : 12 Апрель 2021, 12:59:01 »
с эмуляцией у MAME явно не все так гладко - какие-то трески слышны во время игры в тот же МК (когда боец приземляется, например). Это было еще и в аркейд коллекшен, кстати...
а с чего ты взял что это проблемы с эмуляцией ?

Оффлайн HayaoYokogawa

  • Пользователь
  • Сообщений: 1913
  • Пол: Мужской
  • большой и толстый треногий динозавр
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #18 : 12 Апрель 2021, 13:25:41 »
HayaoYokogawa, хз, я не пробовал собирать, но по крайней мере под досбоксом утилитки вроде работают

Работают, но при попытке собрать Smash TV ругается на NDSP1.ASM. Другие ошибки мне как-то малопонятны, возможно что-то где-то еще надо менять в настройках. При попытке собрать Revolution X DOSBox вообще перезагружается. Надо будет в vDos попробовать.

С ассемблером я совсем на Вы, тыкал разве что с переменным успехом сырцы Star Fox, но там хотя бы более-менее изученный проц (имею ввиду проц SNES, не SuperFX)...

Подозреваю, что TSM34010 и TSM34020 маленько отличаются все-таки и поэтому утилиты оттуда нужно дополнительно настраивать

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #19 : 12 Апрель 2021, 17:44:59 »
HayaoYokogawa, да, исходники вероятно рассчитаны на раннюю версию компилятора, более лояльную к различным косякам
первая ошибка лечится заменой одинарных кавычек на двойные в 1й строке , и скорее всего то же самое придется править и в куче других файлов. на счёт второй не уверен, можно попробовать убрать знаки > в тех местах SYS.INC

Оффлайн HayaoYokogawa

  • Пользователь
  • Сообщений: 1913
  • Пол: Мужской
  • большой и толстый треногий динозавр
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #20 : 13 Апрель 2021, 04:59:53 »
HayaoYokogawa, да, исходники вероятно рассчитаны на раннюю версию компилятора, более лояльную к различным косякам
первая ошибка лечится заменой одинарных кавычек на двойные в 1й строке , и скорее всего то же самое придется править и в куче других файлов. на счёт второй не уверен, можно попробовать убрать знаки > в тех местах SYS.INC
О как, интересно. Спасибо, буду пробовать.

Добавлено позже:
Насчет кучи файлов, в общем-то, очевидно... Даже обидно немножко.
Первые четыре ошибки ушли, но вот какой-то макрос он там пытается все-таки увидеть и я логики не вижу. По опыту с ковырянием СтарФокса, скорее всего ошибка имеет место быть совсем по другому поводу  :neznayu:
« Последнее редактирование: 13 Апрель 2021, 07:34:21 от HayaoYokogawa »

Оффлайн worm

  • Пользователь
  • Сообщений: 1065
    • Просмотр профиля
Re: Хакинг аркадных игр на процессоре TMS34010
« Ответ #21 : 13 Апрель 2021, 19:13:09 »
а с чего ты взял что это проблемы с эмуляцией ?
на оригинальном железе разве такое было?)

помимо прочего в репозитории Revolution-X так же содержится оригинальный нормальный ассемблер TMS34010/020, которого так не хватало для сборки исходников MK3 ликнутых пару лет назад.
каких именно? Этих или этих?
Это типа теперь МК собирается? o_0

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9369
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Хакинг аркадных игр на процессоре TMS34010
« Ответ #22 : 14 Апрель 2021, 11:38:51 »
на оригинальном железе разве такое было?)
ты нам скажи, этож ты утверждаешь что тут что-то не гладко с эмуляцией.
я лично не вижу на багтрекере подобной проблемы в списке

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

каких именно? Этих или этих?
без понятия что там у тебя по ссылкам. исходники аркадного MK3 были в релизе с сорцами MKT для N64 и MK3 для плойки/PC