vector-man / ips-peek Goto Github PK
View Code? Open in Web Editor NEWIPS Peek is an IPS patch (International Patching System) exploration and testing tool.
License: GNU General Public License v3.0
IPS Peek is an IPS patch (International Patching System) exploration and testing tool.
License: GNU General Public License v3.0
Replace the current hex viewer with
WpfHexEditorControl: https://github.com/abbaye/WpfHexEditorControl
This will allow for more features and finally allow for an easier path to Thingy table support (it's built in to the control as a feature).
Currently, multiple highlight support now exists. A control swap should be easier now. I need to ensure all features are supported before I switch the control.
Hi, when trying to launch an emulator within the app, nothing happens. I have framework 4.7.2 installed and my IPS which I'm trying to test.
Your feedback is appreciated!
Support for patch block comments. This will allow you to write little comments about various parts of modified data in patch files.
Currently, only classic IPS patches are supported. I should add support for opening IPS32 patches too.
Currently does not support .bps files.
Add ability to write documentation for data in files and patches.
In order to get IPS Peek running on other platforms, it will need to be migrated to another UI framework (dropping Windows Forms.) I have decided to settle on Avalonia as the framework.
Migration will occur sometime after the rewrite with ReactiveUI. But it may not be immediate, depending on user demand.
Update (5/29/2023):
Avalonia will eventually allow for Mac, Android and web support. Right now, the Avalonia GUI is very work-in-progress.
Steps to be taken:
Allow for ranges of bytes to have notes.
So, the idea is: you can select a range of bytes and create a note from that range. It can be used for documentation.
There will be a note list added to the user interface to support this.
Allow modified patches to be exported as IPS patches. Modified means that some of the patch records are unchecked in the patch records view.
Allow for the work to be saved, automatically, when the application is closed (similar to how code editors, such as VS Code function.)
Allow for the loading of Thingy tables for the hex viewer
As it currently stands, IPS-Peek is a bit cryptic in areas and lacks documentation. The UI should be improved to make it easier to understand, without having to go to the documentation.
The plan:
PAT (standing for patch by the way) and RLE (run-length encoded patch) in the list should be removed. Instead, going with "Patch Type": "Regular" and "Run-Length Encoded" or something similar.
Add labels for some cryptic buttons.
Possibly update the icon pack (but I actually like the silk icons) any fans?
As-is the project doesn't actually build. So, I now plan to:
Currently, there's no documentation available; It should be created.
I'm currently looking for help in adding a multi-format algorithm I've created.
Due to health reasons, I'm unable to code it up myself. But I'll post it on here and maybe someone else can help add it.
Upgrade the project to . NET 6, dropping .NET Framework 4x support.
Windows 7 SP2 or greater will still be supported.
I should migrate all UI code to ReactiveUI and use MVVM, while refactoring as appropriate.
As future plans are to get IPS Peek running on other platforms, I've decided to eventually migrate the project to Avalonia. The only hex editor I've found that works with Avalonia (as well as WinForms) is Droppers/HexEditorControl: https://github.com/Droppers/HexEditorControl
It is currently under development, but appears to be the best route to get IPS Peek on more platforms.
The project will be switching from Windows Forms to Uno: https://platform.uno/
This will allow for IPS Peek to work on Windows, Mac, Linux, Android, and in the browser.
No major new features will be added until this issue is completed.
Allow for multiple tabs, with loaded data.
Hi,
would be nice to add support for old floppy-based copiers in order to make an IPS patch originally created for a specific copier compatible with another copiers :)
Use case:
Consider the ROM of Pilotwings (a game with DSP1 chip).
Copiers like Super Wild Card or Double Pro Fighter can boot any DSP1 game with Super Mario Kart cartridge inserted on top of the copier, acting as a passthrough DSP1 chip. The only exception is Pilotwings, which requires a patch in order to accept Super Mario Kart as a passthrough chip.
The DSP patch for Pilotwings can be found here: https://dbwbp.com/images/SWCDX2FAQ/files/pilotcrk.zip
This patch was originally created for Super Wild Card copier, as the readme file suggests. The objective is to replace the header data involving Super Wild Card with the data of another copier (e.g. Double Pro Fighter, Super Pro Fighter, etc... ), making the IPS patch compatible with other copiers.
Thank you!
I believe switching the configuration file format from JSON to TOML will make it easier to tweak for users, if they need to. Official TOML library: https://github.com/toml-lang/toml
.NET libraries:
Tomlyn: https://github.com/xoofx/Tomlyn
Tomlet: https://github.com/SamboyCoding/Tomlet
I prefer the look of Tomlet's API out of the two.
Add projects support, for changes to be saved.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.