lanhikari22 / bn6f-modding Goto Github PK
View Code? Open in Web Editor NEWA C modding project of MegaMan Battle Network 6 Cybeast Falzar using the bn6f disassembly project
A C modding project of MegaMan Battle Network 6 Cybeast Falzar using the bn6f disassembly project
This should encapsulate a file within the ROM, so that operations can be defined on it such as disassembling it.
For now, onTimer would have a specified number of frames to count down from. It will execute once evert N number of frames. Technically, though, I am not 100% positive the injection is executed once a frame. It is very close, though, or maybe even faster. So this code will be defined as executing once every N turns.
The ldscript has to be manually modified whenever you want to add logic or data in an arbitrary location.
Enter the Slinker! Its purpose it to automate management of relinking functions and data from binaries! This will make linking data and functions from ROM into separate files a more slinky task
Here's a list of commands defined in the Slinker script (*.sls files):
link(sub_084A0000) ; this will obtain the function sub_084A0000, export it into sub_084A0000.s, and
; modify the ldscript to link it at location 0x084A0000 when compiling! If the function
; has any xrefs, intermediate symbols will be created for them so all function calls/data
; references work as expected!
intercept(sub_084A0000, 0x08900000) ; this will add a hook at location 0x084A0000 and longjump to
; 0x08900000, where it will redo overwritten logic. A file incpt__sub_084A0000.s will be created
; and linked for implementing intercepting logic.
redirect(sub_084A0000, 0x08900000) ; this is like intercept, except the function returns right after the
; interception. additionally, the whole logic of the function is written at redir__sub_084A0000.s
link_m(moduleName) ; this is like link, except it includes ALL functions that start with
;'moduleName_'. Instead of seperate .s files, they are included in one file: 'moduleName.s'
intercept_m(moduleName, 0x08900000)
redirect_m(moduleName, 0x08900000)
This should have a linked list of malloced variables. As well as some other datastructure, or perhaps some sort of format that keeps track of the actual data each node points to.
Suggested by andy64734!
onEvent would trigger on a change in some RAM value, while onState would trigger on a change and when the RAM value matches some constant!
This'll be great for logic that executes for some time once per frame, but then automatically deactivates for some time before it reactivates itself!
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.