If I understood correctly that you might want to code an iOS application that accesses Dfterm3 then that is possible; however the Dfterm3 currently does not have a well-defined network API that you could write against. If there is interest, I might work on providing something like that.
Or you could continue to attempt to fix the current interface to work better with tablets. If you have code that could be useful for Dfterm3, you can show it to me and I can adapt it.
Yea, that's what I'm suggesting, I'll let you know what I make of it, at the moment all I did was remove the key bindings from playing.js lines 232 onwards and replace them with ones bound to the whole window, from there if you select the chat you can type into that to control the game, but it's not effective, I'm gonna work on an iOS app that access it for fun, not sure what kind of deadline you could expect or whatever so don't hold your breath but whatever I do it's open source and I'll update you guys.
is there anyway to get it to work with windows xp?
Just throwing in my two cents on this, if this works on linux it'd be easy to set up DFTerm3 on a virtual machine, something like VMWare player, that's an all free solution to making it cross compatible.
I use VM's all the time when I want to host something locally without opening any sort of security hole.
This has the downside of VM overhead and the time and effort in installing VMWare player and a distro on that VM, but there are pros to this solution as well, and because DF and DFTerm are entirely processor based and don't need GPU acceleration, VM's will have nearly no problem at all working with them.
On interface issues:Doing some JS work atm to help with the interface just for fun, the code is commented to some degree and should be decently readable.
This is around line 202 in playing.js:
//List of keys to preventDefault() for.
var prevented_keys = [
8, 9, //Backspace, Tab: Text entry and screen control.
32, //Unknown: Unknown.
33, 34, 35, 36, //PgUp, PgDown, End, Home: Navigation.
37, 38, 39, 40, //Arrow keys: Numlock navigation.
112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 123, //Fn Keys excluding F11: Used for Hotkeys system.
];
//List of keys to totaly ignore.
var ignored_keys = [
122, //F11: Makes game full screen on host computer.
];
var key = function(prefix) {
return function(event) {
if (ignored_keys.indexOf(event.which) > -1) return false;
if (prevented_keys.indexOf(event.which) > -1) event.preventDefault();
socket.send(prefix + JSON.stringify(
{ which: event.which
, code_point: 0
, shift: event.shiftKey
, alt: event.altKey
, ctrl: event.ctrlKey }));
}
}
This fixes Function keys to work properly for navigating Hotkey locations in the game, it ignores F11 because by default F11 makes DF full screen on the host computer, which is rather inconvenient, and it seemed more appropriate for F11 to enable full screen on your browser. F12 changes TTF on/off which is handy if you forgot to turn it off when setting up the client.
I'll be taking a look around the GIT page for this, I saw something about canvas on there and that interests me so I might take a stab at that.