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

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


Сообщения - road_t

Страницы: [1]
1
road_t, о! а ты случаем дизассемблер не прикрутишь к своему редактору?
Если честно, я об этом думал, но превращать хекс-редактор в IDA – это, как будто, перебор. Плюс получается, что нужна поддержка модулей/плагинов, т.к. реализовать поддержку всех возможных платформ – это будет ппц, мягко говоря.

Это удаление удалило оформление и из проекта, даже когда при выходе я выбрал не сохранять.
А ещё - нижние окна не сохраняют своё состояние?
Это поправил. Пока не удалось побороть баг с неправильным сохранением положения курсора – он какой-то плавающий: то работает, то нет.
Ну и еще кое-что починил по мелочи.

Скачать RTHextion 2.0.1

2
Т.е. ты не ожыдаеш, што должна появитса пустая строка?
Это стандартное поведение при переносе строки, когда длина совпадает с шириной окна. Так себя ведет любой текстовый редактор.
Если сделать, как я сказал, то при изменении ширины области отображения там внезапно образуется два переноса, вместо ожидаемого одного.
Из двух зол я выбрал предсказуемое.

Есть, я делаю редактр графики универсальный, а не конкретно для Марио.
Мультплатформенный? Ссылка на гит?

3
Ну ты монстр :)
Я такой редактр планировал сделать через год-два, а теперь смогу пользоваться уже сейчас :thumbup:
:blush:
Ну главное, чтобы продукт был востребован  :biggrin:

Я сейчас ковыряю логотипы Марио и других игр, и мне приходилось всё долго рисовать в Пэйнте:


А теперь всё легко:

А разве нет редакторов Марио на все случаи жизни?..
Выглядит так, как будто возможность добавлять отступы все ещё нужна. В этой итерации я не осилил, еле заставил работать переносы, но я вернусь к вопросу.

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

revert не сбрасывает всё это. Или как сбросить всё это форматирование?
Отдельные переходы удаляются интуитивно (как мне казалось) – бэкспейсом.
При переносе первого байта ничего не происходит, т.к. визуально менять нечего. Можно, в целом, проверять, первый ли он и добавлять два переноса, но, если расширить количество колонок, все станет весьма странным.
Удалить все форматирование можно либо выделив нужный фрагмент и кликнуть на соответствующий пункт контекстного меню:
311845-0
Либо из меню Edit (Редактирование).

4
Выложил версию RTHextion 2.0

Исправил вроде всё, о чем вы, посоны, сообщили (спасибо вам большое ещё раз).

Относительно третьей беты внес небольшие косметические изменения + добавил возможность скопировать выделение в новую вкладку, а так же, скопировать таблицу из проекта в любую открытую вкладку.

311839-0

Полный список изменений версии 2.0:



5
Было бы хорошо иметь кнопку "сбросить настройки"
Кнопка-то есть и она сбрасывает стандартные темы к дефолту, но с работа с кастомными мне не нравится, надо починить.

Я еще заметил, что нету кнопки "New" (открыть новую вкладку с пустым файлом). Обычно, в гекс-редакторах (например, в популярном HxD или 010 Editor и других) идёт New, Open, Save. Здесь начинается сразу с Open, Save. Хотелось бы "New", как по-стандарту везде в гекс-редакторах. К такому уже машинальная память, тыкаешь, а кнопки "New" нету. Сделать новый файл можно только через "File" -> "New" в меню. Но, даже когда создаешь новую вкладку, там ничего нельзя писать и нельзя туда ничего скопировать. Это наверное баг, не открывается область редактора. Нужно что бы открывало пустой файл 0 байт ну или создавало его.
Тут немного неочевидно, но это не баг: в правом нижнем углу есть переключатель ВСТАВКА/ЗАМЕНА (ну или кнопка Insert, если она у тебя есть) – нужно переключить в режим INSERT. Я поправлю поведение по умолчанию, чтобы новый файл создавался с режимом вставки. Кнопку добавлю.

Но, наверное, если будет выделение цветом областей кода и закладки (список этих областей, с возможностью давать им имена), то "связанные вкладки" может и не нужны. Тогда если надо, допустим, шрифт, то нажимаешь на закладку "шрифт" и попадаешь в нужную область, где видишь его выделенным нужным цветом.
Да, это будет по-другому реализовано, надеюсь, что удобнее. Но не в 2.0)

И ещё было бы удобно, что бы была кнопка запускать какую-то прогу (ну, как в IDE запускать компилятор). Но, тогда антивирусы могут агрится на редактор.
Например, отредактировал файл, нажал кнопку, кнопка делает exec эмулятора с этим ромом и сразу тестишь отредактированный файл. Ну или запускает компиляцию, мало ли что нужно.

Вот, вроде бы для Beyond Zero Tolerance существует декомпил и там редактируешь не сразу ром, а его кусочки и потом запускаешь компиляцию. Например, вставил текстуру или звук, запускаешь компиляцию прямо из гекс редактора, могло бы пригодится в подобных случаях, экономить немного времени.[/spoiler]
Это интересная история, реализовать несложно, но я не совсем уверен, что это будет просто реализовать корректно для любых запускаемых инструментов.

6
Chaotix, огромное спасибо за столь подробный репорт, вроде все починил:
1. Фон у двух иконок убрал.
2. Тултипы поправил
3. Иконки (там не чекбоксы) на док-окнах поправил
4. При первом запуске на системе с темной темой, применяется темная тема приложения.

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

Ещё было бы удобно, если бы можно было выделять мышкой области и через правый клик раскрашивать их разным цветом. Например, выделил блок, закрасил желтым. И что бы нельзя было редактировать ничего, кроме этого блока, если он выбран. Зачем? В тех случаях, если неизвестны поинтеры, что бы ориентироваться как-то и не сломать ничего. WinHex, кажется, такое умел.
Не критичные фичи, но добавили бы юзабилити.[/spoiler]
Что-то подобное у меня в планах, попробую в следующей версии запилить.

Беларус, немного за...устал, но переносы вроде корректно работают. Еще добавил автоматическое разбиение по символу через контекстное меню или через Edit->Virtually format Жду фидбек)

Качаем 2.0 beta 3

7
Да, это. Удобнее для глаз такое разделение, чем сплошное хекс-полотно, да?
Да, если честно, выглядит рили удобно. Странно, что раньше никто не сделал (ну или я не видел)

А они уже подходят больше для разбора всяких данных, массивов, структур и т.д., т.е. уже не совсем перевод.
У меня пока некоторые проблемы с обработкой кликов, хотя рендерится, вроде, нормально. Попробую внедрить табы, но, скорее всего, это будет-таки следующая версия, надо дотестить эту (помогай  :biggrin:) и зарелизить уже четкую 2.0

Тот хекс-кусок, который я кидал, он из UMK3 - там указатели на приёмы, на таблицы портретов и т.д.
Т.е. моя идея о разделении на секции (что-то вроде того, как это сделано в IDA) должна пригодиться?

8
Да я безработный пока  :lol:
Когда кидал скрин, был набросок, сейчас уже как будто работает чуток.

но ты не ответил. Ты это имел в виду? Единственное, что это только переводы строки. Табы и пробелы – совсем сатанизм, очень сложно будет отрисовку делать корректно. Точнее, отдебажить это.

9
Беларус учит русский, ты так себе это представляешь?

10
Win11 – горе в семье  :debile:
Ну, может 12 будет приемлемой.
Но тут дело не в ней, конечно. Блокнот, скорее всего, со времен XP не менялся особо. Он пытается кодировку определить по разным маркерам (если нет BOM). Собственно, RTHextion тоже пытается и тоже с переменным успехом. Реально дело непростое.

11
В блокноте Win11 сохраняю как UTF-8. Твой редактр внизу пишет ASCII.
вот если какой-нибудь байт изменить на ноль, то сохранит как UTF-16 LE.
Ну скинь файлы. А то пока звучит, как будто это проблема блокнота, который пытается определить кодировку и не понимает, что это такое ты сделал.

road_t, Шикарно! Буду разбираться с таким замечательным инструментом. И благо что под не последними версиями macOS - с виду работает нормально.
Благодарю! И буду обязательно следить за развитием проекта.
Спасибо, замечания и предложения приветствуются  :)

На системе до каталины не тестил, на монтерее и секвойе норм. Значит и на тахо будет ок.

12
цвет у нулей адреса по умолчанию не как у нулей хекса
Я решил поведение стандартное не менять. Думаешь, лучше по дефолту сразу их делать менее контрастными?

При первом запуске - малюсенькое окно, но это ладно. При каждом новом запуске окно не на весь экран (Win11, FullHD), приходитса раскрывать на полную - так и задумано?
О как. Надо на винде проверить, я там еще ни разу не запускал.

У меня такое странное поведение из всех програм на ПК только у Макса.
а вот щас обидно было  :cry:


Тот массив значений в спойлере, который кидал тебе до этово - сохранил ево в блокноте, открыл этот текстфайл в твоём редактре, потыкал наугад нули и сохранил. Теперь в блокноте вместо значений - иероглифы. Тоже так должно быть?
Тут бы поподробнее. В идеале – оригинальный файл и проект, чтобы видеть изменения. Ну и интересно, в какой кодировке он у тебя открывается при запуске (видно в строке состояния).

13
Так, я выложил beta 2 с кое-какими апдейтами, включая:
  • настройку цвета нулей в адресной области
  • Функцию 'Fill with' (только щас понял, что забыл переводы, в т.ч. и на русский)
  • Немного поигрался с механизмом загрузки файлов, вроде большие теперь обрабатываются без тормозов

Ага, непросто. Зато хекс можно привести в человеческий вид.
я собирался сделать разбиение на секции с навигацией и цветной подсветкой... но над твоей идеей я подумаю. Отрисовка, особенно на больших файлах может стать лютым геморроем  :wacko:


Этот редактр прям проклят - Марат вот тоже потерял исходники со своими наработками прямо во время активной разработки.
Блин, я пытался чуваку по имени Брайан Бенневиц написать на линкдине, но там вылетает ошибка  0_0

14
На сайте чифнета есть мод translhextion. Он имеет опцию search interval, где выбирается количество байт, которые могут быть между искомыми символами.
Нужно один раз попробовать, наверное.
В ромах для GB, например, я таким образом некоторые строки находил.
Не, смысл я понимаю, но сходу не могу придумать, как это выглядеть должно.

Эх, когда-то я неплохо поработал над Translhextion, исправил почти все баги и добавил пару функций... но был молодой и глупый и исходники никуда не загрузил. Они, соответственно, не сохранились(

15
Ещё не смотрел, но было бы интересно, как это умеет translhextion mod от чифнета:
1. Scan relative с возможностью составления таблицы кодировки по найденному
2. Поиск/скан с интервалом в указанное количество байт
3. Само собой, работа с таблицами 1-2 байта на символ
1. Умеет.
2. В планах. Буду благодарен, если опишешь, как это должно, по-твоему, выглядеть.
3. Умеет.

16
Респект за обесцвеченные нули. Не думал обесцветить их и в левой колонке адресов?
Цвета практически всего настраиваются, как и ширина адресной области. Реквест отдельной настройки цвета нулей в адресной области записал)

Также, не возникала идея добавить киллерфичу - перенос строки на новую в любом месте при нажатии Enter? Ну и добавление отступов Табом и пробелом. Был бы первым таким уникальным хекс-редактром. Я когда-то хотел сделать такой, но пока занят другим.
Звучит непросто с точки зрения реализации. А профит в чем?

Я пока не дома, запустить не могу. Как он работает с большими файлами (под несколько гигов)? Не глючит?
Попробовал на файле в 21 гиг. Сожрал 300 метров оперативки, но ничего тормозить не начало. Поиск или замены будут, разумеется, медленнее, чем для файла в 2Мб.

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

Выглядит круто :thumbup: правда я еще не попробовал. Интересно, есть ли функции:
-выделять текст в редакторе, а то в translhextion выделяются только байты.
-fill with, то бишь заполнение выделенного любым символом, translhextion умеет
-поддерживает ли таблицы, в которых букве соответствует 2 байта
 0_0, я как раз trinea ковыряю, ты делаешь перевод, или просто ради примера скинул?

– Выделение работает синхронно, можно выделять откуда нравится.
– Fill width добавлю, только нужно придумать, как это делать с точки зрения UX.
– Многобайтовые таблицы RTHextion поддерживает
– Trinea попала в примеры из-за того, что чувак с Romhacking.net пожаловался на некорректную работу предыдущего пункта))

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

Тут нужны детали. Какая ОС и сколько ОЗУ. Я сейчас спецом открыл кроме вышеупомянутого файла на 21Гб еще один на 3.7 и оперативки съедено всего 509 метров. Но месседж принял, постараюсь оптимизировать работу с большими файлами.

З.Ы. 010 editor у меня сожрал 200Мб только на этот один файл.

17
Посоны, привет.

Я тут запилил hex-редактор для ромхакинга. Когда-то в начале нулевых я сам использовал Translhextion16c, но где тот траснлхекшн и где нулевые...

Короче, называется он RTHextion (предложения названия получше принимаются) и лежит на гитхабе.

RTHextion доступен на всех основных платформах (под винду на ARM не делал, но если надо – соберем).

Редактор полностью бесплатный и с открытым исходным кодом. Пока выпустил бету версии 2.0.




Скачать можно тут


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

З.Ы. Для модеров: надеюсь, что разделом не ошибся, если что – извинитесь  :biggrin:

Страницы: [1]