ну, начнём с того, что не надо гнать. знаешь ты или нет - это уже не суть. хотяб извинился за гон, чтоле. а то "люди памагите винда сломалась не открываются у меня файлы в винампе" например. прозвучало это примерно так. лично я тестил(хоть и не особо много) тв+ медленно и мощно, т2в - скоростной его собрат. думаю, код поиска примерно одинаковый, поэтому я в них уверен. они ищут все тимы. даже больше.
момент номер 2. прeжде чем нести чушь, подумай. видеопамять, он же врам, активен только в при работе носителя. как и в любой другой игре(я б даже сказал архитектуре) из внешней памати(ну или оперативной) некоторые значения попадают во врам... но не наоборот. из видеопамяти мы лишь можем узнать какие данные(точнее байты) нужно искать.
момент номер 3... херова гора сообщений, а толку 0. кто-то что-то вроде как-то... а вопрос еще актуален... попробую решить проблему.
lconqeurorl человек непонимаюший, это видно. я попробую очень просто и доступно пояснить что и как делать.
момент номер 1. ты играешь на еПСХе, как я вижу... кто-то сказал, что лучше юзать для сохранения врама пСХ... если честно, я думаю, что врам(а точнее фреймбуфер, т.е. часть врама) ничем не будет отличатся. эффеты идут не при попадания во врам, а после взятия картинки из врама. так что какой ты будешь юзать(если что, то юзать = использовать) эмулятор разницы нет.
шаг номер раз - запусти эмулятор, дойди до боя, в котором будут ванзеры, текстуры которых нужно изменить.
шаг номер два - заимей врам. это можно сделать сейвстейтом. ибо он сохраняет текущие врам, рам, и еще что-то. как минимум значения регистров. но нам оно не надо, мы графику меняем.
хочу отметить, что нужно получить "чистый" врам. проще это делается в pSX как раз. но, у тебя ePSXe, и мы делаем через сейвстейты. вообще, сейвстейты на ePSXe и PCSX - gzip архивы(*.gz). распаковать можно архиватором. самые популярные - винрар и севензип. я использую второй. после распаковки кидаем файлик в любой шестнадцатиричный редактор(не двоичный, как ты говорил ранее). я пользуюсь Tiny Hexer'ом, но можно пользоваться любым. суть у них одна. переходим по оффсету(смещению, адресу) 0x2733DF (0x40F от слова "GPU"). могу ошибаться, но в 2 разных играх оффсет оказался одинаковым. (у меня ePSXe 1.9.0). далее выделяем область, размером 0x100000. выделенную область сохраняем в отдельный файл. наш новый файл должен оказаться размером 1048576 байт, это ровно 1мб. если все готово, проверяем. PVV открывает не только сейвстейты. запускаешь PVV открываешь и то и то. если одинаково - все сделано правильно.
если это часть кажется слишком сложной - можно юзать pSX. но... если это сложно, то можешь сразу смириться со своей идеей. это не самое сложное, так скажем.
шаг номер три - ищем текстуру ванзера в PVV. в моём случае она оказалась сразу возле фреймбуфера.
видно, что палитры находится внутри полотна изображения.
и, да. область полотна выделена правильно(потом станет понятно почему)
шаг номер 4 - смотрим координаты полотна. в данном случае 320(ширина), 0(высота). это и видно на скриншоте.
шаг номер 5 - открываем врам в хексере(шестнадцатиричный редактор). переходим по оффсету 0х280. потому что высота 0 - это хорошо, ширина 320, это 0x140, но т.к. 1 пиксел врама это 2 байта, умножаем на 2 - получаем 0x280. а вообще формула проста(может пригодиться) (2048*высота+ширина)*2 и перевести в хекс(шестнадцатиричный вид). это очень просто делается в калькуляторе(если... а хотя какой если, венда у тебя скорее).
на скриншоте видно, что эти байты точно входят в искомую картинку(не тим, а именно картинку), но на самом деле их больше. ровно в 2 раза. не суть. я когда искал этого не знал.
шаг номер 6 - открываем образ в хексере. ищем данную последовательность байт... таких нашлось аж 11. но верной оказалось 1. но я этого тоже не знал. и могло оказаться, что это всё текстуры ванзеров. надо проверить.
проверка:
для начало узнаем, какой файл нужно открыть. лично у меня не получилось сразу кинуть образ(пишет что памяти не хватает, хотя её более чем), чтоб конкретно найти нужный оффсет, поэтому пробуем по файлам.
берем любой диапазон из выделенного, путь будет 0x764600. делим на 0х930(2352 - размер 1-го сектора на пс дисках), получаем 0xCDF. это 3295.
открываем образ в CDmage. ну или в любой другой программе, которая умеет показывать первый сектор файла. но именно эта програма умеет запихивать измененные файлы обратно в образ, что нам и надо.
упорядочиваем файлы по лба(начальным секторам, выделил красным) и ищем файл. 3295 между 452 и 4830(выделил зелёным). нужныц нам файл - IDATA.BIN. на нем пкм -> экстракт файлс. выбираешь куда удобнее.
далее открываем его(идату) в хексере. находим нужную нам последовательность байт. это 0x58dd10.
далее открываем его же в тайл молестере. он(молестер) открывает что угодно как картинку.
сначала немного изменим режим вывода:
view -> codec -> 2-dimensional
view -> zoom -> 200%
view -> mod -> 4bpp linear, reverse-order
ибо ванзеры в таком формате(как минимум тот, что на скрине с пвв, да и все остальные должны быть тоже)
далее переходим по оффсету 58dd10. проще нажать Ctrl+G и написать оффсет. выбрав справа хекс и абсолют.
смотрим... не то. лично мне это видно сразу.
повторяешь это до тех пор, пока не найдёшь нужный. подскажу сразу, это будет файл STGVRAM.BIN. и оффсет в нём 0x77b54
но так не особо красиво.
мутим палитру, получаем
шаг 7 - извлекай нужный файл.
шаг 8... надо подумать. по сути ты хочешь изменить цвета ванзеров, не перерисовывая их текстуры как таковой. если да, то можно тем же тайл молестером изменить её. хотя и перерисовать текстуры можно в нём же.
вобщем, вопрос был какой: где лежат текстуры. на этот вопрос я ответил. как их менять уже другая история.
з.ы. картинки удаляться через 14 дней(вроде везде так поставил)