Files
nand2tetris/projects/04/tests/Rechteck.asm
2023-03-27 20:32:56 +02:00

42 lines
476 B
NASM

// Zeichnen eines Rechtecks
// Breite = 16px, die Höhe ist in RAM[0]
@R0
D=M
@n // @16
M=D // n = RAM[0]
@i
M=0 // i=0
@SCREEN
D=A
@address
M=D // address = 16384 (Basisadresse des HACK-Screens)
(LOOP)
@i
D=M
@n
D=D-M
@END
D;JGT // if i > n goto END
@address
A=M
M=-1 // RAM[address] = -1 (16 pixels)
@i
M=M+1 // i=i+1
@32
D=A
@address
M=D+M // address = address + 32
@LOOP
0;JMP // GOTO LOOP
(END)
@END //Programmende
0;JMP