Releases: FunkyFr3sh/petool
v2024.11.02
Instructions
- Drag and drop an .exe/.dll on top of petool to create a new patching project
- (.exe only) Check readme.md in the project folder for build instructions
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- New genproxy command - generate proxy dll project directory (Supports drag and drop of 1 dll) - Examples
- Improved genpatch command - does now print more details about unknown bytes
- Shows now proper error messages when a unsupported file is passed (e.g. x64 or .NET assemblies)
- Does not terminate anymore when a error occurred while using drag and drop on windows
- Added license into header files (BSD0)
v2024.10.23
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Added new macros: SETFLOAT, SETDOUBLE
- Removed old macros: LJMP_NOP, LJMP_INT
- New genpatch command - compares 2 executables and generates patch macros (Supports drag and drop)
- Added a workaround for a bug in binutils that could cause some data loss on strip
- A few minor bug fixes and improvements
v2024.07.26
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Does now warn about empty patches and duplicate hooks / conflicting patches
- Added additional error checking to macros
- Ported
@PATCH
and@ENDPATCH
macros to GAS - Renamed winmain.c to winmain.cpp and sym.c to sym.cpp
Note: w64devkit-mini-for-patching.zip / .7z were updated after the release (Download links in readme point to petool/releases/latest, so I have to keep them up-to-date)
w64devkit-mini-for-patching source
v2024.07.09
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Added new
DETOUR
macro (patch.h) - Added new
TRAMPOLINE
macro (setsym.h) - Improved support for the watcom register calling convention
__watcall
:
CALL
macro does now support__watcall
to__cdecl
translationCALL_NOP
macro does now support__watcall
to__cdecl
translation- New
DETOUR
macro with support for__watcall
to__cdecl
translation - New
TRAMPOLINE
macro with support for__cdecl
to__watcall
translation SETCGLOB
macro does now support__cdecl
to__watcall
translation
v2024.04.28
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Added new "setts" command to set TimeDateStamp in FileHeader
- Added new macros for arrays to NASM / GAS datatypes.inc/s
- Readme now contains link to the small .7z file as well
- Fixed a bug with console applications (using correct startup function now, _mainCRTStartup)
- Minor bug fixes and improvements
v2024.04.15
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Added partial port of NASM datatypes.inc to GAS (macros/datatypes.s)
- Added new macro
SETWATGLOB
and macros/watcall.asm for applications built with watcom compiler (See Readme) - Minor bug fixes and improvements
v2024.04.10
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Added new macros (See Readme):
LJMP_NOP
,LJMP_INT
- Improved debug output of
dump
- Several bug fixes and improvements that allow petool to work with more applications
v2024.04.07
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Does have full C++ support now without any manual tweaks
- Several bug fixes and improvements that allow petool to work with more applications
- Added new macros for C/C++ (See Readme):
SETINST
,SETBYTES
,HOOK
,CLEAR_NOP
,CLEAR_INT
- Added new macros for GNU AS:
@SET
,@CLEAR
,@SJMP
.@LJMP
,@CALL
,@CALL_NOP
,@HOOK
,@CLEAR_INT
,@CLEAR_NOP
- Removed the NASM dependency (sym.asm is now sym.c)
v2024.04.01
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Improved makefile for better compatibility with tool kits other than w64devkit
- Should build on macOS with zero-config now as well
- Several bug fixes and improvements that allow petool to work with more applications
Note: To have C++ fully working you'll have to hook WinMain manually, a template for it can be found in start.c
v2024.03.14
Instructions
- Drag and drop an .exe on top of petool to create a new patching project
- Check readme.md in the project folder for more details (w64devkit-mini-for-patching.zip can be found below)
Here's a newly made project that's using petool (Just to show an example): https://github.com/andrews05/EV-Nova-CE
Changelog
- Improved makefile for better compatibility with tool kits other than w64devkit
- Should build on linux with zero-config now as well
- A few other minor tweaks/improvements
Note: To have C++ fully working you'll have to hook WinMain manually, a template for it can be found in start.c