diff -u -r angband-290/src/object2.c angband/src/object2.c
--- angband-290/src/object2.c	Mon Apr 10 07:42:30 2000
+++ angband/src/object2.c	Sun Jul  9 17:09:28 2000
@@ -829,8 +829,6 @@
  * only have a few of the available flags, primarily of the "slay"
  * and "brand" and "ignore" variety.
  *
- * Armor with a negative armor bonus is worthless.
- *
  * Weapons with negative hit+damage bonuses are worthless.
  *
  * Every wearable item with a "pval" bonus is worth extra (see below).
@@ -978,11 +976,14 @@
 		case TV_HARD_ARMOR:
 		case TV_DRAG_ARMOR:
 		{
-			/* Hack -- negative armor bonus */
-			if (o_ptr->to_a < 0) return (0L);
+			/* Give credit for hit bonus */
+			value += ((o_ptr->to_h - k_ptr->to_h) * 100L);
 
-			/* Give credit for bonuses */
-			value += ((o_ptr->to_h + o_ptr->to_d + o_ptr->to_a) * 100L);
+			/* Give credit for damage bonus */
+			value += ((o_ptr->to_d - k_ptr->to_d) * 100L);
+
+			/* Give credit for armor bonus */
+			value += (o_ptr->to_a * 100L);
 
 			/* Done */
 			break;
@@ -1033,6 +1034,8 @@
 		}
 	}
 
+	/* No negative value */
+	if (value < 0) value = 0;
 
 	/* Return the value */
 	return (value);


