Hey guys, been working on a project lately. First calc project in probably 4 or 5 years Very Happy
I wrote an assembler and virtual machine for a uni project, and thought it would be fun to fiddle around with an on-calc assembler. I remember using mimas on the Ti-84, since I didn't have a computer to program on and transfer files. I know mimas is a very very packed program, and I don't think I intend on having quite the full featured editor that that provided.
However, I'm having fun and will keep adding more and more things.

Done:
=on calc text editor
-Alpha, loweralpha, and "normal" button modes
-Clear copies to buffer (will eventually have paste)
=2 pass assembler (LOADS MORE TODO)
-Loads symbol tables correctly from D1A881 base
-Gets symbol table values and inserts them little endian style
-Dissects opcodes for specific 2 byte code (i.e HL, xx & H, x)
-Converts .db strings into hex
=Creates the program and writes data

Screeny


------------------------------------------------------------------------------------------------------------
Todos:
=Text editor
-Options: -Add text scale option
-Colored syntax highlighting
-non-alphanumeric symbol picker
-Paste: The clear button does copy to a buffer, just haven't added a key to paste it back
=Open vars: Need to add the capability to open and save to appvars, the example program is
currently in static memory
=All opcodes
-I have only added the 3 opcodes (LD HL, xx; call xx; ret) That I needed for the example program
Very Happy
=Address
-Addresses of calls added, currently only have _Puts
I am very much looking forward to this. I love programming on-calc, and currently the most powerful thing is ICE (or hex assembly) This would make assembly programming on-calc so much easier. Please keep going with this!
So, in the spirit of mimas (mostly because I think the gui is great), I decided to do my program similarly.
Currently implementing a labels table (heh), that shows a list of current labels in your program.



Working on the different label options,
Paste: Pastes selected label into the program at current line
Jump: Jumps to where label is defined
Replace: Replaces all occurrences of the label in the program with the new name

What are some other options I should add for labels specifically?
Wow, coming back with a vengeance, zeldaking; good for you! An on-calculator ASM editor/compiler for the ez80 calculators is definitely something that we see requested quite a bit. I'm afraid I can't think of anything else you should offer users to be able to do with labels!
Just getting around to seeing this now, unfortunately. The project looks very good, zeldaking, there seems to be impressive progress already (looks like the assembler, text editing, and a good portion of the GUI are already working, at least partially?).

As for the label options, I might like to see a "find all" option, to go along with the replace all one, possibly with some kind of highlighting as well. If you could extend this to arbitrary strings as well, to support more of a complete find/replace feature, I'd consider that a worthy addition as well, although I'm not sure if it would be practical or useful to add. I can't think of anything else at the moment, however.

Keep up the good work, I'm looking forward to seeing more updates on this, as we don't really have a good graphical assembly IDE/assembler on the CE (there's BASM-3, but that doesn't have as nice of an interface). Keep us updated!
Great project! Very Happy
I would really like to learn ez80, but there was no way to do it oncalc (yet), so I used ICE until now...
  
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 GMT - 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