Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Segaman

Страницы: [1] 2 3 4 5 ... 109 Далее
1
PS Что-то ты всё равно делаешь не так:

Правда, починил возврат в 64К:

Напомню, что 128К хак соника работает идеально. Так же Ньюк сделал на FPGA корке принудительную активацию 128К режима и Zero Tolerance так же работал без артефактов.
Я нашел у себя в сдк проблемы, из-за которых такое отображение: У меня проблемы в расчетах адресов слоев и их заполнением.
Правда это я для порта Super Cyborg исправил, но если очень надо, могу пересобрать тестер на новой версии сдк.

2
Хак на Terminator2: Judgement Day дла Sega Genesis
Заменён аудиодвижок на MDSDRV.
Написаны новые треки для всех уровней.
Заменены все звуки на новые.
Код: Segaman
Музыка и звуки: VLD
Скачать

Добавлено позже:

Добавлено позже:
Для сравнения, вот оригинал:

3
  0_0
Segaman, к сожалению,для меня это китайская грамота .
Всё-таки хочется хардварного решения....и,по возможности ,универсального для всех игр и хоумбрюшек...
   


думается мне хардверное решение обойдется сильно дороже.
надо отрезать процессор от шины и ставить посрединка между ним и видео-чипом.
надо парсить то, что получает процессор и что пытается писать и куда.
потом сравнивать с нужным значением и заменять в случае совпадения.
если ты хочешь потратить несколько месяцев на то, что можно сделать за пару-тройку часов на софтверном уровне, то рекомендую сильно задуматься.
алсоу нефакт что ты такими манипуляциями не прибъёшь консоль.
короче тут только ромхакер порешает  :)

4
  Ну если можно обойтись горстью мелкологики,я бы хотел попробовать...
 Платы клонов на серии ТА есть для опытов.
Видеопамять тоже есть.
 Дайте мне пинок в нужном направлении  :)
Такс. Судя по доке https://segaretro.org/Sega_Mega_Drive/VDP_registers
Тебе надо отлавилвать запись 0x81xx и делать ему логичекое или (OR) с числом 0x80
Говоря языком пограммиста:
if ((value & 0xFF00) == 0x8100)
  return value | 0x0080;
else
  return value;

Добавлено позже:
Но я бы предпочел написать скрипт на lua для генса, который отловит все записи регистра 0x81 и записал точки этой записи в файл.
Прошел бы игру с этим скриптом.
А далее прошелся по всем полученным местам в роме и добавил логичекое OR с 0х80.
Как правило даже при большой оптимизации таких точек в роме будет максимум штук 20-30.

5
Та мне бы самому такую железку.
Сам я хрен соберу ибо у меня лапки.
Так шо я бы купил  :)
Надо ж норм тестить. Я на 128к молюсь уже пару лет, но из-за лапок ничего поделать не мог

6
Добавил очистку всего экрана.
Я так полагаю, что новые 64кб нужны чисто под таблицы.
В игрулях с режимом 128кб попросту ничего не изменилось:
-проблем с приоритетами слоев нет
-проблем с палитрами нет
-проблем с врашением спрайтов нет
Если так, значит структура тайла в таблице не поменялась, а это значит врятли тайлы из новой памяти можно отображать.
Разве что найдется какой-то незадействованный регистр, где можно указать место с таблицей с доп. битом для тайлов в таблице и в спрайтах, в чем я очень силньо сомневаюсь.

7
Добавил пункт меню.
Включает режим 128кб, ждет vsync, обновляет шрифт и содержимое экрана.

8
Хорошо. Покурю код, сделаю, чтобы графика обновлялась.
Так то я просто бит 128к режима включаю и все, а надо и графен весь прогрузить. :)

9
Возможно, вопрос покажется очень странным, но не судите строго :blush:
Можно как-то эту 128кб VDP подсунуть сеге на карике, т.е. Что бы сега юзала её вместо стандартной?

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

10
А у меня есть самопальный тестер режима 128кб.
На обычно сеге, все в квадратную кашу превращается.
Посмотреть бы, как на 128кб сежке будет работать.

11
Вот опкоды в хексе.
Тут две странички с сортировкой:
1) по битам
2) по названию команды

На счет отличий MOVE от MOVEA:
  • Размер данных: MOVE автоматически определяет размер данных, основываясь на размерности операндов, тогда как MOVEA работает только с адресами и не учитывает размер самих данных.
  • Расширение адресов: Когда MOVEA копирует 16-битный адрес в 32-битный регистр, она расширяет адрес, добавляя ведущие нули, чтобы заполнить оставшиеся биты. MOVE не выполняет автоматического расширения адреса.

Расширение адреса крутая штука, потому что адрес можно записать как 2 байта вместо 4, но адрес должен быть в диапозоне с $FFFF8000 до $FFFFFFFF
Тогда адрес можно записать как ($FFFFC400).w и в роме команда будет содержать 2 байта адреса $C400 вместо $FFFFC400

12
perfect_genius, я все время говрю, что работаю над дебютом новой модельки для стримов.
будет дебют, сразу сажусь заниматься геймдевом.

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

13
Вообщем один человек задонил за сливки, так шо огромное спасибо.
А так акция великой щедрости закончилась.
По идее никто ничего не прохавает :)

14
Сложновато всё это понять не видя самому. Короче, опрос кнопок не привязан к отрисовке кадров, поэтому строгой синхронизации не потребуется?
Т.е. если у одного частота кадров нормальная, то его игра не будет спамить второго "тормозящего" игрока сообщениями о нажатой кнопкой выстрела?
Будет отправлять это сообщение строго, условно, 20 раз в секунду несмотря на тормоза или их отсутствие.

Ещё мне было интересно увидеть, что сетевой код дублируется - для нормальной игры оптимизация через относительность всех адресов от значения в одном регистре. А вторая копия для времени обратного прохода луча (не разбираюсь, забыл как называется - VBlank же?), и там тот же код уже без такой оптимизации.
Если второй игрок тупит, то и первый будет тупить.
Когад десинх происходит так вообще опа пролипают на время, а потом пишет дисконнектед.
Передача данных не может быть, если собеседник не ответил подтверждением получения 4 бит данных, и если собеседник будет долго отвечать, то вся игра пролипнет.

15
perfect_genius,
  • Расчет на то, что ромы одинаковые
  • Все этажи эпизода хранятся в ОЗУ
  • По кабелю передаются только события (выстрелы, передвижения, урон, подбор предметов и тд)
  • Код у игры максимально простой, чтобы неперегружать рендер кадров
Насчет последнего, я отключал рендер фреймов и по ощущения было будто поставить в эмуле фреймскип на 5 или 6.
Настолько игровое двигло мало ресов жрёт, что без рендера кадров выдает столько действий за секунду.
Так что мультиплеер для игры особо ненагружет всё хозяйство, самое тяжелое для игры это фреймы.  :)

Добавлено позже:
Добавлю, что если запустить бейонд в коопе с оригиналом, сначала все заработает нормально, а потом резко сдохнет из-за разницы в игровом процессе.
А вот если андеграунд запускать в коопе с оригиналом, то тут все отлично заработает за тем лишь исключением, что у второго игрока будут карты из другой игры.
Если у первого игрока заспавнится враг, то он заспавнится и у второго там же, но вот наоборот это уже не сработает.
Вообщем расчет на то, что стейджи у обоих игроков идентичные, иначе ломается и\или глитчует

16
Картриджи / диски / [Sega Mega Drive] Life On Mars (dump)
« : 01 Февраль 2023, 18:04:24 »
lupus, тут на лицо все признаки чистого SGDK без наворотов.
Так что все что есть сжато средствами самого SGDK, так шо пережать не проблема.
Но вот засунуть обратно это уже совсем другое, размер то разный получится архивов.
Так что имхо проще в несжатом виде грузить новый шрифт, чем париться со сжатиями.
Я тут больше щас мучаюсь с разбором очереди DMA, чтобы докинуть графику для HUD.
Вот тут реально боль отловить, хоть и вполне реально.

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

18
Картриджи / диски / [Sega Mega Drive] Life On Mars (dump)
« : 26 Январь 2023, 10:53:01 »
lupus, шрифт есть? давай затолкаю на место старого и выдам сурс для сборки рома :)

19
perfect_genius, мне лучше задокументировать.
но еще лучше заэмулировать :)

20
Всё же предлагаю ещё выложить всё, что выяснил. А то если снова всё загнётся, то есть шанс, что кто-нибудь что-нибудь сделает к 30-летию игры.
https://twitter.com/Segaman8/status/1417882799294619651?s=20&t=iWM2ORtLnTRd0IS2fwFr2w
https://twitter.com/Segaman8/status/1418005906852388866?s=20&t=iWM2ORtLnTRd0IS2fwFr2w

Добавлено позже:
еще в 2021-ом сделал

21
perfect_genius, тут кастомное с нуля писать.
сервер с нуля и клиенты внутри умулятора.
в умуляторе сделаю симуляию чтения данных, а запись только когда от сервера придут.
так шо не важно каилера не каилера, я их протоколы не буду юзать, они на такое не сгодятся :)

22
perfect_genius, по сети. Через интернеты короче :)

23
Картриджи / диски / [Sega Mega Drive] Life On Mars (dump)
« : 22 Январь 2023, 12:47:40 »
hot, ну казуалам от этого легче не станет.
Так что думаю надо будет сесть поковырять, а в качестве примера взять принцип из Beyond Oasis. :)

24
Вообщем я уже наверно год, как разобрал работу протокола и даже смог его воспроизвести на С++ для своего СДК под сегу.
Тестил на консолях - работает, данные передаются, так что всё разобрано верно.  :cool:

Встал вопрос: Какой эмулятор взять для написания эмуляции протокола коопа?

Просто я первым делом полез в Меднафен и сильно об этом пожалел.
Я знаю что есть всякие ядра для ретроарчей и прочей лабуды - я в этом не разбираюсь.

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

25
Картриджи / диски / [Sega Mega Drive] Life On Mars (dump)
« : 22 Январь 2023, 11:26:57 »
Так ну тут конечно это всё очень здорово, но надо это дело перелопатить для эмулятора и флешкариков.
Иначе понту в данном сливе маловато, ибо играть невозможно  :)

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

27
Это ранняя версия изображения для предыстории или эскиз? А еще что-то подобное есть?  ::)
это необработанная версия.
чтоб ее в сегу запихать ее надо было пожать.
просто поделился сурсом.  :)

29
Тут это, немецкая версия в папке была, а я слышал, что немецкой версии в гудгене нет

30
Можно, пожалуйста выборочно и вкратце:
1) Почему в ZTU всего 1 эпизод? Это всё что было более менее доделано оригинальными разработчиками?
2) Почему в заставках используются картинки из оригинала?
3) Неужели дизайн уровней так и задумывался, что можно по "круговой лестнице" спуститься на 3-4 уровня сразу?
4) Где же улучшенная/исправленная версия BZT?

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

Страницы: [1] 2 3 4 5 ... 109 Далее