diff options
Diffstat (limited to 'tools/builtInChips')
69 files changed, 0 insertions, 748 deletions
| diff --git a/tools/builtInChips/ALU.class b/tools/builtInChips/ALU.classBinary files differ deleted file mode 100644 index 03f95dc..0000000 --- a/tools/builtInChips/ALU.class +++ /dev/null diff --git a/tools/builtInChips/ALU.hdl b/tools/builtInChips/ALU.hdl deleted file mode 100644 index e5fd1f0..0000000 --- a/tools/builtInChips/ALU.hdl +++ /dev/null @@ -1,55 +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: tools/builtIn/ALU.hdl
 -
 -/**
 - * The ALU. Computes one of the following functions:
 - * x+y, x-y, y–x, 0, 1, -1, x, y, -x, -y, !x, !y,
 - * x+1, y+1, x-1, y-1, x&y, x|y on two 16-bit inputs.
 - * Which function to compute is determined by 6 input bits 
 - * denoted zx, nx, zy, ny, f, no.
 - * The computed function's value is called "out".
 - * In addition to computing out, the ALU computes two 
 - * 1-bit outputs called zr and ng:
 - * if out == 0, zr = 1; otherwise zr = 0;
 - * If out < 0, ng = 1; otherwise ng = 0.
 - * The 6-bit combinations (zx,nx,zy,ny,f,no) and 
 - * their effect are documented in the book. 
 - */
 -
 -// Implementation: the ALU manipulates the x and y
 -// inputs and then operates on the resulting values, 
 -// as follows:
 -// if (zx  == 1) sets x = 0        // 16-bit constant
 -// if (nx  == 1) sets x = ~x       // bitwise "not"
 -// if (zy  == 1) sets y = 0        // 16-bit constant
 -// if (ny  == 1) sets y = ~y       // bitwise "not"
 -// if (f   == 1) sets out = x + y  // integer 2's-complement addition
 -// if (f   == 0) sets out = x & y  // bitwise And
 -// if (no  == 1) sets out = ~out   // bitwise Not
 -// if (out == 0) sets zr = 1
 -// if (out < 0)  sets ng = 1
 -
 -
 -CHIP ALU {
 -
 -    IN  // 16-bit inputs:
 -        x[16], y[16],
 -        // Control bits:
 -        zx, // Zero the x input
 -        nx, // Negate the x input
 -        zy, // Zero the y input
 -        ny, // Negate the y input
 -        f,  // Function code: 1 for add, 0 for and
 -        no; // Negate the out output
 -
 -    OUT // 16-bit output
 -        out[16],
 -
 -        // ALU output flags
 -        zr, // 1 if out=0, 0 otherwise
 -        ng; // 1 if out<0, 0 otherwise
 -
 -    BUILTIN ALU;
 -}
 diff --git a/tools/builtInChips/ARegister.class b/tools/builtInChips/ARegister.classBinary files differ deleted file mode 100644 index ab9aadc..0000000 --- a/tools/builtInChips/ARegister.class +++ /dev/null diff --git a/tools/builtInChips/ARegister.hdl b/tools/builtInChips/ARegister.hdl deleted file mode 100644 index 23aee73..0000000 --- a/tools/builtInChips/ARegister.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/ARegister.hdl
 -
 -/**
 - * A 16-Bit register called "A Register". 
 - * If load[t-1]=1 then out[t] = in[t-1]
 - * else out does not change (out[t] = out[t-1])
 - *
 - * This built-in chip implementation has the side effect of 
 - * providing a GUI representation of a 16-bit register
 - * called "A register" (typically used to store an address).
 - */
 -
 -CHIP ARegister {
 -
 -    IN  in[16], load;
 -    OUT out[16];
 -
 -    BUILTIN ARegister;
 -    CLOCKED in, load;
 -}
 -
 diff --git a/tools/builtInChips/Add16.class b/tools/builtInChips/Add16.classBinary files differ deleted file mode 100644 index c3754ce..0000000 --- a/tools/builtInChips/Add16.class +++ /dev/null diff --git a/tools/builtInChips/Add16.hdl b/tools/builtInChips/Add16.hdl deleted file mode 100644 index a494af4..0000000 --- a/tools/builtInChips/Add16.hdl +++ /dev/null @@ -1,18 +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: tools/builtIn/Add16.hdl
 -
 -/*
 - * Adds two 16-bit values.
 - * The most significant carry bit is ignored.
 - */
 -
 -CHIP Add16 {
 -
 -    IN  a[16], b[16];
 -    OUT out[16];
 -
 -    BUILTIN Add16;
 -}
 -
 diff --git a/tools/builtInChips/And.class b/tools/builtInChips/And.classBinary files differ deleted file mode 100644 index 2c7492b..0000000 --- a/tools/builtInChips/And.class +++ /dev/null diff --git a/tools/builtInChips/And.hdl b/tools/builtInChips/And.hdl deleted file mode 100644 index d2c48b5..0000000 --- a/tools/builtInChips/And.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/And.hdl
 -
 -/**
 - * And gate: out = 1 if {a == 1 and b == 1}, 0 otherwise  
 - */
 -
 -CHIP And {
 -
 -    IN  a, b;
 -    OUT out;
 -
 -    BUILTIN And;
 -}
 diff --git a/tools/builtInChips/And16.hdl b/tools/builtInChips/And16.hdl deleted file mode 100644 index 4c71874..0000000 --- a/tools/builtInChips/And16.hdl +++ /dev/null @@ -1,17 +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: tools/builtIn/And16.hdl
 -
 -/**
 - * 16-bit-wise And gate: for i = 0..15: out[i] = a[i] and b[i]
 - */
 -
 -CHIP And16 {
 -
 -    IN  a[16], b[16];
 -    OUT out[16];
 -
 -    BUILTIN And;
 -}
 -
 diff --git a/tools/builtInChips/Bit.class b/tools/builtInChips/Bit.classBinary files differ deleted file mode 100644 index 1e5a3c4..0000000 --- a/tools/builtInChips/Bit.class +++ /dev/null diff --git a/tools/builtInChips/Bit.hdl b/tools/builtInChips/Bit.hdl deleted file mode 100644 index a0a76bb..0000000 --- a/tools/builtInChips/Bit.hdl +++ /dev/null @@ -1,19 +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: tools/builtIn/Bit.hdl
 -
 -/**
 - * 1-bit register.
 - * If load[t] == 1 then out[t+1] = in[t]
 - *                 else out[t+1] = out[t] (no change)
 - */
 -
 -CHIP Bit {
 -
 -    IN  in, load;
 -    OUT out;
 -
 -    BUILTIN Bit;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/DFF.class b/tools/builtInChips/DFF.classBinary files differ deleted file mode 100644 index 49efcf1..0000000 --- a/tools/builtInChips/DFF.class +++ /dev/null diff --git a/tools/builtInChips/DFF.hdl b/tools/builtInChips/DFF.hdl deleted file mode 100644 index c66b796..0000000 --- a/tools/builtInChips/DFF.hdl +++ /dev/null @@ -1,18 +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: tools/builtIn/DFF.hdl
 -
 -/**
 - * Data Flip-flop: out(t) = in(t-1) 
 - * where t is the current time unit, or clock cycle.
 - */
 -
 -CHIP DFF {
 -
 -    IN  in;
 -    OUT out;
 -
 -    BUILTIN DFF;
 -    CLOCKED in;
 -}
 diff --git a/tools/builtInChips/DMux.class b/tools/builtInChips/DMux.classBinary files differ deleted file mode 100644 index 8cf4e0b..0000000 --- a/tools/builtInChips/DMux.class +++ /dev/null diff --git a/tools/builtInChips/DMux.hdl b/tools/builtInChips/DMux.hdl deleted file mode 100644 index 80153d7..0000000 --- a/tools/builtInChips/DMux.hdl +++ /dev/null @@ -1,20 +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: tools/builtIn/DMux.hdl
 -
 -/**
 - * Dmultiplexor.  
 - * {a,b} = {in,0} if sel == 0
 - *         {0,in} if sel == 1
 - */
 - - 
 -CHIP DMux {
 -
 -    IN  in, sel;
 -    OUT a, b;
 -
 -    BUILTIN DMux;
 -}
 -
 diff --git a/tools/builtInChips/DMux4Way.class b/tools/builtInChips/DMux4Way.classBinary files differ deleted file mode 100644 index ab72a17..0000000 --- a/tools/builtInChips/DMux4Way.class +++ /dev/null diff --git a/tools/builtInChips/DMux4Way.hdl b/tools/builtInChips/DMux4Way.hdl deleted file mode 100644 index 110bb4e..0000000 --- a/tools/builtInChips/DMux4Way.hdl +++ /dev/null @@ -1,22 +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: tools/builtIn/DMux4Way.hdl
 -
 -/**
 - * 4-way demultiplexor.  
 - * {a,b,c,d} = {in,0,0,0} if sel == 00
 - *             {0,in,0,0} if sel == 01
 - *             {0,0,in,0} if sel == 10
 - *             {0,0,0,in} if sel == 11
 - */
 - -
 -CHIP DMux4Way {
 -
 -    IN  in, sel[2];
 -    OUT a, b, c, d;
 -
 -    BUILTIN DMux4Way;
 -}
 -
 diff --git a/tools/builtInChips/DMux8Way.class b/tools/builtInChips/DMux8Way.classBinary files differ deleted file mode 100644 index 80e7437..0000000 --- a/tools/builtInChips/DMux8Way.class +++ /dev/null diff --git a/tools/builtInChips/DMux8Way.hdl b/tools/builtInChips/DMux8Way.hdl deleted file mode 100644 index c5536b8..0000000 --- a/tools/builtInChips/DMux8Way.hdl +++ /dev/null @@ -1,22 +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: tools/builtIn/DMux8Way.hdl
 -
 -/**
 - * 8-way demultiplexor.  
 - * {a,b,c,d,e,f,g,h} = {in,0,0,0,0,0,0,0} if sel == 000
 - *                     {0,in,0,0,0,0,0,0} if sel == 001
 - *                     etc.
 - *                     {0,0,0,0,0,0,0,in} if sel == 111
 - */
 - -
 -CHIP DMux8Way {
 -
 -    IN  in, sel[3];
 -    OUT a, b, c, d, e, f, g, h;
 -
 -    BUILTIN DMux8Way;
 -}
 -
 diff --git a/tools/builtInChips/DRegister.class b/tools/builtInChips/DRegister.classBinary files differ deleted file mode 100644 index 74a713d..0000000 --- a/tools/builtInChips/DRegister.class +++ /dev/null diff --git a/tools/builtInChips/DRegister.hdl b/tools/builtInChips/DRegister.hdl deleted file mode 100644 index 6c9a254..0000000 --- a/tools/builtInChips/DRegister.hdl +++ /dev/null @@ -1,24 +0,0 @@ -// This file is part of the materials accompanying the book
 -// "The Elements of Computing Systems" by Nisan and Schocken, 
 -// MIT Press. Book site: www.idc.ac.il/tecs
 -// File name: tools/builtIn/DRegister.hdl
 -
 -/**
 - * A 16-Bit register called "D Register". 
 - * If load[t-1]=1 then out[t] = in[t-1]
 - * else out does not change (out[t] = out[t-1])
 - *
 - * This built-in chip implementation has the side effect of 
 - * providing a GUI representation of a 16-bit register
 - * called "D register" (typically used to store data).
 - */
 -
 -CHIP DRegister {
 -
 -    IN  in[16], load;
 -    OUT out[16];
 -
 -    BUILTIN DRegister;
 -    CLOCKED in, load;
 -}
 -
 diff --git a/tools/builtInChips/FullAdder.class b/tools/builtInChips/FullAdder.classBinary files differ deleted file mode 100644 index 2ed9ead..0000000 --- a/tools/builtInChips/FullAdder.class +++ /dev/null diff --git a/tools/builtInChips/FullAdder.hdl b/tools/builtInChips/FullAdder.hdl deleted file mode 100644 index a4caa56..0000000 --- a/tools/builtInChips/FullAdder.hdl +++ /dev/null @@ -1,19 +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: tools/builtIn/FullAdder.hdl
 -
 -/**
 - * Full adder. Computes sum, the least significant bit of 
 - * a + b + c, and carry, the most significant bit of a + b + c.
 - */
 -
 -CHIP FullAdder {
 -
 -    IN  a, b, c;
 -    OUT sum,     // LSB of a + b + c
 -        carry;   // MSB of a + b + c
 -
 -    BUILTIN FullAdder;
 -}
 -
 diff --git a/tools/builtInChips/HalfAdder.class b/tools/builtInChips/HalfAdder.classBinary files differ deleted file mode 100644 index e7741ed..0000000 --- a/tools/builtInChips/HalfAdder.class +++ /dev/null diff --git a/tools/builtInChips/HalfAdder.hdl b/tools/builtInChips/HalfAdder.hdl deleted file mode 100644 index 1591b96..0000000 --- a/tools/builtInChips/HalfAdder.hdl +++ /dev/null @@ -1,18 +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: tools/builtIn/HalfAdder.hdl
 -
 -/**
 - * Half adder. Computes sum, the least significnat bit of a + b,
 - * and carry, the most significnat bit of a + b.
 - */
 -
 -CHIP HalfAdder {
 -
 -    IN  a, b;
 -    OUT sum,   // LSB of a + b
 -        carry; // MSB of a + b
 -
 -    BUILTIN HalfAdder;
 -}
 diff --git a/tools/builtInChips/Inc16.class b/tools/builtInChips/Inc16.classBinary files differ deleted file mode 100644 index b5b2aeb..0000000 --- a/tools/builtInChips/Inc16.class +++ /dev/null diff --git a/tools/builtInChips/Inc16.hdl b/tools/builtInChips/Inc16.hdl deleted file mode 100644 index 9d2d49b..0000000 --- a/tools/builtInChips/Inc16.hdl +++ /dev/null @@ -1,18 +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: tools/builtIn/Inc16.hdl
 -
 -/**
 - * 16-bit incrementer.  out = in + 1 (16-bit addition).
 - * Overflow is neither detected nor handled.
 - */
 -
 -CHIP Inc16 {
 -
 -    IN  in[16];
 -    OUT out[16];
 -
 -    BUILTIN Inc16;
 -}
 -
 diff --git a/tools/builtInChips/Keyboard.class b/tools/builtInChips/Keyboard.classBinary files differ deleted file mode 100644 index 090b7cc..0000000 --- a/tools/builtInChips/Keyboard.class +++ /dev/null diff --git a/tools/builtInChips/Keyboard.hdl b/tools/builtInChips/Keyboard.hdl deleted file mode 100644 index 26ca5ed..0000000 --- a/tools/builtInChips/Keyboard.hdl +++ /dev/null @@ -1,23 +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: tools/builtIn/Keyboard.hdl
 -
 -/**
 - * The keyboard (memory map).
 - * Outputs the code of the currently pressed key.
 - *
 - * The built-in chip implementation has two side effects supplied 
 - * by the simulator. First, the keyboard memory map is continuously 
 - * being refreshed from the physical keyboard unit. Second, it 
 - * displays a keyboard icon and data entry GUI.
 - */
 -
 -CHIP Keyboard {
 -
 -    OUT out[16];   // The ASCII code of the pressed key, 
 -                   // or 0 if no key is currently pressed, 
 -                   // or one the special codes listed in Figure 5.5.
 -
 -    BUILTIN Keyboard;
 -}
 diff --git a/tools/builtInChips/Mux.class b/tools/builtInChips/Mux.classBinary files differ deleted file mode 100644 index 75c6645..0000000 --- a/tools/builtInChips/Mux.class +++ /dev/null diff --git a/tools/builtInChips/Mux.hdl b/tools/builtInChips/Mux.hdl deleted file mode 100644 index a0eefbc..0000000 --- a/tools/builtInChips/Mux.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Mux.hdl
 -
 -/** 
 - * Multiplexor. If sel == 1 then out = b else out = a.
 - */
 -
 -CHIP Mux {
 -
 -    IN  a, b, sel;
 -    OUT out;
 -
 -    BUILTIN Mux;
 -}
 diff --git a/tools/builtInChips/Mux16.hdl b/tools/builtInChips/Mux16.hdl deleted file mode 100644 index 676d1f4..0000000 --- a/tools/builtInChips/Mux16.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Mux16.hdl
 -
 -/**
 - * 16 bit multiplexor. If sel == 1 then out = b else out = a.
 - */
 -
 -CHIP Mux16 {
 -
 -    IN  a[16], b[16], sel;
 -    OUT out[16];
 -
 -    BUILTIN Mux;
 -}
 diff --git a/tools/builtInChips/Mux4Way16.class b/tools/builtInChips/Mux4Way16.classBinary files differ deleted file mode 100644 index b2e2ed7..0000000 --- a/tools/builtInChips/Mux4Way16.class +++ /dev/null diff --git a/tools/builtInChips/Mux4Way16.hdl b/tools/builtInChips/Mux4Way16.hdl deleted file mode 100644 index 9929e82..0000000 --- a/tools/builtInChips/Mux4Way16.hdl +++ /dev/null @@ -1,21 +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: tools/builtIn/Mux4Way16.hdl
 -
 -/**
 - * 4-way 16-bit multiplexor.  
 - * out = a if sel == 00
 - *       b if sel == 01
 - *       c if sel == 10
 - *       d if sel == 11
 - */
 - -
 -CHIP Mux4Way16 {
 -     
 -    IN a[16], b[16], c[16], d[16], sel[2];
 -    OUT out[16];
 -
 -    BUILTIN Mux4Way16;
 -}
 diff --git a/tools/builtInChips/Mux8Way16.class b/tools/builtInChips/Mux8Way16.classBinary files differ deleted file mode 100644 index d8040ef..0000000 --- a/tools/builtInChips/Mux8Way16.class +++ /dev/null diff --git a/tools/builtInChips/Mux8Way16.hdl b/tools/builtInChips/Mux8Way16.hdl deleted file mode 100644 index dc16861..0000000 --- a/tools/builtInChips/Mux8Way16.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/Mux8Way16.hdl
 -
 -/**
 - * 8-way 16-bit multiplexor.  
 - * out = a if sel == 000
 - *       b if sel == 001
 - *       etc.
 - *       h if sel == 111
 - */
 - - 
 -CHIP Mux8Way16 {
 -
 -    IN  a[16], b[16], c[16], d[16],
 -        e[16], f[16], g[16], h[16],
 -        sel[3];
 -
 -    OUT out[16];
 -
 -    BUILTIN Mux8Way16;
 -}
\ No newline at end of file diff --git a/tools/builtInChips/Nand.class b/tools/builtInChips/Nand.classBinary files differ deleted file mode 100644 index 4b429ba..0000000 --- a/tools/builtInChips/Nand.class +++ /dev/null diff --git a/tools/builtInChips/Nand.hdl b/tools/builtInChips/Nand.hdl deleted file mode 100644 index ae0204e..0000000 --- a/tools/builtInChips/Nand.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Nand.hdl
 -
 -/**
 - * Nand gate: out = a Nand b.
 - */
 -
 -CHIP Nand {
 -
 -    IN  a, b;
 -    OUT out;
 -
 -    BUILTIN Nand;
 -}
 diff --git a/tools/builtInChips/Not.class b/tools/builtInChips/Not.classBinary files differ deleted file mode 100644 index 4726b67..0000000 --- a/tools/builtInChips/Not.class +++ /dev/null diff --git a/tools/builtInChips/Not.hdl b/tools/builtInChips/Not.hdl deleted file mode 100644 index 5b9d897..0000000 --- a/tools/builtInChips/Not.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Not.hdl
 -
 -/**
 - * Not gate: out = not in 
 - */
 -
 -CHIP Not {
 -
 -    IN  in;
 -    OUT out;
 -
 -    BUILTIN Not;
 -}
\ No newline at end of file diff --git a/tools/builtInChips/Not16.class b/tools/builtInChips/Not16.classBinary files differ deleted file mode 100644 index ff3e68f..0000000 --- a/tools/builtInChips/Not16.class +++ /dev/null diff --git a/tools/builtInChips/Not16.hdl b/tools/builtInChips/Not16.hdl deleted file mode 100644 index c50dab9..0000000 --- a/tools/builtInChips/Not16.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Not16.hdl
 -
 -/**
 - * 16-bit Not gate: for i = 0..15: out[i] = not in[i]
 - */
 -
 -CHIP Not16 {
 -
 -    IN  in[16];
 -    OUT out[16];
 -
 -    BUILTIN Not16;
 -}
\ No newline at end of file diff --git a/tools/builtInChips/Or.class b/tools/builtInChips/Or.classBinary files differ deleted file mode 100644 index a5b64f9..0000000 --- a/tools/builtInChips/Or.class +++ /dev/null diff --git a/tools/builtInChips/Or.hdl b/tools/builtInChips/Or.hdl deleted file mode 100644 index 4a3f14b..0000000 --- a/tools/builtInChips/Or.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Or.hdl
 -
 -/**
 - * Or gate: out = 1 if {a == 1 or b == 1}, 0 otherwise  
 - */
 -
 -CHIP Or {
 -
 -    IN  a, b;
 -    OUT out;
 -
 -    BUILTIN Or;
 -}
 diff --git a/tools/builtInChips/Or16.hdl b/tools/builtInChips/Or16.hdl deleted file mode 100644 index 6c124e8..0000000 --- a/tools/builtInChips/Or16.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Or16.hdl
 -
 -/**
 - * 16-bit bitwise Or gate: for i = 0..15 out[i] = a[i] or b[i].
 - */
 -
 -CHIP Or16 {
 -
 -    IN  a[16], b[16];
 -    OUT out[16];
 -
 -    BUILTIN Or;
 -}
 diff --git a/tools/builtInChips/Or8Way.class b/tools/builtInChips/Or8Way.classBinary files differ deleted file mode 100644 index 104804b..0000000 --- a/tools/builtInChips/Or8Way.class +++ /dev/null diff --git a/tools/builtInChips/Or8Way.hdl b/tools/builtInChips/Or8Way.hdl deleted file mode 100644 index dccd61d..0000000 --- a/tools/builtInChips/Or8Way.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Or8Way.hdl
 -
 -/**
 - * 8-way Or gate: out = in[0] or in[1] or ... or in[7].
 - */
 -
 -CHIP Or8Way {
 -
 -    IN  in[8];
 -    OUT out;
 -
 -    BUILTIN Or8Way;
 -}
 diff --git a/tools/builtInChips/PC.class b/tools/builtInChips/PC.classBinary files differ deleted file mode 100644 index 1e6ada1..0000000 --- a/tools/builtInChips/PC.class +++ /dev/null diff --git a/tools/builtInChips/PC.hdl b/tools/builtInChips/PC.hdl deleted file mode 100644 index f102d99..0000000 --- a/tools/builtInChips/PC.hdl +++ /dev/null @@ -1,22 +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: tools/builtIn/PC.hdl
 -
 -/**
 - * 16-bit counter with load and reset controls.
 - *
 - * If reset(t-1) then out(t) = 0
 - *    else if load(t-1) then out(t) = in(t-1)
 - *         else if inc(t-1) then out(t) = out(t-1) + 1 (integer addition)
 - *              else out(t) = out(t-1)
 - */
 -
 -CHIP PC {
 -
 -    IN  in[16], load, inc, reset;
 -    OUT out[16];
 -
 -    BUILTIN PC;
 -    CLOCKED in, load, inc, reset;
 -}
 diff --git a/tools/builtInChips/RAM.class b/tools/builtInChips/RAM.classBinary files differ deleted file mode 100644 index e17050f..0000000 --- a/tools/builtInChips/RAM.class +++ /dev/null diff --git a/tools/builtInChips/RAM16K.class b/tools/builtInChips/RAM16K.classBinary files differ deleted file mode 100644 index 2f1e3fe..0000000 --- a/tools/builtInChips/RAM16K.class +++ /dev/null diff --git a/tools/builtInChips/RAM16K.hdl b/tools/builtInChips/RAM16K.hdl deleted file mode 100644 index 7031bf9..0000000 --- a/tools/builtInChips/RAM16K.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/RAM16K.hdl
 -
 -/**
 - * Memory of 16K registers, each 16-bit wide.  
 - * The chip facilitates read and write operations, as follows:
 - *     Read:  out(t) = RAM16K[address(t)](t)
 - *     Write: If load(t-1) then RAM16K[address(t-1)](t) = in(t-1)
 - * In words: the chip always outputs the value stored at the memory 
 - * location specified by address. If load=1, the in value is loaded 
 - * into the memory location specified by address.  This value becomes 
 - * available through the out output starting from the next time step.
 - */
 -
 -CHIP RAM16K {
 -
 -    IN  in[16], load, address[14];
 -    OUT out[16];
 -
 -    BUILTIN RAM16K;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/RAM4K.class b/tools/builtInChips/RAM4K.classBinary files differ deleted file mode 100644 index 164ebf8..0000000 --- a/tools/builtInChips/RAM4K.class +++ /dev/null diff --git a/tools/builtInChips/RAM4K.hdl b/tools/builtInChips/RAM4K.hdl deleted file mode 100644 index 8f1b211..0000000 --- a/tools/builtInChips/RAM4K.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/RAM4K.hdl
 -
 -/**
 - * Memory of 4K registers, each 16-bit wide.  
 - * The chip facilitates read and write operations, as follows:
 - *     Read:  out(t) = RAM4K[address(t)](t)
 - *     Write: If load(t-1) then RAM4K[address(t-1)](t) = in(t-1)
 - * In words: the chip always outputs the value stored at the memory 
 - * location specified by address. If load == 1, the in value is loaded 
 - * into the memory location specified by address.  This value becomes 
 - * available through the out output starting from the next time step.
 - */
 -
 -CHIP RAM4K {
 -
 -    IN  in[16], load, address[12];
 -    OUT out[16];
 -
 -    BUILTIN RAM4K;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/RAM512.class b/tools/builtInChips/RAM512.classBinary files differ deleted file mode 100644 index 69bff7a..0000000 --- a/tools/builtInChips/RAM512.class +++ /dev/null diff --git a/tools/builtInChips/RAM512.hdl b/tools/builtInChips/RAM512.hdl deleted file mode 100644 index 2a2f433..0000000 --- a/tools/builtInChips/RAM512.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/RAM512.hdl
 -
 -/**
 - * Memory of 512 registers, each 16-bit wide.  
 - * The chip facilitates read and write operations, as follows:
 - *     Read:  out(t) = RAM512[address(t)](t)
 - *     Write: If load(t-1) then RAM512[address(t-1)](t) = in(t-1)
 - * In words: the chip always outputs the value stored at the memory 
 - * location specified by address. If load == 1, the in value is loaded 
 - * into the memory location specified by address.  This value becomes 
 - * available through the out output starting from the next time step.
 - */
 -
 -CHIP RAM512 {
 -
 -    IN  in[16], load, address[9];
 -    OUT out[16];
 -
 -    BUILTIN RAM512;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/RAM64.class b/tools/builtInChips/RAM64.classBinary files differ deleted file mode 100644 index a1fe78a..0000000 --- a/tools/builtInChips/RAM64.class +++ /dev/null diff --git a/tools/builtInChips/RAM64.hdl b/tools/builtInChips/RAM64.hdl deleted file mode 100644 index 6f32f47..0000000 --- a/tools/builtInChips/RAM64.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/RAM64.hdl
 -
 -/**
 - * Memory of 64 registers, each 16-bit wide.  
 - * The chip facilitates read and write operations, as follows:
 - *     Read:  out(t) = RAM64[address(t)](t)
 - *     Write: If load(t-1) then RAM64[address(t-1)](t) = in(t-1)
 - * In words: the chip always outputs the value stored at the memory 
 - * location specified by address. If load == 1, the in value is loaded 
 - * into the memory location specified by address.  This value becomes 
 - * available through the out output starting from the next time step.
 - */
 -
 -CHIP RAM64 {
 -
 -    IN in[16], load, address[6];
 -    OUT out[16];
 -
 -    BUILTIN RAM64;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/RAM8.class b/tools/builtInChips/RAM8.classBinary files differ deleted file mode 100644 index 88f106e..0000000 --- a/tools/builtInChips/RAM8.class +++ /dev/null diff --git a/tools/builtInChips/RAM8.hdl b/tools/builtInChips/RAM8.hdl deleted file mode 100644 index c08d62c..0000000 --- a/tools/builtInChips/RAM8.hdl +++ /dev/null @@ -1,24 +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: tools/builtIn/RAM8.hdl
 -
 -/**
 - * Memory of 8 registers, each 16-bit wide.  
 - * The chip facilitates read and write operations, as follows:
 - *     Read:  out(t) = RAM8[address(t)](t)
 - *     Write: If load(t-1) then RAM8[address(t-1)](t) = in(t-1)
 - * In words: the chip always outputs the value stored at the memory 
 - * location specified by address. If load == 1, the in value is loaded 
 - * into the memory location specified by address.  This value becomes 
 - * available through the out output starting from the next time step.
 - */
 -
 -CHIP RAM8 {
 -
 -    IN  in[16], load, address[3];
 -    OUT out[16];
 -
 -    BUILTIN RAM8;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/ROM32K.class b/tools/builtInChips/ROM32K.classBinary files differ deleted file mode 100644 index c4320d8..0000000 --- a/tools/builtInChips/ROM32K.class +++ /dev/null diff --git a/tools/builtInChips/ROM32K.hdl b/tools/builtInChips/ROM32K.hdl deleted file mode 100644 index 929f824..0000000 --- a/tools/builtInChips/ROM32K.hdl +++ /dev/null @@ -1,30 +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: tools/builtIn/ROM32K.hdl
 -
 -/**
 - * Read-Only memory (ROM) of 16K registers, each 16-bit wide.
 - * The chip is designed to facilitate data read, as follows:
 - *     out(t) = ROM32K[address(t)](t)
 - * In words: the chip always outputs the value stored at the 
 - * memory location specified by address.
 - *
 - * The built-in chip implementation has a GUI side-effect, 
 - * showing an array-like component that displays the ROM's 
 - * contents. The ROM32K chip is supposed to be pre-loaded with 
 - * a machine language program. To that end, the built-in chip
 - * implementation also knows how to handle the "ROM32K load Xxx"
 - * script command, where Xxx is the name of a text file containing 
 - * a program written in the Hack machine language.  When the 
 - * simulator encounters such a command in a test script, the code 
 - * found in the file is loaded into the simulated ROM32K unit.
 - */
 -
 -CHIP ROM32K {
 -
 -    IN  address[15];
 -    OUT out[16];
 -
 -    BUILTIN ROM32K;
 -}
 diff --git a/tools/builtInChips/Register.class b/tools/builtInChips/Register.classBinary files differ deleted file mode 100644 index 3958fcd..0000000 --- a/tools/builtInChips/Register.class +++ /dev/null diff --git a/tools/builtInChips/Register.hdl b/tools/builtInChips/Register.hdl deleted file mode 100644 index 3b81e46..0000000 --- a/tools/builtInChips/Register.hdl +++ /dev/null @@ -1,19 +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: tools/builtIn/Register.hdl
 -
 -/**
 - * 16-Bit register. 
 - * If load[t-1]=1 then out[t] = in[t-1]
 - * else out does not change (out[t] = out[t-1])
 - */
 -
 -CHIP Register {
 -
 -    IN  in[16], load;
 -    OUT out[16];
 -
 -    BUILTIN Register;
 -    CLOCKED in, load;
 -}
 diff --git a/tools/builtInChips/RegisterWithGUI.class b/tools/builtInChips/RegisterWithGUI.classBinary files differ deleted file mode 100644 index c80208c..0000000 --- a/tools/builtInChips/RegisterWithGUI.class +++ /dev/null diff --git a/tools/builtInChips/Screen.class b/tools/builtInChips/Screen.classBinary files differ deleted file mode 100644 index 100ed03..0000000 --- a/tools/builtInChips/Screen.class +++ /dev/null diff --git a/tools/builtInChips/Screen.hdl b/tools/builtInChips/Screen.hdl deleted file mode 100644 index 5e7837b..0000000 --- a/tools/builtInChips/Screen.hdl +++ /dev/null @@ -1,35 +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: tools/builtIn/Screen.hdl
 -
 -/**
 - * The Screen (memory map).
 - * Functions exactly like a 16-bit 8K RAM:
 - *    1. out(t)=Screen[address(t)](t)
 - *    2. If load(t-1) then Screen[address(t-1)](t)=in(t-1)
 - *
 - * The built-in chip implementation has the side effect of continuously 
 - * refreshing a visual 256 by 512 black-and-white screen, simulated 
 - * by the simulator. Each row in the visual screen is represented 
 - * by 32 consecutive 16-bit words, starting at the top left corner 
 - * of the visual screen. Thus the pixel at row r from the top and 
 - * column c from the left (0<=r<=255, 0<=c<=511) reflects the c%16 
 - * bit (counting from LSB to MSB) of the word found in 
 - * Screen[r*32+c/16]. 
 - */
 -
 -CHIP Screen {
 -
 -    IN  in[16],    // what to write
 -    load,          // write-enable bit
 -    address[13];   // where to read/write
 -    OUT out[16];   // Screen value at the given address
 -
 -    BUILTIN Screen;
 -    CLOCKED in, load;
 -}
 -
 -
 -
 - 
\ No newline at end of file diff --git a/tools/builtInChips/Xor.class b/tools/builtInChips/Xor.classBinary files differ deleted file mode 100644 index d99ad18..0000000 --- a/tools/builtInChips/Xor.class +++ /dev/null diff --git a/tools/builtInChips/Xor.hdl b/tools/builtInChips/Xor.hdl deleted file mode 100644 index 8452d73..0000000 --- a/tools/builtInChips/Xor.hdl +++ /dev/null @@ -1,16 +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: tools/builtIn/Xor.hdl
 -
 -/**
 - *  Exclusive-or gate: out = !(a == b).
 - */
 -
 -CHIP Xor {
 -
 -    IN  a, b;
 -    OUT out;
 -
 -    BUILTIN Xor;
 -}
 | 
