module prj12(A, B, C, D, seg, clk, y);
// Whenever B.eqn is 1 led is on and it is count
// and display on 7 seg disp. Counting is done between 0 and 15 (4 bits)
input A, B, C, D, clk; // input taken from 7493
output [6:0] seg; // 7-seg disp
output y; // led
reg [6:0] seg = 0;
reg count;
reg y;
always @(negedge clk)
begin
y= (A&~D&B)|(B&C);
if (A&&B&&C&&D) count = 0; // count between 0 and 15
else if(y==1) count=count+1;
case (count)
0: seg = 7'b1111110;
1: seg = 7'b0110000;
2: seg = 7'b1101101;
3: seg = 7'b1111001;
4: seg = 7'b0110011;
5: seg = 7'b1011011;
6: seg = 7'b1011111;
7: seg = 7'b1110000;
8: seg = 7'b1111111;
9: seg = 7'b1110011;
10: seg = 7'b1110111;
11: seg = 7'b1111111;
12: seg = 7'b1001110;
13: seg = 7'b0111101;
14: seg = 7'b1001111;
15:seg = 7'b1000111;
default : seg = 7'b1010101;
endcase
end
endmodule