Omnimaga

Calculator Community => TI Calculators => ASM => Topic started by: Halifax on October 27, 2006, 09:03:00 am

Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on October 27, 2006, 09:03:00 am
I need help setting up a working environment for my Assembly programming on the 83/84+ family. I have the includes, TASM, and I have read the tutorials on how to do it but I can never get it to compile the programs correctly without TASM giving me an error even when I include ti83plus.inc
Title: [z80 ASM] Setting up an assembly environement
Post by: kalan_vod on October 27, 2006, 10:15:00 am
I use spencers assembler, it works and is easy to set up. Also you can make apps really easily.
Title: [z80 ASM] Setting up an assembly environement
Post by: Liazon on October 27, 2006, 12:27:00 pm
you want me to email you my set up? or do you want to use an IDE?

My set up works almost exactly as a TASM set up.

The IDE has some slight syntax changes, but over all, it may be better for learning purposes.  However, soon the IDE will no longer be TASM backwards compatible.

Just post a reply.
Title: [z80 ASM] Setting up an assembly environement
Post by: DJ Omnimaga on October 27, 2006, 12:47:00 pm
does spencer assembler set things for you? I mean do you still need to use command prompt for compile and all?
Title: [z80 ASM] Setting up an assembly environement
Post by: Liazon on October 27, 2006, 04:15:00 pm
I've got a batch file so that all I need to do is double click it and it will do everything for you.  You can make copies of it and edit it.  But ultimately, my batch file only compiles for 83+, and it can only do one file every time.  You can edit the file to change what source file it will make, but I suggest either

1.)  make a version of the batch file for each project/source
2.)  learn how to write batch files and make one as good as devkitpro's, which in command prompt is very easy to use.

OR

3.) Get latenite and avoid all this set up stuff.

Like I said before, just post a reply if you still need help.  When I get a chance, I'll upload my dev folder, which will have everything you need.
Title: [z80 ASM] Setting up an assembly environement
Post by: kalan_vod on October 27, 2006, 06:31:00 pm
c1-->
CODE
ec1cd desktop
cd wabbit
assembler be.asm
wabbit be.bin be.8xpc2
ec2
Batch code....not hard at all.
Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on October 27, 2006, 07:49:00 pm
Yeah Im would like you to email me your setup Liazon and I will also try Spencer's Assembler just to see which one is the best

My Email:[email protected]
Title: [z80 ASM] Setting up an assembly environement
Post by: DJ Omnimaga on October 28, 2006, 02:50:00 am
yeah batch code is not hard at all, i just wanted to know if it was windows based or still dos based?
Title: [z80 ASM] Setting up an assembly environement
Post by: kalan_vod on October 28, 2006, 05:42:00 am
It assembles under DOS I am sure of, and it is written in C I think. I was able to assembly anything with it and with ease. I was never able to assembly ION under TASM and what not.
Title: [z80 ASM] Setting up an assembly environement
Post by: DJ Omnimaga on October 28, 2006, 05:59:00 am
aaah good, with TASM ppl kept asking help about the missing end at the end of file and all <_<dry.gif
Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on October 28, 2006, 07:37:00 am
I tried spencer's assembler and it worked, but when I sent the program to my calc and typed in Asm(prgmmyname and then pushed enter an error message came up saying ERR:INVALID
c1-->
CODE
ec1
#include "ti83plus.inc"

.org progstart

 
Title: [z80 ASM] Setting up an assembly environement
Post by: Liazon on October 28, 2006, 10:20:00 am
http://www.geocities.com/calcul831415/Assembly.zip

So I've just posted my dev folder on my site.  As you can see, I haven't been doing much assembly lately.

and those should be bcalls/b_calls in you code, not calls.  Calls are for RAM jumps, and bcalls are for ROM jumps.  Those routines you are looking for are BIOS routines that are stored in ROM and are a part of TI-OS

The reason why it's saying invalid is because you can't simply call when trying to execute ROM code.  For example, _setxxop1 is a substitute for a number, I forget what range it is, but the # is in the ROM range.  So the calc is a bit confused you're trying to use a RAM method to access ROM.  Also, bcall will switch to the right ROM page that the ROM call is on.  There are many pages of ROM calls, and you need to be on the right one to get things done properly.
Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on October 28, 2006, 11:32:00 am
Even when I changed the call's to bcall's and recompiled I still recieved an ERR:INVALID

EDIT: Nvm Liazon thanks I used your environment and it works perfectly now I can start writing ASM programs I'm so happy :)smile.gif:)smile.gif:)smile.gif
Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on October 28, 2006, 07:07:00 pm
I have been trying to edit this code and switch things around for about an hour now but I can't get it to work. I am testing it in MOS after I compile it and send it and I am trying to get that ball sprite move around the screen.There are tabs in my code the omnimaga posting thing just didnt keep some of them when I posted the code.

c1-->
CODE
ec1
.nolist
#include ion.inc
#include ti83plus.inc
#define x saferam1
#define y saferam1+1
.list


 
Title: [z80 ASM] Setting up an assembly environement
Post by: DJ Omnimaga on October 29, 2006, 02:06:00 am
hmm this is kinda off-topic, splitted the asm discussion (and the BASIC one) in different topics
Title: [z80 ASM] Setting up an assembly environement
Post by: Liazon on October 29, 2006, 02:51:00 am
My z80 is definitely getting a bit rusty but I'll give it a shot.  I've made comments.  Comments are very useful!

c1-->
CODE
ec1
.nolist
#include ion.inc
#include ti83plus.inc
#define x saferam1
#define y saferam1+1
.list


 
Title: [z80 ASM] Setting up an assembly environement
Post by: Liazon on October 29, 2006, 06:44:00 am
Sorry for the double post but here's working code for ya KillerPlayer:

c1-->
CODE
ec1.nolist
#include ion.inc
#include ti83plus.inc
#define x saferam1
#define y saferam1+1
.list


 
Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on October 29, 2006, 07:05:00 am
Yeah srry xlibman I just figure since it said argh TI-84 help that it could be asm and basic so I didn't make a new topic and thanks Liazon I will try but I just started ASM 2 days ago
Title: [z80 ASM] Setting up an assembly environement
Post by: Jon on January 18, 2007, 05:39:00 pm
QUOTE
And what you witness at the end there is crashing. I'm not sure if it's because I travelled too far down or too far up (i duno because I don't have a real calc to crash) so you should try it on your own calc to see if it will really crash. Lately PTI has been disagreeable w/ me. It even destroyed CrunchyOS by itself. Maybe the ROM integrity is getting worse


The reason for that unfortunate crash, is that ionputsprite uses plotsscreen, which is a section of RAM devoted to the screen.  When you off the screen, your sprite data is straying into RAM that is not necessarily safe, resulting in the crash.  Mucking with non-safe RAM areas can almost always result in a crash :/confused.gif
Title: [z80 ASM] Setting up an assembly environement
Post by: DJ Omnimaga on January 19, 2007, 02:10:00 am
mhmm

QUOTE
Halifax   Posted: 29 Oct, 2006, 13:05


QuoteBegin
-->
QUOTE
Jon   Posted: 18 Jan, 2007, 23:39


quite a bit late to reply in this topic :|neutral.gif
Title: [z80 ASM] Setting up an assembly environement
Post by: Halifax on January 19, 2007, 09:24:00 am
haha thats funny this was back when I was called killerplayer

Halifax reminises