faucon aims to provide a comprehensive tooling suite for the Falcon microprocessors, including an assembler, a disassembler, a CPU emulator for debugging purposes, and documentation on the architecture. For the time being, faucon explicitly targets the fuc5 generation of these MCUs.
See the wiki for architecture documentation.
-
faucon-asm-derive
: Internal implementation details offaucon-asm
-
faucon-asm
: A crate for processing Falcon assembly, providing binary disassembling capabilities -
faucon-emu
: Implementation of the CPU functionality for emulation -
faucon
: Command-line interface for invoking and driving the provided tools -
examples
: Assembly examples on programming the Falcon hardware
Coming soon.
The project is in a very early state and WIP. Contributions are welcome.
Contributions to code and documentation are heavily appreciated, may it be a bug fix, a new feature, or improvement of the code or wiki documentation.
Feel free to join the ReSwitched Discord server and
reach out to Vale#5252
in either #faucon or #switch-hacking-meta.
-
Marcelina Kościelnicka and contributors for the envytools project and the Falcon LLVM backend insight
-
Switchbrew contributors for the TSEC wiki page
-
Thog and hthh for the ghidra-falcon project
faucon is distributed under the terms of either the Apache License (Version 2.0) or the MIT license, at the user's choice.
See LICENSE-APACHE and LICENSE-MIT for details. Contributions to the faucon project must be made under the terms of both licenses.