Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - FloppusMaximus

Pages: 1 ... 17 18 [19] 20
271
The Axe Parser Project / Re: On-calculator app signing
« on: October 16, 2010, 06:20:15 pm »
A progress bar?  Sure, that would be easy enough to do.  I guess I should point out, though, there are two distinct parts to app signing: MD5 hashing, and the Rabin algorithm or "signing" proper.  The MD5 calculation takes time proportional to the size of the application, and will be significantly faster on an 83+ SE or 84+ due to hardware acceleration (I'm not sure about the Nspire, but it's probably comparable to the 84+.)  The Rabin algorithm, in contrast, will take almost exactly the same amount of CPU time regardless of the application.  So the two parts aren't directly comparable.

272
The Axe Parser Project / Re: On-calculator app signing
« on: October 15, 2010, 10:51:16 pm »
It's the size of the app including the header, but not including the signature (so, starting from 4000h, up to the 02h byte that marks the beginning of the signature.)  Or to put it a different way, the app length field in the header should be set to something other than 49 mod 64.

You can just stick an extra byte onto the end, before the signature - that's what RabbitSign does, and it shouldn't make any difference to the app, unless you're depending on that byte being set to 2 for some reason.

273
The Axe Parser Project / Re: On-calculator app signing
« on: October 15, 2010, 10:15:22 pm »
OK, I was just joking.  I wasn't really expecting Quigibo to have thought of that, just trying to point out, in a slightly facetious way, that it would have been nice if he had.

274
The Axe Parser Project / Re: On-calculator app signing
« on: October 15, 2010, 10:04:27 pm »
Um.  I'm sorry, I certainly don't mean any offense.  What part of my comment did you find unfriendly?

275
The Axe Parser Project / On-calculator app signing
« on: October 15, 2010, 09:59:07 pm »
Like I said over in the Mimas thread, I've been experimenting a bit to see how practical it would be to sign apps on the calculator.  So I figured I'd take a look at how Axe generates applications.

(App signing on the calc is never going to be instantaneous (except maybe on the Nspire in ARM mode), so you probably don't want to do it every time you build an app, but it would be nice to have it as an option when you want to distribute your app to others.)

Thus, a few points:
1. It seems that when Axe generates an app, the "signature" is filled with zeroes.  It would make life a lot easier, from my perspective, if you used FF bytes instead (and since the signature is invalid either way, it shouldn't matter what you put there initially.)

2. App signatures on the 83+ must begin with the bytes 02 2D 40 (followed by 66 bytes of data), not 02 0D (the latter is used for OS signatures as well as for app signatures on the 89/92+.)

3. Does Axe deal with the 55-mod-64 bug?  (An application must not be exactly 55 bytes long mod 64; if it is, it can't be installed on a TI-73 or 83+ BE due to a bug in the boot code.  So if an app is 55 bytes mod 64, RabbitSign will add an extra byte to the end, and increase the app length field accordingly.  This would be easy to do at the time the app is compiled, and hard to do later.)

4. Only tangentially related to app signing, but does Axe deal with the FF-at-the-start-of-a-page bug?  (If you have FF at the beginning of any app page, the OS will set the entire page to FFs when apps get defragmented.  I wrote a program to patch the OS and fix this bug, but it's best to avoid that if at all possible.)

276
Other Calculators / Re: Mimas by Benjamin Moody
« 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.)

277
Other Calculators / Re: Mimas by Benjamin Moody
« 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.)

278
Other Calculators / Re: Mimas by Benjamin Moody
« 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.

279
Other Calculators / Re: Mimas by Benjamin Moody
« 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.

280
Other Calculators / Re: OS 2.21 From Calc to Computer
« on: October 12, 2010, 12:02:13 am »
Here's a program that should work to convert an 83+/84+ ROM image to an 8xu file.  It doesn't sign the OS or even check that the signature is valid; garbage in, garbage out.

Funny story: the first real ROM image I found to test this on was a dump of a TI-83+ running OS 1.12.  So I ran the program and compared the results against os112.8xu.  I was expecting to see a few differences between the two files (the date stamp is different, and TI's older OS files don't have the version number in the header.)  But as it happened, the two files matched even more exactly than I had hoped... because it turns out OS 1.12 was originally released on October 11, 1999.

281
Other Calculators / Re: Mimas by Benjamin Moody
« 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 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?)

282
Other Calculators / Re: Mimas by Benjamin Moody
« 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.

283
Other Calculators / Re: Mimas by Benjamin Moody
« 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.

284
Other Calculators / Re: OS 2.21 From Calc to Computer
« on: October 11, 2010, 12:23:04 am »
What calcdude84se is describing is a ROM dumper (albeit somewhat harder to use than your typical ROM dumper.)  The OS is part of "ROM", you know. :)

Presumably the question is how to convert a binary ROM image into an 8xu file that you could install on another calculator, and the answer is, as far as I know there isn't any program to do that.  But it wouldn't be difficult to write.

285
Other Calculators / Re: Mimas by Benjamin Moody
« 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.)

Pages: 1 ... 17 18 [19] 20