update to 01/03

This commit is contained in:
2021-01-03 19:42:17 +08:00
parent 4a39dfe368
commit cb82fcdf4e
67 changed files with 864068 additions and 281 deletions
@@ -22,13 +22,13 @@ reg [ 3: 0 ] object1_collide_dir, object2_collide_dir;
wire [ 10: 0 ] object1_RBound, object1_DBound;
wire [ 10: 0 ] object2_RBound, object2_DBound;
assign object1_RBound = object1_H + ( ( object1_dir >= 2'b10 ) ? object1_LONGER : object1_SHORTER) ;
assign object1_DBound = object1_V + ( ( object1_dir >= 2'b10 ) ? object1_SHORTER : object1_LONGER) ;
assign object2_RBound = object2_H + ( ( object2_dir >= 2'b10 ) ? object2_LONGER : object2_SHORTER) ;
assign object2_DBound = object2_V + ( ( object2_dir >= 2'b10 ) ? object2_SHORTER : object2_LONGER) ;
assign object1_RBound = object1_H + ( ( object1_dir >= 2'b10 ) ? object1_LONGER : object1_SHORTER ) ;
assign object1_DBound = object1_V + ( ( object1_dir >= 2'b10 ) ? object1_SHORTER : object1_LONGER ) ;
assign object2_RBound = object2_H + ( ( object2_dir >= 2'b10 ) ? object2_LONGER : object2_SHORTER ) ;
assign object2_DBound = object2_V + ( ( object2_dir >= 2'b10 ) ? object2_SHORTER : object2_LONGER ) ;
always @( * ) begin
if ( object2_en && object1_RBound <= object2_RBound && object1_RBound >= object2_H &&
if ( object1_en && object2_en && object1_RBound <= object2_RBound && object1_RBound >= object2_H &&
~( object1_DBound < object2_V || object1_V > object2_DBound ) ) begin
object1_collide_dir[ 3 ] <= 1;
end
@@ -36,7 +36,7 @@ always @( * ) begin
object1_collide_dir[ 3 ] <= 0;
end
if ( object2_en && object1_H <= object2_RBound && object1_H >= object2_H &&
if ( object1_en && object2_en && object1_H <= object2_RBound && object1_H >= object2_H &&
~( object1_DBound < object2_V || object1_V > object2_DBound ) ) begin
object1_collide_dir[ 2 ] <= 1;
end
@@ -44,7 +44,7 @@ always @( * ) begin
object1_collide_dir[ 2 ] <= 0;
end
if ( object2_en && object1_V <= object2_DBound && object1_V >= object2_V
if ( object1_en && object2_en && object1_V <= object2_DBound && object1_V >= object2_V
&& ~( object1_RBound < object2_H || object1_H > object2_RBound ) ) begin
object1_collide_dir[ 0 ] <= 1;
end
@@ -52,7 +52,7 @@ always @( * ) begin
object1_collide_dir[ 0 ] <= 0;
end
if ( object2_en && object1_DBound <= object2_DBound && object1_DBound >= object2_V
if ( object1_en && object2_en && object1_DBound <= object2_DBound && object1_DBound >= object2_V
&& ~( object1_RBound < object2_H || object1_H > object2_RBound ) ) begin
object1_collide_dir[ 1 ] <= 1;
end
@@ -63,7 +63,7 @@ always @( * ) begin
end
always @( * ) begin
if ( object1_en && object2_RBound <= object1_RBound && object2_RBound >= object1_H &&
if ( object1_en && object2_en && object2_RBound <= object1_RBound && object2_RBound >= object1_H &&
~( object2_DBound < object1_V || object2_V > object1_DBound ) ) begin
object2_collide_dir[ 3 ] <= 1;
end
@@ -71,7 +71,7 @@ always @( * ) begin
object2_collide_dir[ 3 ] <= 0;
end
if ( object1_en && object2_H <= object1_RBound && object2_H >= object1_H &&
if ( object1_en && object2_en && object2_H <= object1_RBound && object2_H >= object1_H &&
~( object2_DBound < object1_V || object2_V > object1_DBound ) ) begin
object2_collide_dir[ 2 ] <= 1;
end
@@ -79,7 +79,7 @@ always @( * ) begin
object2_collide_dir[ 2 ] <= 0;
end
if ( object1_en && object2_V <= object1_DBound && object2_V >= object1_V
if ( object1_en && object2_en && object2_V <= object1_DBound && object2_V >= object1_V
&& ~( object2_RBound < object1_H || object2_H > object1_RBound ) ) begin
object2_collide_dir[ 0 ] <= 1;
end
@@ -87,7 +87,7 @@ always @( * ) begin
object2_collide_dir[ 0 ] <= 0;
end
if ( object1_en && object2_DBound <= object1_DBound && object2_DBound >= object1_V
if ( object1_en && object2_en && object2_DBound <= object1_DBound && object2_DBound >= object1_V
&& ~( object2_RBound < object1_H || object2_H > object1_RBound ) ) begin
object2_collide_dir[ 1 ] <= 1;
end