Author Topic: Features Wishlist  (Read 620167 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 #330 on: March 29, 2010, 10:32:21 am »
Wait.
What?

I read your post, Galandros.
I was like... .D.

Explain please.
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







Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Features Wishlist
« Reply #331 on: March 29, 2010, 10:42:04 am »
Basically that you could handle numbers from 0 to 255 or -128 to 127 with lowercase letters.
You gain 26 fast variables for numbers.
Operations with them would be much faster (and maybe smaller, depending on the overhead to all functions needed) when translated to assembly.

An example usage of this:
1->a
If a<8
a+1->a
Disp a>Dec
Hobbing in calculator projects.

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Features Wishlist
« Reply #332 on: March 29, 2010, 11:41:00 am »
I think its a good idea, but how would it be smaller or faster?
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

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 #333 on: March 29, 2010, 11:46:28 am »
I think its a good idea, but how would it be smaller or faster?
Because the z80 is an 8-bit processor, and by nature doing 16-bit operations is slower and produces larger code.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Features Wishlist
« Reply #334 on: March 29, 2010, 11:49:49 am »
Ah ok I understand now.
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

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 #335 on: March 29, 2010, 01:53:49 pm »
can someone please explain how a counter statement will work?
perhaps I'll understand it when i see an example, but right now i don't know what it exactly will be.
Something like a for loop with multiple vars ???
Quoted from Quigibo on a chat a few days ago, in BASIC you would do this:
Code: [Select]
A+1->A
If A=20
0->A
<do stuff>
End
In Axe you would be able to this equivalent:

Code: [Select]
IS>(A,20)
<do stuff>
End

Useful for animated tiles where the animation is not updated every frame
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 #336 on: March 29, 2010, 02:01:41 pm »
Right.  It increments a variable (like a for loop) and then checks to see if it has reached a maximum.  If the maximum is reached, the code gets executed and the variable resets back to zero so that the process can start over again.  So if you put it in your loop like this:

0->A
While 1
  <Render Frame>
  IS>(A,20)
    SinReg 150,5000
  End
End

This would make a beep every 20th frame.

DS<(A,20) would do the same thing but counts downwards and reset to 20 when it gets to zero.

And the lowercase operations might actually be not too much overhaul since they can just use the low order bytes of the standard variables.  However, they would be totally incompatible with regular variables.  You couldn't mix the two very easily without using some weird conversions.  Also, I would need to add some type of modifier so the parser knows if constants are 8 bit or 16 bit.
« Last Edit: March 29, 2010, 02:05:27 pm 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 #337 on: March 29, 2010, 02:06:10 pm »
I wonder if that could also help for example in an action game where the character has a sword and slash it to kill enemies, but still be allowed to move while slashing his sword? Without that it would be much harder to not make your character stop completly during the entire sword animation

Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

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 #338 on: March 30, 2010, 05:40:17 pm »
Another feature idea, after Quigibo mentionned me might compress his title screen:  Compressed sprites routine

When compiling, you could have sprites be compressed and use a different sprite display routine to show them. It would prbly be slower but people could choose whether if they want to use compressed sprites or regular ones. I wonder if it would be hard to implement, though...
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Features Wishlist
« Reply #339 on: March 30, 2010, 06:09:17 pm »
Another feature idea, after Quigibo mentionned me might compress his title screen:  Compressed sprites routine

When compiling, you could have sprites be compressed and use a different sprite display routine to show them. It would prbly be slower but people could choose whether if they want to use compressed sprites or regular ones. I wonder if it would be hard to implement, though...
Sprites are already compressed at an 8:1 compression ratio (double the Hex, as they are stored in token-ized binary), so I doubt if they could get smaller.  However, if they could it's a really cool idea! :D

I really like Galandros' idea!  How much faster would that be, and how would it affect the code (bigger/smaller) if you end up doing it? ;D

The IS and DS commands look really cool!   Awesome idea! :D

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 #340 on: March 30, 2010, 06:17:05 pm »
oh I suggested it cuz Quigibo comment about the Axe Parser title screen (which would be 768 bytes, in binary), left some indications that it could be compressed even more. What I thought about is for images with several lines of white pixels in a row as well as black. Instead of

00000011
11110000
00011110
00000000
01100000
00000111
00000000
11111000

it could maybe become stuff like 00000011
1x4 0x7 1x4 0x10 1x2 0x10 1x3 0x8 1x5 0x3

Idk what would be the format, though. Also with complex sprites, they may end up larger, actually x.x
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Features Wishlist
« Reply #341 on: March 30, 2010, 06:20:57 pm »
That's a really good idea! :D Could some type of RLE (Run Length Encoding) be used mabey? :)

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 #342 on: March 30, 2010, 06:34:48 pm »
i wonder how does RLE works... i should maybe check out.
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 #343 on: March 30, 2010, 08:19:14 pm »
Heh, Dj what you just did is RLE :)
« Last Edit: April 02, 2010, 01:35:35 am by Builderboy »

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 #344 on: March 30, 2010, 09:19:44 pm »
really? lol ok :P

I still should read further into it to see how it's applied in code form, though :P
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)