The program needs only n iterations, with n the number of pixels in the line (witch is pretty fast) and can use integers only with simple operations like add, substract and shift!
That means I can make a simple circuit out of that, here's the program in pseudocode:
Code: Select all
input(dx, dy)
D = 2*dy - dx
x = 0
y = 0
loop x[0->dx]{
output(x, y)
if (D>0) {
y ++
D -= 2*dx
}
D += 2*dy
}
Initialisation Cycle:
Pixel Cycle:
There are some informations missing in those and I need to combine them in one circuit.
Then I will need to build another circuit on top of that that will convert the coordinates to cover the 8 octants and all position of the lines.
I'll keep you intouch with my advancements in this project