Files
hack-assembler/asm-samples/Rect.asm
lejulien ba4d9afda9 Adding asm & hack samples
Those are the examples and the asm & hack (assembled) from the project 6 of
nand2tetris
2026-05-19 18:57:20 +02:00

41 lines
730 B
NASM

// This file is part of www.nand2tetris.org
// and the book "The Elements of Computing Systems"
// by Nisan and Schocken, MIT Press.
// File name: projects/6/rect/Rect.asm
// Draws a rectangle at the top-left corner of the screen.
// The rectangle is 16 pixels wide and R0 pixels high.
// Usage: Before executing, put a value in R0.
// If (R0 <= 0) goto END else n = R0
@R0
D=M
@END
D;JLE
@n
M=D
// addr = base address of first screen row
@SCREEN
D=A
@addr
M=D
(LOOP)
// RAM[addr] = -1
@addr
A=M
M=-1
// addr = base address of next screen row
@addr
D=M
@32
D=D+A
@addr
M=D
// decrements n and loops
@n
MD=M-1
@LOOP
D;JGT
(END)
@END
0;JMP