From d3a0cc3a8ba6dfeb64d3faeffdeb6845b60e5840 Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Sat, 20 Jan 2018 15:41:49 +0100 Subject: rearranged the dir for github - removed tools and pdfs - rearranged the projects dirs - added md files - other minor changes --- projects/04/fill/Fill.asm | 76 -------------------------------------- projects/04/fill/Fill.tst | 11 ------ projects/04/fill/FillAutomatic.cmp | 4 -- projects/04/fill/FillAutomatic.out | 4 -- projects/04/fill/FillAutomatic.tst | 37 ------------------- projects/04/mult/Mult.asm | 33 ----------------- projects/04/mult/Mult.cmp | 7 ---- projects/04/mult/Mult.out | 7 ---- projects/04/mult/Mult.tst | 74 ------------------------------------- 9 files changed, 253 deletions(-) delete mode 100644 projects/04/fill/Fill.asm delete mode 100644 projects/04/fill/Fill.tst delete mode 100644 projects/04/fill/FillAutomatic.cmp delete mode 100644 projects/04/fill/FillAutomatic.out delete mode 100644 projects/04/fill/FillAutomatic.tst delete mode 100644 projects/04/mult/Mult.asm delete mode 100644 projects/04/mult/Mult.cmp delete mode 100644 projects/04/mult/Mult.out delete mode 100644 projects/04/mult/Mult.tst (limited to 'projects/04') 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 - diff --git a/projects/04/mult/Mult.asm b/projects/04/mult/Mult.asm deleted file mode 100644 index 50bbba0..0000000 --- a/projects/04/mult/Mult.asm +++ /dev/null @@ -1,33 +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/Mult.asm - -// Multiplies R0 and R1 and stores the result in R2. -// (R0, R1, R2 refer to RAM[0], RAM[1], and RAM[2], respectively.) - -// Put your code here. - -@i -M=0 -@R2 -M=0 - -(LOOP) -@i -M=M+1 -D=M -@R0 -D=D-M -@END -D;JGT -@R1 -D=M -@R2 -M=M+D -@LOOP -0;JMP - -(END) -@END -0;JMP diff --git a/projects/04/mult/Mult.cmp b/projects/04/mult/Mult.cmp deleted file mode 100644 index 296b5fb..0000000 --- a/projects/04/mult/Mult.cmp +++ /dev/null @@ -1,7 +0,0 @@ -| RAM[0] | RAM[1] | RAM[2] | -| 0 | 0 | 0 | -| 1 | 0 | 0 | -| 0 | 2 | 0 | -| 3 | 1 | 3 | -| 2 | 4 | 8 | -| 6 | 7 | 42 | \ No newline at end of file diff --git a/projects/04/mult/Mult.out b/projects/04/mult/Mult.out deleted file mode 100644 index e31b5df..0000000 --- a/projects/04/mult/Mult.out +++ /dev/null @@ -1,7 +0,0 @@ -| RAM[0] | RAM[1] | RAM[2] | -| 0 | 0 | 0 | -| 1 | 0 | 0 | -| 0 | 2 | 0 | -| 3 | 1 | 3 | -| 2 | 4 | 8 | -| 6 | 7 | 42 | diff --git a/projects/04/mult/Mult.tst b/projects/04/mult/Mult.tst deleted file mode 100644 index 9bf4fa8..0000000 --- a/projects/04/mult/Mult.tst +++ /dev/null @@ -1,74 +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/mult/Mult.tst - -load Mult.asm, -output-file Mult.out, -compare-to Mult.cmp, -output-list RAM[0]%D2.6.2 RAM[1]%D2.6.2 RAM[2]%D2.6.2; - -set RAM[0] 0, // Set test arguments -set RAM[1] 0, -set RAM[2] -1; // Test that program initialized product to 0 -repeat 20 { - ticktock; -} -set RAM[0] 0, // Restore arguments in case program used them as loop counter -set RAM[1] 0, -output; - -set PC 0, -set RAM[0] 1, // Set test arguments -set RAM[1] 0, -set RAM[2] -1; // Ensure that program initialized product to 0 -repeat 50 { - ticktock; -} -set RAM[0] 1, // Restore arguments in case program used them as loop counter -set RAM[1] 0, -output; - -set PC 0, -set RAM[0] 0, // Set test arguments -set RAM[1] 2, -set RAM[2] -1; // Ensure that program initialized product to 0 -repeat 80 { - ticktock; -} -set RAM[0] 0, // Restore arguments in case program used them as loop counter -set RAM[1] 2, -output; - -set PC 0, -set RAM[0] 3, // Set test arguments -set RAM[1] 1, -set RAM[2] -1; // Ensure that program initialized product to 0 -repeat 120 { - ticktock; -} -set RAM[0] 3, // Restore arguments in case program used them as loop counter -set RAM[1] 1, -output; - -set PC 0, -set RAM[0] 2, // Set test arguments -set RAM[1] 4, -set RAM[2] -1; // Ensure that program initialized product to 0 -repeat 150 { - ticktock; -} -set RAM[0] 2, // Restore arguments in case program used them as loop counter -set RAM[1] 4, -output; - -set PC 0, -set RAM[0] 6, // Set test arguments -set RAM[1] 7, -set RAM[2] -1; // Ensure that program initialized product to 0 -repeat 210 { - ticktock; -} -set RAM[0] 6, // Restore arguments in case program used them as loop counter -set RAM[1] 7, -output; -- cgit v1.2.3