pret / pokediamond Goto Github PK
View Code? Open in Web Editor NEWDecompilation of Pokémon Diamond/Pearl
Decompilation of Pokémon Diamond/Pearl
Currently we do not have an asm() way to insert asm as else branches for declaring Nonmatchings. We don't have any tricky nonmatchings (yet) but we can't avoid them forever.
https://github.com/ProjectRevoTPP/pokediamond-1/tree/asm_processor
I have a partially working altered preprocessor, but it does not yet inject asm successfully yet. Once it works, we can just do this:
void MyCode(void) {
//...
}
// skipped function
#pragma GLOBAL_ASM("asm/mypath/myfunction.s")
#ifdef NONMATCHING
void MyNonmatching(void) {
//...
}
#else
#pragma GLOBAL_ASM("asm/mypath/MyNonmatching.s")
#endif
We need a robust, sustainable solution that doesn't involve splitting files up at compile time since it is not yet known if mwcc is susceptible to file splits for nonmatchings.
Made for tracking this
replace FUN_ with sub_
replace MOD with ov
change file structure to match HGSS (e.g. src and sub)
remove ARM_FUNC and THUMB_FUNC and replace with code16 and code32 like pokeheartgold has
all for a more consistent gen 4 decomp experience
sound data to midi, palettes and graphics to png etc.
bin files in narcs need clasification (extensions)
As a temporary go-between prior to decomping the cw libs to C/C++. Will allow the removal of the -nodead
linker flag which, in turn, will let us finally real-match math_util.c
.
I'm not entirely sure how it calculates the pointers, but they are extremely inaccurate, consider a more granular approach to this
Hey everyone
It's been a while
as I have no way to contact most maintainers directly or mods of the pret server apart from here, I have opted to create an issue, even though this may not be the most appropriate place
with the duration of this project, I have invested a lot of time and effort into it, and I would ideally like to continue doing this, however, as I am not in the pret server anymore, I feel as if I may miss important policy decisions
I guess in the end it's up to the maintainers of this project. I feel as if I have valuable skills and motivation which is desperately needed to continue pokediamond, as very little to no progress has been made since my last merge.
I still maintain that I didn't do what I have been accused of, and I am greatly sorry if my presence upsets or makes people uncomfortable, but I would, if possible, like to continue contributing
please let me know
red031000
subset of #87
current progress:
What are we gonna do to disassemble the code?
A continuation of #7
Create C definitions of all OS* functions.
All methods defined in C will also have inline ASM copied from the dump, which will be applied if MATCH_ASM
is defined.
List of OS* methods found:
HG uses gSystem
gSystem better
can't do now because there's like 10000 entries for it
do it later
libsyscall.a is distributed somehow in the first 0x800 bytes of the ARM9 secure region (secure.s). How does this happen?
I'm looking to use radare2 to help decompile this game. I want to be able to auto-name and type function signatures with stuff that has already been decompiled, but the C functions don't indicate what address the function originally came from.
This is something far off, and probably requires #87 since Pearl shifts most of the data.
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.