Seite 1 von 1

Mads / Atmas II

Verfasst: 26.06.2022 18:30
von Dr. Irata
Hallo an die Profis!
Ich bin auf folgenden Codeteil gestossen:

:100 dta l(4096+40*#)

:100 dta h(4096+40*#)

Ich finde die Erklärung für diese Definition nirgends... und verstehe es nicht vollständig!
:100 bedeutet ja 100x die entsprechende .dta Zeile.
Was macht aber das l vor der Klammer? Steht wohl für low byte ??
Und in der Klammer?? Ist das eine Matrix? Wie genau ist dann die Definition aufgebaut??

Gruß
Peter

Re: Mads / Atmas II

Verfasst: 26.06.2022 19:29
von pps
Das wird eine Tabelle...
l(...) für die low bytes und h(...) für die high bytes.
4096 also HEX 1000 ist die Startadresse.
Dann wird von dort jeweils um 40 Bytes hochgezählt.

Also l in hex:
00, 28, 50, 78...
Und h in hex
10, 10, 10, 10

Sieht nach einer Tabelle für Bildschirmadressen aus.

PS: meines Wissens hat es aber nichts mit ATMAS zu tun. Die beiden Assembler unterscheiden sich schon stark.
PPS: Die Klammer ist also Startadresse + 40 mal Wiederholung. Die Wiederholung zählt immer von Null bis Anzahl-1

Re: Mads / Atmas II

Verfasst: 26.06.2022 19:32
von Dr. Irata
ah... ja verstanden!
Vielen Dank!!