Hallo, guten Tag.
Wie wird bitte "Print #2,chr$(22);chr$(1)" in ASM gesetzt und "Locate #2,32,14" in ASM ?
danke.
Gruss
Quote from: cpcman on 23. November 2018, 16:18:48
Hallo, guten Tag.
Wie wird bitte "Print #2,chr$(22);chr$(1)" in ASM gesetzt und "Locate #2,32,14" in ASM ?
danke.
Gruss
Anstatt
chr$(22);chr$(1) schreibst Du in Assembler:
DB 22
DB 1
Das selbe gilt für die Zeichen beim Locate Befehl.
Anstatt Print und Locate nimmst Du die System-Einsprünge.
Danke.
Print #2,chr$(22);chr$(1)
-----------------------
ld a,2
call &bb5a
DB 22
DB 1
----------------------
Irgendwie klappt es nicht.
Ich wollte eigentlich den Textmodus transparent machen.
Wenn sich Buchstaben überlappen sollen die nicht ausgefüllten Bereiche transparent werden.
Gruss
Nein, so einfach ist das nicht. Du musst jeden Wert natürlich einzeln ausgeben.
Also über eine Schleife, und wenn's mehr Text ist, dann mit DB ("Define Byte" Statements). z.B. Ausgabe von "HALLO WELT" im Transparenzmodus, immer an der gleichen Stelle, oder?
ld hl,text
.loop
ld a,(hl)
call &bb5a
inc hl
cp 0
jr nz,loop
ret
.text
db 22,1,72,8,65,8,76,8,76,8,79,8,32,8,87,8,69,8,76,8,84,8,0
Quote from: cpcman on 23. November 2018, 19:41:06
Danke.
Print #2,chr$(22);chr$(1)
-----------------------
ld a,2
call &bb5a
DB 22
DB 1
----------------------
Das musst du schon genauso machen, wie die Textausgabe an den Drucker, nur dass du statt den Drucker-CALL den PRINT-CALL verwendest...
Danke für die Info.
Wenn ich von oben dein ASM-Beispiel eingebe , kommt das Bild.
Muss da irgendwie ein Text erscheinen?
Gruss
Irgendwie bekomme ich das nicht gebacken mit den Transparenten kram.
Gruss
Funktioniert dieses Transparente auch mit dem Befehl "Tag" ?
Gruss
Wo findet man den Call um den Hintergrundmodus anzugeben?
irgendwie soll der auch für den Tag-Befehl gelten
Danke.
Gruss
Habe ihn gefunden für den TAG.
call #bd46
Gruss
die letzte 8 beim DB Statement vor der 0 am Schluß war zuviel. Normalerweise sollte eine gelbes Rechteck ausgegeben werden, weil alle Buchstaben sich selbst überschreiben...
korrigiert...
org &4000
ld hl,text
.loop
ld a,(hl)
call &bb5a
inc hl
cp 0
jr nz,loop
ret
.text
db 22,1,72,8,65,8,76,8,76,8,79,8,32,8,87,8,69,8,76,8,84,0
Danke.
Es funktioniert.
Gruss