Author Topic: Features Wishlist  (Read 689886 times)

0 Members and 4 Guests are viewing this topic.

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: Features Wishlist
« Reply #1275 on: September 28, 2010, 12:33:22 pm »
Under OS 2.54 MP, everything runs at the exact same speed as on a regular 83+. In 15 MHz mode, the speed increase is much lower than it is on a real 84+, though.

Older Nspire OSes got incredibly slow speeds at times with ASM stuff.

Offline ACagliano

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 919
  • Rating: +32/-2
    • View Profile
    • ClrHome Productions
Re: Features Wishlist
« Reply #1276 on: October 05, 2010, 09:56:56 am »
Feature Request:

TI-Basic has the ability to transfer control to another executable, then return when done. Axe should be able to do the same. Maybe, use the command Get( or something, where the command

Get(prgmAAA)

would cause the executable to transfer execution to the asm program AAA, then return to the main.

Offline LordConiupiter

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 339
  • Rating: +3/-0
  • Just one of the thousands of Axe-fans...
    • View Profile
Re: Features Wishlist
« Reply #1277 on: October 05, 2010, 10:06:53 am »
that would be really easy to write in Axe! just send the info of the program first using the Send Command, while the other Calc is in Get()-mode.

I would do it this way:
1. give the sign: "I'm ready to send a program" with a certain command,
2. then send the length of the name,
3. then the name itself char by char,
4. and then perhaps the type of the data (prgm, locked prgm, appvar,pic etc),
5. and last but not least the data of the program itself.

I am willing to write this routine this evening, but not jet (it's just 16:00 o'clock over here)
« Last Edit: October 05, 2010, 10:08:42 am by LordConiupiter »
everytime that I was down, you would always come around, and get my feedback on the ground. (modified part from 'Seasons in the sun')

No matter how many errors are bothering you, always try to stay rel-Axe!

The HoMM project will be resumed as soon Axe 1.0.0 will be released!
Projects:
Code: [Select]
HoMM:   [==--------]    Project 'resumed': I'm suffering overwhelming new ideas being popped up in my dreams :P
tiDE:   [----------]    Explored and understood the main part of the code: just started writing a Tokenizer.



password of the week: uvanapererubupa (Any pronunciation is the right one ;) )   :D click me, and you'll be raided :D

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 #1278 on: October 05, 2010, 10:07:15 am »
Quigibo, this BCALL may prove useful. I've never tried it though, so I don't know exactly how it works.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline ACagliano

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 919
  • Rating: +32/-2
    • View Profile
    • ClrHome Productions
Re: Features Wishlist
« Reply #1279 on: October 05, 2010, 10:22:27 am »
@ calc84maniac: Nice

@LordConupiter: Not 2 calc data sending. I'm talking about having the ability to run other programs from an Axe compiled program.

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Features Wishlist
« Reply #1280 on: October 05, 2010, 10:27:11 am »
Feature Request:

TI-Basic has the ability to transfer control to another executable, then return when done. Axe should be able to do the same. Maybe, use the command Get( or something, where the command

Get(prgmAAA)

would cause the executable to transfer execution to the asm program AAA, then return to the main.

If you want to call another Axe program, unless you desperately need them to be two separate compiled programs, this can already be achieved with included programs. Just call it as a subroutine in your main program without a Return, like this:

Code: (Your main program) [Select]
.PROGRAM

ClrHome
Disp "Hello "
sub(A)
Disp i
Return

Lbl A
prgmINCLUDE
       
Code: (prgmINCLUDE) [Select]
..

Disp "world!"
Return

Offline LordConiupiter

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 339
  • Rating: +3/-0
  • Just one of the thousands of Axe-fans...
    • View Profile
Re: Features Wishlist
« Reply #1281 on: October 05, 2010, 10:32:22 am »
@LordConupiter: Not 2 calc data sending. I'm talking about having the ability to run other programs from an Axe compiled program.
did you mean that! sorry, I misinterpreted your Post, for U suggested to use the Get command, and that's already used for data transfer between 2 calcs.

@Runer: how did you do that! those two code block next to each other?
« Last Edit: October 05, 2010, 10:33:50 am by LordConiupiter »
everytime that I was down, you would always come around, and get my feedback on the ground. (modified part from 'Seasons in the sun')

No matter how many errors are bothering you, always try to stay rel-Axe!

The HoMM project will be resumed as soon Axe 1.0.0 will be released!
Projects:
Code: [Select]
HoMM:   [==--------]    Project 'resumed': I'm suffering overwhelming new ideas being popped up in my dreams :P
tiDE:   [----------]    Explored and understood the main part of the code: just started writing a Tokenizer.



password of the week: uvanapererubupa (Any pronunciation is the right one ;) )   :D click me, and you'll be raided :D

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Features Wishlist
« Reply #1282 on: October 05, 2010, 10:53:31 am »
@LordConupiter: Not 2 calc data sending. I'm talking about having the ability to run other programs from an Axe compiled program.
did you mean that! sorry, I misinterpreted your Post, for U suggested to use the Get command, and that's already used for data transfer between 2 calcs.

@Runer: how did you do that! those two code block next to each other?

A table:
Code: [Select]
[table][tr][td]Put one code block in here[/td][td]        [/td][td]Put another code block in here[/td][/tr][/table]

Offline ACagliano

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 919
  • Rating: +32/-2
    • View Profile
    • ClrHome Productions
Re: Features Wishlist
« Reply #1283 on: October 05, 2010, 10:54:59 am »
Feature Request:

TI-Basic has the ability to transfer control to another executable, then return when done. Axe should be able to do the same. Maybe, use the command Get( or something, where the command

Get(prgmAAA)

would cause the executable to transfer execution to the asm program AAA, then return to the main.

If you want to call another Axe program, unless you desperately need them to be two separate compiled programs, this can already be achieved with included programs. Just call it as a subroutine in your main program without a Return, like this:

Code: (Your main program) [Select]
.PROGRAM

ClrHome
Disp "Hello "
sub(A)
Disp i
Return

Lbl A
prgmINCLUDE
       
Code: (prgmINCLUDE) [Select]
..

Disp "world!"
Return

@Runner: That method includes the CODE making up the included program and still compiles as one program. Think of what happens in the TI-Basic code

Code: [Select]
Disp "Hello"
prgmZCLRHOME
Disp "Goodbye"

I'm suggesting Axe have a way to do that. Like what calcmaniac said, using B_CALL ExecProg

Offline LordConiupiter

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 339
  • Rating: +3/-0
  • Just one of the thousands of Axe-fans...
    • View Profile
Re: Features Wishlist
« Reply #1284 on: October 05, 2010, 12:15:37 pm »
And I think ExecLib would be a nice token for it, which could be renamed to Exec, or ExecProg, with the following syntax:
Code: (Axe) [Select]
ExecprgmTEST
or
Code: (Axe) [Select]
ExecProg("prgmTEST"
.or
"prgmTEST"->Str1
ExecProg(Str1
just what would be easier for the compiler, and what fits the best to the other Axe commands. I personally prefer the second one, and perhaps even ExecCalc(, for there is the GetCalc command, and I like to see similar named commands is the language. I also like to see DelVar changed to DelCalc(, or GetCalc( to GetVar(
everytime that I was down, you would always come around, and get my feedback on the ground. (modified part from 'Seasons in the sun')

No matter how many errors are bothering you, always try to stay rel-Axe!

The HoMM project will be resumed as soon Axe 1.0.0 will be released!
Projects:
Code: [Select]
HoMM:   [==--------]    Project 'resumed': I'm suffering overwhelming new ideas being popped up in my dreams :P
tiDE:   [----------]    Explored and understood the main part of the code: just started writing a Tokenizer.



password of the week: uvanapererubupa (Any pronunciation is the right one ;) )   :D click me, and you'll be raided :D

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 #1285 on: October 05, 2010, 12:34:19 pm »
Execlib only exists on 84+ OS, and only starting at a certain version I think. Not a good choice, I'd say.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline LordConiupiter

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 339
  • Rating: +3/-0
  • Just one of the thousands of Axe-fans...
    • View Profile
Re: Features Wishlist
« Reply #1286 on: October 05, 2010, 01:05:23 pm »
ok, I didn't know that. perhaps e^( then? that's [2nd][LN]. or ExpReg, which can be found in the [STAT]->[CALC] menu as option [ 0 ].

but I still aim for syntax similarity for Calc files handling:
DelVar -> DelVar(
Archive -> ArchVar(
UnArchive -> UnArchVar(
GetCalc( -> GetVar(

and I wonder why input an float are in the external variables section, since float would fit better in the data/storage part, and input in the Text part.
« Last Edit: October 05, 2010, 01:11:17 pm by LordConiupiter »
everytime that I was down, you would always come around, and get my feedback on the ground. (modified part from 'Seasons in the sun')

No matter how many errors are bothering you, always try to stay rel-Axe!

The HoMM project will be resumed as soon Axe 1.0.0 will be released!
Projects:
Code: [Select]
HoMM:   [==--------]    Project 'resumed': I'm suffering overwhelming new ideas being popped up in my dreams :P
tiDE:   [----------]    Explored and understood the main part of the code: just started writing a Tokenizer.



password of the week: uvanapererubupa (Any pronunciation is the right one ;) )   :D click me, and you'll be raided :D

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 #1287 on: October 05, 2010, 01:55:24 pm »
I think this is very difficult to accomplish.  In order to run a program, it must be copied into 959C.  Unfortunately that is where the current program already is, so you would need a 3rd piece of code that would copy the original program back into its original RAM space, copy the second program into 959C, PUSH a piece of its own code onto the stack so that when the program exits, it is able to copy the original program back onto 959C

D:


Offline Ikkerens

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 378
  • Rating: +28/-9
  • JavaScript Magician
    • View Profile
    • Walotech
Re: Features Wishlist
« Reply #1288 on: October 05, 2010, 02:24:03 pm »
Quote
Pt-Command()→BUFF   Performs any of the Pt-On(), Pt-Off(), or Pt-change() routines to an arbitrary buffer of your choice.

I would love the ability to use this with pxl-Test(
I have this pointer that points to a picture in the ram.
And I need to check wether a pxl is on or not within that picture.

Splut for Android [----------]
Paused/halted indefinitely, might be abandoned, our graphic designer quit and the rest of us simply doesn't have the time to work on it...

Offline LordConiupiter

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 339
  • Rating: +3/-0
  • Just one of the thousands of Axe-fans...
    • View Profile
Re: Features Wishlist
« Reply #1289 on: October 05, 2010, 02:40:43 pm »
I think this is very difficult to accomplish.  In order to run a program, it must be copied into 959C.  Unfortunately that is where the current program already is, so you would need a 3rd piece of code that would copy the original program back into its original RAM space, copy the second program into 959C, PUSH a piece of its own code onto the stack so that when the program exits, it is able to copy the original program back onto 959C

D:



But how would TIOS do it then? subprograms can be called in BASIC, or do BASIC programs not have to be copied to 959C?
everytime that I was down, you would always come around, and get my feedback on the ground. (modified part from 'Seasons in the sun')

No matter how many errors are bothering you, always try to stay rel-Axe!

The HoMM project will be resumed as soon Axe 1.0.0 will be released!
Projects:
Code: [Select]
HoMM:   [==--------]    Project 'resumed': I'm suffering overwhelming new ideas being popped up in my dreams :P
tiDE:   [----------]    Explored and understood the main part of the code: just started writing a Tokenizer.



password of the week: uvanapererubupa (Any pronunciation is the right one ;) )   :D click me, and you'll be raided :D