// 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/04/Fill.asm // Runs an infinite loop that listens to the keyboard input. // When a key is pressed (any key), the program blackens the screen, // i.e. writes "black" in every pixel; // the screen should remain fully black as long as the key is pressed. // When no key is pressed, the program clears the screen, i.e. writes // "white" in every pixel; // the screen should remain fully clear as long as no key is pressed. // Put your code here. (LOOP) @R1 M=0 @KBD D=M @BLACK D;JGT @WHITE D;JEQ (BLACK) @SCREEN D=M @LOOP D;JLT (BLACKLOOP) @R1 D=M M=M+1 @SCREEN AD=D+A M=-1 @24575 D=D-A @LOOP D;JEQ @BLACKLOOP 0;JMP (WHITE) @SCREEN D=M @LOOP D;JEQ (WHITELOOP) @R1 D=M M=M+1 @SCREEN AD=D+A M=0 @24575 D=D-A @LOOP D;JEQ @WHITELOOP 0;JMP