diff options
Diffstat (limited to 'projects/04/fill')
-rw-r--r-- | projects/04/fill/Fill.asm | 76 | ||||
-rw-r--r-- | projects/04/fill/Fill.tst | 11 | ||||
-rw-r--r-- | projects/04/fill/FillAutomatic.cmp | 4 | ||||
-rw-r--r-- | projects/04/fill/FillAutomatic.out | 4 | ||||
-rw-r--r-- | projects/04/fill/FillAutomatic.tst | 37 |
5 files changed, 0 insertions, 132 deletions
diff --git a/projects/04/fill/Fill.asm b/projects/04/fill/Fill.asm deleted file mode 100644 index 16d63e2..0000000 --- a/projects/04/fill/Fill.asm +++ /dev/null @@ -1,76 +0,0 @@ -// 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.
-
-(BEGIN)
-@KBD
-D=M
-
-@BLACK
-D;JNE
-
-@WHITE
-0;JMP
-
-(BLACK)
-@8191
-D=A
-@i
-M=D
-
-(LOOPB)
-@i
-D=M
-@j
-M=D
-@SCREEN
-D=A
-@j
-M=M+D
-A=M
-M=-1
-@i
-M=M-1
-D=M
-@LOOPB
-D+1;JGT
-
-@BEGIN
-0;JMP
-
-(WHITE)
-@8191
-D=A
-@i
-M=D
-
-(LOOPW)
-@i
-D=M
-@j
-M=D
-@SCREEN
-D=A
-@j
-M=M+D
-A=M
-M=0
-@i
-M=M-1
-D=M
-@LOOPW
-D+1;JGT
-
-@BEGIN
-0;JMP
diff --git a/projects/04/fill/Fill.tst b/projects/04/fill/Fill.tst deleted file mode 100644 index e8bb385..0000000 --- a/projects/04/fill/Fill.tst +++ /dev/null @@ -1,11 +0,0 @@ -// 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/Fill.tst
-
-load Fill.asm;
-echo "Make sure that 'No Animation' is selected. Then, select the keyboard, press any key for some time, and inspect the screen.";
-
-repeat {
- ticktock;
-}
diff --git a/projects/04/fill/FillAutomatic.cmp b/projects/04/fill/FillAutomatic.cmp deleted file mode 100644 index a71db27..0000000 --- a/projects/04/fill/FillAutomatic.cmp +++ /dev/null @@ -1,4 +0,0 @@ -|RAM[16384]|RAM[17648]|RAM[18349]|RAM[19444]|RAM[20771]|RAM[21031]|RAM[22596]|RAM[23754]|RAM[24575]| -| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -| -1 | -1 | -1 | -1 | -1 | -1 | -1 | -1 | -1 | -| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | diff --git a/projects/04/fill/FillAutomatic.out b/projects/04/fill/FillAutomatic.out deleted file mode 100644 index a71db27..0000000 --- a/projects/04/fill/FillAutomatic.out +++ /dev/null @@ -1,4 +0,0 @@ -|RAM[16384]|RAM[17648]|RAM[18349]|RAM[19444]|RAM[20771]|RAM[21031]|RAM[22596]|RAM[23754]|RAM[24575]| -| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -| -1 | -1 | -1 | -1 | -1 | -1 | -1 | -1 | -1 | -| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | diff --git a/projects/04/fill/FillAutomatic.tst b/projects/04/fill/FillAutomatic.tst deleted file mode 100644 index fbc29a0..0000000 --- a/projects/04/fill/FillAutomatic.tst +++ /dev/null @@ -1,37 +0,0 @@ -// 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/FillAutomatic - -// This script can be used to test the Fill program automatically, -// rather than interactively. Specifically, the script sets the keyboard -// memory map (RAM[24576]) to 0, 1, and then again to 0. This simulates the -// acts of leaving the keyboard untouched, pressing some key, and then releasing -// the key. After each on of these simulated events, the script outputs the values -// of some selected registers from the screen memory map (RAM[16384]-RAM[24576]). -// This is done in order to test that these registers are set to 000...0 or 111....1, -// as mandated by how the Fill program should react to the keyboard events. - -load Fill.asm, -output-file FillAutomatic.out, -compare-to FillAutomatic.cmp, -output-list RAM[16384]%D2.6.2 RAM[17648]%D2.6.2 RAM[18349]%D2.6.2 RAM[19444]%D2.6.2 RAM[20771]%D2.6.2 RAM[21031]%D2.6.2 RAM[22596]%D2.6.2 RAM[23754]%D2.6.2 RAM[24575]%D2.6.2; - -set RAM[24576] 0, // the keyboard is untouched -repeat 1000000 { - ticktock; -} -output; // test that the screen is white - -set RAM[24576] 1, // a keyboard key is pressed -repeat 1000000 { - ticktock; -} -output; // test that the screen is black - -set RAM[24576] 0, // they keyboard in untouched -repeat 1000000 { - ticktock; -} -output; // test that the screen is white - |