Разработка и ромхакинг > Ромхакинг и программирование
Геймдев под M68K
<< < (2/10) > >>
Ti_:

--- Цитата: Марат от 23 Август 2009, 14:11:44 --- Как я понял, Ti прошел по ссылке, которую дал Sergi и увидел на том сайте хак дюны от все того же Sergi. Так как перешел туда с этой темы, решил здесь же и запостить.

--- Конец цитаты ---
а что вам жалко чтоли? или я должен был написать в теме дюны, мол Segaman, смотри в соседней теме ссылку на хак дюны запостили, иди спроси может дамп есть  :lol:   (или может в личку нужно обязательно писать? по-моему было бы интересено чтобы все знали. я вот первый раз его вижу ,что он есть...а вы пишите да давно уже есть!)
Segaman:
Учтите, я на телефоне и поэтому часто могу путать посты и ваапще всё, так как на маленьком экране хрен чё разглядеть можно даже с оперы мини. а на кампе немогу по уже 2ум причинам:
потому что трафик съедается в никуда
и недавно у меня моник сгарел, сижу на телике (XDDDDD lol), нихрена на нём невидно. вообщем если что "без обид"

Добавлено позже:
А ещё высота экрана размером с 1.2 от моего старого тетриса (:D lol), представьте, как на нём можно что-то разглядеть. вообщем смехота. ппц :D
Segaman:

--- Цитата: Ti_ от 20 Август 2009, 13:41:08 ---ого, на этом сайте ХАК Дюны есть.  кто-то опередил Segaman'a.   правда он на картридже.

--- Конец цитаты ---
Между прочим я не хак делаю, а рес дюны. а рес дюны я делаю, чтобы все делали хаки :lol:
Segaman:
А кстати я знаю в чём дело.
на те игры, которые встречаются в многоигровках есть асм-код, благодаря котому чинятся все поинты. это батл тодс, соник 2, голден акс и т.д. и вот этим асмом воспользовались эти чуваки. меня опередили, но в отличие от них, я ресы выкладываю для всех. кстати сёдня ночью выкладываю сырой рес.
блин, меня всё время интересуют многоигровки. кто знает, где дампы мноигровок есть?
Smoke:
Дампы многоигровок есть в ромсете
Ti_:
для всех это оч.круто и респект,  но ты завершил свой редактор для Дюны или нет? (карт и миссий?)   всё что требовалось(ну ты вроде сам вызвался?) чтобы создавалась КАРТА (неважно в роме или где).
что-ты там дальше наворачивать стал я не смотрел.

Добавлено позже:
BTW нет желаница под RRR редактор трасс нарисовать? (можно в 2д, можно в изометрии) ;формат уже разорбан., pdf'ka с описанием лежит в теме.

ну конечно эт звучит("вы не обнаглели"), но вдруг будет время и желание -подумай  ;)
romanich:
Решил не плодить темы, написал в этой (коль уж кодинг для 68k, точнее Си)

Страница по Сеге МД:
http://segasecret.narod.ru

Демка с исходниками (тамже и бинарник)

Это так... в качестве разминки :)

А вообще желается написать небольшую игру. С нуля... Свою... Со своими главперсами...
Поэтому не порт и не хак и даже не ремейк :)

Вопрос Си-программистам 68k:

кто-нибудь объявлял static-переменные в функциях?

типа пример:


--- Код: ---void Function(void)
{
 static char z=5; //При первом вызове z будет 5 (потом ещё на 1 увеличится)
 z++; //z будет увеличиваться при каждом вызове функции
}

--- Конец кода ---

нужно для того, чтобы не плодить кучу глобальных переменных и не присваивать им начальные значения в main()

у меня почему-то пакет(XGCC) делает переменную z read only, тоесть суёт в ROM-секцию

а нужно, чтобы в RAM и делал начальное присвоение.


totin:
все будет нормально, если не будешь инициализировать переменную начальным значением

Добавлено позже:
кстати, в GenesisDev04 походу посвежее компилятор чем в XGCC
romanich:

--- Цитата: totin от 01 Сентябрь 2009, 14:11:50 ---все будет нормально, если не будешь инициализировать переменную начальным значением

--- Конец цитаты ---

в GenesisDev04 (от Stef'а который) тоже нельзя начальное значение присваивать, если нужна переменная?


--- Цитата: totin от 01 Сентябрь 2009, 14:11:50 ---кстати, в GenesisDev04 походу посвежее компилятор чем в XGCC

--- Конец цитаты ---

скачал MDKit с вашей ссылки, в папке bin лежит приложение sh.exe - оно не запускается под WinXP PE SP3  пишет, что "sh.exe - не является приложением Win32" :(
По этой же причине не отрабатывают до конца make-файл...
totin:
поставь cygwin, с ним все должно нормально работать, хотя по началу я и без него умудрялся, но возникали коекакие проблемы, особенно если запускать компилятор из IDE
GenesisDev04 (он же GCC 3.4.6) тоже нельзя инициализировать автоматом все, что в RAM находится. но нулями вполне можно все  инициализировать если в самом начале, перед переходом на main, залить весь RAM нулями, что и сделано в sega.s который лежит в GenesisDev04
такое вот там есть:

* clear Genesis RAM
        lea     0xff0000,%a0
        moveq   #0,%d0
clrram: move.w  #0,(%a0)+
        subq.w  #2,%d0
        bne     clrram
        jmp     start

думаю это вполне нормальный вариант

Добавлено позже:
кстати, твой ДиджиталТрешер - вешь! (:
romanich:

--- Цитата: totin от 02 Сентябрь 2009, 03:17:54 ---GenesisDev04 (он же GCC 3.4.6) тоже нельзя инициализировать автоматом все, что в RAM находится.

--- Конец цитаты ---

Ну тогда не вижу причин менять XGCC (к которому уже успел прилипнуть  :)


--- Цитата: totin от 02 Сентябрь 2009, 03:17:54 ---нулями вполне можно все  инициализировать если в самом начале, перед переходом на main, залить весь RAM нулями, что и сделано в sega.s

--- Конец цитаты ---

так и сделано, только не всегда нулями нужно и не всё...


--- Цитата: totin от 02 Сентябрь 2009, 03:17:54 ---кстати, твой ДиджиталТрешер - вешь! (:

--- Конец цитаты ---

спасибо  :) старался...  :)


Segaman:

--- Цитата: Smoke от 30 Август 2009, 22:14:50 ---Дампы многоигровок есть в ромсете

--- Конец цитаты ---
Причём здесь дампы многоигровок, я говорю про починку поинтов асмнутых игр для собирания многоигровок и  то, что асмнутые игры для собирания многоигровок хорошо подходять для хакинга. А ты мне про дампы... впрочем поподробней, хотелось бы взглянуть на многоигровку в хексе.
Smoke:
Вопрос:

--- Цитата: Segaman ---блин, меня всё время интересуют многоигровки. кто знает, где дампы мноигровок есть?
--- Конец цитаты ---
Ответ:

--- Цитата: Smoke ---Дампы многоигровок есть в ромсете
--- Конец цитаты ---

Ты спросил, я ответил ;)
Segaman:
 :blush:
Ой...извиняюсь...наверно забыл о чем спрасил :D
А где этот твой ромсет (если я опять незабыл о чём спрасил)
Photon9:
Segaman, кой чего и тут можно скачать www.emu-land.net  :)
Ti_:
кто знает в чем отличия  команды  JSR   $4EBAxxxx   (pc?)   от  bsr.w $6100xxxx (pc)
                                                  и с   jmp ($4EFA)/ bra.w ($6000 также.

есть ещё JSR 4EB8 xxxx   , xxxx - абс. адрес +$8000 до -$8000.  ( $xxxx    $FFFFxxxx)

почему 4eb8  не было использована в игре Rock n' roll Racing , а только 4eb9  xx xx xx xx (jsr  xxxxxxxx) ?

еще интересует что такое  st   sttr  (что-то не нашел у себя)




Smoke:
JSR   $4EB8xxxx -- это обычный джамп, где ХХХХ это 2-х байтовый адрес. Прыгать можно от 0 до $FFFF. Редко используется.
Джампы относительно PC по-моему ничем и не отличаются от bsr.w/bra.w, так что не нужно заморачиваться с ними, размер у них одинаковый.

--- Цитата: Ti_ ---еще интересует что такое  st   sttr  (что-то не нашел у себя)
--- Конец цитаты ---
Это что? Ни разу не встречал, и в мануалах нету
Ti_:

--- Цитата: Smoke от 03 Июнь 2010, 17:35:10 ---JSR   $4EB8xxxx -- это обычный джамп, где ХХХХ это 2-х байтовый адрес. Прыгать можно от 0 до $FFFF. Редко используется.
Джампы относительно PC по-моему ничем и не отличаются от bsr.w/bra.w, так что не нужно заморачиваться с ними, размер у них одинаковый.Это что? Ни разу не встречал, и в мануалах нету

--- Конец цитаты ---
да нет, 4eb8 насколько я помню до $8000 только , а если больше то в обратку пойдет. (как moveq)
sega assembler v.3 как раз автоматически делает именно 4eb8 если адрес позволяет, а не 4eb9.
насчет jmp pc - да я не заморачивался просто интересно, что-то две команды одинаковые чтоли?(в RRR есть и те и те)
ST есть в dune2  (в базе IDA) , только не могу показать где - не на том компе сейчас.  а в дебагере от Shella она обозначалась как STTR, а в Яковлеве тоже вроде St.

кстати swap 1-ый и 4-ый байты меняет? лень проверять было. но если так странно,что не сделали 1+2-ым с 3+4-ым - получилось бы как 2word'a.


evgeny:
4eb8 - насколько я помню до $8000 - это прыжок в ROM, а после в RAM.
Марат:

--- Цитата: Ti_ от 03 Июнь 2010, 02:36:06 ---еще интересует что такое  st   sttr  (что-то не нашел у себя)


--- Конец цитаты ---
Судя по документаций - это установка значения по условию. В идеале команда обозначается как Scc, где cc - condition code - ложь, истина, меньше, равно и т.д. Если условие выполняется, то по эффективному (исполнительному) адресу устанавливается значение $FF, в противном случае $00.
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии