6809 Assembler Frage

Gast #1263366
Lesenswert?

Hi,

eine kurze Anfängerfrage, weil weder das Motorola PM noch Google noch 
Forensuche mir weiterhelfen konnten:


Was ist der Unterschied zwischen

jmp LABEL und jmp >LABEL

bzw.

jsr LABEL und jsr >LABEL



Hab das in den Sourcen für ein Vectrex Spiel gefunden.

Vielen Dank,
n0ize
#1263386
Lesenswert?

n0ize schrieb:
> Hi,
>
> eine kurze Anfängerfrage, weil weder das Motorola PM noch Google noch
> Forensuche mir weiterhelfen konnten:
>
>
> Was ist der Unterschied zwischen
>
> jmp LABEL und jmp >LABEL
>
> bzw.
>
> jsr LABEL und jsr >LABEL

">" Longjump

Gruesse,

Michael
Persönliche Seite #1263397
Lesenswert?

Die Syntax ist mir unbekannt. Erwähnen die Sourcen, für welchen 
Assembler sie gedacht sind?

Beim Crossassembler XASM wird diese Syntax nur für x86 verwendet:
1
   The '>' and '<' prefix's also have special meaning in  JMP  and
2
    CALL instructions:
3
    
4
           JMP     label       NEAR 16 bit RELATIVE jump
5
           JMP     <label      NEAR 8 bit RELATIVE jump
6
           JMP     >LABEL      NEAR INDIRECT jump through LABEL

Aber das ist beim 6809 anders gelöst.

JSR adressiert absolut, BSR bzw. LBSR sind die relativen Varianten mit 
8- bzw. 16-Bit-Offset.
Die relativen Äquivalente von JMP sind BRA bzw. LBRA.

Denkbar wäre, daß sich hinter der merkwürdigen Syntax nur eine 
Alternativschreibweise zu den "echten" 6809-Mnemonics.

Achso, nochwas, es könnte auch 8-Bit-Sprünge innerhalb der "direct page" 
geben, aber daran kann ich mich im Detail nach 20 Jahren nicht mehr 
genau erinnern.
Gast #1263669
Lesenswert?

Vielen Dank für die Antworten ;)

@Rufus: Nein, in den Sourcen steht nichts, ich habe den Quelltext 
angehängt. Es gibt allerdings eine weitere Version der Sourcen, die für 
AS09 von Frank A. Vorstenbosch geschrieben ist, da taucht die Syntax 
nicht auf.

Gruß,
n0ize
Angehängte Dateien:
Gast #1263681
Lesenswert?

@Rufus: Done, die gleichen jmp und jsr Befehle, aber ohne ">". Außerdem 
werden Variablen anders initialisiert:

SHOT_SPEED              EQU     #$08

vs.

SHOT_SPEED              EQU     $08    ; AS09 Syntax

@Rainer: Danke für das PDF, auch die anderen PDFs der Uni Ulm sind ja 
eine wahre Quelle der Weisheit und genau das, was ich gesucht habe, 
endlich eine anfängergerechte Einführung in den 6809 ;)
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren