Author Topic: Axe Library, Axiom, and Tool Collection  (Read 38713 times)

0 Members and 1 Guest are viewing this topic.

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #15 on: June 29, 2016, 09:59:34 am »
This is my code:
Code: [Select]
;#SECTION "MAIN", CODE

dw AXM_HEADER
; Debut Routine
dw EndAxiomRoutine + 6
db AXM_ALL
db hRound, 0
db AXM_INLINE
db 1
org 0
B_CALL _OP1Set0
B_CALL _Cos
B_CALL _ConvOP1
ex de, hl
ld d, h
ld b, h
ld e, l
ld c, l
ret

EndAxiomRoutine:
dw hRound
db 5
db "cos0("
;#IMPORT "TOKENHOO"
;#IMPORT "AXE"
It doesn't work :(
First, to include a library in mimas, you go to the program's menu and select library and pick "AXE" and "TOKENHOO" and that will work the same way as #IMPORT
;You need to use rorg instead of org.
It is inline so you shouldn't use ret unless you want the program to return each time you use the code.
Right after EndAxiomRoutine you need to have dw 0 to signal the end of the axiom and the beginning of the replacements.
;You don't need the +6 in the declaration of the size you can just put "dw EndAxiomRoutine"
You should probably focus on the actual axiom before the custom replacements (save the replacements for later)
Is the compiled axiom an appv? It needs to be separate from the mimas source code file!
I hope that helps!
Oops I missed this:
You need the dw $C0DE as the first line of code (note the 0 instead of an O)
« Last Edit: June 29, 2016, 10:03:58 am by E37 »
I'm still around... kind of.

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #16 on: June 29, 2016, 10:06:51 am »
This is the new code, is it correct ? :
Code: [Select]
;#SECTION "MAIN", CODE

dw $C0DE
; Debut Routine
dw EndAxiomRoutine
db AXM_ALL
db hRound, 0
db AXM_INLINE
db 1
rorg 0
B_CALL _OP1Set0
B_CALL _Cos
B_CALL _ConvOP1
ex de, hl
ld d, h
ld b, h
ld e, l
ld c, l

EndAxiomRoutine:
        dw 0
dw hRound
db 5
db "cos0("
;#IMPORT "TOKENHOO"
;#IMPORT "AXE"

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #17 on: June 29, 2016, 10:10:27 am »
This is the new code, is it correct ? :
Code: [Select]
;#SECTION "MAIN", CODE

dw $C0DE
; Debut Routine
dw EndAxiomRoutine
db AXM_ALL
db hRound, 0
db AXM_INLINE
db 1
rorg 0
B_CALL _OP1Set0
B_CALL _Cos
B_CALL _ConvOP1
ex de, hl
ld d, h
ld b, h
ld e, l
ld c, l

EndAxiomRoutine:
        dw 0
dw hRound
db 5
db "cos0("
;#IMPORT "TOKENHOO"
;#IMPORT "AXE"
I don't see anything wrong in the code.
Wait, yes I do. The token in the header whould be dw tRound instead of dw hRound,0
Is it an appv in ram or flash?
Are the includes correct? (you don't need them but they just let you use constants like hRound)
I'm still around... kind of.

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #18 on: June 29, 2016, 10:15:59 am »
And how can I do to return any value in ans?

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #19 on: June 29, 2016, 10:20:01 am »
And how can I do to return any value in ans?
Like in Axe's ans?
Axe's ans is just hl.
"ld hl,5" would set 5 into axe's ans.
Let's pretend that is all the axiom does and it is the token Boxplot and is represented "five" in the custom replacement
you could do:
:.DEMO
:#Axiom(AXIOM)
:five -> A
and A would hold five
I also THINK you can: ":A -> five" and it will store the value of A to the location 5 in ram. (same as ":a -> {5}")
I'm still around... kind of.

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #20 on: June 29, 2016, 10:22:20 am »
And to Axe conert the program to an appvar, I insert axiom in code with #Axiom(prgmNOM) or #Axiom(NOM)?

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #21 on: June 29, 2016, 10:23:23 am »
Axe converts it if the appv doesn't already exist.
You would use #Axiom(AXMNAME) without any prefexes.
I'm still around... kind of.

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #22 on: June 30, 2016, 10:09:26 am »
And where I can download the GUI Axiom?

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #23 on: September 07, 2016, 12:33:54 pm »
I would like to send tileIt! to my calculator but when I send tileIt! 2.0 with TI Connect CE, my TI-84+SE crash and I have a beautiful Ram Cleard.
But if I send tileIt! 1.0, it works :(
Help me please  :'(

Offline Sorunome

  • Fox Fox Fox Fox Fox Fox Fox!
  • Support Staff
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 7920
  • Rating: +374/-13
  • Derpy Hooves
    • View Profile
    • My website! (You might lose the game)
Re: Axe Library, Axiom, and Tool Collection
« Reply #24 on: September 11, 2016, 03:46:33 pm »
Have you tried tilp yet?

THE GAME
Also, check out my website
If OmnomIRC is screwed up, blame me!
Click here to give me an internet!

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #25 on: September 11, 2016, 07:34:17 pm »
I would like to send tileIt! to my calculator but when I send tileIt! 2.0 with TI Connect CE, my TI-84+SE crash and I have a beautiful Ram Cleard.
But if I send tileIt! 1.0, it works :(
Help me please  :'(
I sent the source code over and compiled it on calc.
Almost always I clear my ram before sending a file.
I'm still around... kind of.

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #26 on: September 14, 2016, 12:39:01 pm »
Yes, it works, but I would like to know why?

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #27 on: September 14, 2016, 04:27:46 pm »
Yes, it works, but I would like to know why?
The ram clear or sending the source code and compiling?
I don't really know why either work but I have some guesses.
The ram clear can remove any corrupt data. Compiling? I don't really know.
If your calc has a lot of trouble sending/receiving files, back up all your data and reset all your memory.
That helps for me.  :-\
I'm still around... kind of.

Offline neuronix

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 108
  • Rating: +0/-0
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #28 on: September 15, 2016, 12:43:12 pm »
Ok, thank you for this response

Offline E37

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 358
  • Rating: +23/-0
  • Trial and error is the best teacher
    • View Profile
Re: Axe Library, Axiom, and Tool Collection
« Reply #29 on: September 17, 2016, 07:23:28 pm »
I have an addition to made (or at least reference)
I made the axiom STAXM which is really simple.
It allows the user to pop and push variables just like assembly.
Here's some example code:
Code: [Select]
:.TEST
:#Axiom(STAXM)
:L1->(SP)
:5->A
:Push °A
:rand->A
:Pop °A
:Disp A>Dec
... which will display 5 for the value of A.
All three tokens are found under math.
Spoiler For Spoiler:
A couple things of note:
(SP) is a token under math and is the same as Y6t (you change one you change the other)
(SP) is the current location of the stack set it to control where the stack starts. (:Pop °GARBAGE is the same as :(SP)-2->(SP))

I'm still around... kind of.