Index: code/hud/hudtarget.cpp
===================================================================
--- code/hud/hudtarget.cpp	(revision 10862)
+++ code/hud/hudtarget.cpp	(working copy)
@@ -6300,7 +6300,6 @@
 	bool in_frame = g3_in_frame() > 0;
 	if(!in_frame)
 		g3_start_frame(0);
-	gr_set_screen_scale(base_w, base_h);
 
 	// calculate the dot product between the players forward vector and the vector connecting
 	// the player to the target. Normalize targ_to_player since we want the dot product
@@ -6369,54 +6368,51 @@
 	xpos = eye_vertex->screen.xyw.x;
 	ypos = eye_vertex->screen.xyw.y;
 
-	// we need it unsized here and it will be fixed when things are acutally drawn
-	gr_unsize_screen_posf(&xpos, &ypos);
-
 	xpos = (xpos<1) ? 0 : xpos;
 	ypos = (ypos<1) ? 0 : ypos;
 
-	if ( xpos >= gr_screen.clip_right_unscaled) {
-		xpos = i2fl(gr_screen.clip_right_unscaled);
+	if ( xpos >= gr_screen.clip_right) {
+		xpos = i2fl(gr_screen.clip_right);
 		*dir = 0;
 
-		if ( ypos < (half_gauge_length - gr_screen.clip_top_unscaled) )
+		if ( ypos < (half_gauge_length - gr_screen.clip_top) )
 			ypos = half_gauge_length;
 
-		if ( ypos > (gr_screen.clip_bottom_unscaled - half_gauge_length) ) 
-			ypos = gr_screen.clip_bottom_unscaled - half_gauge_length;
+		if ( ypos > (gr_screen.clip_bottom - half_gauge_length) ) 
+			ypos = gr_screen.clip_bottom - half_gauge_length;
 
-	} else if ( xpos <= gr_screen.clip_left_unscaled ) {
-		xpos = i2fl(gr_screen.clip_left_unscaled);
+	} else if ( xpos <= gr_screen.clip_left ) {
+		xpos = i2fl(gr_screen.clip_left);
 		*dir = 1;
 
-		if ( ypos < (half_gauge_length - gr_screen.clip_top_unscaled) )
+		if ( ypos < (half_gauge_length - gr_screen.clip_top) )
 			ypos = half_gauge_length;
 
-		if ( ypos > (gr_screen.clip_bottom_unscaled - half_gauge_length) ) 
-			ypos = gr_screen.clip_bottom_unscaled - half_gauge_length;
+		if ( ypos > (gr_screen.clip_bottom - half_gauge_length) ) 
+			ypos = gr_screen.clip_bottom - half_gauge_length;
 
-	} else if ( ypos <= gr_screen.clip_top_unscaled ) {
-		ypos = i2fl(gr_screen.clip_top_unscaled);
+	} else if ( ypos <= gr_screen.clip_top ) {
+		ypos = i2fl(gr_screen.clip_top);
 		*dir = 2;
 
-		if ( xpos < ( half_gauge_length - gr_screen.clip_left_unscaled) )
+		if ( xpos < ( half_gauge_length - gr_screen.clip_left) )
 			xpos = half_gauge_length;
 
-		if ( xpos > (gr_screen.clip_right_unscaled - half_gauge_length) ) 
-			xpos = gr_screen.clip_right_unscaled - half_gauge_length;
+		if ( xpos > (gr_screen.clip_right - half_gauge_length) ) 
+			xpos = gr_screen.clip_right - half_gauge_length;
 
-	} else if ( ypos >= gr_screen.clip_bottom_unscaled ) {
-		ypos = i2fl(gr_screen.clip_bottom_unscaled);
+	} else if ( ypos >= gr_screen.clip_bottom ) {
+		ypos = i2fl(gr_screen.clip_bottom);
 		*dir = 3;
 
-		if ( xpos < ( half_gauge_length - gr_screen.clip_left_unscaled) )
+		if ( xpos < ( half_gauge_length - gr_screen.clip_left) )
 			xpos = half_gauge_length;
 
-		if ( xpos > (gr_screen.clip_right_unscaled - half_gauge_length) ) 
-			xpos = gr_screen.clip_right_unscaled - half_gauge_length;
+		if ( xpos > (gr_screen.clip_right - half_gauge_length) ) 
+			xpos = gr_screen.clip_right - half_gauge_length;
 
 	} else {
-		Int3();
+		Assertion(false, "xpos and ypos failed to fall outside of the screen's clipping area; get a coder!\n");
 		return;
 	}
 
@@ -6446,8 +6442,6 @@
 		outcoords->y = ypos;
 	}
 
-	gr_reset_screen_scale();
-
 	if(!in_frame)
 		g3_end_frame();
 }
