Software > Coding
PureC asm nach AHCC portieren
guest522:
Hi,
ich möchte folgenden PureC asm Code in AHCC übersetzen:
--- Code: --- move.w sr,d1
or.w #$700,sr
--- Ende Code ---
Erhalte dann aber eine undefined reference.
Offensichtlich kennt AHCC den move.w für sr nicht.
Mit
--- Code: --- move sr,d1
--- Ende Code ---
klappts, aber das or.w bekomme ich so nicht unter Kontrolle. Any ideas?
m0n0:
Hallo, melde dich bei Henk Robbers bzw. poste im support thread bei atari-forum.com und dir wird mit sicherheit geholfen bzw. wenn's ein bug in AHCC ist - dann wird der wohl schnell behoben. Ist meine Erfahrung.
--- Code: --- or.w #$700,sr
--- Ende Code ---
derweilen könntest du auch einfach folgendes probieren:
- anstatt $700 den dezimalwert verwenden
.... moment, da fällt mir was auf - den sr kann man doch nur im super visor modus beschreiben, oder? Hast Du in den Optionen angecheckt das der code für den super visor mode ist? evt....
aber naja, warte lieber auf Henk's Antwort =)
guest522:
Hi,
mit Henk bin ich schon in Kontakt und ja, den Supervisor mode habe ich aktiv. ;)
Dezimal werde ich mal testen.....
Idek
simonsunnyboy:
Was genau ist das Problem? Kannst Du Dein Assemblerunterprogramm nicht ansprechen?
Dann muss man das wie folgt formulieren:
a) Im .s file das Symbol exportieren (geht auch für Daten)
--- Code: ---EXPORT meine_fkt
meine_fkt:
...
rts
--- Ende Code ---
b) Ein entsprechendes Headerfile anlegen, welches die Funktion mit Prototyp bekannt macht:
--- Code: ---extern void meine_fkkt(void);
--- Ende Code ---
Ggfs Parameterübergaben müssen noch deklariert werden, dabei werden Werte als d0 und d1 allokiert, Pointer als a0 und a1 übergeben.
Rückgabewert ist d0 für Werte, a0 für Pointer.
Also z.B.
--- Code: ---/* .h Header: */
extern long meine_addition(long a, long b);
--- Ende Code ---
--- Code: ---; Assemblerqueltext .s
EXPORT meine_addition
meine_addition:
add.l d1,d0
rts
--- Ende Code ---
guest522:
--- Zitat von: simonsunnyboy am Mo 30.04.2012, 13:42:09 ---Was genau ist das Problem? Kannst Du Dein Assemblerunterprogramm nicht ansprechen?
--- Ende Zitat ---
Das Problem habe ich im ersten Post beschrieben: AHCC akzeptiert den PureC asm Code nicht.
Den originalen Code
--- Code: ---
move.w sr,d1
or.w #$700,sr
--- Ende Code ---
kann man aber durch
--- Code: ---move sr,d1
ori #$700,sr
--- Ende Code ---
ersetzen. Damit bekomme ich das zumindest durch den Compiler.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln