This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's z80 & ez80 Assembly subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. Z80 & 68k Assembly => z80 & ez80 Assembly
Author Message
bananaman
Indestructible


Calc Guru


Joined: 12 Sep 2005
Posts: 1124

Posted: 27 Nov 2008 12:16:11 pm    Post subject:

I have been having troubles trying to get an ion program to compile with spasm on my linux machine. I used the standard header from joewing.net and used the ion.inc file from his website as well. Unfortunately spasm keeps on telling me that there are errors in the ion.inc file.

My guess is that it doesn't like the #ifdef TI83P stuff, but I am really at a loss as to what is the issue. Has anybody else been able to successfully assemble ion programs under the spasm environment?
Back to top
elfprince13
Retired


Super Elite (Last Title)


Joined: 11 Apr 2005
Posts: 3500

Posted: 27 Nov 2008 07:53:18 pm    Post subject:

just get rid of the IFDEF's and only use the 83 plus definitions, not the 83 definitions.

its much more helpful if you post the actual errors you're getting though.
Back to top
bananaman
Indestructible


Calc Guru


Joined: 12 Sep 2005
Posts: 1124

Posted: 27 Nov 2008 10:31:42 pm    Post subject:

Sweet, it works now. Although it gives me a warning for every single bcall(xxxx) instruction, but it seems to execute the program correctly, it was just a simple hello world program.

The warning that it gives me is...
20: warning: Suggest remove extra parentheses around argument


Last edited by Guest on 22 Jul 2010 11:52:32 am; edited 1 time in total
Back to top
bananaman
Indestructible


Calc Guru


Joined: 12 Sep 2005
Posts: 1124

Posted: 27 Nov 2008 11:21:30 pm    Post subject:

Alrightly, I tried assembling a slightly more complicated program and I got the following errors...
74: error: '_RunIndicOff' isn't a macro or label
75: error: '_DisableApd' isn't a macro or label
1046: error: '_RunIndicOn' isn't a macro or label
1047: error: '_EnableApd' isn't a macro or label


Are these bcalls unnecessary with ion. Are they automatically turned off when you are running the shell, so it doesn't let you use them in a program???

Also, it seems to not be liking my tank program.
[attachment=2539:attachment]
Are there some idiosyncrasies with ion that might be causing this. If you look at the screenshot you will notice that the values for the starting frequencies are all 0 even though the bomber should be at 5, and your starting exp is 0 when it should be higher as well. All I did was change the header for the program and remove those 4 bcalls. I'm guessing that it has something to do with storage in memory.

Edit:
saferam1
saferam2

I got it working.


Last edited by Guest on 22 Jul 2010 11:29:54 am; edited 1 time in total
Back to top
FloppusMaximus


Advanced Member


Joined: 22 Aug 2008
Posts: 472

Posted: 28 Nov 2008 02:17:24 pm    Post subject:

I seem to remember that some memory addresses are defined incorrectly in ion.inc. I never use that include file (I can never remember all the nonstandard names anyway.)
Back to top
bananaman
Indestructible


Calc Guru


Joined: 12 Sep 2005
Posts: 1124

Posted: 28 Nov 2008 05:33:00 pm    Post subject:

If you don't use that include file how do you compile a program for ion?
Back to top
brandonw


Advanced Member


Joined: 12 Jan 2007
Posts: 455

Posted: 28 Nov 2008 06:16:53 pm    Post subject:

You can use any include file you want. I would think it's safe to say FloppusMaximus and I have our own include files built up from other include files and our own research.

There's nothing in there you absolutely must need for Ion. All you really need is the Ion header.
Back to top
FloppusMaximus


Advanced Member


Joined: 22 Aug 2008
Posts: 472

Posted: 29 Nov 2008 12:10:59 am    Post subject:

The only things you might need the Ion include file for are the Ion library functions. For everything else, you can use ti83plus.inc or squish.inc. (Of course, ion.inc does provide a lot of aliases for system routines and memory areas, so you might have to hunt around a bit if you're used to using the unofficial names. But then, I think it makes things less confusing to use the official names whenever you can.)

Here are the definitions for the Ion library functions, should you want to use them:

Code:
lVectors        .equ cmdShadow+80
ionVersion      .equ lVectors
ionRandom       .equ lVectors+3
ionPutSprite    .equ lVectors+6
ionLargeSprite  .equ lVectors+9
ionGetPixel     .equ lVectors+12
ionFastCopy     .equ lVectors+15
ionDetect       .equ lVectors+18
ionDecompress   .equ lVectors+21
Back to top
Display posts from previous:   
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
    »
» View previous topic :: View next topic  
Page 1 of 1 » All times are UTC - 5 Hours

 

Advertisement