Well, it currently uses Win32 and OpenGL.
So, if someone wanted to make a SDL version, it should run just about anywhere, and as it is, is probably runs well under wine and likely works with at most a recompile on 64 bit windows.
It also has a save format that is only 8 + (9*tiles) bytes, although if I cut out the unused alpha byte, it could drop to 8 + (7*tiles), and if I didn't use the full RGBA, and only limited it to the 256 colours easily accessable(as in, available from within the program, while all other 4294967296 possibilities for each of the foreground and background only available through hex editing... Hey, why not add custom RGB selection as a feature, too?), then it would only take 8 + (2*tiles) bytes per save.
Each tile is an 8x12 character, but since the save format is resolution-independant, the font can be changed at any time, even to a graphical tileset, and it could be added that the tile size is inferred from the tileset image.
If you want to try it, I've uploaded it
here.
It has no help file, no help command, and no intuitive interface(except maybe left click to draw, escape to instantly quit).
This is quite complex...
Clicking and dragging are identical in functionality.
Holding Shift shows the character menu. Left click to select the character you want to use.
Holding Shift and Control shows the colour menu.
Basically, shift shows menus.
Holding Z makes it only alter the character when drawing.
Holding Contol makes it only alter the colour.
Holding both Control and Z opens the swap space, an autoloaded, autosaved image where you can put your most used character/colour combinations.
Right click, rather than drawing, on the regular and swap space views will instead copy the character to be the current one. on the main editing view, Control or Z can be used to restrict what aspect is copied.
S opens the save dialogue(but an unfixed issue is that the save dialogue changes the directory, so the swap space will save in the directory of the last saved image if you ever open the dialogue instead of the program directory)
L opend the load dialoge, likely with the same issue as the save one.
F will, rather than drawing a character, start a floodfill, unaltered by Control or Z, and only applicable on the main view. It only overwrites characters identical to the clicked one, in terms of both colour and symbol., and will not floodfill with the exact same character as the one that it is overwriting.
The arrow keys add a row/column to that edge of the image. If space is held, it instead removes a row.
As you can see, it needs much work, in every aspect, especially the controls.
The colour scheme is actually not identical to DF's, as it allows colours DF treats as foreground only to be used as background colours.
To alter the dimensions of the swap space, you must make a copy of the swap space file, alter it as a regular one, and then save it. Once all instances of the program are closed, you must then copy it back over the swap space file.
Oh, and finally, two images are included. ONe is a font that I have been making myself, and the other is an old copy of DF's. DF's is appended with _old, since I never bothered to alter the font naming scheme.
Source code is available, but reccomended against, as I have a bit of a habit of utilizing coments soley for excluding code from compiling