Author Topic: Features Wishlist  (Read 694580 times)

0 Members and 2 Guests are viewing this topic.

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
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. :)

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 #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!

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 #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 bc
loop:
  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 hl
loop:
  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

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
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 :P
« Last Edit: July 20, 2011, 02:42:24 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
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 »

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
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

Offline Freyaday

  • 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...
    • View Profile
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!

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 #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

Offline mrmprog

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 559
  • Rating: +35/-1
    • View Profile
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.

Offline Scipi

  • Omni Kitten Meow~ =^ω^=
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1547
  • Rating: +192/-3
  • Meow :3
    • View Profile
    • ScipiSoftware
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! =^_^= :3 (It's an emoticon now!)
Spoiler For Things I find interesting:
Spoiler For AI Programming:
Spoiler For Shameless advertising:

Spoiler For OldSig:





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

Offline Kiruahxh

  • LV0 Newcomer (Next: 5)
  • Posts: 2
  • Rating: +1/-0
    • View Profile
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

Offline squidgetx

  • Food.
  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1881
  • Rating: +503/-17
  • rawr.
    • View Profile
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 :P


Offline p2

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 849
  • Rating: +51/-11
  • I'm back :)
    • View Profile
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*

Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
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."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.

Offline zeldaking

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 197
  • Rating: +15/-0
    • View Profile
Re: Features Wishlist
« Reply #2474 on: August 02, 2011, 01:51:26 pm »
maybe a built in picture to hex editor? with custom side lengths.