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

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


Сообщения - Sharpnull

Страницы: [1] 2 3 4 5 ... 176 Далее
1
YY-CHR редактор тайлов, ему всё равно на размер файла, Lunar Magic для SMW, поэтому существуют ограничения. Я не разбираюсь в программе, вы не написали подробностей, поэтому только понятно, что вы не умеете пользоваться программой и суёте не подходящий файл в программу. Может для одного спрайта вы пытаетесь загрузить файл с кучей тайлов. Изучайте программу (руководство, уроки) и станет понятно.

2
Картриджи / диски / Famicom Cartridge Schematics & PCBs
« : 11 Апрель 2026, 15:44:36 »
решил попробовать собрать, периодически рандомные зависания
Ром кривой. Меня просили исправить Crisis Force (J) MMC3 от Evgenykz, я частично исправил, но так и не доделал год назад.

3
В RoboCop Versus The Terminator шрифты сжаты вариантом LZSS. Я смог заменить шрифт из "комиксов": взял разжатую графику из VRAM (0x800 байт в начале), в PRG $FA0D8 записал 00 08, после FF перед каждыми 8 байтами разжатой графики, получилось сжатие без сжатия, адрес на шрифт PRG $2828C: D8 20 1A 00 (это CPU $9FA0D8- CPU $858000). Так можно и другой шрифт, но для полноценного алфавита искать свободное место в VRAM.
Версия для MD без цензуры, поэтому для SNES мало кому интересна.

4
pashok6798, в Mesen в Memory Viewer выбрать Memory Type: Work RAM, в $DE1 будет 01, потом 48 на экране "Laura, hurry up!". Когда я писал CPU, PRG это типы CPU Memory, PRG ROM (как в файле). Tilemap обычный для SNES, я вроде подробно описал. Я писал про редактирование tilemap через Djinn Tile Mapper в теме Doraemon: Nobita to Yousei no Kuni, здесь почти также. Коротко, открыть ром в окне "Карта тайлов", нажать addr 0x80, ввести h35a800 для "Laura, hurry up!", в окне "Тайлы" дамп VRAM, addr 0x80 - h8000, x32(8x16), 2BPP GBC, Параметры метатайла 1x2, в "Карта тайлов" выбрать Type и можно набирать текст, нажимая на тайлы в "Тайлы". В переводе вы можете для этих экранов указать текст состоящий из всего алфавита (адреса на текст можно сделать одинаковые), тогда в VRAM будут все символы, загрузите дамп с русскими символами для тайлов и будете набирать текст.
312145-0

5
Ромхакинг / Хаки на любой вкус
« : 09 Апрель 2026, 15:11:06 »
А получится ли так же легко запатчить выбор языка?
Убрал выбор языка, если вы об этом.

6
Ромхакинг / Хаки на любой вкус
« : 09 Апрель 2026, 01:26:49 »
Возможно кто-то встречал конверсию под другой, более распространённый маппер или может такую сделать?
Иногда маппер 30 совместим с 2 (UxROM), если mirroring H/V и не меняется, CHR RAM только 8КБ используется и другое, также сохранения внутри игры не будут работать. Если изменить заголовок на 2 (4E 45 53 1A 20 00 21 00 00 00 00 00 00 00 00 00), то в начале работает, потом не знаю. Эмулятор должен поддерживать расширенный UxROM и не должно учитываться bus conflict. На MMC3 можно, если mirroring только H/V.
UPD: Я уже вам отвечал https://www.emu-land.net/forum/index.php/topic,89853.msg1605976.html#msg1605976 :)

7
Текст не сжат, он задаётся через tilemap с позиции PRG $359000 по 0x800 байт. Текст в ctr-eng-orig состоит из уникальных символом, чтобы их записать в VRAM, а в tilemap можно повторять. Например, для It (в начале текста) индексы тайлов 02, 03 и 04, 05, потому что указаны в таком порядке, в tilemap они в PRG 3591C6, 359206 и 3591С8, 359208, для вставки ещё буквы t в tilemap снова указать 04 и 05. Откройте ром в Mesen, Debug > Tile Viewer, Source: Video RAM, Address: 8000, Format: 2 bpp, Tile Layout: 8x16, увидите использованные символы в VRAM. В Debug > Memory Viewer видны недавно прочитанные байты (синим цветом), чтобы быстрее найти расположение данных.

Текст появляется частями сверху вниз с помощью прерываний. Задаются scanline (позиция Y экрана сверху вниз) в нужном месте через код. Запись scanline происходит в WRAM $0DE1, поэтому можно найти по 8D E1 0D (в данной игре), перед этими байтами значение scanline. Точку срабатывания прерывания на экране можно посмотреть в Mesen, Debug > Event Viewer. В ctr-eng-orig добавили доп. код (в конце рома, прыжок PRG $3861: 5C BE 80 F5 = JMP $F580BE) для разделения текста, поэтому "Haha, this is the" начинается сверху и для этого отдельный tilemap.
в переведённых ромах данное значение отличается: 0x1A718 - тут отличаются 2-3 байта.
После текста "It really is." используется PRG $1A718: 07 4B 00 в (J) и 3C 33 01 в ctr-eng-orig, в начале номер команды, потом аргументы. 07 - вывести текст с индексом 004B, 3C - тоже вывести текст, но взять по адресу F50000 + 0133 * 2 = CPU $F50266 (или PRG $350266) значение 09BC и прибавить F50000, получится CPU $F509BC, где список текстов 4B 00 22 02 FF FF - сначала текст 004B, потом 0222 и конец как FFFF.
Остаются вопросы к деталям: настройка времени отображения текста, расположение адресов на нужные данные и т. п.
UPD: Доработал текст. Кстати, ромы лучше архивировать в 7z.

8
Приложите ром Clock Tower: Rewind.

9
Переводы игр / Re: [SNES] Snoopy Concert
« : 06 Апрель 2026, 12:50:50 »
Я же правильно всё делаю, меняю графику, не смотря на то, что в конце графики какие-то данные. И потом пакую всё это и вставляю в ром? К примеру, 029 файл...
Да. Эти данные правильно разжимаются, я проверил заменой адреса на сжатые данные в эмуляторе (чтобы не проходить игру). Данные в конце похожи на tilemap (индексы тайлов для фона), попробуйте изменить и проверить, это поможет с переводом.

10
Ромхакинг / Вопросы новичков
« : 04 Апрель 2026, 22:16:24 »
Contra (u) и (j) на одном и том же или разных?
Разные. Графика отличается в том числе от этого. Посмотреть можно в эмуляторе как "NES Header Editor", есть отдельные просмотрщики заголовка рома, я однажды делал. Для Contra есть порты на MMC3 маппер, я один такой делал.

11
Переводы игр / Re: [SNES] Snoopy Concert
« : 04 Апрель 2026, 16:19:45 »
искать остальное - это жесть
Обновил программу, теперь можно распаковать все сжатые данные.

12
Переводы игр / [SNES] Snoopy Concert
« : 04 Апрель 2026, 03:01:30 »
П.П.С. Кто готов помочь с графикой?
Сделал сжатие для графики. Используется простой LZSS. У меня обычное сжатие, по размеру как оригинал, но можно лучше.
Чтобы узнать позицию в файле сжатых данных, в Mesen в Debugger установить breakpoint на выполнение CPU $C0EB51, справа от LDA [$0F],Y будет CPU адрес на сжатые данные:
Сначала найти в Tile Viewer нужную графику, отмотать время назад до появления, включить breakpoint, будет несколько срабатываний, в Tile Viewer отобразится после срабытания, поэтому сохранять адреса заранее. Например, для LINUS на фоне - CPU $DEFC83, значит в роме $1EFC83 (разница 0xC00000), для разжатия:
snoopy_comp.exe -d "Snoopy Concert (Japan).sfc" tiles.bin -p 0x1EFC83Для сжатия:
snoopy_comp.exe tiles.bin tiles_compressed.binВручную вставить назад или в другое место и изменить адрес.
UPD v2 2026.04.04: Добавил больше проверок на допустимость (правильность) при разжатии и добавил разжатие всех данных из файла:
snoopy_comp.exe -a "Snoopy Concert (Japan).sfc" "Extracted"Нужно создать папку Extracted, чтобы в неё сохранились разжатые файлы. Имена вида 000_00FF4A_0044.bin - десятичный порядковый номер, позиция в файле (hex), размер сжатых данных (hex). Встречаются ложные данные.
UPD v3 2026.04.09: Убрал проверку из-за которой не разжималась часть данные, в оригинале бывает лишний байт.
UPD v4 2026.04.14: Убрал проверку на длину повтора сжатия, в оригинале может выходить за разжатые данные, но код игры пропускает.

13
Как он работает с большими файлами (под несколько гигов)? Не глючит?
Плохо в v2.0-beta1. Файл грузится полностью в ОЗУ. На 600 МБ у меня уже медленное переключение между байтами, при открытии 4 ГБ (было доступно около 10 ГБ ОЗУ) расширился файл подкачки на несколько ГБ, я принудительно закрыл программу, повторный запуск начал снова открывать файл, пришлось удалять настройки из реестра.
UPD: Для сравнения, 010 Editor после открытия 17 ГБ работает быстро как с маленьким файлом, занимает ОЗУ около 45 МБ.

14
там получается у всех мини-игр перевода нет после прохождения?
После мини-игр всегда одно предложение - "You win!". Перевод плохой, про другие проблемы не знаю. Для проверки фразы "Place all of the jewels into the right spots in the jewelry box.", которая перед мини-игрой с драгоценностями, в меню выбора мини-игр в эмуляторе CPU $300492C: 05 для установки курсора, CPU $30044B4: 01 пункт доступен для выбора (другие мини-игры 4478, 4484, 4490, 449C, 44A8).

15
Слышал про случаи поломки видеокарты от телевизора, особенно при подключении на горячую (несмотря на поддержку hot plug) и с подключённой антенной. Повезло, что у Gigabyte часто 2xHDMI + 2xDP вместо 1xHDMI + 3xDP.

16
После каждой мини-игры вот такая картина
В Disney Princess - Royal Adventure (U) [T-Rus Pirate] нет перевода для "Place all of the jewels into the right spots in the jewelry box." и "You win!". Добавил как "Разложи все драгоценности по соответствующим местам в шкатулке." и "Ты выиграла!".

17
эмулятор наотрез отказывается нормально запускать пропатченную версию игры Shining Force Gaiden III (GG). Доходит до титульного экрана и сразу же RESET
Shining Force Gaiden - Final Conflict в этом переводе на англ. https://www.romhacking.net/translations/876/ (Shining Force Central, 070706 final) при переключении банка происходит запись с "Bank shift" (https://www.smspower.org/Development/Mappers#ROMBankShifting), который не нужен, код LD A, $06 | LD ($FFFC), A. В Mesen, например, это игнорируется, а в Mednafen используется и не тот банк устанавливается. Косяк перевода, но Bank shift не на всех мапперах работает (No known software uses this feature. Because it is only featured on one type of 512KB mapper chip, its behaviour with other ROM sizes is undefined), поэтому это не говорит о точности эмуляции. Для исправления 23FEB:04, прикладываю ром.

18
Тоже 12V. Читайте руководство к материнке и СЖО. Например, у моей материнки от Gigabyte про помпу только на сайте написано: "All fan headers are subject to support AIO_Pump, Pump and high performance fan with the capability of delivering up to 2A/12V @ 24W." У материнок новее от Gigabyte в названии разъёма есть _PUMP и CPU_OPT тоже описывается как "CPU Fan/Water Cooling Pump Header", у всех макс. ток 2A (12V, 24W). В одной от ASUS написано макс. 1A (12W) для всех, но у AIO_PUMP по умолчанию Full Speed (работает на максимум) в отличие от других. Ещё там "When connecting two CPU fans, ensure to connect the fans to the CPU_FAN and the CPU_OPT header, and make sure both fans are the same brand and model", т. е. возможно они регулируются как один. Вроде кто-то сунул помпу в первый попавшийся разъём и не настроил скорость, поэтому плохо работало. Так что, удобнее сунуть в _PUMP разъём, если его нет, то в любой, если материнка позволяет, за исключением возможно CPU_OPT (если не настраивается отдельно).

19
Прочие эмуляторы / Retroarch
« : 22 Март 2026, 13:44:58 »
Опять Ядра не качает, что прописать в list-general.txt?
Есть такой способ, если работает Tor Browser. Скачать proxychains_0.6.8_win32_x64.zip https://github.com/shunf4/proxychains-windows/releases, запустить Tor Browser и "Соединиться", через текстовый редактор в proxychains.conf в конце заменить socks5 localhost 1080 на socks5 localhost 9150, закрыть RetroArch, через командную строку или через BAT-файл выполнить (указать свой путь до retroarch.exe):
proxychains_win32_x64.exe -f proxychains.conf "C:\Program Files\RetroArch\retroarch.exe"Запустится RetroArch и можно обновлять. Когда понадобиться обновить, запустить Tor Browser и потом proxychains.
Вместо Tor Browser можно использовать прокси из интернета, есть бесплатные (я искал по free proxy), тогда запись в proxychains.conf будет вида socks5 123.123.123.123 1234 (вместо socks5 другие протоколы не пробовал), не знаю насколько безопасно, но данные должны передаваться только для RetroArch, для надёжности в retroarch.cfg заменить http://buildbot.libretro.com/ на https://buildbot.libretro.com/. Вместо proxychains можно использовать другие программы, которые "применяют прокси" на приложение (например, proxifyre, proxifier).

20
Hard'n'Soft / Жёсткий диск
« : 16 Март 2026, 15:02:30 »
меня беспокоит норма это или нет
Ну вот у моего внешнего примерно за 12 лет 411 000 парковок в S.M.A.R.T, я его в последнее время мало нагружаю, так много могло набраться до выкл. таймера. Внутренний WD Red Plus за 4 года - 6200 парковок, раздаю торренты, засыпает он через несколько минут бездействия, я ничего не настраивал.
UPD: Для Toshiba бывают обновления прошивок, попробуйте обновить.

21
Hard'n'Soft / Жёсткий диск
« : 16 Март 2026, 14:40:56 »
Тошибовский внешний 2Тб, паркует их каждые секунд 7-8 будучи просто подключенным
Про парковки не знаю, но для моего My Book от WD я выключал "Таймер отключения" в их "WD Drive Utilities". Для Toshiba такого не нашёл. За несколько минут кол-во парковок не увеличилось, после перезагрузки Windows на 1 больше. UPD: Хотя у меня 411 000 парковок в S.M.A.R.T за несколько лет многовато.
Попробуйте hdparm https://superuser.com/a/858486 (параметр -B 254), есть порт для Windows, похоже придётся добавить в автозагрузку Windows. С внешними дисками может не работать.

22
Ромхакинг / Re: Хаки на любой вкус
« : 15 Март 2026, 13:22:52 »
в чипе есть как бы nes hardware emu
Важно только то, что обновить эмулятор не получится, поэтому либо играть что работает, либо пытаться адаптировать, но это пустая трата времени.
Много переведённых игр не запускаются, хотя оригиналы работают.
Зависит от перевода, но скорее всего эмулятор проверяет контрольную сумму и включает костыль для конкретного рома, чтобы исправить кривую эмуляцию, наличие таких костылей проверяется изменением одного байта (который не влияет на игру) в оригинальном рома. Если хотите проверить, посмотрите размер PRG ROM указанный в заголовке рома (в Mesen Debug > NES Header Editor), если 128 KB, значит 131072 байт, прибавьте 9 байт и измените байт там (0x20009) на другой (например, был 00 -> 01, был FF -> 00) через Hex-редактор. Если оригинальный ром перестал работать после изменения этого байт, возможно дело костылях.
И игры, которые не глючат, все работают как на железке, без тормозов характерных для эмуляции.
В эмуляторах скорость работы такая же как на железе, если только устройство на котором работает эмулятор не слишком слабое для эмуляции. Самый точный эмулятор Mesen2, но железки бывают со своим багами и особенностями, есть много пиратских мапперов, которые поддерживает только NintendulatorNRS (но это не влияет на скорость игры).
Проверил другие тестовые ромы.
Нет смысла так проверять, если вы не знаете что они проверяют.

23
Ромхакинг / Хаки на любой вкус
« : 15 Март 2026, 04:41:15 »
виснет игра Kick Master после взятия предмета из сундука
Плохая эмуляция MMC3 или остальная эмуляция. Об этом писали для PocketNES эмулятора https://forums.nesdev.org/viewtopic.php?t=1072 (там есть другие упоминания и для другого эмулятора), проваленные тесты эмуляции (mmc3_test_2) и другие тесты: https://www.nesdev.org/wiki/Emulator_tests. Замечу, в FCEUX и VirtuaNES тесты MMC3 провалены, но игра не зависает после взятия spirit, поэтому не показатель. 5-й и 6-й тесты не могут быть пройдены одновременно. Для проверки изменил один байт рома, чтобы эмуляторы не применяли костыли для исправления плохой эмуляции на основе контрольной суммы.
Исправить ром для кривой эмуляции можно. Чтобы узнать используемый эмулятор только по ромам, нужно запускать разные тесты (выше) на всех эмуляторах и всех их версий, чтобы сравнить ошибки. UPD: Начать можно с PocketNES, сравнить баги в играх.

24
Hard'n'Soft / покупка/сборка ПК.
« : 14 Март 2026, 20:17:34 »
следует задействовать верхний слот?
Обычно - да, скорость выше и подключение к CPU. К тому же, использование 2-го может что-то отключать (SATA, PCIe слоты). Напишите название материнки, на сайте написано.

25
Hard'n'Soft / покупка/сборка ПК.
« : 14 Март 2026, 14:32:47 »
на него стоит ставить радиатор (которого у меня сейчас нет)?
В старом тесте он греется прилично (под нагрузкой до 70-81 градусов), возможно новые ревизии лучше. В любом случае ставьте радиатор, качество у них отличается (с теплотрубками должно быть лучше, но дороже) и учитывайте температуру от видеокарты (https://www.youtube.com/watch?v=CFjCD2AyD6Y). У proSSD есть тесты радиаторов.

26
DOOM.The.Dark.Ages-voices38
И написал "The next one might surprise you." :ohmy: Интересно, обновит ли он взлом после выхода DLC, которое должно быть крупным.
Также он обновил взлом для Assassin’s Creed Mirage.

27
Hard'n'Soft / покупка/сборка ПК.
« : 13 Март 2026, 16:57:04 »
9060xt 16gb приобрел
Я тоже поддержал AMD. Купил в конце прошлого года Gigabyte RX 9070 GAMING OC 16G на памяти от Samsung (холодная в отличие от Hynix). Потом заметил, что один вентилятор начинает шуметь (как будто задевает) при оборотах ~40-60%, в FurMark после 3 минут было 30% оборотов, ещё я ограничиваю FPS и не нагружаю полностью, поэтому не стал пытаться сдавать по гарантии. UPD: Проверяйте вентиляторы, например, в Afterburner по 1% увеличивать. Разница между температурами GPU и Hotspot обычно большая у AMD.

28
Разработка игр / [PC] Battle City X
« : 13 Март 2026, 16:42:57 »
MRGYV, v1.04 скачал из archive.org, а последнюю версию - v1.13 с сайта spaces (spcs.me и другие зеркала). Видел исходник игры - BattleCityX113.gmk, но не пробовал скачивать.

29
Ромхакинг / Re: Заказ хака за оплату
« : 13 Март 2026, 01:24:32 »
Aliens - Infestation (USA) (En,Fr,De).nds
Сделал. Чтение языка из ARM9 System Bus $2FFFCE4 (https://problemkaputt.de/gbatek-ds-firmware-user-settings.htm).

30
Ромхакинг / Вопросы новичков
« : 11 Март 2026, 21:38:39 »
можно ли как-то заменить названия уровней и текст в переводе Super Mario Advance 2? Если да то как и через что
Там легко. Названия уровней как tilemap лежит в роме (https://www.coranac.com/tonc/text/regbg.htm#sec-map), у последнего элемента установлен старший бит для указания на конец. Например, ЯОСХИ'С ХОУСЕ в роме 18 11 0E 11 12 11 07 11 08 11 6B 11 12 11 1F 11 07 11 0E 11 14 11 12 11 04 91, последний элемент 0x9104 это 0x1104 (будет в VRAM) + 0x8000 (для конца). Текст вида "Добро пожаловать на земли динозавров!" с D63E4 в роме, каждый символ - 1 байт, относительно VRAM $6000, поэтому 03 - Д, 4E - о, для переноса строки добавить 0x80, для завершения текста использовать все переносы, для пустых переносов - 9F (0x1F (пробел) + 0x80 (конец строки)).
Это было "как" изменить, "через что" как удобнее, кто-то использует Kruptar, можно самому написать программу. Для просмотра значений tilemap (для названий уровней), в Mesen открыть Tilemap Viewer, выбрать первый символ названия уровня, нажать F1, откроется Memory Viewer с Memory Type: Video RAM, по этим значениям искать в роме.

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