data/full_repos/permissive/117026779/src/Keyboard.v
1: b"%Error: data/full_repos/permissive/117026779/src/Keyboard.v:256: Cannot find file containing module: 'Syncronizer'\nSyncronizer #(.WIDTH(1)) sync_clk (\n^~~~~~~~~~~\n        ... Looked in:\n             data/full_repos/permissive/117026779/src,data/full_repos/permissive/117026779/Syncronizer\n             data/full_repos/permissive/117026779/src,data/full_repos/permissive/117026779/Syncronizer.v\n             data/full_repos/permissive/117026779/src,data/full_repos/permissive/117026779/Syncronizer.sv\n             Syncronizer\n             Syncronizer.v\n             Syncronizer.sv\n             obj_dir/Syncronizer\n             obj_dir/Syncronizer.v\n             obj_dir/Syncronizer.sv\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:264: Cannot find file containing module: 'Syncronizer'\nSyncronizer #(.WIDTH(1)) sync_data (\n^~~~~~~~~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:272: Cannot find file containing module: 'SHIFTREGISTER'\nSHIFTREGISTER #(.WIDTH(11)) scan_code_register (\n^~~~~~~~~~~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:292: Cannot find file containing module: 'COUNTER'\nCOUNTER #(.WIDTH(4)) counter_ps2_clks (\n^~~~~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:302: Cannot find file containing module: 'XNOR'\nXNOR #(.WIDTH(8)) parity_checker (\n^~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:307: Cannot find file containing module: 'XNOR'\nXNOR #(.WIDTH(2)) parity_matcher (\n^~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:312: Cannot find file containing module: 'AND'\nAND #(.WIDTH(2)) new_signal (\n^~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:317: Cannot find file containing module: 'TRIBUFFER'\nTRIBUFFER #(.WIDTH(8)) scan_code_buffer (\n^~~~~~~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:97: Cannot find file containing module: 'FIFO'\nFIFO #(\n^~~~\n%Error: data/full_repos/permissive/117026779/src/Keyboard.v:503: Cannot find file containing module: 'VGA_Terminal'\nVGA_Terminal vga_term(\n^~~~~~~~~~~~\n%Error: Exiting due to 10 error(s)\n"
module KeyboardToASCIIROM(
    input wire [7:0] scan_code,
    input wire shift,
    output reg [7:0] ascii
);

always @(scan_code, shift) begin
    if(!shift)
    begin
        case (scan_code)
            8'h1C: ascii = "a";
            8'h32: ascii = "b";
            8'h21: ascii = "c";
            8'h23: ascii = "d";
            8'h24: ascii = "e";
            8'h2B: ascii = "f";
            8'h34: ascii = "g";
            8'h33: ascii = "h";
            8'h43: ascii = "i";
            8'h3B: ascii = "j";
            8'h42: ascii = "k";
            8'h4B: ascii = "l";
            8'h3A: ascii = "m";
            8'h31: ascii = "n";
            8'h44: ascii = "o";
            8'h4D: ascii = "p";
            8'h15: ascii = "q";
            8'h2D: ascii = "r";
            8'h1B: ascii = "s";
            8'h2C: ascii = "t";
            8'h3C: ascii = "u";
            8'h2A: ascii = "v";
            8'h1D: ascii = "w";
            8'h22: ascii = "x";
            8'h35: ascii = "y";
            8'h1A: ascii = "z";
            8'h45: ascii = "0";
            8'h16: ascii = "1";
            8'h1E: ascii = "2";
            8'h26: ascii = "3";
            8'h25: ascii = "4";
            8'h2E: ascii = "5";
            8'h36: ascii = "6";
            8'h3D: ascii = "7";
            8'h3E: ascii = "8";
            8'h46: ascii = "9";
            8'h0E: ascii = "`";
            8'h4E: ascii = "-";
            8'h55: ascii = "=";
            8'h5D: ascii = "\\";
            8'h29: ascii = " ";
            8'h76: ascii = 8'h03;
            8'h54: ascii = "[";
            8'h5B: ascii = "]";
            8'h4C: ascii = ";";
            8'h52: ascii = "'";
            8'h41: ascii = ",";
            8'h49: ascii = ".";
            8'h4A: ascii = "/";
            8'h7C: ascii = "*";
            8'h7B: ascii = "-";
            8'h79: ascii = "+";
            8'h66: ascii = `BACKSPACE;
            8'h5A: ascii = "\n";
            `LEFT_ARROW: ascii = `LEFT_ARROW_ASCII;
            `DOWN_ARROW: ascii = `DOWN_ARROW_ASCII;
            `RIGHT_ARROW: ascii = `RIGHT_ARROW_ASCII;
            `UP_ARROW: ascii = `UP_ARROW_ASCII;
            default: ascii = 8'hFF;
        endcase
    end
    else
    begin
        case (scan_code)
            8'h1C: ascii = "A";
            8'h32: ascii = "B";
            8'h21: ascii = "C";
            8'h23: ascii = "D";
            8'h24: ascii = "E";
            8'h2B: ascii = "F";
            8'h34: ascii = "G";
            8'h33: ascii = "H";
            8'h43: ascii = "I";
            8'h3B: ascii = "J";
            8'h42: ascii = "K";
            8'h4B: ascii = "L";
            8'h3A: ascii = "M";
            8'h31: ascii = "N";
            8'h44: ascii = "O";
            8'h4D: ascii = "P";
            8'h15: ascii = "Q";
            8'h2D: ascii = "R";
            8'h1B: ascii = "S";
            8'h2C: ascii = "T";
            8'h3C: ascii = "U";
            8'h2A: ascii = "V";
            8'h1D: ascii = "W";
            8'h22: ascii = "X";
            8'h35: ascii = "Y";
            8'h1A: ascii = "Z";
            8'h45: ascii = ")";
            8'h16: ascii = "!";
            8'h1E: ascii = "@";
            8'h26: ascii = "#";
            8'h25: ascii = "$";
            8'h2E: ascii = "%";
            8'h36: ascii = "^";
            8'h3D: ascii = "&";
            8'h3E: ascii = "*";
            8'h46: ascii = "(";
            8'h0E: ascii = "~";
            8'h4E: ascii = "_";
            8'h55: ascii = "+";
            8'h5D: ascii = "|";
            8'h29: ascii = " ";
            8'h76: ascii = 8'h03;
            8'h54: ascii = "{";
            8'h5B: ascii = "}";
            8'h4C: ascii = ":";
            8'h52: ascii = "\"";
            8'h41: ascii = "<";
            8'h49: ascii = ">";
            8'h4A: ascii = "?";
            8'h7C: ascii = "*";
            8'h7B: ascii = "-";
            8'h79: ascii = "+";
            8'h66: ascii = `BACKSPACE;
            8'h5A: ascii = "\n";
            default: ascii = 8'hFF;
        endcase
    end
end

endmodule
module KeyboardToASCIIROM(
    input wire [7:0] scan_code,
    input wire shift,
    output reg [7:0] ascii
);


always @(scan_code, shift) begin
    if(!shift)
    begin
        case (scan_code)
            8'h1C: ascii = "a";
            8'h32: ascii = "b";
            8'h21: ascii = "c";
            8'h23: ascii = "d";
            8'h24: ascii = "e";
            8'h2B: ascii = "f";
            8'h34: ascii = "g";
            8'h33: ascii = "h";
            8'h43: ascii = "i";
            8'h3B: ascii = "j";
            8'h42: ascii = "k";
            8'h4B: ascii = "l";
            8'h3A: ascii = "m";
            8'h31: ascii = "n";
            8'h44: ascii = "o";
            8'h4D: ascii = "p";
            8'h15: ascii = "q";
            8'h2D: ascii = "r";
            8'h1B: ascii = "s";
            8'h2C: ascii = "t";
            8'h3C: ascii = "u";
            8'h2A: ascii = "v";
            8'h1D: ascii = "w";
            8'h22: ascii = "x";
            8'h35: ascii = "y";
            8'h1A: ascii = "z";
            8'h45: ascii = "0";
            8'h16: ascii = "1";
            8'h1E: ascii = "2";
            8'h26: ascii = "3";
            8'h25: ascii = "4";
            8'h2E: ascii = "5";
            8'h36: ascii = "6";
            8'h3D: ascii = "7";
            8'h3E: ascii = "8";
            8'h46: ascii = "9";
            8'h0E: ascii = "`";
            8'h4E: ascii = "-";
            8'h55: ascii = "=";
            8'h5D: ascii = "\\";
            8'h29: ascii = " ";
            8'h76: ascii = 8'h03;
            8'h54: ascii = "[";
            8'h5B: ascii = "]";
            8'h4C: ascii = ";";
            8'h52: ascii = "'";
            8'h41: ascii = ",";
            8'h49: ascii = ".";
            8'h4A: ascii = "/";
            8'h7C: ascii = "*";
            8'h7B: ascii = "-";
            8'h79: ascii = "+";
            8'h66: ascii = `BACKSPACE;
            8'h5A: ascii = "\n";
            `LEFT_ARROW: ascii = `LEFT_ARROW_ASCII;
            `DOWN_ARROW: ascii = `DOWN_ARROW_ASCII;
            `RIGHT_ARROW: ascii = `RIGHT_ARROW_ASCII;
            `UP_ARROW: ascii = `UP_ARROW_ASCII;
            default: ascii = 8'hFF;
        endcase
    end
    else
    begin
        case (scan_code)
            8'h1C: ascii = "A";
            8'h32: ascii = "B";
            8'h21: ascii = "C";
            8'h23: ascii = "D";
            8'h24: ascii = "E";
            8'h2B: ascii = "F";
            8'h34: ascii = "G";
            8'h33: ascii = "H";
            8'h43: ascii = "I";
            8'h3B: ascii = "J";
            8'h42: ascii = "K";
            8'h4B: ascii = "L";
            8'h3A: ascii = "M";
            8'h31: ascii = "N";
            8'h44: ascii = "O";
            8'h4D: ascii = "P";
            8'h15: ascii = "Q";
            8'h2D: ascii = "R";
            8'h1B: ascii = "S";
            8'h2C: ascii = "T";
            8'h3C: ascii = "U";
            8'h2A: ascii = "V";
            8'h1D: ascii = "W";
            8'h22: ascii = "X";
            8'h35: ascii = "Y";
            8'h1A: ascii = "Z";
            8'h45: ascii = ")";
            8'h16: ascii = "!";
            8'h1E: ascii = "@";
            8'h26: ascii = "#";
            8'h25: ascii = "$";
            8'h2E: ascii = "%";
            8'h36: ascii = "^";
            8'h3D: ascii = "&";
            8'h3E: ascii = "*";
            8'h46: ascii = "(";
            8'h0E: ascii = "~";
            8'h4E: ascii = "_";
            8'h55: ascii = "+";
            8'h5D: ascii = "|";
            8'h29: ascii = " ";
            8'h76: ascii = 8'h03;
            8'h54: ascii = "{";
            8'h5B: ascii = "}";
            8'h4C: ascii = ":";
            8'h52: ascii = "\"";
            8'h41: ascii = "<";
            8'h49: ascii = ">";
            8'h4A: ascii = "?";
            8'h7C: ascii = "*";
            8'h7B: ascii = "-";
            8'h79: ascii = "+";
            8'h66: ascii = `BACKSPACE;
            8'h5A: ascii = "\n";
            default: ascii = 8'hFF;
        endcase
    end
end

endmodule