Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zoomten/furnace2asm
Converts Furnace 0.6pre2+ project files to pokecrystal ASM, plus a nostalgia-miner's UI
https://github.com/zoomten/furnace2asm
Last synced: about 6 hours ago
JSON representation
Converts Furnace 0.6pre2+ project files to pokecrystal ASM, plus a nostalgia-miner's UI
- Host: GitHub
- URL: https://github.com/zoomten/furnace2asm
- Owner: ZoomTen
- License: mit
- Created: 2023-08-06T14:38:41.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-04-13T03:45:42.000Z (7 months ago)
- Last Synced: 2024-04-13T16:46:46.246Z (7 months ago)
- Language: Nim
- Homepage:
- Size: 2.44 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Furnace2Asm
I rewrote [fur2pret](https://github.com/ZoomTen/chipstuff/blob/master/furnace/fur2pret.py) in Nim rather than continuing [chipchune](https://github.com/ZoomTen/chipchune/). :(
After making [OctoMap](https://github.com/ZoomTen/OctoMap), I [nostalgia-mined](http://archives.somnolescent.net/web/mari_nc2/essays/nostalgiamining.html) some more and attempted to make one of those fancy GBA binary tooling apps but for Pokémon disassembly hacking. I tried to approximate the look and feel of [Advance-Text](https://www.romhacking.net/utilities/427/) here because damn, that's some design work for such a simple tool.
Anyway, it functions about the same as the previous Python version (plus the ability to export for both old and new pokecrystal macros) but it **only supports module versions 127+**, so you'll have to use Furnace versions starting from (and including) **0.6pre2**. Unless of course, I write support to deserialize the <127 instrument format.
Make sure to click the Help button for more info :p
![](docimg/app.png)
## Building
Dependencies:
* [Nim](https://nim-lang.org/) 1.6.0+
* Nimble (should come with Nim)to build CLI only (all platforms):
```
nimble makeRelease
```
to build GUI only **(Windows only!)**:
```
nimble -d:withGui -d:guiOnly makeRelease
```
to build both **(Windows only!)**:
```
nimble -d:withGui makeRelease
```
Cross compiling (works on my machine):
```
nimble -d:withGui -d:mingw makeRelease
```