module bcd_counter(ONES,TENS,HUNDREDS,THOUSANDS,CLOCK);
input	CLOCK;
output		ONES, TENS, HUNDREDS, THOUSANDS;
// decimal digits
reg	[3:0]	ONES, TENS, HUNDREDS, THOUSANDS;
initial
	begin
	ONES 		<= 0;
	TENS		<= 0;
	HUNDREDS	<= 0;
	THOUSANDS	<= 0;
	end
always @ (posedge CLOCK)
	begin
// generate digits and display them on 7-segment displays
	ONES <= ONES + 1;
	if (ONES==9) 
		begin
		ONES <= 0;
		TENS <= TENS + 1;
		end
	if (TENS == 9 && ONES==9)
		begin
		TENS <= 0;
		HUNDREDS <= HUNDREDS + 1;
		end
	if (HUNDREDS == 9 && TENS==9 && ONES==9)
		begin
		HUNDREDS <= 0;
		THOUSANDS <= THOUSANDS + 1;
		end
	end
endmodule