Note: img2dcpu has been updated to v0.8! More info can be found here.
You may have heard of the new game under development by Notch (of Minecraft fame), called “0x10c”. If not, here is a short description of some mechanics of the game from 0x10c.com:
Each ship has a generator capable of producing a fixed wattage, and everything you connect to it drains wattage. A cloaking field, for example, might require almost all the power from the generator, forcing you to turn off all computers and dim all lights in order to successfully cloak.
The computer in the game is a fully functioning emulated 16 bit CPU that can be used to control your entire ship, or just to play games on while waiting for a large mining operation to finish.
I had some free time, so I decided to work on creating img2dcpu – a utility for converting an image into DCPU assembly code for 0x10c. This utility is licensed under a GPLv3 License and the source and Windows binary can be found at: https://github.com/tac0010/img2dcpu
— Description —
img2dcpu allows you to convert a color bitmap image into code that can be used to display the image on the DCPU in Mojang’s new space game, 0x10c. Currently, the specification of the IO system in 0x10c allows for a 32×12-tile screen, where each tile consists of a 4×8 character. img2dcpu can create assembly code that can display a 32×24 color image on the DCPU screen by making use of a custom font, splitting each tile into two square pixels. Future work includes dividing the tile further so that a full 128×96 image can be generated and displayed.
— Usage —
> img2dcpu [imagefilename] [outputfilename]
imagefilename – The filename of the bitmap image that is to be converted.
outputfilename – The filename of the text file that will contain the DCPU code.
If no arguments are provided, the help message will be displayed.
— Limitations —
As of v0.1, img2dcpu can only convert from a 32×24 24-bit color BMP image, but future releases may include other image types and resolutions. Also, img2dcpu uses Windows-only libraries for reading in the bitmap file, so it is not currently cross-platform compatible.
— Contribution —
I hope you can find this work useful, and if you would like to contribute to the developer of this utility, you may send any amount of Bitcoins to this address:
Any amount is appreciated! (more info on Bitcoins at http://bitcoin.org/)