I too needed to set a time zone difference at a 1/2 hour boundary.
The following mod seems to work.
1. In admin_config_datetime.asp, I changed	
for iTimeAdjust = -24 to 24
for iTimeAdjust = -23 to 23 step 0.5
 
2. In inc_function_common.asp, I changed the chkSelect function from:
function chkSelect(actualValue, thisValue)
	if isNumeric(actualValue) then actualValue = cLng(actualValue)
	if actualValue = thisValue then
	        chkSelect = " selected"
	else 
		chkSelect = ""
	end if
end function
 
function chkSelect(actualValue, thisValue)
	if cStr(actualValue) = cStr(thisValue) then
		chkSelect = " selected"
	else 
		chkSelect = ""
	end if
end function
 
The chkSelect function failed when dealing with fractional numbers, since it was converting numeric values to long integers, thus truncating time adjustments which are fractions of an hour.
I can't think of any reason why converting both arguments to strings in the chkSelect function should cause problems elsewhere.