Okay, I downloaded TASM a while ago and could never get it to compile, so I gave up. I downloaded the DCS SDK today and I'm still getting the same error I had before.

Learn ASM in 28 days says:

And save as hello.z80 in the source directory
to compile, open up DOS (try Start menu, Run, then whichever of command.com or cmd.exe works) and go to the TASM directory. Type asm hello and press Enter.



This is what I'm getting:









Any idea what the problem could be?
Don't use TASM. Use the DCS SDK from:
http://www.cemetech.net/programs/archives.php?mode=folder&path=/beta

Just add ti83plus.asm into the TASM directory, then make a new text file called yourfile.bat that comtains:


Code:
compile yourfile


WITHOUT the .asm or .z80 extension. Then drop your source code into the /source/ folder, and run the batch file. woot.
First, I am using DCS SDK, and second, where can I get ti83plus.asm?
I use TASM. It always works perfectly (unless when the program has errors in it). You could have just placed your programs in the wrong folder. You can also go to This page. It has everything you need for TASM and how to use it.
foamy3 wrote:
Any idea what the problem could be?


yes, you don't have the asm.bat file in the TASM directory
Foamy if you go to the page I referenced before, you will find a download that has everything you need for TASM all in their proper folders. I believe it also comes with ti83plus.inc, mirage.inc, and ion.inc.
Oh yeah, I forgot to tell you foamy.

AMAZING JOB WITH YOUR POST!!!! I mean, you went all out with several screenshots (edited to only the relevant portion even)

you truly are the best n00b ever
Hate to hijack the topic foamy, but I must say you are the most amazing n00b EVER! You coherently asked a legitimate question, had obviously tried everything you could think of before doing so, and even provided SCREEN SHOTS. HOLY SHIT. Puny underlings, bow down to your new master, foamy!
jpez wrote:
Hate to hijack the topic foamy, but I must say you are the most amazing n00b EVER! You coherently asked a legitimate question, had obviously tried everything you could think of before doing so, and even provided SCREEN SHOTS. HOLY <font color=red>censored</font>. Puny underlings, bow down to your new master, foamy!


meaning he's a newbie, not a n00b.
:-p

I tried to be like that. at some point I realised i was no longer newb.
Foamy, that was an excelent question. Looks like somebody read Jpez's article on how to post well Smile I wish I could have been hear earlier to help because almost everything has been said already. I sincerely hope you get your problem fixed soon, you truly deserve it Wink

To sum everything up for you, if you want to use pure TASM you need the asm.bat file in the TASM directory. That is why DOS was not recognizing asm as a valid "command...or batch file." If you want to use DCS SDK you will need to follow Kerm's instructions on creating a batch file. You should be able to find the ti83plus.inc (I'm pretty sure that is the same as "ti83plus.asm") in your current TASM folder. There are also some other options to compiling as well. My favorites include Mirage Developers Pack, Andy ASM compiler, and Dwedit's Compiler (which is great for both applications and regular asm programs). Personally, I have found Andy's ASM compiler to be the most n00b friendly as all you have to do is run the mirage.bat file and type in asm programname and it takes care of the rest.
First off, thank you all for the n00b compliments. I've had enough practice at it. Very Happy

Second, I made a few strides forward, but am still failing. I put asm.bat into my tasm directory and I now get this:



I tried another program that just cleared the screen and got the same output from the assembler so I imagine that the source code is fine, but just incase...

Code:
.nolist
#include "ti83plus.inc"
#define    ProgStart    $9D95
.list
.org    ProgStart - 2
    .db    t2ByteTok, tAsmCmp
    b_call(_ClrLCDFull)
    ld    hl, 0
    ld    (PenCol), hl
    ld    hl, msg
    b_call(_PutS)            ; Display the text
    b_call(_NewLine)
    ret

msg:
    .db "Hello world!", 0
.end
.end


I'm so close, but still so far...

Also, I tried Kerm's batch file thing. I never did locate the ti83plus.asm, but I have ti83plus.inc. I made the batch, but it just went into an infinite loop of printing "compile hello" to the screen.

Edit: Nevermind the infinite loop thing. I tried too many tutorials at the same time and got confused as to which advice I was taking... The batch file not just flashes to the screen too quickly to read. Nothing else seems to happen. (No assembled programs appear)
From the looks of it, it's not opening the file. Try saving it as hello.asm instead of hello.z80. Aslo try sticking a copy in the TASM directory to cover all bases. I'd recommend looking into Andy's asm compiler just to get things set up because it comes ready to compile.

Your source is fine. Wink

Edit: While we're at it, it might be a good idea if you could post the source to your asm.bat file. Just right click on it and click edit Wink
Okay, I switched to .asm and put a copy in the tasm folder and source folder, and it gave me 3 errors.



Andy's compiler gave me the same three. I won't add a screen shot because it is basically the same as the tasm one but with profanity.


Edit:
asm.bat

Code:
@echo off
echo ----- Assembling %1 for the TI-83 Plus...
echo #define TI83P >temp.z80
if exist %1.z80 type %1.z80 >>temp.z80
if exist %1.asm type %1.asm >>temp.z80
tasm -80 -i -b temp.z80 %1.bin
if errorlevel 1 goto ERRORS
devpac83 %1
copy %1.83p %1.8xp >nul
echo ----- Assembling %1 for the TI-83...
echo #define TI83 >temp.z80
if exist %1.z80 type %1.z80 >>temp.z80
if exist %1.asm type %1.asm >>temp.z80
tasm -80 -i -b temp.z80 %1.bin
if errorlevel 1 goto ERRORS
devpac83 %1
echo ----- Success!
echo TI-83 version is %1.83p
echo TI-83 Plus version is %1.8xp
goto DONE
:ERRORS
echo ----- There were errors.
:DONE
del temp.z80 >nul
del %1.bin >nul
This is great news for you. Now the reason for this error is whatever .inc file you are using which seems to just be ti83plus.inc, it has a specific syntax for b_calls. I'm not sure as to what is equated so you have two choices: make your own so that you can personalize, or find out what it is using. It's easier to just make your own so open the ti83plus.inc file and at the top add in the line:
Code:
#define b_call(label) RST 28h \ .dw label


You're so close to getting it to work. Very Happy

Edit: You may change the "b_call" part of that code to any variation you like. Personally I prefer "bcall" (as it's one less keypress), but make sure that all your b_call's follow suit.
IT WORKED!!!

Thank you all, sooo much!

/me is rather excited if you can't tell.

Thanks again for this.

Haha, maybe I'll actually understand what the code means someday Very Happy


:For(A,1,100000)
:Disp "THANK YOU!
:End
You're very welcome. Remember, you deserved this result. Keeping posting like this and you should expect the same care and attention for all of your problems. Very Happy
I forgot to mention: compile.bat goes in /asm/, .z80 and .asm files go in /asm/source, and output files go into /asm/exec. That yourfile.bat thing I recommended making goes into the root /asm/.
Oh, okay. That method works now, too. Thanks.
Awesome. See, one of the points of the DCS SDK is that it's supposed to work in any directory, on any drive, without having to put it specifically in C:\ASM or anything.
  
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement