Author Topic: Features Wishlist  (Read 621082 times)

0 Members and 1 Guest are viewing this topic.

Offline Raylin

  • Godslayer
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1392
  • Rating: +83/-25
  • I am a certifiable squirrel ninja.
    • View Profile
    • Ray M. Perry
Re: Features Wishlist
« Reply #390 on: April 06, 2010, 11:04:36 pm »
What about imag()?

Could that work?
Bug me about my book.

Sarah: TI-83 Plus Silver Edition [OS 1.19]
Cassie: TI-86 [OS 1.XX]
Elizabeth: TI-81 [OS 1.XX]
Jehuty: TI-83 Plus Silver Edition [OS 1.19]
Tesla: CASIO Prizm







SirCmpwn

  • Guest
Re: Features Wishlist
« Reply #391 on: April 06, 2010, 11:07:53 pm »
^ I like that idea.
Also, you could easily do something similar to Celtic III for file access.  (I just realized Iambian is on this thread right now, lol)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #392 on: April 06, 2010, 11:09:34 pm »
I think Quigibo is already planning to use IS>() and DS<() for increasing and decreasing with a specified "wrap" value
The If counter commands, IIRC. He explained it in a post somewhere but I don't remember in which thread. (Darn this sub-forum is getting big)

Also try to not use too many two byte tokens for commonly used Axe commands, such as ANOVA(
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #393 on: April 07, 2010, 12:39:30 am »
For sprites larger than 8x8, you can just use a subroutine:

:[your 16x16 sprite here]->Pic1
:0->X->Y
:Pic1sub(DS)
:DispGraph
:Return

:Lbl DS
:->A
:Pt-On(X,Y,A)
:Pt-On(X+8,Y,A+8)
:Pt-On(X,Y+8,A+16)
:Pt-On(X+8,Y+8,A+24)
:Return

This will draw sprites with any size from 9 to 16 pixels.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #394 on: April 07, 2010, 12:57:21 am »
Would LordConiupiter routine work as well too? He posted some weird sprite routines that apparently displays 16x16 sprites, using some r commands. Which one would be faster and which one would be smaller (in ASM form)?

http://ourl.ca/4129/83923
« Last Edit: April 07, 2010, 12:58:25 am by DJ Omnimaga »
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #395 on: April 07, 2010, 01:08:46 am »
That's is basically a Pt-Off() routine, but it only works when the sprite is aligned to the 8x8 grid.  BUT, if you only need the sprite aligned anyway and are always using Pt-Off(), it sure does work.  Keep in mind though that the axe sprite commands are usually smaller and faster.  I haven't compared this one though.
« Last Edit: April 07, 2010, 01:11:08 am by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #396 on: April 07, 2010, 01:43:17 am »
Ah ok thanks for the info. To me, such routine would most likely be for both tiles and sprites, so having to align it might be an issue if I wanted smooth movement x.x
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #397 on: April 07, 2010, 02:56:08 am »
Just updated the list fyi.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #398 on: April 07, 2010, 03:10:54 am »
Ok good ^^


Regarding features, there's something I wonder... would support for 4 bits integers be something very hard to implement? In the cases where people use one byte for two tiles in a tilemap data, for example, maybe it would make it easier for people to work with the data, as they wouldn't need to remember how to write routines to split it.

Also, when Axe final version (or the one where old commands will have almost no more chances of changing) is out, do you think it may be best to split Axe routines into their own sub-forum and put them in a new sub-forum between TI-BASIC routines and ASM routines? As for now, they are getting harder and harder to find through the 1400+ posts in this sub-forum, even if a topic dedicated to them was made, but for now I would wait a bit to do such thing, though, since you said Axe syntax for some commands may change (unless this is not the case anymore?)
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Features Wishlist
« Reply #399 on: April 07, 2010, 07:19:59 am »
Regarding features, there's something I wonder... would support for 4 bits integers be something very hard to implement? In the cases where people use one byte for two tiles in a tilemap data, for example, maybe it would make it easier for people to work with the data, as they wouldn't need to remember how to write routines to split it.

If you have a byte A with two 4-bit numbers packed in it, you can extract them with A/16 and A^16

Edit:
If you want greater speed, use A*16/256 instead of A/16 so it doesn't have to do any real division
« Last Edit: April 07, 2010, 07:21:47 am by calc84maniac »
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #400 on: April 07, 2010, 10:12:37 am »
Thanks I guess that works too and I didn't knew about the later x.x, I guess it might be a good thing to add to Optimizing Tips.txt.

As for A^16, I assume afterward it may be best to redivide it with A*16/256 (or A/16) afterward, right? I worry about having to use more If/then conditions for sprite/tiles displaying then x.x (since that sprite number would be multiplied by 16 unlike the one initially extracted with

Btw I would also find half bytes much easier to read than full bytes in map data since each tile would be one single character instead of two and as you know I am so used to work with text for sprites, so if I need to do a quick edit without wanting to dig up a tile/map editor, I can simply just edit the data directly easier.
« Last Edit: April 07, 2010, 10:18:04 am by DJ Omnimaga »
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Features Wishlist
« Reply #401 on: April 07, 2010, 10:17:33 am »
Mmmm it would be nice for Axe to optimize division by any number multiple of 2 into a chain of bitshifts.  I was at first surprised how slow /64 was compared to /2 :P

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #402 on: April 07, 2010, 10:18:47 am »
yeah that might be a good idea too, even if it means slower compiling :P
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Features Wishlist
« Reply #403 on: April 07, 2010, 10:21:14 am »
Hah, at this point i dont think we even have to worry about compiling speed.  It might be the difference between 1 second and 1.1 seconds ^^ Gosh i love the Axe compiling speed, especially after having worked with the slow version for so long ;)

SirCmpwn

  • Guest
Re: Features Wishlist
« Reply #404 on: April 07, 2010, 10:23:22 am »
Yeah, Axe compiles super fast.  I love it.
Also, I would like to be able to retrieve the pointers to a label for normal math.  This could be useful in the Half Life game engine.  For instance:
Code: [Select]
AB->A
Disp A>Dec   ; Display the address of AB
Return
Lbl AB
Disp "Hello World"