Author Topic: Mimas - an on-calculator assembly IDE  (Read 22226 times)

0 Members and 1 Guest are viewing this topic.

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Mimas - an on-calculator assembly IDE
« on: December 17, 2012, 09:58:12 pm »
I've released version 0.4 of Mimas, an on-calculator IDE for writing assembly programs on the TI-83+/84+.

First, this release fixes a number of long-standing bugs and annoyances:

 - incorrect definition of fullScrnDraw
 - plotLoc flag should be cleared upon exiting
 - div/mod operators
 - detection of dependency loops
 - archive-on-exit when multiple programs were edited
 - support for IFDEF/IFNDEF in asmto8xv

Second, I've made a few improvements to the conversion tools:

 - use a default output filename for 8xvtoasm (instead of standard output)
 - prompt before overwriting output files
 - asmto8xv accepts options --case-sensitive, --preserve-case, and --fold-case

And third, I've added some new features in the form of "plugins":

 - library symbols menu
 - instruction info popup
 - scroll bar

The plugin concept is something of an experiment.  The idea is that this way I can add new, optional features, while keeping the base application the same size.  I'm interested to see what folks think of this - is it too complicated?  Is it worth the (not insignificant) extra effort of continuing to add features this way?

As always, I welcome your comments, suggestions, bug reports, flames, etc.

Offline Sorunome

  • Fox Fox Fox Fox Fox Fox Fox!
  • Support Staff
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 7920
  • Rating: +374/-13
  • Derpy Hooves
    • View Profile
    • My website! (You might lose the game)
Re: Mimas - an on-calculator assembly IDE
« Reply #1 on: December 17, 2012, 10:11:01 pm »
wow, pretty nice, maybe i should start trying to learn asm again >.>

THE GAME
Also, check out my website
If OmnomIRC is screwed up, blame me!
Click here to give me an internet!

Offline TheNlightenedOne

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 427
  • Rating: +16/-1
    • View Profile
Re: Re: Mimas - an on-calculator assembly IDE
« Reply #2 on: December 17, 2012, 10:45:51 pm »
Woot, gotta transfer this to my calcs soon. Looks great!
"Eris" (Ndless 3.1)
"Keto" (Ndless 3.1)
"Luna" (AMS 3.10, HW4)
"Aurora" (2.55MP)

Offline Matrefeytontias

  • Axe roxxor (kinda)
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1982
  • Rating: +310/-12
  • Axe roxxor
    • View Profile
    • RMV Pixel Engineers
Re: Mimas - an on-calculator assembly IDE
« Reply #3 on: December 18, 2012, 02:35:48 am »
I use Mimas since two years, so keep it this way :D ! And all the features you described really look useful !

Offline aeTIos

  • Nonbinary computing specialist
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3915
  • Rating: +184/-32
    • View Profile
    • wank.party
Re: Mimas - an on-calculator assembly IDE
« Reply #4 on: December 18, 2012, 03:45:03 am »
Craps. I blew up my link port so I cannot send this D:
Oh and another request you might add in a next release: Empty lines. I find it quite useful if you can add empty lines to organize your code. :D
I'm not a nerd but I pretend:

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #5 on: December 18, 2012, 03:50:36 am »
aeTIos, you can create a comment with no text by just typing a semicolon. It's what I do.

I find that creating a simple program in Mimas to test something is faster than creating it on a computer and sending it over. Certainly, an in-system assembler is useful, if not always pleasant.

You might consider making the C000h limiter more flexible, by allowing one to define any address. This would be useful for making applications and for program only intended for the TI-83+SE/TI-84+/SE, which allow code up to 0C3FFh.
« Last Edit: December 18, 2012, 04:33:13 am by DrDnar »
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #6 on: December 18, 2012, 04:47:24 pm »
I'm not opposed to the idea, but I'm pretty sure you're reading that wrong.  It's not that execution is allowed on page 80, but that it would be allowed in the first kilobyte of page 82 if the execution limits did not wrap around at 32k (see port 21.)

It's not at all difficult to run large programs on the SE/84+: you can temporarily copy page 80 to page 83 and set port 5 to 3.  Of course, you can't use the system USB routines, and of course you need to restore the app base page table afterwards.

Blank lines: visually, I kind of like the use of blank comments instead, since they show you that there's something there (like the colons at the start of lines in the BASIC editor, if you see a semicolon at the bottom of the screen you know there's more to come, but if it's a blank line you know you're at the end of the section.)  UI-wise, maybe it would make sense for pressing Enter/Ins to automatically create a blank comment (if you don't type anything else.)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Mimas - an on-calculator assembly IDE
« Reply #7 on: December 18, 2012, 07:16:16 pm »
Blank lines: visually, I kind of like the use of blank comments instead, since they show you that there's something there (like the colons at the start of lines in the BASIC editor, if you see a semicolon at the bottom of the screen you know there's more to come, but if it's a blank line you know you're at the end of the section.)
I'd never thought of doing that :P Thanks for the tip.

Mimas is one of my favorite apps (it's either Mimas or Calcsys or Axe for me). IMO it's got one of the most polished UIs I've seen so far. Glad you're working on it and can't wait to see what happens next :)
« Last Edit: December 18, 2012, 07:16:22 pm by Deep Thought »




Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #8 on: December 18, 2012, 07:22:14 pm »
I'm not opposed to the idea, but I'm pretty sure you're reading that wrong.  It's not that execution is allowed on page 80, but that it would be allowed in the first kilobyte of page 82 if the execution limits did not wrap around at 32k (see port 21.)
Ah, you're right.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline Runer112

  • Moderator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #9 on: December 18, 2012, 07:25:39 pm »
I would just like to remind people that making all of $C000-$FFFF executable is entirely possible. For example, see Fullrene.
« Last Edit: December 18, 2012, 07:27:35 pm by Runer112 »

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #10 on: December 18, 2012, 09:09:17 pm »
And I would like to remind everyone that unlocking flash is dangerous and not to be done lightly.  But that's a discussion for another time and place.

Offline GinDiamond

  • LV3 Member (Next: 100)
  • ***
  • Posts: 71
  • Rating: +2/-2
  • I dont always fail at life, but when I do, I dont
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #11 on: January 21, 2013, 04:29:06 pm »
I like Mimas, I think it is the best on-calc asm editor (other than the AsmPrgm, which has TOTAL functionality at the cost of nonlegibility)

I like the plugin idea, you can add some sweet stuff with that!

Could someone make a plugin for Mimas that's basically the Asm in 28 Days tutorial, so I could read asmin28days on-calc and on the go/at school with no computer?

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #12 on: January 21, 2013, 04:35:26 pm »
Wow, how did I not see this update! Mimas does indeed have a very well made interface and I definitely like to use it for the more complicated pieces of code. I can't wait to give it a try.

Offline NanoWar

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 140
  • Rating: +18/-6
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #13 on: January 22, 2013, 05:21:21 pm »
BTW is Mimas bootstrapped? :P Just wondering...

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: Mimas - an on-calculator assembly IDE
« Reply #14 on: January 22, 2013, 05:28:43 pm »
Could someone make a plugin for Mimas that's basically the Asm in 28 Days tutorial, so I could read asmin28days on-calc and on the go/at school with no computer?
Moody's Flash Book app is, perhaps, the best e-book reader for the TI-83+ series.

BTW is Mimas bootstrapped? :P Just wondering...
No, Mimas is written for ZDS. I don't think Mimas could build a 2-page app at once due to memory limitations. It also doesn't support directly writing to flash. It's certainly possible to build and sign apps on-calc, but he seems unlikely to implement such functionality since he seems to think screwing with flash is too dangerous.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC