Author Topic: ASM Help  (Read 10066 times)

0 Members and 1 Guest are viewing this topic.

Offline Hot_Dog

  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3006
  • Rating: +445/-10
    • View Profile
Re: ASM Help
« Reply #15 on: November 14, 2010, 05:32:26 pm »
Are you, by any chance, running this on a Ti-84+ with OS 2.53? Make sure it's on classic mode if so

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: ASM Help
« Reply #16 on: November 14, 2010, 05:37:16 pm »
As much as I'd like to blame OS v 2.53 for this, switching the mode doesn't do anything.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline DrDnar

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 546
  • Rating: +97/-1
    • View Profile
Re: ASM Help
« Reply #17 on: November 14, 2010, 05:50:11 pm »
Are you sure you're including ti83plus.inc? SPASM likes to pretend that it's correctly assembled a program, when in fact, it has actually replaced any bad opcodes or labels with 0. This is bad if you have jp badLabel.
"No tools will make a man a skilled workman, or master of defense, nor be of any use to him who has not learned how to handle them, and has never bestowed any attention upon them. . . . Yes, [] the tools which would teach men their own use would be beyond price."—Plato's The Republic, circa 380 BC

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: ASM Help
« Reply #18 on: November 14, 2010, 05:56:57 pm »
You can check the source from the previous page. I included the file and I'm pretty sure I have the correct file, seeing as how I'm using the official ti83plus.inc. Using the one provided by TI doesn't change anything either. Also, the include instruction is from Buckydude himself. That makes me fairly certain of its validity.
« Last Edit: November 14, 2010, 05:58:47 pm by Qwerty.55 »
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: ASM Help
« Reply #19 on: November 14, 2010, 08:31:47 pm »
Are you sure you're including ti83plus.inc? SPASM likes to pretend that it's correctly assembled a program, when in fact, it has actually replaced any bad opcodes or labels with 0. This is bad if you have jp badLabel.
That's not very good. I didn't know SPASM did that :(

Also, does the ti83plus.inc file define it b_call or bcall? That could make a difference, since it would then not include the bcall at all.
And you are using the ti83plus.inc for SPASM, correct? Other versions might not work.
« Last Edit: November 14, 2010, 08:31:57 pm by calcdude84se »
"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 FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: ASM Help
« Reply #20 on: November 14, 2010, 09:52:37 pm »
If you're using the official ti83plus.inc from TI, that file uses ZMASM syntax for macros and equates.  I don't think spasm supports that syntax, or at least, it didn't the last time I checked.

Also, the official syntax defined by TI is "B_CALL PutS", not "bcall(_PutS)", so if you're using the official ti83plus.inc, it doesn't surprise me that the latter doesn't work.

It might help if you could post a listing file.

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: ASM Help
« Reply #21 on: November 14, 2010, 09:54:02 pm »
I tried both files.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: ASM Help
« Reply #22 on: November 14, 2010, 10:20:30 pm »
There are many different versions of ti83plus.inc floating around out there.  Which two, specifically, did you try?

For TASM - and I assume this would also work for SPASM - you'd want to include something along these lines, at the top of the file:
Code: [Select]
#define bcall(x) rst 28h \ .dw x
#define bjump(x) call BRT_JUMP0 \ .dw x
#define equ .equ
#define EQU .equ

Back in the day, when I used TASM, I liked to add:
Code: [Select]
.addinstr B_CALL * EF 3 NOP 1
.addinstr B_JUMP * 0050CD 5 NOP 1
which lets you write "B_CALL _PutS", a little bit closer to TI's official syntax.  I don't remember if SPASM supports addinstr.

In addition, you probably need to comment out the macro definitions later in the file.