KermM++ for your awsome sourcecoder, as i said earlier, but the emulator (using TI-84+, 2.55MP, zstart and Axe), fails often to transfer data from source coder to it. Only a ram or total reset fixes the issue, but it is really annoying.
Heres a quickfix for Google Chrome users:
Open the Javascript console and paste the following snippet:
Code: fix_zstart = function(){resetcalc(); setTimeout(function(){press_onkey()},500); setTimeout(function(){clickKey(0x46)},1500); setTimeout(function(){clickKey(0x21)},2000); setTimeout(function(){clickKey(0x43)},2500);}
To run it just bind the function "fix_zstart()" to one of the buttons of jstisfied or to one of the ide. Whenever the calc glitches out, enter fix_zstart() into the console or press the button.
And if you want a quick axe compile and run with the fix from above, use this code, paste it in the chrome developer console and bind the function "compile()" to one of the "send to jstisfied" buttons:
Code: function compile(){resetcalc(); setTimeout(function(){press_onkey()},500); setTimeout(function(){clickKey(0x46)},1500); setTimeout(function(){clickKey(0x21)},2000); setTimeout(function(){clickKey(0x43)},2500); setTimeout(function(){sc3js_putfile()},3500); setTimeout(function(){ex=function(pname){list=ti_common_get_listing();if(list.length == 0)return false;else if(list.length == 1&&-1==list[0][0])return false;else for(line in list){data=list[line];size=data[0]+256*data[1];name="";if(data[3]==78||data[3]==84) {for(i=3;11>i;i++)if(data[i] > 0)name+=String.fromCharCode(data[i]);else break;if(pname == name)return size;}}return false;};if(ex(proj.files[proj.projectCurIdx].name)){setTimeout(function(){clickKey(0x36)},1000); setTimeout(function(){clickKey(0x02)},1500); setTimeout(function(){clickKey(0x42)},2000); setTimeout(function(){clickKey(0x31)},2500); setTimeout(function(){press_onkey()},3000); setTimeout(function(){clickKey(0x61)},3050);}else{alert("Compilation failed!")};},8000);}
when you click the button or run the command it will send the current file to the calc, fix it, compile the current file and run it
and heres the same thing as above but for projects (the currently open file will be the start file)
Code: function compile_proj(){resetcalc(); setTimeout(function(){setTimeout(function(){press_onkey()},500); setTimeout(function(){clickKey(0x46)},1500); setTimeout(function(){clickKey(0x21)},2000); setTimeout(function(){clickKey(0x43)},2500); setTimeout(function(){sc3js_putproj()},3500); setTimeout(function(){ex=function(pname){list=ti_common_get_listing();if(list.length == 0)return false;else if(list.length == 1&&-1==list[0][0])return false;else for(line in list){data=list[line];size=data[0]+256*data[1];name="";if(data[3]==78||data[3]==84) {for(i=3;11>i;i++)if(data[i] > 0)name+=String.fromCharCode(data[i]);else break;if(pname == name)return size;}}return false;};if(ex(proj.files[proj.projectCurIdx].name)){setTimeout(function(){clickKey(0x36)},1000); setTimeout(function(){clickKey(0x02)},1500); setTimeout(function(){clickKey(0x42)},2000); setTimeout(function(){clickKey(0x31)},2500); setTimeout(function(){press_onkey()},3000); setTimeout(function(){clickKey(0x61)},3050);}else{alert("Compilation failed!")};},15000);},1000)}
You can use both at a time. If you only change the main file, use the compile() function and if you change other files use the compile_proj() function.
And I suggest to add the abelicities to it:
- be able to quickedit sprites that are a multiple of 8 but not square
- show a table for Axe data fields (popup) with a selectable width so that you can edit your data easier than making such a chart on a piece of paper or Excel and then transfering.
- the on key of the calculator really needs a physical keybind, especially for axe-development.
--Muessigb