Forum: PC-Programmierung Linie und Circle ab $3100 auf einer fläche von 64x64 pixel mit 6502


von Peter B. (funkheld)


Lesenswert?

Hallo, guten Tag.

Wie kann man bitte eine Linie und Circle mit dem 6502asm auf einer 
Fläche von 64x64 Pixel zeichnen ab adresse $3100 ? Die Farbe vom Pixel 
hat den Wert 0-255. Ich kann diese Fäche 64x64 in xy-Richtung bewegen.

wo gibt es bitte Asmprogramme dafür für den 6502?

Danke.

: Bearbeitet durch User
von Sebastian R. (sebastian_r569)


Lesenswert?

Bresenham für Kreise und Linien ist jetzt nicht unendlich komplex und 
dürfte in Assembler auch schnell umsetzbar sein.

von Εrnst B. (ernst)


Lesenswert?

Peter B. schrieb:
> Wie kann man bitte eine Linie und Circle mit dem 6502asm auf einer
> Fläche von 64x64 Pixel zeichnen ab adresse $3100

Genauso wie auf jeder anderen Flächengröße an jeder anderen Position.
Also: "SetPixel" implementieren, Bresenham auspacken, implementieren...

Wenn's geht kann man sich ans Optimieren machen.

Peter B. schrieb:
> wo gibt es bitte Asmprogramme dafür für den 6502?

Das Internet ist voll davon. Suchmaschine bemühen. ChatGPT bemühen.
Viel Code ist für den C64, aber "oberhalb" vom Pixel-Setzen durchaus 
recyclebar.

: Bearbeitet durch User
von Thomas W. (dbstw)


Lesenswert?

Google kaputt?

https://gist.github.com/petrihakkinen/cc07aa5d15baf157c668f3dcc582ecc2

https://github.com/EgonOlsen71/bresenham

Und wenn Du einen C-Compiler erlaubst, kannst Du Dich an Treffern gar 
nicht mehr retten.

z.B.:
http://members.chello.at/easyfilter/bresenham.html

Und wenn Du ein wenig mehr Verstehen willst, finde ich Rosetta-Code 
schoen:

https://rosettacode.org/wiki/Bitmap/Bresenham%27s_line_algorithm

: Bearbeitet durch User
von Peter B. (funkheld)


Lesenswert?

Hallo , danke für die Hilfe.

Das ist sehr interessant für mich :
http://members.chello.at/easyfilter/bresenham.html

von Christoph db1uq K. (christoph_kessler)


Angehängte Dateien:

Lesenswert?

Ich habe auch mal ein Smith-Diagramm mit Bresenham in Assembler 
berechnet, allerdings für einen AVR.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.