about summary refs log tree commit diff stats
path: root/README.md
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2017-09-30 19:53:07 -0400
committerKelly Rauchenberger <fefferburbia@gmail.com>2017-09-30 19:53:07 -0400
commit9842caa5b6e56af78c0bd875b2dc33fb77f2bb36 (patch)
treeb35ab41701cbcd1f772f6d1f4b5edde70867133b /README.md
parenta9c1db20aa6a46616b2c38e5dd391aa697f9110a (diff)
parent26c17495dd1160e10eb5b2244adf01ce90521088 (diff)
downloadgen3uploader-9842caa5b6e56af78c0bd875b2dc33fb77f2bb36.tar.gz
gen3uploader-9842caa5b6e56af78c0bd875b2dc33fb77f2bb36.tar.bz2
gen3uploader-9842caa5b6e56af78c0bd875b2dc33fb77f2bb36.zip
Merge branch 'master' of github.com:hatkirby/gen3uploader
Diffstat (limited to 'README.md')
-rw-r--r--README.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/README.md b/README.md index cd3c925..dfe121b 100644 --- a/README.md +++ b/README.md
@@ -1,5 +1,5 @@
1# Pokémon Gen 3 Uploader 1# Pokémon Gen 3 Uploader
2A Wii homebrew app that reads data from a third generation handheld Pokémon game (Ruby, Sapphire, Emerald, FireRed, LeafGreen), and uploads it to a website for viewing. It does this by sending a multiboot binary to the GBA using the different multiboot protocol researched by Wack0 (whose repository this is forked from). 2A Wii homebrew app that reads data from a third generation handheld Pokémon game (Ruby, Sapphire, Emerald, FireRed, LeafGreen), and uploads it to a website ([hatkirby/pokeviewer](https://github.com/hatkirby/pokeviewer)) for viewing. It does this by sending a multiboot binary to the GBA using the different multiboot protocol researched by Wack0 (whose repository this is forked from).
3 3
4This came about when I wanted a way to show off the Pokémon I've raised on my website. I could have just used a tool to dump the save file and then written a script to extract data from it, but I wanted to do something more complicated, and came across the research done by Wack0. Thus I was able to turn this project into a great learning/research experience. 4This came about when I wanted a way to show off the Pokémon I've raised on my website. I could have just used a tool to dump the save file and then written a script to extract data from it, but I wanted to do something more complicated, and came across the research done by Wack0. Thus I was able to turn this project into a great learning/research experience.
5 5
@@ -7,10 +7,10 @@ The multiboot image that the Wii sends to the GBA is executed in the context of
7 7
8One of the main reasons that I chose to use this method to extract save data from my GBA games is that I'm very concerned about the "legitimacy" of my Pokémon experience. I don't want to be able to do anything with my saves that could be considered cheating. Thus, the multiboot image only sends to the Wii information that is publicly visible using the game's interface. For instance, the Wii never receives a Pokémon's IVs, EVs, or full personality value. The GBA multiboot image derives all the necessary information (stats, Nature, gender, shininess, Unown letter, etc) from those values, and then sends that over the connection. In this way, this private information never leaves the context of the GBA's code. 8One of the main reasons that I chose to use this method to extract save data from my GBA games is that I'm very concerned about the "legitimacy" of my Pokémon experience. I don't want to be able to do anything with my saves that could be considered cheating. Thus, the multiboot image only sends to the Wii information that is publicly visible using the game's interface. For instance, the Wii never receives a Pokémon's IVs, EVs, or full personality value. The GBA multiboot image derives all the necessary information (stats, Nature, gender, shininess, Unown letter, etc) from those values, and then sends that over the connection. In this way, this private information never leaves the context of the GBA's code.
9 9
10This project is still in active development, and is not yet ready to be used. 10The project has reached a fairly stable point, but has a fairly poor interface, and is missing some things that would be needed before an initial release, such as authentication.
11 11
12# Compiling 12# Compiling
13`gen3uploader` depends on wolfSSL in order to negotiate HTTPS connections. The main branch has a couple of minor problems that prevent it from working with this project right out of the box, so for now you should use the [devkitpro branch in hatkirby/wolfssl](/hatkirby/wolfssl/tree/devkitpro). 13`gen3uploader` depends on wolfSSL in order to negotiate HTTPS connections. The main branch has a couple of minor problems that prevent it from working with this project right out of the box, so for now you should use the [devkitpro branch in hatkirby/wolfssl](https://github.com/hatkirby/wolfssl/tree/devkitpro).
14 14
15In order to compile wolfSSL, first ensure your $DEVKITPPC environment variable is set. Then, assuming that $GEN3UPLOADER points to your `gen3uploader` repository, you can run the following commands: 15In order to compile wolfSSL, first ensure your $DEVKITPPC environment variable is set. Then, assuming that $GEN3UPLOADER points to your `gen3uploader` repository, you can run the following commands:
16 16
@@ -25,7 +25,7 @@ cp -r wolfssl $GEN3UPLOADER/vendor/include/
25From there, you should be able to run the `build.sh` script in the `gen3uploader` project to compile everything. 25From there, you should be able to run the `build.sh` script in the `gen3uploader` project to compile everything.
26 26
27# Usage 27# Usage
28Have a GC Controller in Port 1 and a GBA with Gen3 game in Port 2. Run the Wii program, and follow the instructions. The connection is not very stable, and it can take several tries for the program to run successfully. 28Have a GC Controller in Port 1 and a GBA with Gen3 game in Port 2. Run the Wii program, and follow the instructions. Occasionally, the Wii can fail to initiate the connection to the GBA, but is very likely to work within a few tries.
29 29
30# Acknowledgements 30# Acknowledgements
31Thanks to FIX94 for your [multiboot game dumper](https://github.com/FIX94/gba-link-cable-dumper), which the multiboot code is loosely based on (differences in crypto & protocol). Thanks to Wack0 for [reverse-engineering the gen 3 "different" multiboot protocol](https://github.com/Wack0/gba-gen3multiboot). 31Thanks to FIX94 for your [multiboot game dumper](https://github.com/FIX94/gba-link-cable-dumper), which the multiboot code is loosely based on (differences in crypto & protocol). Thanks to Wack0 for [reverse-engineering the gen 3 "different" multiboot protocol](https://github.com/Wack0/gba-gen3multiboot).