Multiple people have made TI-Basic icon editors, including me (IC0NPRO). However, as far as I know, no one has made an icon editor for ASM/C programs. I believe that I figured out a way to edit assembly icons using Celtic CE, so I've been working on my own editor. I think I'm fairly close to getting it to work, and I plan to upload it as a first release once I do - though it won't be ruthlessly optimized in terms of bytes.

Edit: Version 0.1 is now available! Download here
What do you mean by editor, like change existing ASM programs icons, or create ASM icons?
linkjt9 wrote:
What do you mean by editor, like change existing ASM programs icons, or create ASM icons?
Change existing icons. I'm not sure if it's possible to add one without ever causing a crash.

Edit: Version 1 is complete! It's more of a proof of concept at this point, but it works as intended. I'll try to upload it tomorrow.
Posts combined by administrator
This sounds interesting.
Can I use this to edit basic programs? It would be cool to use the full color palette instead of the base colors
kelograph wrote:
Can I use this to edit basic programs? It would be cool to use the full color palette instead of the base colors


Unfortunately you can't, unless a new standard is created for BASIC icons or something using the sprite format that Designer exports into strings (Mostly same as Asm icon format with the exception that it's a string of characters rather than the actual byte values)
IC0NPRO can edit ASM icons, but can be finicky or not save. So far it's worked on everything I've tested, it jus sometimes takes a couple tries.
EmpireL&N wrote:
IC0NPRO can edit ASM icons, but can be finicky or not save. So far it's worked on everything I've tested, it jus sometimes takes a couple tries.
Have you modified the program at all? IC0NPRO isn't supposed to do that.
Weird, it's always just been able to. Could it be a CEltic thing?
I found a bug with the icon shifting tool in which Str1 (where the icon is temporarily stored) is doubled. Running an assembly program with the doubled icon will cause a crash and a RAM reset. I believe the problem lies with the logic used to extract substrings. I'm working on a permanent fix, but in the meantime, you can replace line 136 with
Code:
sub(Str1,1,512→Str9
and the program will function as intended. I hope to work out the problem soon.

EDIT: Turns out the bug was due to an inaccurate parse line. I'm uploading a new version now.
Is it possible to make it create icons for assembly programs with no icons?
As far as I know it's not possible Sad
You can only change existing Icons for assembly programs.
It is somewhere between difficult and impossible. Assembly programs for the TI-84 Plus family are generally assembled into un-relocatable code, that is, code that expects to be loaded at a specific address in memory. The code generally contains calls and jumps to other parts of the code it expects to be at specific other locations offset from that starting address, and generally references data chunks also stored at specific other locations offset from that starting address. If you insert any bytes in front of this code, when it is loaded, it will be jumping into and referencing bytes different than the ones it was designed to, almost certainly causing a crash.

It is possible to write and generate relocatable code, which either (1) only performs relative jumps (i.e., backwards and forwards a certain number of bytes, so it doesn't matter what the starting point is) and uses instruction trickery to figure out where it's loaded, or (2) contains a list of addresses that need to be updated when it's loaded into memory. This is not common with [e]z80 TI programs.
In theory you could just preprend a loader with an icon to the unmodified program. Then when the loader gets run, it copies the program to its original location, overwriting itself. This works even if the assembly is position-dependant because the code ends up at the same address it would have when run normally.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement