TASM TI-83 Problem
-
Hat einer eine Idee, wie ich über TASM folgenden Code zum Laufen bekomm:
.nolist #include "ion.inc" ;the area in itallics is the standard .list ;ion header. you can change the name #ifdef TI83P ;displayed by ion and the 2 labels .org progstart-2 .db $BB,6D #else .org progstart #endif ret jr nc,lblStart ;jumps to the label lblstart .db "Hello World",0 ;The title displayed by ION lblStart: ;defines where lblstart is bcall(_clrlcdf) ;Clear the screen bcall(_homeup) ;puts the cursor in the homerow ld a,0 ld (CURCOL),a ;Loads a (which is zero) into the x coord. ld a,0 ld (CURROW),a ;Loads a (which is zero) into the y coord. ld hl,txtHelloWorld ;Loads the text from txtHelloWorld into hl bcall(_puts) ;Puts the text on the screen bcall(_getkey) ;Waits for keypress before continuing bcall(_clrlcdf) ret ;returns to basic mode txtHelloWorld: ;a label used for jumping and other things .db "This is where " ;if you want multiple lines, don't have .db "the text will be" ;a ,0 after the " .db "displayed, " .db "each line has to" .db "16 charachters " .db "long, there can " .db "only be 7 lines ",0 ;this defines the end of the text .end ;defines the end of a program .end
Assembling file: test.asm **Error** test.asm(2) Unknown character **Error** test.asm(5) Unknown character **Error** test.asm(8) Unknown character **Error** test.asm(10) Unknown character **Error** test.asm(11) Code or data emission to undeclared segment **Error** test.asm(26) Code or data emission to undeclared segment **Fatal** test.asm(38) Unexpected end of file encountered Error messages: 7 Warning messages: None Passes: 1 Remaining memory: 409k
Komm nimmer weiter, ich hab schon alles probiert...
Hier ein paar Seiten, mit Infos:
http://www.geocities.com/tutorman_2000/83/asm1.html
http://www.ftp83plus.net/Tutorials/Beg83AsmA.htm
http://www.z80.info/z80href.txt
http://web.archive.org/web/19990218173937/http://www.geocities.com/SiliconValley/Bay/5626/asmles1a.htm
http://www.ticalc.org/pub/win/asm/z80asm.hlp
Wäre echt nett, wenn mir einer hilft überhaupt das ganze zum Laufen zu bekommen, weil wenn ich erstmal assemblieren kann, dann ist der Rest kein Prob mehr.
-
.NOLIST #DEFINE equ .equ #DEFINE EQU .equ #DEFINE end .end #INCLUDE "ti83asm.inc" #INCLUDE "tokens.inc" .LIST .org 9327h call _clrLCDFull ;Clears the Screen ret ;Returns to what it was doing .end ;Ends the program END
Selbst das funkt net:
Assembling file: test.asm **Error** test.asm(1) Illegal instruction **Error** test.asm(2) Unknown character **Error** test.asm(3) Unknown character **Error** test.asm(4) Unknown character **Error** test.asm(5) Unknown character **Error** test.asm(6) Unknown character **Error** test.asm(8) Illegal instruction **Error** test.asm(9) Undefined symbol: _CLRLCDFULL **Error** test.asm(10) Code or data emission to undeclared segment **Error** test.asm(11) Illegal instruction Error messages: 10 Warning messages: None Passes: 1 Remaining memory: 411k
-
Ist das der normale Borland TASM, den du benutzt?
Sieht fast so aus.
Da es sich dabei jedoch um einen Assembler fuer x86-Code handelt, wirst du deinen Code damit auch nicht zum Laufen bringen koennen.
-
Brauch ich denn einen anderen TASM?
-
http://www.ticalc.org/archives/files/fileinfo/287/28793.html
z80 Workshop release 1.3
Want a z80 editor/compiler that has more than NotePad? Well, here is what you need! It has many useful features: -Label jumper (box on right of screenshot). Click a link in that box, and jump straight to that label in the source! Magic! -Compile button (runs TASM & DevPac8X for you [included]). -'Tools' menu - allows you to add useful programs, like VTI, iStudio, or any other programming tools you might own. -Helpful errors! If TASM dumps a nasty one on you, a box pops up- click an error to jump to its line in the code! *Update* - Fixed bug that caused 'File already opened' error box if you tried to save before the program had finished loading.Das Ding arbeitet auch mit Tasm, jedoch lässt sich das ganze danach auch assemblieren...
Einziges Problem, wenn ich das Programm auf dem Rechner laufen lasse, kommt dann ein Fehler: Divided by Zero.Das ist eines der Templates:
#include "../ti83plus.inc" #define bcall(label) RST 28h \ .dw label .org $9D93 .db $BB,$6D ;Code goes in here. .end END
edit: Quote-Tags gesetzt
-
Ja, fuer nicht-x86-Code (zB. also fuer TI) kannst du den Borland TASM nicht benutzen.
Aber offenbar hast du den richtigen TASM ja inzwischen gefunden...?
...
-
jupp, war aber nicht vollständig, bei dem oben.
Hab jetzt tasm301 geladen, funkt auch + 83link und devpac83
tasm301+83link für normale asm anwendungen
tasm301+devpac83 für ion-anwendungenUnd ich weiß jetzt auch, wieso es immer einen Fehler gab:
Da gibts so eine Art Hack um ASm auf dem 83er zu aktivieren:
Send(9prgmNAME
Bis man sich den ganzen Mist ausgesucht hat
Man muss sich alle Dateien von verschiedenen Seiten oder mit verschiedenen Methoden besorgen, da diese ganzen Anwendungen so alt sind, dass sie so gut wie keine sau mehr anbietet, bzw. viele Seiten einfach down sind (einer der jüngsten TI-83-ASM-Seiten ist von 1999) und viele kann man nur noch über archive.org anschaun, wenn überhaupt.
-
.NOLIST #DEFINE equ .equ #DEFINE EQU .equ #DEFINE end .end #INCLUDE "ti83asm.inc" #INCLUDE "tokens.inc" .LIST .org 9327 nop jr Start .dw $0000 .dw Name Name: .db "ClearHome",0 Start: call _clrLCDFull ret .end END
Ungefähr so muss das ganze beim normalen z80 asm aussehen und bei ION:
.nolist ;\ #include "ion.inc" ; \ .list ; \ #ifdef TI83P ; \ .org progstart-2 ; | Standard Ion .db $BB,$6D ; / Program Header #else ; / .org progstart ; / #endif ;/ ret ; use xor a if libraries are not used jr nc,start ; jump to the start ; of the program .db "This is the description",0 start: ret .end .end
So, ich werd mich da jetzt erstmal einarbeiten, das Topic kann geschlossen werden, es werden aber sicherlich noch andere Folgen