Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » KC-CLub Homepage Assemblerquelltexte » Themenansicht

Autor Thread - Seiten: -1-
000
27.03.2007, 23:55 Uhr
HONI



Auf der Seite des KC-Clubs sind einige Assemblerquelltexte zu finden. Mit welchem Assembler kann man die denn übersetzen? Haben hauptsächlich den Dateianhang MAC. Leider sind nur wenige andere Quelltexte für den Assembler auf dem Development-Modul . Ein Standart Z80 Assembler wird sicher nicht funktionieren.

MfG HONI!!
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
28.03.2007, 00:10 Uhr
Enrico
Default Group and Edit


Wieso? Das steht doch da:
CAOS: EDAS-Quellen
CPM: Assemblerquellen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
28.03.2007, 00:18 Uhr
HONI



Gut, heisst also CP/M, kann ich also die Assembler aus dem CP/M Bereich benutzen? Gibts auch einen Assembler für den PC dier die Quelltexte assemblieren kann?

MfG HONI!!
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
28.03.2007, 00:25 Uhr
Enrico
Default Group and Edit


Genau. Für PC gibts bestimmt auch was. Ich kenne aber keinen. Oder Du nimmst einen CPM Emulator.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
28.03.2007, 00:35 Uhr
HONI



Na mal sehen ob ich das mit dem KC-Emu hinbekomme

MfG HONI!!
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
28.03.2007, 12:35 Uhr
volkerp
Default Group and Edit
Avatar von volkerp

MAC (CPM) ist meistens vom Macro-Assembler M80 vom M***osoft.
Unter Windows nutze ich den Arnold-Assembler, der ist recht M80-kompatibel.
--
VolkerP

http://hc-ddr.hucki.net
(Z9001, Z1013, LC-80, ...)

Dieser Beitrag wurde am 28.03.2007 um 12:35 Uhr von volkerp editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
12.04.2007, 13:49 Uhr
volkerp
Default Group and Edit
Avatar von volkerp

Als Entwicklungsumgebung am PC bietet sich
ZXCC (http://www.seasip.demon.co.uk/Unix/Zxcc/index.html) an.

"ZXCC is a two-purpose CP/M 2/3 emulator allowing:
Hi-Tech C for CP/M to be used as a cross-compiler under Unix.
The CP/M build tools (MAC, RMAC, GENCOM, LINK) to be used under DOS or Unix."
--
VolkerP

http://hc-ddr.hucki.net
(Z9001, Z1013, LC-80, ...)

Dieser Beitrag wurde am 12.04.2007 um 13:49 Uhr von volkerp editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
17.04.2007, 10:24 Uhr
volkerp
Default Group and Edit
Avatar von volkerp

Ich habe noch folgenden CPM-Emulator gefunden, der auch in der DOS-Box unter Windows XP läuft:

http://www.os2site.com/sw/emulators/cpm210g.zip

Damit kann man Kommandozeilen-CP/M-Programme wie den M80 nutzen, ohne spezielle virtuelle CP/M-Disketten anlegen zu müssen. Es wird einfach das aktuelle Verzeichnis genutzt. Somit ist ein Entwickeln/Kompilieren/Testen auch unter XP möglich.
Der Quellcode vom A5120/30-CPA läßt sich auf Anhieb verarbeiten!
--
VolkerP

http://hc-ddr.hucki.net
(Z9001, Z1013, LC-80, ...)

Dieser Beitrag wurde am 17.04.2007 um 10:26 Uhr von volkerp editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
11.09.2007, 11:08 Uhr
Ralph



Hallo,

ich brauch mal wieder Eure Hilfe. Ich wusel nun schon einige Zeit,
damit ich einen Quelltext wie folgenden mit nem einfachen Assemler
in Maschienencode wandeln kann. Aber scheinbar bin ich zu doof.
-----------------------
;++++++++++++++++++++++++++++
;
; UP Reg. A nach Drucker
;
;++++++++++++++++++++++++++++
;
PIOADA EQU 008
PIOAST EQU 00A
PIOBDA EQU 009
PIOBST EQU 00B
;
ORG 02000
;
PUSH AF
CALL DRUAUS
POP AF
cmp 0D
RET NZ
PUSH AF
mov A,0A
CALL DRUAUS
POP AF
RET
;
DRUAUS OUT [PIOADA],A
IN A,[PIOBDA]
BIT 1,A
jmp NZ,SPER
;
PUSH BC
mov B,30
D6 IN A,[4]
cmp "G+80H
jmp Z,D5
DJNZ D6
POP BC
RET
;
D5 POP BC
CALL 0272
IN A,[PIOBDA]
SET 1,A
OUT [PIOBDA],A
RET
;
SPER IN A,[PIOBDA] ;prÜfen ob sperre
BIT 0,A
jmp Z,D2
;
IN A,[4]
cmp "Q+80H
jmp NZ,SPER
;
CALL 0272
IN A,[PIOBDA]
RES 1,A
OUT [PIOBDA],A
RET
;
D2 RES 7,A
OUT [PIOBDA],A
SET 7,A
OUT [PIOBDA],A
D1 RET

----------------------
Der Quellcode liegt als Datei REGA.EDA vor. Ich hab schon viel probiert,
was hier im Forum steht. Z.B. Emulatoren (cpm210g geht aber nicht!)
z.B. Z80EMU mit ASM oder MAC
.. Ich krieg das einfach nicht hin (auch weil entsprechende Dokus fehlen)

Kann mir jemand sagen, wie ich welchen Assmbler aufrufen muss,
damit der obige Quellcode übersetzt wird ?

Lieben Dank Euch !
--
Es geht alles erst richtig los !
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
11.09.2007, 12:09 Uhr
Z1013



Hallo
Den Befehl mov gibt es beim Z80 Assembler nicht, heißt dort LD
Eckige Klammern auch nicht: [ --> (

.. nicht das anfangen wird belohnt, sondern das durchhalten!!


Quellcode:
;++++++++++++++++++++++++++++
;
; UP Reg. A nach Drucker
;
;++++++++++++++++++++++++++++
;
PIOADA: EQU 008h
PIOAST: EQU 00Ah
PIOBDA: EQU 009h
PIOBST: EQU 00Bh
;
ORG 02000h
;
    PUSH AF
    CALL DRUAUS
    POP AF
    cp 0Dh
    RET NZ
    PUSH AF
    LD A,0Ah
    CALL DRUAUS
    POP AF
    RET
;
DRUAUS: OUT (PIOADA),A
    IN A,(PIOBDA)
    BIT 1,A
    jp NZ,SPER
;
    PUSH BC
    LD B,30 ; 30h?
D6:    IN A,(4) ;4h?
    cp 'G'+80H
    jp Z,D5
    DJNZ D6
    POP BC
    RET
;
D5:    POP BC
    CALL 0272h
    IN A,(PIOBDA)
    SET 1,A
    OUT (PIOBDA),A
    RET
;
SPER:    IN A,(PIOBDA) ;pruefen ob sperre
    BIT 0,A
    jp Z,D2
;
    IN A,(4)           ;4h ?
    cp 'Q'+80H
    jp NZ,SPER
;
    CALL 0272h
    IN A,(PIOBDA)
    RES 1,A
    OUT (PIOBDA),A
    RET
;
D2:    RES 7,A
    OUT (PIOBDA),A
    SET 7,A
    OUT (PIOBDA),A
D1:    RET

EDIT: Marke D1 wird nicht benutzt...
--
Viele Grüße
Holger

Dieser Beitrag wurde am 11.09.2007 um 12:57 Uhr von Z1013 editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
11.09.2007, 12:12 Uhr
Z1013



welchen Assebmler nimmst du?
Versucher doch mal den ASide oder AS
--
Viele Grüße
Holger

Dieser Beitrag wurde am 11.09.2007 um 12:29 Uhr von Z1013 editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
11.09.2007, 12:42 Uhr
Ralph



hm ok aber es muss ja offensichtlich auch Assembler
geben, die genau diese komische Mnemonik für den Z80
verstehen.

Aside und AS woher gibt es die ? und vor allem wie ist dort
die Bedienung ? Ich meine den Aufruf des Assemblers.
Ich selbst habe nur einen Assembler (Edas*4 AC1) der
nen internen Editor hat. Daher bräuchte ich auch die
Startzeile, weil die meisten Assembler ja nur ne Textdatei
übersetzen..

Danke aber erstmal. !
Gruß Ralph
--
Es geht alles erst richtig los !
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
11.09.2007, 12:47 Uhr
Z1013



Aside und AS sind Crossassembler für den PC der den Quelltext für einen Z80 übersetzt. Den Quelltext, den ich ausgebessert habe, wurde vom Aside fehlerfrei übersetzt.

http://www.theeg.de/aside/index.html
http://john.ccac.rwth-aachen.de:8000/as/download.html


Zitat:
komische Mnemonik

??? komisch?
--
Viele Grüße
Holger

Dieser Beitrag wurde am 16.09.2007 um 14:05 Uhr von Z1013 editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
11.09.2007, 12:54 Uhr
Ralph




Zitat:
Z1013 schrieb

Zitat:
komische Mnemonik

??? komisch?

naja ich meinte z.B. mov statt LD... das erschien mir für
nen Z80 Assembler "komisch" ... aber man lernt ja nie aus !
--
Es geht alles erst richtig los !

Dieser Beitrag wurde am 11.09.2007 um 17:37 Uhr von Ralph editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
14.02.2008, 10:52 Uhr
PeterSieg



Hallo. Ich habe mal ein paar Beispiel Assemblerprogramme von der KC-Club Seite (farben.asm und loesch.asm) und aside genommen.. nach ein paar nötigen Anpassungen wird die asm Datei ohne Fehler in eine bin Datei übersetzt.. Wenn ich diese in *.kcc umnennen und im kcemu laden will bekomme ich beim Versuch diese Programm als KCC Programm zu laden, eine Fehlermeldung 'Adressfehler..' ??

Frage: Wie kann ich KCC Dateien aus asm mit aside erzeugen? Oder umgekehrt, wie kann ich die erzeugten bin Dateien in kcemu laden?
Später möchte ich aber die so erzeugten Programme per kcload auf einen KC85/3 bringen..

Danke, Peter

EDIT:
====
ok, die bin Dateien kann man als Speicherabzug laden.. nach 'menu' wird das Programm auch im Menü angezeigt.. soweit so gut..

Frage(n):
Kann ein solcher Speicherabzug auch in den KC85/3 mittels kcload geladen werden? kcload nimmt das zumindestens und 'spielt es ab'..?
Gib es im Netz 'Tutorials' zur Assemblerprogrammierung speziell zum KC85/3..?

Danke, Peter

Dieser Beitrag wurde am 14.02.2008 um 14:04 Uhr von PeterSieg editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
14.02.2008, 21:10 Uhr
susowa




Zitat:
PeterSieg schrieb
Hallo. Ich habe mal ein paar Beispiel Assemblerprogramme von der KC-Club Seite (farben.asm und loesch.asm) und aside genommen.. nach ein paar nötigen Anpassungen wird die asm Datei ohne Fehler in eine bin Datei übersetzt.. Wenn ich diese in *.kcc umnennen und im kcemu laden will bekomme ich beim Versuch diese Programm als KCC Programm zu laden, eine Fehlermeldung 'Adressfehler..' ??

Frage: Wie kann ich KCC Dateien aus asm mit aside erzeugen? Oder umgekehrt, wie kann ich die erzeugten bin Dateien in kcemu laden?
Später möchte ich aber die so erzeugten Programme per kcload auf einen KC85/3 bringen..

Danke, Peter

Die ASM-Dateien von der Clubseite sind alle für EDAS (KC85) gedacht, welches etwas anders als Dein Assembler arbeitet - der kennt nämlich CAOS nicht.

EDAS kennt CAOS natürlich und gibt von Hause aus alle Binärdateien (COM -> KCC) kompatibel zu CAOS auf Kassette oder Diskette aus.

In Deinen Dateien fehlt der CAOS-Vorblock, welchen Du im Quelltext definieren und mit übersetzen lassen musst, etwa so:

;*** CAOS-VORBLOCK *********************
DB 'FILENAMETYP'
DS 5,0
DB 2 ;kein Selbststart
DW AAMAIN
DW EEMAIN
DW 0 ;ev. ADR SS
DS 105,0 ;Rest auffuellen
;***************************************

Dieser Vorblock ist in allen CAOS-Dateien notwendig, wo Adressen verlangt werden, wie z.B. bei LOAD/SAVE oder FLOAD/FSAVE u.s.w.

Im Handbuch für den Programmierer zum D004 steht dazu glaube ich auch was drin.

Ansonsten kannst Du Dir von meiner Homepage (Bereich Quelltexte CPM) das Archiv CAOSNET.PMA downloaden. Dort ist eine Datei CAOSNET.MAC enthalten, welche genauso vom M80 assembliert wird und nach dem Linken unter CAOS fehlerfrei geladen werden kann.

Viel Spass!
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
15.02.2008, 11:18 Uhr
PeterSieg



Danke ersteinmal für die Inormationen!
Das referenzierte Archiv habe ich nicht gefunden..?!

Könnte man das bitte einmal ein einem Beispiel verdeutlichen..?
Z.B dem LINE.ASM Programm vom KC-Club:

;LINE ASM ; --------------------------------
; Erzeugen einer senkrechten Linie
; --------------------------------
;
ORG 4000H
;
DEFW 7F7FH
DEFM 'LINE'
DEFB 1
;
; Schleife mit Schleifenzaehler B
;
; Startwert entspricht 1. Zeile
;
LD B,0
;
; 21. Spalte ist fest
;
LD L,20
;
LOOP:
; Zeile = B und Spalte = 20
; als Cursorpos. uebergeben
;
LD H,B
LD (0B7A0H),HL
;
; Zeichen "H" ausgeben
;
LD A,'H' ; Zeichencode
CALL 0F003H
DEFB 0 ; UP Nr. 0
;
; Schleifensteuerung
; (Zeile 31 ist letzte Zeile !)
;
INC B
LD A,B
CP 32
JR C,LOOP
;
; Zurueck zum CAOS-Menu
;
RET

Wie müßte hierzu der Caos-Vorblock GENAU aussehen..?
(Wie bekommt man hier nur so eine schönes Quellcode Fenster?)

Danke, Peter

Dieser Beitrag wurde am 15.02.2008 um 11:19 Uhr von PeterSieg editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
15.02.2008, 15:58 Uhr
susowa




Zitat:
PeterSieg schrieb
Danke ersteinmal für die Inormationen!
Das referenzierte Archiv habe ich nicht gefunden..?!
Danke, Peter

Wenn ich downloaden schreibe, meine ich das auch - gestern war sie noch da ...

Gut- ich war dann mal so frei mit LINE.ASM

; --------------------------------
; Erzeugen einer senkrechten Linie
; --------------------------------
;
;*** CAOS-VORBLOCK (ohne SS) ***********
DEFM 'LINE KCC' ;11 Zeichen
DS 5,0
DB 2 ;=3 mit SS-ADR
DW AAMAIN
DW EEMAIN
DW 0 ;nur bei SS
DS 105,0 ;Rest auffuellen
;*** Zieladresse ***********************
ORG 4000H
;*** Codebeginn ************************
AAMAIN EQU $
;***************************************
DEFW 7F7FH
DEFM 'LINE'
DEFB 1
;
; Schleife mit Schleifenzaehler B
;
; Startwert entspricht 1. Zeile
;
LD B,0
;
; 21. Spalte ist fest
;
LD L,20
;
LOOP:
; Zeile = B und Spalte = 20
; als Cursorpos. uebergeben
;
LD H,B
LD (0B7A0H),HL
;
; Zeichen "H" ausgeben
;
LD A,'H' ; Zeichencode
CALL 0F003H
DEFB 0 ; UP Nr. 0
;
; Schleifensteuerung
; (Zeile 31 ist letzte Zeile !)
;
INC B
LD A,B
CP 32
JR C,LOOP
;
; Zurueck zum CAOS-Menu
;
RET
;
;*** Codeende **************************
EEMAIN EQU $
;***************************************
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
15.02.2008, 21:44 Uhr
Volker

Avatar von Volker


Zitat:
susowa schrieb
Wenn ich downloaden schreibe, meine ich das auch - gestern war sie noch da ...


Die ist auch noch heute da .

Mach es den "Neuen" doch nicht so so leicht - Dich zu finden.

mfg
--
Das Gerät selbst ist ein kompli-
ziertes elektronisches Erzeugnis, zu des-
sen Reparatur neben vielfältigen Kenntnis-
sen zum gesamten Komplex der Elek-
tronik eine Vielzahl hochwertiger Meß-
und Prüftechnik notwendig ist. Von ei-
genhändigen Eingriffen wird abgeraten.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
15.02.2008, 23:45 Uhr
susowa




Zitat:
Volker schrieb
Mach es den "Neuen" doch nicht so so leicht - Dich zu finden.
mfg

Jetzt muss ich aber protestieren !!! Mit Direktlinks ist es ja keine Kunst mehr.

Übrigens baue ich auch gerne mal um auf der Seite und dann gehen solche unzulässigen Hilfen für "Die Neuen" nach einigen Tagen/Wochen/Monaten in die Hose - also Vorsicht !
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
19.02.2008, 12:04 Uhr
PeterSieg



Hier der 'Neue' noch mal ;-)
Nach ein paar kleinen Anpassungen für Aside assembliert es so:

; --------------------------------
; Erzeugen einer senkrechten Linie
; --------------------------------
;
;*** CAOS-VORBLOCK (ohne SS) ***********
DEFM 'LINE KCC' ;11 Zeichen
DEFS 5,0
DEFB 2 ;=3 mit SS-ADR
DEFW AAMAIN
DEFW EEMAIN
DEFW 0 ;nur bei SS
DEFS 105,0 ;Rest auffuellen
;*** Zieladresse ***********************
ORG 4000H
;*** Codebeginn ************************
AAMAIN: EQU $
;***************************************
DEFW 7F7FH
DEFM 'LINE'
DEFB 1
;
; Schleife mit Schleifenzaehler B
;
; Startwert entspricht 1. Zeile
;
LD B,0
;
; 21. Spalte ist fest
;
LD L,20
;
LOOP:
; Zeile = B und Spalte = 20
; als Cursorpos. uebergeben
;
LD H,B
LD (0B7A0H),HL
;
; Zeichen "H" ausgeben
;
LD A,'H' ; Zeichencode
CALL 0F003H
DEFB 0 ; UP Nr. 0
;
; Schleifensteuerung
; (Zeile 31 ist letzte Zeile !)
;
INC B
LD A,B
CP 32
JR C,LOOP
;
; Zurueck zum CAOS-Menu
;
RET
;
;*** Codeende **************************
EEMAIN: EQU $
;***************************************

Aber es kommt immer noch ungültige Adressangaben im KCEMU, wenn ich das als *.KCC laden will..??

Peter
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
19.02.2008, 19:24 Uhr
susowa




Zitat:
PeterSieg schrieb
Nach ein paar kleinen Anpassungen für Aside assembliert es so:

Aber es kommt immer noch ungültige Adressangaben im KCEMU, wenn ich das als *.KCC laden will..??

Peter

Du kannst beim Assemblieren eine *.TAB Datei ausgeben lassen. Stell' den Inhalt mal hier rein.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
20.02.2008, 08:31 Uhr
PeterSieg



Inhalt TAB Datei:
AAMAIN=16384:16:0:C__my__\kc\asm\LINEKCC.ASM
LOOP=16395:32:0:C__my__\kc\asm\LINEKCC.ASM
EEMAIN=16412:58:0:C__my__\kc\asm\LINEKCC.ASM

Peter
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
20.02.2008, 13:23 Uhr
susowa




Zitat:
PeterSieg schrieb
Inhalt TAB Datei:
AAMAIN=16384:16:0:C__my__\kc\asm\LINEKCC.ASM
LOOP=16395:32:0:C__my__\kc\asm\LINEKCC.ASM
EEMAIN=16412:58:0:C__my__\kc\asm\LINEKCC.ASM

Peter

Das stimmt, jetzt kannst Du mir nur noch die KCC-Datei schicken. Adresse ist auf der Homepage unter Kontakt.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
20.02.2008, 16:34 Uhr
PeterSieg



Ist unterwegs..

Peter
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
20.02.2008, 19:36 Uhr
susowa




Zitat:
PeterSieg schrieb
Ist unterwegs..

Peter

Die Antwort und Lösung des Problems auch.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
026
21.02.2008, 08:39 Uhr
PeterSieg



Damit auch andere Leser die Lösung kennen:

So funktioniert es:
;*** Zieladresse ***********************
ORG 4000H
;*** CAOS-VORBLOCK (ohne SS) ***********
DEFM 'LINEKCC KCC' ;11 Zeichen
DEFS 5,0
DEFB 2 ;=3 mit SS-ADR
DEFW AAMAIN
DEFW EEMAIN
DEFW 0 ;nur bei SS
DEFS 105,0 ;Rest auffuellen
;*** Codebeginn ************************
AAMAIN: EQU $
;***************************************
DEFW 7F7FH
DEFM 'LINE'
DEFB 1
;
; Schleife mit Schleifenzaehler B
...
...

- ORG <nnnn> als erste Anweisung
- DEFM 'LINEKCC KCC' ; MUSS EXAKT 11 Zeichen sein! Kein '.' sonder Blank!

Danke an Ralf!
Peter
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
21.02.2008, 19:23 Uhr
susowa




Zitat:
PeterSieg schrieb
Damit auch andere Leser die Lösung kennen:

So funktioniert es:
;*** Zieladresse ***********************
ORG 4000H
;*** CAOS-VORBLOCK (ohne SS) ***********
DEFM 'LINEKCC KCC' ;11 Zeichen
...
...

Der Vollständigkeit halber - es gibt einen kleinen Mangel an der Lösung. Die hinter ORG angegebene Adresse ist nicht identisch mit den von CAOS beim Laden des Programmes angezeigten Adressen, da die 80 Byte des Vorblockes vom CAOS-Loader ignoriert werden.

Dort wird im Beispiel eine Anfangsadresse des Programmes von

4000H + 80H = 4080H

angezeigt. Das muss man im Hinterkopf behalten, wenn man eine bestimmte Startadresse des CAOS-Programmes anstrebt.

Aber so kann man zumindest mit einem sehr leistungsstarken Assembler unter Windows die CAOS-Programmierung ausprobieren und üben.

Alternativ könnte man versuchen mit der ORG-Angabe an der alten Stelle zwischen Ende Vorblock und Anfang Programmcode und der SETBASE-Anweisung vor dem Vorblock via:

SETBASE = ORG-80H

den Adresszähler des Assemblers rückwärts zu verstellen und damit für CAOS-gerechte Verhältnisse zu sorgen (ORG = Anfangsadresse des Programmes).

Ich benutze AS nicht, andere Assembler werden aber das gleiche Problem bekommen, vielleicht probiert es ja mal jemand aus.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek