Omnimaga

Calculator Community => Other Calculators => Topic started by: Broseph Radson on October 02, 2010, 11:12:45 am

Title: Mimas by Benjamin Moody
Post by: Broseph Radson on October 02, 2010, 11:12:45 am
Have you seen this??  :o

Looks pretty cool, although i dont use Asm. Ive tried using some on calc assemblers, and this one looks better than most, and its an app.

It was just uploaded yesterday:

http://www.ticalc.org/archives/files/fileinfo/431/43140.html (http://www.ticalc.org/archives/files/fileinfo/431/43140.html)
Title: Re: Mimas by Benjamin Moody
Post by: thepenguin77 on October 02, 2010, 11:41:11 am
Wow, this is really nice. It works almost exactly like a computer compiler. One of the great features I've found so far is all the shortcut menus. i.e. Apps puts in "BCALL" and then brings up a list of all the bcalls.

I will definitely be using this in school to make quick asm programs.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 02, 2010, 12:08:22 pm
:o That is awesome!

Finally a working assembler in ASM ... too bad Mosaic isn't out yet, though.

And nice find!

EDIT: Too bad it's two pages, though.

EDIT: Code sections! That is epic!
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 02, 2010, 12:11:53 pm
awww, crap, I was going to make this topic :(

anyways, yeah, it looks good! I found it earlier today
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 02, 2010, 12:23:06 pm
0.1, though... Are there any known bugs?

EDIT: And he should really change "compile" to "assemble" :P
Title: Re: Mimas by Benjamin Moody
Post by: souvik1997 on October 02, 2010, 12:27:59 pm
awww, crap, I was going to make this topic :(

anyways, yeah, it looks good! I found it earlier today

You mean I found it
:P
Title: Re: Mimas by Benjamin Moody
Post by: thepenguin77 on October 02, 2010, 01:38:39 pm
This program has my respect.

Warning, epic screenshot.

Edit:
   Dang, I made it in high framerate. Watch it with firefox as it's twice as fast.
Title: Re: Mimas by Benjamin Moody
Post by: Raylin on October 02, 2010, 01:46:14 pm
Did anyone have trouble transferring the libraries to their calc?
Title: Re: Mimas by Benjamin Moody
Post by: shmibs on October 02, 2010, 01:48:24 pm
that is most definitely epic. are you as fast on an actual calc keyboard?! regardless, ima have to try this out
Title: Re: Mimas by Benjamin Moody
Post by: souvik1997 on October 02, 2010, 01:50:34 pm
Did anyone have trouble transferring the libraries to their calc?
not me
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 02, 2010, 02:18:27 pm
This program has my respect.

Warning, epic screenshot.

Edit:
   Dang, I made it in high framerate. Watch it with firefox as it's twice as fast.

ok, fine, perhaps I had some help from souvik
Title: Re: Mimas by Benjamin Moody
Post by: thepenguin77 on October 02, 2010, 02:52:03 pm
that is most definitely epic. are you as fast on an actual calc keyboard?! regardless, ima have to try this out

I wish. I did that in 5% speed.
Did anyone have trouble transferring the libraries to their calc?

Yes, Ti Connect doesn't like the period in all of the names. For instance the file Hooks.8xv is Hooks.h on calculator. The way around this is to open the Ti Connect device viewer and drag and drop the file to the calculator. It will attempt to send, and then say that you need to rename it. Change the period to something like p (for period). Ti Connect will then send it, but it will make all of the letters upper case. Make sure it is in ram then go find it with Calcsys's vat viewer. When you are viewing the individual appVar, press Alpha V. Then press left until you see the name. Then change it back to what it should be. (A quick hint on changing the name. Lower case letters are 20h higher than the uppercase ones. So to change 'A' (41h) to 'a'. 41h + 20h = 61h = a. Also, period is 2Eh.)
Title: Re: Mimas by Benjamin Moody
Post by: meishe91 on October 02, 2010, 04:30:50 pm
That is really cool. Great find :)
Title: Re: Mimas by Benjamin Moody
Post by: Madskillz on October 02, 2010, 04:47:56 pm
Well if you guys checked out UTI every once in a while you would have seen it posted on there. But yes it is certainly impressive.
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 02, 2010, 06:05:45 pm
Sorry about the library file issue, guys.  TI-Connect strikes again.  I'll be sure to fix that in the next version.
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 02, 2010, 06:08:54 pm
O_O welcome to omnimaga....


expect your pirated peanuts shortly
Title: Re: Mimas by Benjamin Moody
Post by: jnesselr on October 02, 2010, 06:48:43 pm
Who are you welcoming, qazz42?
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 02, 2010, 06:49:31 pm
FloppusMaximus
LV0 - Newcomer
Next LV: 5 posts

 Online

Last Login:Today at 18:23:30
Date Registerd:Today at 18:02:51
Posts: 1

Respect: 0

according to that, he just joined... so, him
Title: Re: Mimas by Benjamin Moody
Post by: jnesselr on October 02, 2010, 06:51:19 pm
oh... Wow, totally was thinking he had been here forever.  lol, okay. Well, floppus needs to get his own little topic to introduce himself. THEN, we throw the peanuts.

also, how many people have that internets thing in their sig now? At least 4. Possibly >9000
Title: Re: Mimas by Benjamin Moody
Post by: meishe91 on October 02, 2010, 06:54:25 pm
Ya, I feel like I've seen him here before but I guess that was at UTI that I've seen the name.

I don't even really get what that "Internets" thing is really O.o

Also, now we need to get back on topic :)
Title: Re: Mimas by Benjamin Moody
Post by: jnesselr on October 02, 2010, 06:55:31 pm
Ya, I feel like I've seen him here before but I guess that was at UTI that I've seen the name.

I don't even really get what that "Internets" thing is really O.o

Also, now we need to get back on topic :)
Okay, I'll start.  I am glad someone finally did this, and will test it once you get libs fixed. ;-)
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 02, 2010, 07:11:19 pm
Yeah, I was a little surprised myself to realize I didn't have an account here.

Anyway, the filename thing is... annoying... but easy to fix.

I've just found a more serious problem: the << and >> operators don't work.  This will also be fixed momentarily.

Any other issues?
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 02, 2010, 07:48:13 pm
Hey, Floppus is here! Congrats on such an awesome program :D

A few questions: How big are the libraries? Are the TI-83 Plus equates only in the libraries, not in the actual program?

EDIT: 1040th post! Happy tax day!
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 02, 2010, 08:53:16 pm
FloppusMaximus, you're on Omni now!  Welcome here! ;D

This looks like an epic program.  I'm really glad I can start to code Asm with my semi-limited computer time (not enough to code Asm on my comp).  This is wonderful!  Thanks! :D * ZTrumpet hugs FloppusMaximus. :)
Title: Re: Mimas by Benjamin Moody
Post by: nemo on October 02, 2010, 09:11:30 pm
yeah i'm having issues with the library files as well, using TiLP. let us know when the next version is out so i can download it!
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 02, 2010, 10:11:46 pm
A few questions: How big are the libraries? Are the TI-83 Plus equates only in the libraries, not in the actual program?
Combined, they're about 16k.  The application itself contains about 14k worth of built-in symbols (a hand-edited list of documented and undocumented ROM calls, system addresses, constants, and flags.)  Aside from the shell library routines (ion.8xv, mirage.8xv, dcs7.8xv), and perhaps the clock routines (os230.8xv), the built-in symbols should cover pretty much everything you need for typical programs.  (You guys should, of course, let me know if I missed anything important.)  The extra libraries are there for the sake of being complete.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 02, 2010, 11:00:09 pm
A few questions: How big are the libraries? Are the TI-83 Plus equates only in the libraries, not in the actual program?
Combined, they're about 16k.  The application itself contains about 14k worth of built-in symbols (a hand-edited list of documented and undocumented ROM calls, system addresses, constants, and flags.)  Aside from the shell library routines (ion.8xv, mirage.8xv, dcs7.8xv), and perhaps the clock routines (os230.8xv), the built-in symbols should cover pretty much everything you need for typical programs.  (You guys should, of course, let me know if I missed anything important.)  The extra libraries are there for the sake of being complete.

Oh, I see. They're just extra libraries for certain environments.
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 02, 2010, 11:18:00 pm
After reading the documentation, I have discovered these 3 things:
a) This is going to be wonderful!  I'm going to use this almost exclusively to write Asm programs.
b) The JQ instruction is genius!
c) If this is only 0.1, what's missing? :D
Title: Re: Mimas by Benjamin Moody
Post by: TC01 on October 02, 2010, 11:42:55 pm
This is awesome! Even though I only tried it in WabbitEmu (my calc has a broken link port)- I was able to quickly write and assemble a program.

What would it say about me if I use WabbitEmu + Mimas to write programs rather than Spasm or Brass?

c) If this is only 0.1, what's missing? :D

An on-calc emulator, so you can debug your programs without potentially bricking your calc or needing a computer?  :P
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on October 03, 2010, 12:36:46 am
Omnicalc *has* a virtual OS function built into it. It's kind of unstable, but that appears to be what you're asking for.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 04:02:53 am
Wow I saw that the other day and this looks truly epic. SirCmpwn, I think you have some competition now :P

Also welcome here Floppus
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 03, 2010, 10:20:58 am
After reading the documentation, I have discovered these 3 things:
a) This is going to be wonderful!  I'm going to use this almost exclusively to write Asm programs.
b) The JQ instruction is genius!
c) If this is only 0.1, what's missing? :D

What's the JQ instruction? I couldn't find it in the readme, and I couldn't find a documentation in the zip :-\
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 03, 2010, 10:22:38 am
It's a combination of JP and JR that auto-ops it to be whichever one is quicker for the given situation, I think. :)

It's in the doc folder, in manual.html
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 03, 2010, 10:36:13 am
It's a combination of JP and JR that auto-ops it to be whichever one is quicker for the given situation, I think. :)

It's in the doc folder, in manual.html

Wow ... that is genius. Could Axe do that?
Title: Re: Mimas by Benjamin Moody
Post by: _player1537 on October 03, 2010, 11:20:43 am
That person who said something about the virtual calc, it's not the same thing.   It is just to look like you have two seperate calcs running on the same calc.  If one crashes, the other crashes
Title: Re: Mimas by Benjamin Moody
Post by: TC01 on October 03, 2010, 11:48:09 am
That person who said something about the virtual calc, it's not the same thing.   It is just to look like you have two seperate calcs running on the same calc.  If one crashes, the other crashes

Yeah. I didn't know Virtual Calc was in Omnicalc, but I did know there was a separate Virtual Calc app (also by Michael Vincent). I was thinking of something more like emu8x.
Title: Re: Mimas by Benjamin Moody
Post by: souvik1997 on October 03, 2010, 11:51:09 am
That JQ instruction is really useful. Sometimes its hard to decide between JR and JP.
Title: Re: Mimas by Benjamin Moody
Post by: _player1537 on October 03, 2010, 11:52:33 am
iirc, emu8x also crashes when the code being emulated crashes.  But I haven't tried.
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 03, 2010, 12:41:49 pm
It shouldn't, being an emulator. If it does, you're running it on a calc w/only 48KB of RAM x.x
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 01:05:20 pm
I am sure it can mess your calc up if it crashes, since it is ran on the same hardware. However, I am not sure if you lose everything when going back in 83+SE mode. Also, the virtual calc in Omnicalc shares the same archive memory between two calcs. If you archive a program in the first calc and not the second, it messes things up very badly.
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 03, 2010, 01:37:25 pm
I emulate my 84+SE on my PC, and when it crashes my PC doesn't. ;)
Same goes for Emu8x. Since it is an emulator, what happens inside it doesn't affect what happens outside it.
Edit: Well, it shouldn't unless it's not a good emulator. (To my knowledge, however, it is.)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 01:54:54 pm
Yeah I was a bit concerned about the limited platform RAM. When a RAM clear occurs, does the entire 128 KB of RAM gets cleared?
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 03, 2010, 02:02:07 pm
On the main calculator or the emulated one?
When a RAM clear on the main calculator occurs, only the first 32KB of RAM are cleared; the others are left intact since the OS doesn't use them.
When a RAM clear on the emulated calculator occurs, it clears its 32KB of emulated RAM. Note that when it's started up its RAM is cleared automatically.
Does this answer your question, or am I misunderstanding?
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 02:10:22 pm
I meant when a crash occurs on the emulated calculator.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 03, 2010, 02:13:00 pm
That JQ instruction is really useful. Sometimes its hard to decide between JR and JP.

Yep, especially if you add more stuff...
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 03, 2010, 02:14:19 pm
When a RAM clear on the emulated calculator occurs, it clears its 32KB of emulated RAM. Note that when it's started up its RAM is cleared automatically by Emu8x
This answers your question, then? :)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 02:20:40 pm
Ah ok glad to hear such crash won't wipe the entire 128 KB, then :)
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 03, 2010, 02:34:07 pm
That JQ instruction is really useful. Sometimes its hard to decide between JR and JP.

Yep, especially if you add more stuff...
I myself definitely find jq useful. The only things the assembler is missing IMO are macros, true defines, the ability to move and rename (including changing the section type) sections, and the include directive. Then it'd be awesome :D
FloppusMaximus, could you better specify how library source files are included (with respect to the order in which they are assembled into the source, that is)?
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 03, 2010, 07:10:44 pm
man, this is an awesome app
it isnt even _that_ big
Title: Re: Mimas by Benjamin Moody
Post by: souvik1997 on October 03, 2010, 07:13:52 pm
For me, the only thing it's lacking in is copy/paste
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 03, 2010, 07:32:42 pm
It actually does have a one-line cut/paste feature. Press CLEAR to clear a line, and it is copied. Go to an empty line and press 2ND+RCL to paste it.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 03, 2010, 07:50:12 pm
It actually does have a one-line cut/paste feature. Press CLEAR to clear a line, and it is copied. Go to an empty line and press 2ND+RCL to paste it.

... Awesome :o

If only my archive weren't that full...
Title: Re: Mimas by Benjamin Moody
Post by: _player1537 on October 03, 2010, 09:00:04 pm
The only thing I am missing, and missing a lot, is macros.  I love the things :D
Title: Re: Mimas by Benjamin Moody
Post by: Raylin on October 03, 2010, 09:05:53 pm
The only thing I am missing, and missing a lot, is macros.  I love the things :D

The way I see it... Beggars can't be choosers. :P
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 03, 2010, 09:35:13 pm
About the emulator/virtual calc discussion, virtual calcs are somewhat problematic thanks to the archive issues, but Omnicalc's RAM recovery option works fairly well for testing assembly programs.  It could be better, obviously, but the feature has certainly saved me a lot of time over the years, for those times when an emulator isn't good enough and you have to test on the real hardware.

I myself definitely find jq useful. The only things the assembler is missing IMO are macros, true defines, the ability to move and rename (including changing the section type) sections, and the include directive. Then it'd be awesome :D
Moving and renaming sections is a good idea.  I'll see what I can do.  Macros will be done at some point, but those are a bit tricky.

INCLUDE would actually be quite a bit more difficult.  I realize it's nice to have for porting existing code, but is there a reason you really need it?

Quote
FloppusMaximus, could you better specify how library source files are included (with respect to the order in which they are assembled into the source, that is)?
I believe that they're assembled in the order they're listed, by a breadth-first search (so the main source file comes first, then all the files imported by the main source file, then all the files imported by those files (assuming they weren't used already), and so forth.)  So if you want the files in a particular order, just be sure to list all of them in the main source file.

If you're writing a general-purpose library that depends on other libraries, you can't predict what order those dependent libraries will appear, but the section types do allow you to define a partial ordering of sections (all header sections come before all code sections, which come before all data sections, which come before all footer sections.)
Title: Re: Mimas by Benjamin Moody
Post by: Raylin on October 03, 2010, 09:49:01 pm
Holy crap. *looks at Floppy's email* OH SHI-

How's it going, Ben?! :D
Title: Re: Mimas by Benjamin Moody
Post by: tloz128 on October 03, 2010, 09:53:33 pm
I just tried it out, and IT IS AWESOME!
Props to you, Floppus.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 03, 2010, 10:06:20 pm
INCLUDE would actually be quite a bit more difficult.  I realize it's nice to have for porting existing code, but is there a reason you really need it?

Maybe for different versions of a project with half the same code?
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 03, 2010, 10:13:56 pm
Holy crap. *looks at Floppy's email* OH SHI-

How's it going, Ben?! :D
Life's alright, could be better, could be worse.  Do I know you from somewhere else?

Quote from: Deep Thought
Maybe for different versions of a project with half the same code?
Don't libraries do that for you?
Title: Re: Mimas by Benjamin Moody
Post by: Raylin on October 03, 2010, 10:25:30 pm
MaxCoderz, probably.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 11:37:18 pm
Actually he's from DetachedSolutions forums. Back when I was a bit active there, he was pretty active. However, Detacheds boards eventually kinda died. Later he joined UnitedTI, which saw its activity drop, and now he is joining Omnimaga as well it appears.

He kills every forum on his path D: (j/k)
Title: Re: Mimas by Benjamin Moody
Post by: Raylin on October 03, 2010, 11:39:28 pm
Ah. So, United-TI is where I started worshiping you. Okay then. :P
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 03, 2010, 11:46:02 pm
Wow I totally forgot you had a UTI account x.x. I now remember you were active there for a bit one year ago then went back to MaxCoderz and joined Omni for the 2009 contest. My memory is playing me tricks, but it has been so long since I've been in the TI community x.x.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 02:50:30 pm
Congrats on the ticalc.org feature :D
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 04, 2010, 04:24:42 pm
Yeah, congrats!  It's very deserving of a feature! ;D
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 04, 2010, 04:31:32 pm
Quote
About the emulator/virtual calc discussion, virtual calcs are somewhat problematic thanks to the archive issues, but Omnicalc's RAM recovery option works fairly well for testing assembly programs.  It could be better, obviously, but the feature has certainly saved me a lot of time over the years, for those times when an emulator isn't good enough and you have to test on the real hardware.

sadly, some cant use any of those x.x
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 05:26:18 pm
Yeah the missing extra RAM pages pose a lil problem on those features...
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 04, 2010, 05:32:34 pm
unless someone wants to redesign them all in a way that they don;t use the RAM pages (no chance in hell)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 05:40:16 pm
We never know. Maybe it could be possible. Not sure, though. Calc84maniac had an hard time converting TI-Boy SE so it runs on newer 84+ calcs.
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 04, 2010, 05:55:42 pm
Well, the ram restore and virtual calc definitely won't work with 48KB of ram (you need at least 64KB total to have two copies of ram at the same time)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 05:56:08 pm
What about another 16 KB in the archive?
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 04, 2010, 05:57:03 pm
In that case, you might as well put all 32KB in the archive. But I guess the real problem is where you would put it in archive.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 06:02:26 pm
Yeah x.x. Making sure to not overwrite anything and to check if the calc has enough archive. Are there other things that might make this hard?
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 04, 2010, 06:05:18 pm
Well, every backup would require erasing a sector. Things could get even more complicated if there is other data sharing the sector.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 06:08:07 pm
Ah, right x.x

I assume someone who heavily relies on RAM restores would eventually wear out his Flash chips too...
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on October 04, 2010, 06:14:15 pm
We never know. Maybe it could be possible. Not sure, though. Calc84maniac had an hard time converting TI-Boy SE so it runs on newer 84+ calcs.

had? that means he did?

err, back on topic, thats how that RAM recovery worked? I did npot know that.. now, how does the v-calc use the RAM pages?

oh, wait, nvmd...
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 04, 2010, 06:25:10 pm
Well, every backup would require erasing a sector. Things could get even more complicated if there is other data sharing the sector.

Just a quick question: Is the default state (when it's "empty") of any flash space all FFs?
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 04, 2010, 06:33:51 pm
Well, every backup would require erasing a sector. Things could get even more complicated if there is other data sharing the sector.

Just a quick question: Is the default state (when it's "empty") of any flash space all FFs?
I believe that is correct. :)

Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 04, 2010, 06:43:51 pm
Well, every backup would require erasing a sector. Things could get even more complicated if there is other data sharing the sector.

Just a quick question: Is the default state (when it's "empty") of any flash space all FFs?
Yes. Also, when writing bytes to flash, you can only change 1 bits to 0, not 0 to 1.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 08:34:06 pm
Wait? I am confused what this means ???
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 04, 2010, 08:37:39 pm
When changing single bits in flash, you can only set them to 0 (or leave them as 1). To set bits to 1, you have to set the whole sector to 1 (which is called a sector erase)
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 04, 2010, 08:39:00 pm
When changing single bits in flash, you can only set them to 0 (or leave them as 1). To set bits to 1, you have to set the whole sector to 1 (which is called a sector erase)
This is what Axe is doing that makes compiling Apps take longer. :)
Title: Re: Mimas by Benjamin Moody
Post by: Builderboy on October 04, 2010, 08:41:56 pm
Basically with Flash Memory, you can only do 2 things.  Change *every single* bit into a 1, or change one bit from 1 into a 0.  

EDIT: double ninja :P
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 10:32:40 pm
When changing single bits in flash, you can only set them to 0 (or leave them as 1). To set bits to 1, you have to set the whole sector to 1 (which is called a sector erase)
Wow... that sounds a bit akward to work with x.x
Title: Re: Mimas by Benjamin Moody
Post by: Builderboy on October 04, 2010, 10:34:13 pm
Yeah x.x I believe its to work against hacking?  (obviously not as important in calcs, but in Computers it helps to have hardware restrictions on writing im sure)
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 04, 2010, 10:38:57 pm
Nah, it's just how the hardware works.
Title: Re: Mimas by Benjamin Moody
Post by: Builderboy on October 04, 2010, 10:39:29 pm
Ah gotcha, well thats lamesauce :P
Title: Re: Mimas by Benjamin Moody
Post by: thepenguin77 on October 04, 2010, 10:59:58 pm
When changing single bits in flash, you can only set them to 0 (or leave them as 1). To set bits to 1, you have to set the whole sector to 1 (which is called a sector erase)
This is what Axe is doing that makes compiling Apps take longer. :)

Actually making apps is slow because flash is horribly slow. Each flash command takes about the same amount of time I believe. So erasing happens near instantly. But then you have to go rewrite those 65536 bytes you just erased. Which takes about 4 seconds. But not only does it have to write it once, first you have to copy the whole sector to the swapSector, and then copy it back. That's two full sector copies. If you ever wondered why OS mods take so long, this is also why. OS mods usually require erasing more than one sector too :P
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 04, 2010, 11:29:09 pm
So that's why GarbageCollect is needed...
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 04, 2010, 11:49:50 pm
Darn, if Axe ever supports writing to Flash, I'm sure gonna try to minimize the use of this feature as much as possible. X.x

Good thing flash is not as slow as floppy disks...
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 05, 2010, 12:04:40 am
I doubt it ever will. Archive is good enough :)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 05, 2010, 12:16:02 am
Archive is flash, actually.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 05, 2010, 12:18:54 am
Oh, I meant that the Archive command is good enough for flash writing. No need to add flash-unlocking stuff to Axe ;)
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 05, 2010, 09:21:48 am
Technically, flash drives use flash too (but usually with sectors of 512 bytes I think, instead of 64KB)
Title: Re: Mimas by Benjamin Moody
Post by: Raylin on October 05, 2010, 09:28:32 am
Is that called allocation size?
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on October 05, 2010, 09:31:39 am
I think allocation unit size is up to the filesystem (it could possibly use four sectors together for a 2KB cluster size)
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 05, 2010, 04:41:15 pm
Moving and renaming sections is a good idea.  I'll see what I can do.  Macros will be done at some point, but those are a bit tricky.
Cool! :)
Quote
INCLUDE would actually be quite a bit more difficult.  I realize it's nice to have for porting existing code, but is there a reason you really need it?
Probably not, now that I think about it.
Quote
I believe that they're assembled in the order they're listed, by a breadth-first search (so the main source file comes first, then all the files imported by the main source file, then all the files imported by those files (assuming they weren't used already), and so forth.)  So if you want the files in a particular order, just be sure to list all of them in the main source file.

If you're writing a general-purpose library that depends on other libraries, you can't predict what order those dependent libraries will appear, but the section types do allow you to define a partial ordering of sections (all header sections come before all code sections, which come before all data sections, which come before all footer sections.)
Nice to know.
(Yes, I know this is 3 pages late, but I never had the chance to reply earlier)
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 05, 2010, 06:37:37 pm
Technically, flash drives use flash too (but usually with sectors of 512 bytes I think, instead of 64KB)

I wonder why TI uses 64 KB :P Is it faster?

EDIT: http://ourl.ca/6178/98105
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 05, 2010, 06:48:39 pm
:P yeah...
I would assume 64KB rather than 512B because it is cheaper, though I may be wrong.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 06, 2010, 11:16:22 pm
A question for Floppus: Are you planning to release any newer versions soon? The v0.1 number seems a bit low, though from the shots it looks really functional already.
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 07, 2010, 10:50:50 pm
Yes, at the very least I'll release a new version this weekend with a few bug fixes.

I wasn't really thinking very hard about the version number, but you can read 0.1 as "hasn't been completely tested" (it has been tested quite a bit, but it's also a rather large and complex program!) and "internals may be subject to change."  (It's possible that I'll need to make incompatible changes to the file formats, so you won't be able to use newer files with the older assembler.  Of course, I'll do my best to support older files with each new version of the assembler.)
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 10, 2010, 10:10:26 am
Win.  I should get back to work on Mosaic now :P
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 10, 2010, 01:52:22 pm
^ this :P

It would be nice if there were different on-calc ASM IDE that works a bit differently to satisfy a wider range of calc programmers. Also, make sure to also support most computer ASM syntaxes as well like you planned.
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 10, 2010, 01:56:02 pm
Of course.  I popped open Mosaic earlier today and took a look at it, and it's a mess.  I'll probably re-work the assembler to make sense :P
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 10, 2010, 02:54:05 pm
Sorry to hear D:

Good luck!
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 02:59:51 pm
^ this :P

It would be nice if there were different on-calc ASM IDE that works a bit differently to satisfy a wider range of calc programmers. Also, make sure to also support most computer ASM syntaxes as well like you planned.

Agreed. There are way too few choices to choose from right now...
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 10, 2010, 03:03:42 pm
You mean like 1? :P
Mimas is awesome, though I can't wait for what Mosaic might be. :)
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 03:07:23 pm
You mean like 1? :P
Mimas is awesome, though I can't wait for what Mosaic might be. :)

Well, there's ChAsm, which is horribly unstable, and OTBP, which despite being pretty good is written almost entirely in BASIC (and takes up to a minute to compile very short programs).

That's why Mimas is a lifesaver.
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 10, 2010, 03:10:17 pm
I love mimas so much :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 10, 2010, 03:14:42 pm
Sir, you could write Mosaic in Mimas... :P
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 03:15:29 pm
Sir, you could write Mosaic in Mimas... :P

There's an idea...

FloppusMaximus, have you tried making Mimas assemble itself yet? :D
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 10, 2010, 03:16:06 pm
You mean like 1? :P
Mimas is awesome, though I can't wait for what Mosaic might be. :)

Well, there's ChAsm, which is horribly unstable, and OTBP, which despite being pretty good is written almost entirely in BASIC (and takes up to a minute to compile very short programs).

That's why Mimas is a lifesaver.
Yeah, that's what I meant; Mimas is the only practical one. Another problem with the OTBP assembler is that it uses a lot of RAM...

ztrumpet and Deep Thought, Mimas doesn't have App support. Yet. ;D
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 10, 2010, 03:17:18 pm
ztrumpet and Deep Thought, Mimas doesn't have App support. Yet. ;D
Floppus, when (I assume it will happen) you add App support, you will be offering multi-page Apps, correct? ;D
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 03:18:10 pm
AH! Yes! Definite feature request :D

EDIT: ztrumpet, what do you mean by ASM support? ???
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 10, 2010, 03:20:36 pm
ASM support?  lol that's funny ;D
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 10, 2010, 03:21:33 pm
I think he meant app support and that we should be able to build multi-page apps.
Correct me if I misunderstand.
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 10, 2010, 03:22:45 pm
I know, it was just funny that he said ASM support.  Yeah APP support would be really cool.  Other wise for now you'd have to transfer it to a pc and then add in the appropriate headers and such.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 03:23:57 pm
Doesn't Axe still require that we sign the app ourselves? Is there a way it could be done on-calc?
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 10, 2010, 03:25:13 pm
Yeah I think you still have to sign the app on the pc (but it works in a limited way without it) so on-calc signing would be cool.
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 10, 2010, 03:26:06 pm
Doesn't Axe still require that we sign the app ourselves? Is there a way it could be done on-calc?
Yes, but there's a simple drag and drop batch file included with Axe now. :)
Signing on calc would take between 5 and 15 minutes and is not very practical. :(

Yup, I meant App. :P * ZTrumpet feeds himself to the lobster
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 03:26:44 pm
Doesn't Axe still require that we sign the app ourselves? Is there a way it could be done on-calc?
Yes, but there's a simple drag and drop batch file included with Axe now. :)
Signing on calc would take between 5 and 15 minutes and is not very practical. :(

Oh, got it.

What does signing do, anyway?
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 10, 2010, 03:27:59 pm
It prevents your calc from rejecting it (saying "invalid") went sent from another calc/a computer.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 04:16:23 pm
Ah. How big would an on-calc signing prgm be? Even if it is slow, maybe it could be used for final versions? For example, someone else might really, really need that app on their calc :D
Title: Re: Mimas by Benjamin Moody
Post by: Builderboy on October 10, 2010, 04:17:33 pm
Probably not very big, just not very fast.  You would have to ask an expert though
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 10, 2010, 04:17:34 pm
It would be faster to send someone the source code and a compiler, then compile it on their calc than it would be to sign it on-calc.
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 10, 2010, 04:18:36 pm
.. or make it so that the first time you run the app it signs itself ;)
jk
Title: Re: Mimas by Benjamin Moody
Post by: Builderboy on October 10, 2010, 04:19:35 pm
Yeah but nobody wants to wait 15 min for their game to load :P
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 10, 2010, 04:19:48 pm
It would be faster to send someone the source code and a compiler, then compile it on their calc than it would be to sign it on-calc.

Right, true.

Anyway, back to Mimas, are there any serious bugs yet?
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 10, 2010, 04:19:58 pm
lol very true very true my good sir :P
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 10, 2010, 04:21:48 pm
BrandonW's RESIGN program is 1829 bytes on-calc, for those who care.
As for Mimas, the only bug mentioned so far AFIAK is that << and >> don't work.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 10, 2010, 11:35:57 pm
I think the only on-calc assemblers that ever came out besides Mimas are Mon 83, TASM-on-calc, Chasm and OTBP. Mon 83 was extremly slow due to being in BASIC and required you to manually paste your string of code in a program with AsmPrgm at the beginning. I don't know about TASM-on-calc and OTBP, though. Chasm was unstable. Chasm 2 was in development back in 2004 but the author vanished completly. I'M glad there are some new tools offering more freedom now (and space).
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 11, 2010, 12:47:57 am
Correct me if I'm wrong, but I believe BrandonW's re-signing program is only for signing OSes, not apps.  App signing uses the Rabin algorithm, which is substantially faster than RSA if implemented correctly.

Creating apps with Mimas is certainly doable, but would involve a fair amount of code (and multipage apps even more so.)  So the eternal question is, how much is it worth in terms of code size?  Like I said in my initial post on UTI, I'm already pushing the limits of what a 2-page application can do; would it be better to increase this to 3 or even 4 pages (and include all the incredible features I can think of), or would it be better to keep it smaller and simpler, so that it's still reasonably usable on the 83+ BE?  Or would it be better for me to try to implement extra features as plugins?

(By the way, I guess I should mention that you can already create single-page applications with Mimas... you'd just need an external tool to install them into Flash.)

Oh, and no, Mimas can't assemble itself (not yet, anyway), due to the lack of macros.  And of course the fact that you don't have enough RAM to store the entire thing.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 11, 2010, 01:13:31 am
I assume the app creation process is similar to Axe Parser, right? (code your program, choose APP compiling mode, (backup, ) compile, send to computer, use Rabbit/Wapp/Wabbitsign to sign it)
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on October 11, 2010, 07:15:54 am
I vote for a three or four page App, but I do not have an 83+ anymore.  Let's see what most 83+s should have: DoorsCS7 (3 pages) Axe Parser (2 pages) CalcSys (1 page) Mimas (2+x pages).  Hmm, running out of space, and this doesn't even include programs. D:

I really want these features!  Would it be possible to have them as an "Add in"? ;D
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on October 11, 2010, 08:10:24 am
It would be so much easier with app signing, but I guess a bit more difficult.  We would probably have to add in the headers and such ourselves, and manage pagees on our own because everyone knows how crappy it is to write an app with all your routines on the first page, and your calls to the routines in pages 2+ :(

Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 11, 2010, 09:11:28 am
App signing would take about 15-30 minutes on calc, according to what Quigibo said. While it may be useful if you're busy with something else like cooking dinner, it would not be practical in most cases.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 11, 2010, 11:38:48 am
If you ever make it more than two pages, can you tell me before you release it? I want the latest version that's still small (I have a BE that's already just about filled) ;D
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 11, 2010, 04:53:58 pm
Maybe he should do like Quigibo with Axe: keep old builds around (if they're reliable) so people who prefer them can still use them.
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 11, 2010, 07:27:18 pm
Will do.  I always keep backup copies of the old versions of my programs, in case I ever need to know what was changed when.  If anybody ever wants an old version for some reason, just ask.

There'll be a new version on ticalc.org shortly:
- fixing the TI-Connect compatibility issue ('Hooks.h' is now 'HooksEqu')
- fixing the << and >> operators
- if any files have been unarchived, prompting the user to re-archive them upon exiting the app
- fixing the address of pixelxorhl in mirage.inc/dcs7.inc (are people aware that the correct address for that routine is 40CE, not 40DE?  Has nobody ever used that routine?)

As far as app signing goes, BrandonW claims his Resign program can sign an OS on an 84+ SE in 13 minutes, 20 seconds.  App signing should be faster by about a factor of 4, even ignoring the fact that Brandon's using a rather slow multiplication routine.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 11, 2010, 07:29:05 pm
Will do.  I always keep backup copies of the old versions of my programs, in case I ever need to know what was changed when.  If anybody ever wants an old version for some reason, just ask.

There'll be a new version on ticalc.org shortly:
- fixing the TI-Connect compatibility issue ('Hooks.h' is now 'HooksEqu')
- fixing the << and >> operators
- if any files have been unarchived, prompting the user to re-archive them upon exiting the app
- fixing the address of pixelxorhl in mirage.inc/dcs7.inc (are people aware that the correct address for that routine is 40CE, not 40DE?  Has nobody ever used that routine?)

Nice. When do you think you'll consider it "stable"?
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 11, 2010, 07:37:30 pm
Will do.  I always keep backup copies of the old versions of my programs, in case I ever need to know what was changed when.
You know, TI Developer (http://sourceforge.net/projects/tidev) does that for you :)
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 11, 2010, 07:39:57 pm
I just use SVN ;D (I think Sir and I have already had this discussion, so yeah)
Also, we want tiDE, not TiDev! :P
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 11, 2010, 07:41:27 pm
I need to finish tiDE first :P
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 11, 2010, 07:43:07 pm
Exactly. ;D
Back on topic, can't wait for the next version! :D
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 11, 2010, 08:25:17 pm
Will do.  I always keep backup copies of the old versions of my programs, in case I ever need to know what was changed when.
You know, TI Developer (http://sourceforge.net/projects/tidev) does that for you :)
I think I'll stick with what works for me.  I probably should start using a VCS, though.

(Also, uh... is that a giant bundle of Windows binaries, all with different licenses, some free software, some not, none with source code, and not even a readme file to tell you where they all come from?)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 11, 2010, 08:38:28 pm
It is still in development atm. I doN,t think there's any real public official builds on the forums. I think he only announced it on IRC so far, so it's probably not really packaged well yet. It might be good to add instructions and credits if he didn't already, though.
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 11, 2010, 11:03:17 pm
It's not a giant bundle of windows binaries with some free software and some not, I wrote the damn thing myself :P  It's open source if you ask me for it.  It's a full application.
And it is still in development, but it is definitely working and usable, seeing as I use it all the time.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 11, 2010, 11:09:51 pm
Ah ok I wasn't sure yet if it was recommended at 100% for development for other people (I remember some people having issues updating or crashes when accidentally closing it then trying to run it again (and had to reinstall), but I am not sure anymore. I think you did a good job at it so far.
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 11, 2010, 11:12:44 pm
Thank you DJ.  It is recommended for install now, and subsequent updates will be installed automatically (although it will ask your permission first).
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 11, 2010, 11:14:06 pm
Ah cool :D
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 12, 2010, 12:17:36 am
SirCmpwn, I apologize for my earlier comment.  It came out somewhat harsher than I intended.  Looking at the zip file you linked me to, it does appear to include a number of other people's programs (mine, BrandonW's, Wabbitemu, PindurTI...), and I don't see any source anywhere.  It also appears to include TASM, which is very much non-free.  If you're going to use Sourceforge, you know, one of the rules is that you're supposed to release the source code at the same time as the binaries.  And copyright issues aside, I personally would appreciate a little bit of credit when you distribute my programs.  That's all I'm going to say on the matter.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 12, 2010, 02:06:29 am
It also appears to include TASM, which is very much non-free.
I didn't knew that TASM was not free O.o ???
Title: Re: Mimas by Benjamin Moody
Post by: mapar007 on October 12, 2010, 03:23:20 am
It also appears to include TASM, which is very much non-free.
I didn't knew that TASM was not free O.o ???

It's shareware. iirc, it's "free as in beer", but not "free as in speech".
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 12, 2010, 08:46:43 am
I need to remove Tasm from it, and I just keep forgetting to put up the source code.  Also, which program of yours is in there?  When looking for programs, I didn't see any licenses, so I just added them in because they are useful.  TI Developer serves as an interface to these programs.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 12, 2010, 10:42:56 am
Quote from: DJ Omnimaga
I didn't knew that TASM was not free O.o ???

Quote from: TASM readme
If you find TASM useful,  why not register?  Unregistered use of TASM
beyond a 30 day evaluation period is a violation of the license.
For the $40.00  registration  fee you get:

Basically, it's distributed freely with a 30-day evaluation license. After that, users are supposed to register (for $40).
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 12, 2010, 09:15:12 pm
Quote from: DJ Omnimaga
I didn't knew that TASM was not free O.o ???

Quote from: TASM readme
If you find TASM useful,  why not register?  Unregistered use of TASM
beyond a 30 day evaluation period is a violation of the license.
For the $40.00  registration  fee you get:

Basically, it's distributed freely with a 30-day evaluation license. After that, users are supposed to register (for $40).
Ah right, I always thought of it as calc program and since no one was talking about the license I just had it on my comp and never registered and could still use it x.x. Not to mention it's from 1993-94, right?
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 13, 2010, 11:37:37 am
I wonder if anyone's still even registering, or if the author even cares x.x

But to be safe, there are other assemblers. Like Mimas :)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 13, 2010, 02:29:06 pm
It kinda reminds me mIRC: after 30 days it still lets you use it. It just nags you longer on the opening screen. At 3800 days or so you can no longer use it, though.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 13, 2010, 03:52:44 pm
Isn't that kinda pointless? 3800 days is 10 and a half years, and most people would've moved on by then...
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 13, 2010, 03:58:45 pm
Not really. In rare cases, mIRC suddently jumps from like 20 days to 3500 in an instant. Some registery glitch or something.
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 13, 2010, 06:17:16 pm
I got this on my calc today, it is quite nice :)
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 14, 2010, 11:13:15 pm
To get back on topic, I've found a rather serious bug in Mimas's symbol hashing, which can sometimes cause the assembler to crash.  This might also have caused occasional misassemblies and inappropriate "symbol redefined" errors.  So, there'll be another bugfix release shortly.

And back to the subject of on-calc app signing, since you guys have gotten me thinking about that again... after some experimentation and back-of-the-envelope calculations, I'll wager that you can do a lot better than 13 minutes.  Like, under a minute.  Also, I wasn't correct when I said that Rabin is necessarily much faster than RSA; I think you could apply similar tricks and speed up RSA by a similar amount, if you cared to do so.
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on October 14, 2010, 11:24:39 pm
< 1 minute? App signing on-calculator would be very practical then :D
Can't wait for the bugfix. Keep up the good work! :)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 14, 2010, 11:48:15 pm
And back to the subject of on-calc app signing, since you guys have gotten me thinking about that again... after some experimentation and back-of-the-envelope calculations, I'll wager that you can do a lot better than 13 minutes.  Like, under a minute.  Also, I wasn't correct when I said that Rabin is necessarily much faster than RSA; I think you could apply similar tricks and speed up RSA by a similar amount, if you cared to do so.
Wow really? You should maybe share your trick with Quigibo. He tried to implement app signing in Axe Parser before, but did not, finally, because the 10-15 minutes signing time made it impractical.
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 15, 2010, 12:10:23 am
Well, it's somewhat theoretical at this point; I'm still working out the bugs in the math routines.  But apart from the hyper-optimized multiplication and remainder code, the only real trick is pre-calculating as much as you can (e.g., pre-calculating the pseudo-square-roots of 2.)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 15, 2010, 12:11:18 am
Ah ok, good luck then :D
Title: Re: Mimas by Benjamin Moody
Post by: Silver Shadow on October 15, 2010, 12:34:17 am
That would be nice!
Title: Re: Mimas by Benjamin Moody
Post by: Quigibo on October 15, 2010, 03:17:57 am
To be fair, I never actually tried to implement app signing.  It was only from a discussion with BrandonW that I concluded it would be either too complicated or too slow to implement so I didn't want to waste time writing it.  But under a minute sounds pretty good, although still a bit long for me personally when I can do it on the computer instantly, but certainly short enough to have as a useful option.  Luckily though, you don't actually need to sign the apps to run them, only to transfer them to another calculator.  So debugging can be done with the unsigned app and once the user is ready to publish, they can sign it.

Oh, and if I forgot to mention it earlier in this thread, this is an awesome program!  This style of editing was exactly what I was actually intending to have for Axe when it was still all on paper.  But then I decided to just use the TI-BASIC editor instead because I realized the familiarity would be an advantage for users transitioning from BASIC (my target audience) and it was a hell of a lot easier to not have to write my own editor :P  But you did a great job on it!
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on October 15, 2010, 03:26:04 am
Oh, right, I was sure you did x.x. I guess I got confused with when you frequently talked to him in #cemetech. Under a minute it would be very suitable for final testing. During Debugging I would turn signing OFF, but when I am ready for release, on-calc signing might be nice, especially for people who got an hard time getting stuff like Wapp/Wabbit/Rabbitsign to work.

As for Axe code editing, personally I love the fact it uses the BASIC editor, because several commands syntax in Axe language is the same or similar as TI-BASIC. Because BASIC coders are very used to the on-calc editor, I feel it was a better idea to use that editor. This is not to mention it allows compatibility with Cemetech's SourceCoder and other computer BASIC editors. For assembly or BBC Basic, I think it's best if a third-party editor is used.
Title: Re: Mimas by Benjamin Moody
Post by: Yeong on October 15, 2010, 07:34:46 am
I have a question about this:
I can't seem to  find B_CALL _getKey...
There's only getNumKey
Where can I find it?
Title: Re: Mimas by Benjamin Moody
Post by: souvik1997 on October 15, 2010, 07:38:08 am
There is no underscore before the Getkey.

Just type this:
BCALL GETKEY
Title: Re: Mimas by Benjamin Moody
Post by: Yeong on October 15, 2010, 07:39:05 am
thnx
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on October 15, 2010, 09:47:50 pm
Sorry, you were probably confused because Mimas lists Get_NumKey before GetKey (underscore comes before any letter.)
Title: Re: Mimas by Benjamin Moody
Post by: SirCmpwn on October 15, 2010, 09:51:20 pm
Oncalc app signing would be really cool, this is a great project.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on October 15, 2010, 11:26:43 pm
Oncalc app signing would be really cool, this is a great project.

Yes, it would, even as a separate project!
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 03:40:02 am
This program is great!

On a related note, I've never seen Wabbitemu crash like that...  ;D
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 12:17:27 pm
This program is great!

On a related note, I've never seen Wabbitemu crash like that...  ;D

Hm? How'd it crash?
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 12:29:15 pm
I have no idea what happened. It froze and stopped working. It didn't give me the instant RAM clear I'm used to getting. It probably has something to do with the fact that I'm working with registers I'm not really familiar with.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 12:38:22 pm
To get back on topic, I've found a rather serious bug in Mimas's symbol hashing, which can sometimes cause the assembler to crash.  This might also have caused occasional misassemblies and inappropriate "symbol redefined" errors.  So, there'll be another bugfix release shortly.

And back to the subject of on-calc app signing, since you guys have gotten me thinking about that again... after some experimentation and back-of-the-envelope calculations, I'll wager that you can do a lot better than 13 minutes.  Like, under a minute.  Also, I wasn't correct when I said that Rabin is necessarily much faster than RSA; I think you could apply similar tricks and speed up RSA by a similar amount, if you cared to do so.

^ Maybe it's that?

And did the emulated calc freeze or did Wabbit completely freeze up? If it's only the calc, then that happens a lot (I do infinite loops all the time :D) and you can just go to Debug > Reset.

If it's Wabbit, though... I've had that happen too. It was an early bug, but it should be fixed in the current version (at http://wabbit.codeplex.com/ (http://wabbit.codeplex.com/)).
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 12, 2010, 12:39:08 pm
Wow, now that I'm learing ASM, this helps me a lot more.  I was concerened about not being able to access a comp enough to write ASM programs.  :D
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 12:41:01 pm
Wow, now that I'm learing ASM, this helps me a lot more.  I was concerened about not being able to access a comp enough to write ASM programs.  :D

Yep, that's why I love on-calc assemblers :D

But FloppusMaximus mentioned random crashes, so you should probably wait a bit until he finishes 0.3 (or whatever the next version is).
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 12, 2010, 12:41:57 pm
I'm fine, actually, since a have a dev calc, and a link cable plus my other calc whereever I go.  ;)
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 12:44:58 pm
To get back on topic, I've found a rather serious bug in Mimas's symbol hashing, which can sometimes cause the assembler to crash.  This might also have caused occasional misassemblies and inappropriate "symbol redefined" errors.  So, there'll be another bugfix release shortly.

And back to the subject of on-calc app signing, since you guys have gotten me thinking about that again... after some experimentation and back-of-the-envelope calculations, I'll wager that you can do a lot better than 13 minutes.  Like, under a minute.  Also, I wasn't correct when I said that Rabin is necessarily much faster than RSA; I think you could apply similar tricks and speed up RSA by a similar amount, if you cared to do so.

^ Maybe it's that?

And did the emulated calc freeze or did Wabbit completely freeze up? If it's only the calc, then that happens a lot (I do infinite loops all the time :D) and you can just go to Debug > Reset.

If it's Wabbit, though... I've had that happen too. It was an early bug, but it should be fixed in the current version (at http://wabbit.codeplex.com/ (http://wabbit.codeplex.com/)).

Wabbit completely froze and I had to shut it down through the task manager. I don't think it was an infinite loop, because all I was doing was passing stuff to the processor to see how certain values are returned. No looping whatsoever. It wasn't my code per se, but it *should* work, being as the code was written for the processor.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 12:49:09 pm
To get back on topic, I've found a rather serious bug in Mimas's symbol hashing, which can sometimes cause the assembler to crash.  This might also have caused occasional misassemblies and inappropriate "symbol redefined" errors.  So, there'll be another bugfix release shortly.

And back to the subject of on-calc app signing, since you guys have gotten me thinking about that again... after some experimentation and back-of-the-envelope calculations, I'll wager that you can do a lot better than 13 minutes.  Like, under a minute.  Also, I wasn't correct when I said that Rabin is necessarily much faster than RSA; I think you could apply similar tricks and speed up RSA by a similar amount, if you cared to do so.

^ Maybe it's that?

And did the emulated calc freeze or did Wabbit completely freeze up? If it's only the calc, then that happens a lot (I do infinite loops all the time :D) and you can just go to Debug > Reset.

If it's Wabbit, though... I've had that happen too. It was an early bug, but it should be fixed in the current version (at http://wabbit.codeplex.com/ (http://wabbit.codeplex.com/)).

Wabbit completely froze and I had to shut it down through the task manager. I don't think it was an infinite loop, because all I was doing was passing stuff to the processor to see how certain values are returned. No looping whatsoever. It wasn't my code per se, but it *should* work, being as the code was written for the processor.

You should give BuckeyeDude a bug report (here in this topic (http://ourl.ca/4854), at RevSoft in this thread (http://www.revsoft.org/phpBB3/viewtopic.php?f=32&t=689), or on IRC (he's either Buckeye or BuckeyeD)).
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 01:54:20 pm
I think I figured out the problem: Programmer idiocy. I was referencing a command that doesn't exist in the z80 chip for TI calcs.

Bloody good way to **** up your calculator.  :P
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 01:57:38 pm
Bloody good way to **** up your calculator.  :P

True :D

How would you have referenced it, though? Did you put in the hex? Because if the mnemonic's built into Mimas, you might want to tell him about it.
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 02:10:59 pm
I typed it in by hand. I was trying out some code from an old z80 computer. Apparently the assemblers were slightly different....
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 02:12:29 pm
TI's Z80 is weird, so don't try that unless you know what it means...
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 02:15:13 pm
Good advice. Luckily, TI actually did something right and wrote a BCALL for it into the OS. I only found out about it afterwards. The downside is that the bad routine appears to be several dozen times more efficient.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 02:16:22 pm
Good advice. Luckily, TI actually did something right and wrote a BCALL for it into the OS. I only found out about it afterwards. The downside is that the bad routine appears to be several dozen times more efficient.

Any routine that TI didn't write is probably several dozen times more efficient ;)
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 02:18:34 pm
That's all too true  :(
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on November 12, 2010, 03:03:56 pm
The Z80 in the TI-83+ works like any other Z80. Executing an opcode that doesn't exist shouldn't have any effect (well, which opcode are you speaking of anyway?)
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 03:10:04 pm
Here's the part of the source that's giving me problems:

Code: [Select]
EXX
BIT  7,B
EXX
JP   NZ,SUB1

The SUB1 isn't a normal z80 command. I think it's an assembler difference.
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on November 12, 2010, 03:17:23 pm
SUB1 is a label name, not a command.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 12, 2010, 03:18:34 pm
Heh, then you might have been jumping to a nonexistent label. That would explain a lot :D
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on November 12, 2010, 03:28:02 pm
Oh, also, I see you are using the shadow registers. Did you disable interrupts before executing this routine? Otherwise the shadow registers will get destroyed by the interrupt handler.
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 12, 2010, 03:29:45 pm
Heh, then you might have been jumping to a nonexistent label. That would explain a lot :D

Oh, that might help.

Also, I didn't disable interrupts, so I'll do that next time.

EDIT: The label is buried a few hundred lines later in the code. No wonder I missed it.
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 12, 2010, 06:05:03 pm
I made a template for mimas userbars.  :D
Basically, go to designer.userbars.com and add the url of the template and your name.  ;)
(http://img.removedfromgame.com/imgs/1289602798-mimas.PNG)
http://img.removedfromgame.com/imgs/1289602798-mimas.PNG

I'm adding mine to my sig soon.  ;)
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on November 12, 2010, 06:58:19 pm
Thanks yunhua! :D

Floppus, any idea when the next version will come out?
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on November 12, 2010, 10:12:59 pm
Oops, sorry, it has been a while, hasn't it.  I was intending to release that bug fix right away, and then my heat sink decided to take up skydiving and my regular PC was out of commission for a while.  And then I got distracted with app signing...

I'll get the bug fix done right away.  There are a couple of other features I'm still working on, but those can wait.

I can't imagine what might have happened to make Wabbitemu crash.  That sounds bad!
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 13, 2010, 12:35:56 am
Apparently I also did something to the ROM image. I had to reload the file to run Wabbit again.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 13, 2010, 01:02:07 am
Sorry to hear about your computer. Nothing else was damaged I hope, right? X.x

Also nice userbar Yunhua98.
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 13, 2010, 01:08:02 am
I run everything inside of an isolated partition, so nothing important should be damaged.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 13, 2010, 02:10:07 am
Wait you got computer issues too? Btw my post was directed at FloppusMaximus. Lots of people got computer issues lately...
Title: Re: Mimas by Benjamin Moody
Post by: AngelFish on November 13, 2010, 07:10:27 pm
Oh, I misunderstood that. I have found a few mysterious files in my computer that I can't read, but I can't trace their corruption to anything. I have no idea what they are, other than the fact that they aren't viral.
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 13, 2010, 08:31:46 pm
Mimas 0.3 is Out!

http://www.ticalc.org/archives/files/fileinfo/431/43140.html/me celebrates :D
Title: Re: Mimas by Benjamin Moody
Post by: MRide on November 13, 2010, 08:36:07 pm
Uh...broken link?
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 13, 2010, 08:36:37 pm
oops, fail, extra "/"
Title: Re: Mimas by Benjamin Moody
Post by: qazz42 on November 13, 2010, 09:34:44 pm
Mimas 0.3 is Out!

http://www.ticalc.org/archives/files/fileinfo/431/43140.html/me celebrates :D

Woo! Good to know this stuff is still alive! I thought it was dead for some reason >.>
btw, this, other than DCS, is the most useful thing on my calc :D
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 13, 2010, 10:25:23 pm
Mimas 0.3 is Out!

http://www.ticalc.org/archives/files/fileinfo/431/43140.html/me celebrates :D

Woo! Good to know this stuff is still alive! I thought it was dead for some reason >.>
btw, this, other than DCS, is the most useful thing on my calc :D

correction: "this, other than Axe Parser is the most useful thing on my calc.  :P
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 13, 2010, 10:59:27 pm
Mimas 0.3 is Out!

http://www.ticalc.org/archives/files/fileinfo/431/43140.html/me celebrates :D

Woo! Good to know this stuff is still alive! I thought it was dead for some reason >.>
btw, this, other than DCS, is the most useful thing on my calc :D

correction: "this, other than Axe Parser is the most useful thing on my calc.  :P

And a shell and Calcsys... I don't even have room! D:

Glad to know it's still alive, though. I'm going to use that a lot. But not right now, unfortunately...
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 13, 2010, 11:00:30 pm
I have like 1000K of archive.  :P/me winks at his backup calc, with about 2000 bytes archive.  :P
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 14, 2010, 04:06:30 am
Nice to see the new version out! :)

How do you have 2 MB of archive, though, yunhua? The 84+SE got 1540K user archive.
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on November 14, 2010, 11:25:57 am
Awesome!  Thanks Floppus! ;D
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on November 14, 2010, 01:27:53 pm
DJ: 1540 KB to the nearest thousand is 2 MB :P
I have to agree that it is one of the most useful things on my calculator :)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 14, 2010, 01:32:26 pm
Ah ok but I was wondering since that's still almost half a MB difference...
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on November 14, 2010, 01:53:36 pm
Yeah, it's a pretty horrible place to round to (666 to the nearest thousand is 1000! :P).
I've assumed he means it's practically empty in terms of apps, programs, etc.
Title: Re: Mimas by Benjamin Moody
Post by: yunhua98 on November 14, 2010, 07:52:01 pm
Nice to see the new version out! :)

How do you have 2 MB of archive, though, yunhua? The 84+SE got 1540K user archive.

no, my backup calc has 2000 bytes, not kilobytes.  ;)  meaning I keep everything archived in there.  :P
my main calc has 1140kb of archive due to my other calc.  :P
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on November 14, 2010, 08:40:15 pm
Ah, okay. DJ and I had assumed KB because the other number you gave was also in KB ;)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 15, 2010, 01:31:03 am
Ah ok, and yeah I saw 2000K so...
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 22, 2010, 06:46:07 pm
Hum... Just tried Mimas. It's the first in-calculator Asm( developper, right?

Or are there more?
Title: Re: Mimas by Benjamin Moody
Post by: calc84maniac on November 22, 2010, 06:53:18 pm
Hum... Just tried Mimas. It's the first in-calculator Asm( developper, right?

Or are there more?
It's the first competent one :P
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 22, 2010, 06:55:01 pm
Hum... Just tried Mimas. It's the first in-calculator Asm( developper, right?

Or are there more?
It's the first competent one :P

Hahah, that explains why a lot of you like it.

I don't program Asm( but it looks nice, especially the interface
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on November 22, 2010, 07:39:25 pm
it's not Asm(, that's the way to program raw hex in Axe, only Xeda can really do wonders with that.  This is the more commonly used er, form of Asm  (no ( needed).  an example prog:
Code: [Select]
#include "ti83plus.inc"
.org    ProgStart - 2
    .db    t2ByteTok, tAsmCmp
    b_call(_ClrLCDFull)
    ld    hl, 0
    ld    (PenCol), hl
    b_call(_PutS)
    inc   hl
    ld    (PenCol), hl
    ld    hl, msg2
    b_call(_PutS)           
    b_call(_NewLine)
    ret

msg:
    .db "Hello world!", 0
msg2:
    .db "I wrote this :)",0
.end
.end

the two .end's are for TASM compiling as it sometimes skips the first .end

BTW mah first assembly program ever -- I can't believe I still have a copy O.o
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 23, 2010, 12:05:56 am
Yeah Asm( is the command to run nostub ASM programs, not the name of the language.
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on November 23, 2010, 04:25:07 pm
Hum... Just tried Mimas. It's the first in-calculator Asm( developper, right?

Or are there more?
It's the first competent one :P
Says the guy that wrote two programs with a "non-competent" one that are on my calc. (Greyscale Tunnel and XtraVar) :P
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 23, 2010, 04:39:46 pm
Hum... Just tried Mimas. It's the first in-calculator Asm( developper, right?

Or are there more?
It's the first competent one :P
Says the guy that wrote two programs with a "non-competent" one that are on my calc. (Greyscale Tunnel and XtraVar) :P

Lol, nice job leaving out your own assembler ;)

No, it's the first competent one written in assembly.
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 23, 2010, 05:32:26 pm
Hah, an asm program to program in Asm, how funny!
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on November 23, 2010, 08:25:32 pm
Most C compilers are written in C ;)
Title: Re: Mimas by Benjamin Moody
Post by: nemo on November 23, 2010, 08:28:33 pm
Most C compilers are written in C ;)

except the first ;)
Title: Re: Mimas by Benjamin Moody
Post by: Quigibo on November 23, 2010, 09:41:35 pm
I've writen a Scheme interpreter in Scheme before.  :)
Title: Re: Mimas by Benjamin Moody
Post by: Eeems on November 23, 2010, 09:57:27 pm
I've writen a Scheme interpreter in Scheme before.  :)
now that's just silly :P
Hmm, someone should attempt to make a BASIC interpreter in BASIC (with DCS's help of course)
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on November 23, 2010, 11:55:54 pm
Lol Quigibo XD

I think someone tried to write a BASIC interpreter in TI-BASIC before. There was also an alternative language interpreted using TI-BASIC that was about 3 times slower than TI-BASIC, but 3 times smaller.
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 28, 2010, 10:23:38 am
Now that I know a little basic, I'd like a help from you guys. Using Mimas, I can program Assembly in calculator...

Is the syntax EXACTLY the same as in computer?

So...

Code: [Select]
#include "ti83plus.inc"
.org 40339
.db t2ByteTok, tAsmCmp

VariableNameTest .equ 666
ThisIsZero .equ 0
B_CALL _ClrLCDFull
ld a, VariableNameTest

add a, ThisisZero
ld h,2
ld l, 154

B_CALL _DispHL
B_CALL _getKey
B_CALL _ClrLCDFull
ret

I could do this?

EDIT: When I type this:

VariableNameTest .equ 666

it gives me 'UNKNOWN FUNCTION'
Title: Re: Mimas by Benjamin Moody
Post by: ztrumpet on November 28, 2010, 11:44:20 am
Use '=' instead of '.equ'. :)  Mimas doesn't support '.equ' yet. :D
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 28, 2010, 11:51:22 am
Use '=' instead of '.equ'. :)  Mimas doesn't support '.equ' yet. :D

That works better, but when I compile this:
Code: [Select]
VAR = 666
OTHERVAR = 0
BCALL ClrLCDFull
ld a, VAR

add a, OTHERVAR
ld h,2
ld l, 154

BCALL DispHL
BCALL GetKey
BCALL ClrLCDFull
ret

And compile it, I get:

Code: [Select]
Error

Argument 029Ah out of range

I have no idea what this means :S
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on November 28, 2010, 12:09:55 pm
VAR is 666, which is a 2-byte number. A is only a one-byte register, so you can't load VAR into A.

EDIT: 2222th post!
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 28, 2010, 12:11:42 pm
VAR is 666, which is a 2-byte number. A is only a one-byte register, so you can't load VAR into A.

1. Deep Thought, you have 2222 posts hahaha
2.
Code: [Select]
#include "ti83plus.inc"
.org 40339
.db t2ByteTok, tAsmCmp

VariableNameTest .equ 666
ThisIsZero .equ 0
B_CALL _ClrLCDFull
ld a, VariableNameTest

add a, ThisisZero
ld h,2
ld l, 154

B_CALL _DispHL
B_CALL _getKey
B_CALL _ClrLCDFull
ret

This works in the computer, though.

3.
Code: [Select]
VAR = 666
B_CALL _ClrLCDFull

ld HL, VAR
B_CALL _DispHL
B_CALL _getKey
B_CALL _ClrLCDFull
ret

What about this?
Title: Re: Mimas by Benjamin Moody
Post by: ASHBAD_ALVIN on November 28, 2010, 02:59:12 pm
Code: [Select]
#include "ti83plus.inc"
.org $9D95
.db t2ByteTok, tAsmCmp

VariableNameTest .equ 666
ThisIsZero .equ 0
B_CALL _ClrLCDFull
ld bc, VariableNameTest

add c, ThisisZero
ld h, 2
ld l, 154

B_CALL _DispHL
B_CALL _getKey
B_CALL _ClrLCDFull
ret

anything over 255 is a 16 bit number, and requires a 16 bit register.  BC is a good one to use when not using HL or DE.  And, you can't really use AF much for that type of thing.  So BC == good. 

To add to BC, you can add C and that zero var, which (I think) conserves more space like a byte or two and is faster.  C is the small byte of BC, so when you add 1 to that, BC is equal to old BC plus one.  When you add to B however, BC is equal to old BC plus 256.  that is because B is the high byte, which takes care of the numbers higher than 255 for the BC register.  You may want to study this a lot and get it down before going too much further though, and I'm sure that hot dog's tutorial will explain it better than me. 
Title: Re: Mimas by Benjamin Moody
Post by: calcdude84se on November 28, 2010, 03:26:59 pm
To add a one-byte number to and register pair, you need to use a. (add c,NUM is not a valid instruction)
Here's an adaptation from a routine to add a to hl:
Code: [Select]
ld a,num_to_add
add c
ld c,a
adc a,b
sub c
ld b,a
This takes care of carry and everything.
Also, what register you use should be determined by the circumstances (like what routines you will be calling, for example, or what instructions are valid).
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on November 29, 2010, 08:57:13 am
To add a one-byte number to and register pair, you need to use a. (add c,NUM is not a valid instruction)
Here's an adaptation from a routine to add a to hl:
Code: [Select]
ld a,num_to_add
add c
ld c,a
adc a,b
sub c
ld b,a
This takes care of carry and everything.
Also, what register you use should be determined by the circumstances (like what routines you will be calling, for example, or what instructions are valid).

Thanks, that works!
Title: Re: Mimas by Benjamin Moody
Post by: souvik1997 on December 26, 2010, 10:32:20 pm
Sort of a necropost but I have a question. In Mimas 0.3, the library files don't do anything. For example, when I import IonEqu and type "CALL iPutSprite" the compiler thinks I have a label called iPutSprite. Also, it doesn't add anything to the menus.
Title: Re: Mimas by Benjamin Moody
Post by: Eeems on December 26, 2010, 11:50:30 pm
Yeah I've had issues with this too
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on January 01, 2011, 07:09:12 pm
It's defined as "ionPutSprite", not "iPutSprite".

If you do have a program that isn't being assembled correctly, please send me a copy if you can (post it here, or PM or email it to me, or whatever.  I won't distribute it to anyone else if you don't want me to.)  If you can find a small test case that exhibits the bug, that's always appreciated, but don't let that stop you from posting a large test case if you're not sure how to simplify it.

You're right that there ought to be a menu of symbols that are provided by libraries, but that proved to be rather difficult; I'm planning to implement it eventually, but I haven't done so yet.
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on January 01, 2011, 07:16:48 pm
FloppusMaximus, it's a pleasure to meet you, I love Mimas, congratulations!
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on February 15, 2011, 03:54:09 pm
I finally downloaded this on my real calc. It's awesome O.O
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on February 15, 2011, 04:10:25 pm
I finally downloaded this on my real calc. It's awesome O.O

That was late xD, it's awesome, super easy to use and awesome compiler.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on February 15, 2011, 06:14:36 pm
I finally downloaded this on my real calc. It's awesome O.O

That was late xD, it's awesome, super easy to use and awesome compiler.

You said 'awesome' twice, and I agree ;D

Finally I can program ASM offline.
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on February 17, 2011, 04:05:29 am
Just make sure, like with Axe, to backup often, though. X.x
Title: Re: Mimas by Benjamin Moody
Post by: Munchor on February 17, 2011, 09:47:47 am
Quote
Finally I can program ASM offline.

There are other compilers... For a longer time too, but this one outruns them all!

Also, why do you need to be online to program Assembly? Don't you mean in a computer?
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on February 17, 2011, 09:58:44 pm
Bug report:

Mimas sets bufferOnly (in plotFlag3) but doesn't reset it when quitting.

Quote
Finally I can program ASM offline.

There are other compilers... For a longer time too, but this one outruns them all!

Also, why do you need to be online to program Assembly? Don't you mean in a computer?

Yeah, I meant on a computer.

I used to use Tasm_on_Calc, then OTBP. Both were a bit slow for me.
Title: Re: Mimas by Benjamin Moody
Post by: FloppusMaximus on February 17, 2011, 10:39:18 pm
I'm glad you guys like it. :)

Bug report:

Mimas sets bufferOnly (in plotFlag3) but doesn't reset it when quitting.
Are you sure about that?  It shouldn't - it never uses that mode.  I've just noticed, however, that it leaves the plotLoc flag set.  Maybe that's what you're seeing?

(I guess I just assumed that plotLoc would be reset by the OS.  Turns out that isn't the case.  bufferOnly, however, is reset automatically, so even if Mimas did leave that flag set, it wouldn't cause any problems.)

I'll fix it as soon as possible, but just out of curiosity, what sort of problems does this cause?
Title: Re: Mimas by Benjamin Moody
Post by: z80man on February 17, 2011, 10:48:49 pm


Yeah, I meant on a computer.

I used to use Tasm_on_Calc, then OTBP. Both were a bit slow for me.
What I always thought was ironic about TASM_ON_CALC was that the majority of the assembler was programmed in BASIC. It also took forever just to compile a simple program.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on February 17, 2011, 10:57:21 pm
I'm glad you guys like it. :)

Bug report:

Mimas sets bufferOnly (in plotFlag3) but doesn't reset it when quitting.
Are you sure about that?  It shouldn't - it never uses that mode.  I've just noticed, however, that it leaves the plotLoc flag set.  Maybe that's what you're seeing?

(I guess I just assumed that plotLoc would be reset by the OS.  Turns out that isn't the case.  bufferOnly, however, is reset automatically, so even if Mimas did leave that flag set, it wouldn't cause any problems.)

I'll fix it as soon as possible, but just out of curiosity, what sort of problems does this cause?

I noticed plotLoc too. I just thought it also did something to bufferOnly because I noticed an Axe program that uses Bitmap( didn't work properly after. Fix 8 (in Axe), which resets bufferOnly, seemed to fix it. It might have been plotLoc after all, though (I'm not really sure how the Bitmap( thing works).
Title: Re: Mimas by Benjamin Moody
Post by: DJ Omnimaga on February 18, 2011, 04:13:16 am
What OS do you have Deep Thought?
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on February 18, 2011, 06:42:07 pm
TI-83 Plus v1.19.
Title: Re: Mimas by Benjamin Moody
Post by: Deep Toaster on August 14, 2011, 10:42:20 pm
Another bug report: Including a program as a library in itself ends in an endless loop. (Okay, I should probably have expected that. But protection against it would be nice :))