• Features Wishlist 5 1
Currently:

### Author Topic: Features Wishlist  (Read 280947 times)

0 Members and 3 Guests are viewing this topic.

#### Runer112

• Project Author
• LV11 Super Veteran (Next: 3000)
• Posts: 2289
• Rating: +639/-31
##### Re: Features Wishlist
« Reply #2460 on: July 20, 2011, 01:30:41 am »
Although it's easy enough to do manually, I (and probably others) would like to see randInt(). It would be especially cool if you could optimize it for constant arguments.

#### Quigibo

• The Executioner
• CoT Emeritus
• LV11 Super Veteran (Next: 3000)
• Posts: 2031
• Rating: +1075/-24
##### Re: Features Wishlist
« Reply #2461 on: July 20, 2011, 02:26:11 am »
Yeah, I keep wanting to add it... but its so annoying because I need to special case it for 4 possibilities: (var,var) (const,var) (var,const) and (const,const).  In addition, I also have to incorporate the optimizations for modulus with powers of 2.  Without these optimizations, the command would be pointless because no one would use it knowing they could do the exact same thing faster and smaller with just as much code.
___Axe_Parser___
Today the calculator, tomorrow the world!

#### calc84maniac

• eZ80 Guru
• Coder Of Tomorrow
• LV11 Super Veteran (Next: 3000)
• Posts: 2897
• Rating: +467/-17
##### Re: Features Wishlist
« Reply #2462 on: July 20, 2011, 08:23:05 am »
I think the new For(const) command could be nicely extended to For(expression). The expression would be evaluated exactly once, upon entry to the loop, and the HL before the For() would be preserved (just like in the constant version). Here's my suggested asm code generation:
Code: [Select]
  push hl  ;EVALUATE EXPRESSION HERE  ex (sp),hl  pop bcloop:  push bc  ;LOOP BODY HERE  pop bc  dec bc  ld a,b  or c  jr nz,loop
Or, if you wanted to employ the nested djnz optimization like in the constant version (which may not be worth it due to size):
Code: [Select]
  push hl  ;EVALUATE EXPRESSION HERE  dec hl  inc l  inc h  ld b,l  ld c,h  pop hlloop:  push bc  ;LOOP BODY HERE  pop bc  djnz loop  dec c  jr nz,loop
Edit:
Hmm, this reminds me, what should happen when For() contains a 0? Should the loop be skipped?
« Last Edit: July 20, 2011, 08:29:11 am by calc84maniac »
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

#### Darl181

• «Yo buddy, you still alive?»
• CoT Emeritus
• LV12 Extreme Poster (Next: 5000)
• Posts: 3408
• Rating: +305/-13
• VGhlIEdhbWU=
##### Re: Features Wishlist
« Reply #2463 on: July 20, 2011, 02:41:25 pm »
What's happened to me was when I do For(A,0,0) or two of the same number, it happens once.
When I do something like For(A,1,0) it doesn't happen (instead of an almost infinite loop like it used to... )

If you mean For(0) like in the newer ersions, idk b/c I'm still using 0.5.3
« Last Edit: July 20, 2011, 02:42:24 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

#### Runer112

• Project Author
• LV11 Super Veteran (Next: 3000)
• Posts: 2289
• Rating: +639/-31
##### Re: Features Wishlist
« Reply #2464 on: July 20, 2011, 04:32:27 pm »
I know a maximum variable name length of 5 works out well for you because that makes each entry 8 bytes large, but in my experience so far 5 just isn't enough. I think 8 or 13 would be nice.

Also, bumping two old feature requests:

Can we have a feature like "Zeros()," but for any data.  For instance, something like this:
Command(1,12) would be the same as [010101010101010101010101]
Command([56],4) would be the same as [56565656]
Command(127,6) would be the same as Data(127,127,127,127,127,127)
Potentially, this command could even be used for repeating sets of data.  For instance:
Command([010203],12) would be the same as [010203010203010203010203]
Command("Text"[00],15) would be the same as "Text"[00]"Text"[00]"Text"[00]

So, what do you think?  Could this be a command?  I think it's a good idea, to avoid situations like this.

I really like that idea. What about changing Zeros( (det() to something more universal?

I would suggest changing the token replacement to Block(). Feeding 1 argument would create a block of the specified size filled with zeroes. Feeding 2 arguments would create a block of the specified size filled with a specified value. Maybe you could even add a Block()r command for creating a block filled with a specified word while you're at it, although this probably isn't as necessary as a normal byte-filling block command.

Quigibo, perhaps implement B_CALL(_DelRes) somehow? It would probably have to be manually called by the user at their discretion, but it would be useful for people who want to use L2. And for that matter, B_CALL(_DelRes) should probably be a part of the interrupt setup, which it currently is not.
« Last Edit: July 20, 2011, 10:41:32 pm by Runer112 »

#### Darl181

• «Yo buddy, you still alive?»
• CoT Emeritus
• LV12 Extreme Poster (Next: 5000)
• Posts: 3408
• Rating: +305/-13
• VGhlIEdhbWU=
##### Re: Features Wishlist
« Reply #2465 on: July 20, 2011, 07:09:36 pm »
Maybe Data could be changed a bit so something like (Data([ABCD]),2)→GDB1 would store [ABCDABCD]?
« Last Edit: July 20, 2011, 07:10:02 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

• The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
• LV10 31337 u53r (Next: 2000)
• Posts: 1970
• Rating: +128/-15
• I put on my robe and pixel hat...
##### Re: Features Wishlist
« Reply #2466 on: July 20, 2011, 08:45:42 pm »
Wasn't Fill just changed to do exactly that?
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names

I'm a performer at heart; I stole it last week.
My Artwork!

#### calc84maniac

• eZ80 Guru
• Coder Of Tomorrow
• LV11 Super Veteran (Next: 3000)
• Posts: 2897
• Rating: +467/-17
##### Re: Features Wishlist
« Reply #2467 on: July 20, 2011, 08:49:06 pm »
Wasn't Fill just changed to do exactly that?
It doesn't fill a repeating string of multiple bytes. You can accomplish this with Copy(), but either way he's suggesting a shortcut for the original definition of the data.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

#### mrmprog

• LV7 Elite (Next: 700)
• Posts: 559
• Rating: +35/-1
##### Re: Features Wishlist
« Reply #2468 on: July 20, 2011, 11:00:19 pm »
I agree with all the features on this page. I was going to quote them, but that would be huge.

#### Scipi

• Omni Kitten Meow~ =^ω^=
• LV10 31337 u53r (Next: 2000)
• Posts: 1547
• Rating: +192/-3
• Meow :3
##### Re: Features Wishlist
« Reply #2469 on: July 20, 2011, 11:02:09 pm »
Something that should probably be implemented is an optional, fourth argument to the For( command

For([Var],[start],[end],([inc])

Imma Cat! =^_^= (It's an emoticon now!)
Spoiler For Things I find interesting:
Spoiler For AI Programming:

Spoiler For OldSig:

Spoiler For Projects!:

Spoiler For IMPORTANT NEWS!:
Late last night, Quebec was invaded by a group calling themselves, "Omnimaga". Not much is known about these mysterious people except that they all carried calculators of some kind and they all seemed to converge on one house in particular. Experts estimate that the combined power of their fabled calculators is greater than all the worlds super computers put together. The group seems to be holding out in the home of a certain DJ_O, who the Omnimagians claim to be their founder. Such power has put the world at a standstill with everyone waiting to see what the Omnimagians will do...

Wait... This just in, the Omnimagians have sent the UN a list of demands that must be met or else the world will be "submitted to the wrath of Netham45's Lobster Army". Such demands include >9001 crates of peanuts, sacrificial blue lobsters, and a wide assortment of cherry flavored items. With such computing power stored in the hands of such people, we can only hope these demands are met.

In the wake of these events, we can only ask, Why? Why do these people make these demands, what caused them to gather, and what are their future plans...

#### Kiruahxh

• LV0 Newcomer (Next: 5)
• Posts: 2
• Rating: +1/-0
##### Re: Features Wishlist
« Reply #2470 on: August 02, 2011, 06:28:16 am »
Hi!

I am new in the forum :-)
I'd like to have a debug macro (#Debug / #Release) and #Debug(code) would mean the code is only executed in debug mode, or something like this.
I'm am for the 4 args loops too.

There is an error in the commandList :
DispGraphClrDraw(BUF1,BUF2)rr has been replaced by DispGraphClrDraw(BUF1,BUF2)r

#### squidgetx

• Food.
• CoT Emeritus
• LV10 31337 u53r (Next: 2000)
• Posts: 1881
• Rating: +503/-17
• rawr.
##### Re: Features Wishlist
« Reply #2471 on: August 02, 2011, 10:16:16 am »
In response to the poll, I'd rather have the smaller size for file reads. I don't know when anyone would be using time-critical file reads. In any case, it's always easier to copy a tilemap or level into RAM anyway since then it can be modified, etc.

Actually, just kidding. I can think of maybe a couple situations where a fast file read time could be nice. (Tiny Wings lol) Err, would it ever be possible to do both? I'm not very helpful, am I? lol

#### p2

• Posts: 848
• Rating: +51/-11
• I'm back :)
##### Re: Features Wishlist
« Reply #2472 on: August 02, 2011, 01:06:31 pm »
decimals and negatie numbers should please be possible!!

But that isn't possable to make, or?
*insert supercool signature*

#### calcdude84se

• Needs Motivation
• LV11 Super Veteran (Next: 3000)
• Posts: 2272
• Rating: +78/-13
• Wondering where their free time went...
##### Re: Features Wishlist
« Reply #2473 on: August 02, 2011, 01:48:31 pm »
Negative numbers are already there. Look at all the commands specifically for signed numbers, for instance.
If by "decimals" you mean "floating point," the answer to that is "no," mainly because floating point isn't normally necessary for games. Axe does have support for binary fixed-point numbers, though.
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."