Author Topic: Solar89 SDK  (Read 20218 times)

0 Members and 1 Guest are viewing this topic.

Offline qazz42

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1130
  • Rating: +30/-12
  • hiiiiiiiii
    • View Profile
Re: Program Z80 Basic on a 68k calc
« Reply #30 on: August 09, 2010, 09:48:10 pm »
wow, this is cool, this project has a future! I hope to get a 68K calc >:)

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Program Z80 Basic on a 68k calc
« Reply #31 on: August 12, 2010, 03:51:25 pm »
Update: All one-byte tokens are now supported.

I've been working on an error-handling system, but it has some bugs at the moment (sometimes it works, sometimes it doesn't)... however, here's how it will work:

-If the converter reduces a line to a single character, and that character is not a token, an error message appears in a dialog box.

-The program then writes a question-mark token (not one of the unused tokens, the actual AFh question mark) in place of that character.

This is necessary because otherwise the program will enter an infinite loop, trying to break down the one-character line further.



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline qazz42

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1130
  • Rating: +30/-12
  • hiiiiiiiii
    • View Profile
Re: Program Z80 Basic on a 68k calc
« Reply #32 on: August 12, 2010, 11:10:25 pm »
Wow, this is coming along great, I cant wait till christmas when I get a 68K calc, wanna tell me which would be the best to have?

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Program Z80 Basic on a 68k calc
« Reply #33 on: August 13, 2010, 10:22:06 am »
Wow, this is coming along great, I cant wait till christmas when I get a 68K calc, wanna tell me which would be the best to have?
Well, if you want to use the calculator on standardized tests, a TI-89 Titanium. True, there are compatibility problems with older programs but most of those have been solved.

I think the Voyage 200 is pretty cool, but it's blocked on standardized tests, which was one reason why I didn't get one.

Then the TI-89, TI-92, and TI-92+ I don't think are sold anymore, and they're outdated and have less memory-getting the 89 and 92+ would be like getting an 83+ instead of an 84+(SE). But I wouldn't recommend the 92 even if you could get it, because TIGCC/GCC4TI doesn't compile for it and it doesn't have built-in assembly support like all the other 68k calcs.



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: Program Z80 Basic on a 68k calc
« Reply #34 on: August 13, 2010, 11:46:58 am »
I second TC01, the 89T is clearly the best choice if you want to use your calculator on standardized tests.

The 92(II) suffers from lower math capabilities, a lower amount of memory, and much less advanced assembly programming (albeit possible with Fargo and TIGCC/GCC4TI) due to fewer functions and most of all, the lack of a jump table, which translates to a low count of assembly programs (compared to that of the rest of the TI-68k family). Just don't buy a 92.
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Program Z80 Basic on a 68k calc
« Reply #35 on: August 13, 2010, 01:36:12 pm »
And multi-line programs, and multi-token lines both work now, as you can see from the Hello World program I've tokenized and loaded into WabbitEmu.

I'm still not sure if error checking is working properly- I'll need to look at that.

The entire process of initializing the one-byte tokens, then tokenizing Hello World, takes five seconds. For small programs that's okay but once I add the two-byte tokens it might become problematic.



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Program Z80 Basic on a 68k calc
« Reply #36 on: August 14, 2010, 11:46:07 am »
I have attached v0.1, an alpha and testing version, since everything seems to be working (even though there are only one-byte tokens supported at the moment).

If you use it on a real calculator, I highly recommend doing a backup and then installing a crash protection program (either PreOS or KerNO) if you don't use one already, simply because even though it seems to work perfectly, there's always the chance of a bug that I missed.

I have provided a demo that you can try tokenizing (the same program in the screenshot above). There's documentation on what exactly to do with all of the programs included (in the various readme files), and once you get everything setup I recommend trying the demo (since I know it should work).

I'd like people with a Voyage 200 or TI-92 Plus to try it on those calculators, to see if it works- I have versions provided for them but I obviously can't test them. You can also try testing other calculator models- the only one that definitely won't work is the 85 since BinPac8x makes strings, not program files for it. (And the 86 probably uses different token codes than the 82, 83, and 84+).

[Attachment removed- outdated version].
« Last Edit: September 12, 2010, 04:37:06 pm by TC01 »



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55881
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Solar89 SDK
« Reply #37 on: August 14, 2010, 01:42:58 pm »
I'm glad this is still progressing. Also I renamed your topic per your request

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Solar89 SDK
« Reply #38 on: August 16, 2010, 07:54:08 pm »
Two more updates.

First, two-byte tokens now work! I've only tested (and added) the matrix tokens, but they tokenize fine. I did have a bug involving any token with a 00 byte, but with TravisE's help I fixed it. Now I can start adding the other user variable tokens.

Second, I've added a new feature (of a sort): the ability to run this program by passing it three arguments instead of from the dialog box. This might not sound too useful, but I did it because it would allow you to call this program from a 68k BASIC program, allowing you to quickly retokenize a program that you are editing without needing to fill in the dialog again (something that has annoyed me in my testing).

It also doesn't break the dialog- if you do not have three arguments to the program, the dialog box appears instead.

Also, I can see that a few people have downloaded the alpha I uploaded... if you have, has it worked? Any bugs to report?



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55881
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Solar89 SDK
« Reply #39 on: August 17, 2010, 10:25:06 am »
Nice, I like the running of the program with 3 arguments. I personally tend to dislike filling multiple forms and stuff and I find the 68k ones to be a bit annoying to fill.

Sadly I did not have time to test yet, though, hopefully I might next week.

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Solar89 SDK
« Reply #40 on: August 18, 2010, 06:58:39 pm »
Another update: all user variable tokens and statistics tokens are now supported.

Unfortunately, I've discovered a bug- if you have more than 15 tokens on a line, the program freezes after execution. (I assume this occurs with the currently posted version too). Tested only in TiEmu thus far, but I'd guess it happens on-calc as well.

I'm not sure why, or even what kind of problems could cause this, but I'll fix it before I release 0.2.



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55881
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Solar89 SDK
« Reply #41 on: August 20, 2010, 12:22:45 pm »
Weird, I hope you can manage to fix it x.x

Btw, will you support some of the hard to reach ASCII tokens? In Illusiat 13, for example, I use the Omega symbol, the arrow before the Frac command but alone, the $ symbol, etc.

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Solar89 SDK
« Reply #42 on: August 20, 2010, 12:41:26 pm »
Weird, I hope you can manage to fix it x.x

Me too. ;) No luck so far though.

EDIT: That was rather ironic. I fixed it just after I posted that I was having no luck with it! ;D The problem was pretty simple- I wasn't allocating enough memory to the array containing the tokenized line. Or, rather, there was enough for the line itself... but not enough for the hard return token afterwards too.

So I was overwriting some memory on the calculator, hence a corrupt heap (what I got when I installed KerNO on TiEmu).

Quote
Btw, will you support some of the hard to reach ASCII tokens? In Illusiat 13, for example, I use the Omega symbol, the arrow before the Frac command but alone, the $ symbol, etc.

I'll support them- as long as their hex codes are documented somewhere (otherwise, of course, I can't support them).
« Last Edit: August 20, 2010, 01:37:26 pm by TC01 »



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Solar89 SDK
« Reply #43 on: August 20, 2010, 07:13:49 pm »
Beta v0.2 has been released! I've uploaded it to the Cemetech Archives here (since I prefer uploading to a downloads database than just attaching to a post, and also because I don't want to post it on ticalc.org until I'm sure it's bugfree).

In addition to the new tokens, the bugfix, and the argument-passing, here are the other changes:

-I modified BinPac8x to make *.85p files (changed the file and variable type)

-I added some error handling code in make8xp; it prints a message explaining that the file path and/or name is incorrect and then waits for a keypress, rather than just printing the Python exception and exiting (especially important if running by double-clicking rather than the command-line).

-I fixed another bug where all tokens starting with a space ended up with an extra space at the front of the name



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55881
  • Rating: +3151/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Solar89 SDK
« Reply #44 on: August 22, 2010, 07:26:17 pm »
I think their ASCII code is available in ASM in 28 days near the end.

Nice to see new updates ^^ I also like how you can do programs for multiple calc models. It should make porting much easier.

Also we're soon gonna have a downloads section too so you're gonna be able to upload your stuff there too :)