Author Topic: ASMDREAM - the TI-8X+ on-calc assembler  (Read 14349 times)

0 Members and 1 Guest are viewing this topic.

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #45 on: January 13, 2012, 12:00:48 pm »
You're welcome Xedy =]
Btw, how naughty is your ti-connect ?

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #46 on: January 13, 2012, 12:03:34 pm »
Oh, it recognises my calc, it just doesn't seem to want to send anything :/

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #47 on: January 13, 2012, 12:05:07 pm »
Weird...
Do you use a front panel usb port ?
Any other usb devices in trouble ?

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #48 on: January 13, 2012, 12:06:48 pm »
One of my USB ports has not worked for about a year (it still supplies power, so I can charge things), but TI-Connect has always been notorious for not being reliable.

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #49 on: January 13, 2012, 12:10:38 pm »
Low batteries sometimes causes it to fail on transfers as well. You can try a fresh set if yours isn't.

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #50 on: January 13, 2012, 12:12:43 pm »
Thanks! I will try that and that is probably the reason. In any event, I got it to send to my other calculator (after I got the batteries out of my 89), so I can use it :)


EDIT: Okay, so I have a few questions:
1) Is there any way to use calls in a macro? That could be very helpful!
2) Would you be able to add these as math operations: *, /, and, or, xor, not( ?

I ask these two because I wanted to make this macro:
Code: [Select]
Pxl-On(?,?{
 LD BC,?0+?1*256
 CALL GETPXLLOC
 OR (HL)
 LD (HL),a
}

Also, I made the outline of a snake game using Asmdream!

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #51 on: January 14, 2012, 08:06:52 am »
1) Is there any way to use calls in a macro? That could be very helpful!

In asmdream, an address label is always local, which means it can only be refered to in the area where it was defined.
In other words, it's not possible to refer directly to an address label in a macro body, if the label was defined in the data|code area of your source.
The thing is, macro parameters are there to help you do that =]

For example, this won't work :

Code: [Select]
APPLE{
CALL JUICE < "undefined label" error there, since JUICE is not in the macro area.
}
prgmFRUIT
APPLE
JUICE
...

You have to use a macro parameter to be able to refer to JUICE, indirectly, like this :

Code: [Select]
APPLE(?){
CALL ?0
}
prgmFRUIT
APPLE(JUICE) < JUICE can be refered there, since it's in the same area.
JUICE
...

You can also use this method, if your code is compatible :

Code: [Select]
APPLE{
...
}
prgmFRUIT
CALL JUICE
JUICE
APPLE

You can also define address labels directly in a macro body (but won't then be able to refer to them in the data|code area of the source) :

Code: [Select]
APPLE{
CALL JUICE
JUICE
...
}
prgmFRUIT
APPLE

2) Would you be able to add these as math operations: *, /, and, or, xor, not( ?

Most of the missing operators are already in my todo list (see first post).
To be honest, that won't be for today, since i have to revise many routines to integrate those.

I won't probably add the / operator, since there could be conflicts with labels names (/ already used as a replacement for _).

Same thing goes for the not( token.
Indeed, that left parenthese bothers me, since parenthese tokens are already reserved for instructions & macros.
Anyway, you'll still have this option : -argument-1.

I ask these two because I wanted to make this macro:
Code: [Select]
Pxl-On(?,?{
 LD BC,?0+?1*256
 CALL GETPXLLOC
 OR (HL)
 LD (HL),a
}

I know u know but this piece of code is a good occasion for me to clarify for other potential users :

Only the following tokens are allowed in a macro name definition :
 numbers (0>9)
 uppercase letters (A>Z) < The first one must be one of these.
 space
 ,
 > (store)
 (
 )
 ? (special, defines a parameter)
 { (end of line only)
Unfortunately, i'm afraid allowing more tokens would slow down the macro parsing and i want to avoid that.

Also, LD (HL),a should be LD (HL),A.

Also, I made the outline of a snake game using Asmdream!

I'm definitely happy to see i'm not the only one testing asmdream.
That's a true honor my friend =]
« Last Edit: January 15, 2012, 08:12:29 am by the_mad_joob »

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #52 on: March 26, 2013, 01:36:15 pm »
NEWS

Version 1.00 is out.

Not many changes, since i decided to go for a bigger project.
That said, i won't probably add new features (sorry bout that).
I'll still handle bug fixes of course.

Changes :

Bug fix : Instructions starting with "EX" now work properly.
Bug fix : Using the goto feature doesn't eat a few stack entries anymore.
Undocumented instructions syntax now fit the one used in "The Undocumented Z80 Documented" by Sean Young (as a reference).
Added "IM 3" instruction ($ED,$4E).
"NOSTUB" macro renamed to "ASM".
Removed extra instructions (I'll handle that in my other project).
Running asmdream from external code is now supported (standard and auto modes, see asmdream.txt).
Some reorganisations in includes.
Some optimisations here and there.
source now available, as promised.

See you around =]

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #53 on: March 26, 2013, 03:12:22 pm »
This is good news :). What is your next project by the way?

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #54 on: March 26, 2013, 03:51:38 pm »
Yo master DJ =]

It will be some kind of shell...

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #55 on: March 27, 2013, 07:25:13 am »
Are you hoping to have some kind of built in editor or something? Also, thanks for the update!

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #56 on: March 27, 2013, 01:22:03 pm »
You're welcome buddy =]
I gave up the idea of coding a shell (today actually).
Instead, i'll probably go for a new programming language.
I really like the idea of making it real-time.
But it's quite a challenge, since parsing & executing at the same time eats some cycles.
I'm curious to see how fast it can be (compared to ti-basic)...
« Last Edit: March 27, 2013, 01:25:52 pm by the_mad_joob »

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #57 on: March 27, 2013, 01:39:09 pm »
Instead, i'll probably go for a new programming language.
I really like the idea of making it real-time.
But it's quite a challenge, since parsing & executing at the same time eats some cycles.
I'm curious to see how fast it can be (compared to ti-basic)...
Already, asmdream could be converted into a powerful language on its own. If you take out the compiling menu stuff and simply run through the source code throwing in bonus functions like for drawing, output/input, and loops, it doesn't matter if it is slower. It would still be a very powerful language with how versatile you have made macros.

Offline the_mad_joob

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 346
  • Rating: +47/-0
    • View Profile
Re: ASMDREAM - the TI-8X+ on-calc assembler
« Reply #58 on: March 27, 2013, 04:21:24 pm »
Versatile ? I like that word =P