added readme and license
[gba_blender] / README.md
diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..82c49ee
--- /dev/null
+++ b/README.md
@@ -0,0 +1,60 @@
+Blender for the Gameboy Advance (not really)
+============================================
+
+I saw a funny video on youtube the other day, of a 3D artist who composited
+blender onto the screen of a GBA, jokingly pretending that he ported blender to
+the Gameboy Advance. Porting blender to the GBA is of course impossible, but
+what he actually showed, a mockup of the blender UI with a 3D cube being
+manipulated is in fact well within the capabilities of the GBA. So I thought it
+would be fun to actually hack his "demo" for real.
+
+Here is the video which kicked this hack off:
+  - https://www.youtube.com/watch?v=BSzM1BvSKUY
+
+The only part which I was unable to reproduce was the cube popping out of the
+screen. That's slightly beyond what the GBA can do, but it could be implemented
+in a subsequent port to the Nintendo 3DS. Instead of that, I've added a second
+3D model, the iconic blender monkey, suzanne. No blender port would be complete
+without it.
+
+Controls
+--------
+The controls mimic the control scheme of the fake GBA blender demo as shown in
+the original video.
+
+  - D-pad: orbit or pan the viewport, depending on the current mode
+  - Start: switch viewport mode between orbit or panning
+  - Select: switch model (cube or suzanne)
+  - A: pop up "delete object" dialog, or bring back object if previously deleted
+  - B: confirm object deletion if the "delete dialog" is currently visible
+  - left/right trigger: pan view left/right even in orbit mode
+
+License
+-------
+Copyright (C) 2021 John Tsiombikas <nuclear@member.fsf.org>  
+
+Blender for the Gameboy Advance is free software. Feel free to use, modify
+and/or redistribute it under the terms of the GNU General Public License version
+3, or at your option any later version published by the Free Software
+Foundation. See COPYING for details.
+
+Download
+--------
+The current release (v1.0) includes full source code, and pre-compiled GBA ROM
+image, and it's available either as a gzipped tarball or a zip archive. Their
+contents are identical, choose whichever is more convenient for you.
+
+  - http://nuclear.mutantstargoat.com/sw/blender_gba-1.0.tar.gz
+  - http://nuclear.mutantstargoat.com/sw/blender_gba-1.0.zip
+
+Build
+-----
+To build this program from source you will need the devkitarm GBA toolchain
+from: https://devkitpro.org
+
+No devkitpro libraries are used other than the GCC C runtime support libraries
+and 1-2 functions from libc. So it should be possible to build with any
+freestanding ARM toolchain (target `arm-none-eabi`) without much effort.
+
+Additionally the `pngdump` tool, which is built as part of the build process,
+depends on *libpng* and *zlib*.