Author Topic: Making Axe subroutines?  (Read 7542 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
Making Axe subroutines?
« on: June 07, 2010, 09:34:46 am »
A couple questions come to mind when I think about my entry.

I heard something about a limit on the source code you can compile.
What is that limit?

Also, how would you chain multiple Axe programs together for those big programs?
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 nemo

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1203
  • Rating: +95/-11
    • View Profile
Re: Making Axe subroutines?
« Reply #1 on: June 07, 2010, 11:16:36 am »
don't quote me on this, but i think it's around 8000 bytes. and it isn't a contest limitation, but i think the ti 84 series of calculators just doesn't support programs larger than the limit (which is somewhere in the 8000+ range). as for chaining them together, i don't think it's possible as of now. except one way might be you have two source programs, prgmSOURCEA and prgmSOURCEB, and you compile them into prgmPARTA and prgmPARTB using a program online, you could unsquish prgmPARTB into hex code, and then in prgmPARTA use Asm(_hex of PARTB here_). but, that's against the rules. you may be able to clear it with dj if you show prgmSOURCEB though.


Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: Making Axe subroutines?
« Reply #2 on: June 07, 2010, 11:27:57 am »
The 8KB code limit is present on all the TI-83+ series. As for appending one program to another, it doesn't work like nemo said. Programs are compiled to be run from $9D95, or progstart. Just sticking one program to the end of another means that the jp, call, and some ld commands within the program won't work, causing an infinite loop or more likely a crash. And as of now, there is no way to change where programs are based.
As nemo said, there isn't a way to chain compilation of programs yet. If you must develop w/separate programs, then recall all of them into one large program when you need to compile.
"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 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: Making Axe subroutines?
« Reply #3 on: June 07, 2010, 12:39:46 pm »
Wait until application compiling is completed.  That gives a 16kb limit, enough for most projects.  You can have data be external variables like in appvars and programs, but not executable code.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: Making Axe subroutines?
« Reply #4 on: June 07, 2010, 02:37:10 pm »
Can you give a timeline for that?  How hard is it to compile to application?

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: Making Axe subroutines?
« Reply #5 on: June 07, 2010, 02:46:03 pm »
It would be nice to have an idea of when it will be possible. If it's only gonna be implemented in late AUgust, people should probably not bother waiting since then theyb would only have 3 weeks left at most for making a contest entry.

APP compiling will take 10-15 minutes on calc, though, according to brandonW, because of the whole encryption and stuff I forgot x.x

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: Making Axe subroutines?
« Reply #6 on: June 07, 2010, 06:14:55 pm »
That's actually only partially true.  I talked to BrandonW and he said that the 10-15 minutes is only for signing applications.  You can still compile to applications at a decent speed and run them on your calculator.  Its only when you want to transfer the app to another calculator that you need to sign it.  Another option is to just send the app to a computer and have the computer sign it super fast.

Timeline?  Possibly the next version, but I can't guarantee anything.  I only made very basic progress so far, but BrandonW has already written a program that compiles apps and he is helping me decipher his code so I can use it for the parser.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Making Axe subroutines?
« Reply #7 on: June 07, 2010, 06:17:19 pm »
Really?! That would be totally awesome :)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Making Axe subroutines?
« Reply #8 on: June 07, 2010, 08:28:44 pm »
According to 28 Days, the limit's usually at 8811 bytes. How do people get around that?




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: Making Axe subroutines?
« Reply #9 on: June 07, 2010, 08:32:47 pm »
I don't know but that limit adds another challenge to the contest.
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 Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Making Axe subroutines?
« Reply #10 on: June 07, 2010, 08:36:46 pm »
I don't know but that limit adds another challenge to the contest.

Actually, which one's a bigger problem: this limit or our RAM limit? How small are executables compared to their sources for larger programs?




Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Making Axe subroutines?
« Reply #11 on: June 07, 2010, 11:34:29 pm »
Since its an actual limit on executable code, its the final size of your executable, not the source. NOTE: That this does NOT include data, so your program can be larger than 8811 bytes as long as the executable code is less than 8811.  You can get around this with fancy Self Modifying Code, but i have yet to get it to work reliably.  When and If i get it to work i will definetaly post a tutorial

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: Making Axe subroutines?
« Reply #12 on: June 07, 2010, 11:41:38 pm »
That's actually only partially true.  I talked to BrandonW and he said that the 10-15 minutes is only for signing applications.  You can still compile to applications at a decent speed and run them on your calculator.  Its only when you want to transfer the app to another calculator that you need to sign it.  Another option is to just send the app to a computer and have the computer sign it super fast.

Timeline?  Possibly the next version, but I can't guarantee anything.  I only made very basic progress so far, but BrandonW has already written a program that compiles apps and he is helping me decipher his code so I can use it for the parser.
really? Wow nice to hear. I was certain it was just the compiling that took long. If it's signing, then it should be easier. I personally wouldn't have liked to wait like 15 mins to compile an app just to debug XD.

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Making Axe subroutines?
« Reply #13 on: June 07, 2010, 11:42:43 pm »
Hah yeah i know what you mean.  This way we can debug and all the good stuff on calc, and then sign for 10-15 min when we are done and ready to upload :)