anchor.diff:  	if(stat & (NOPOWER))
   		icon_state = "frame"
   		return
  -	else
  -		if(stat & (BROKEN))
  -			set_picture("ai_bsod")
  -			return
  -		else
  -			if(src.timing)
  -				var/disp1 = uppertext(id)
  -				var/disp2 = "[add_zero(num2text((time / 60) % 60),2)]~[add_zero(num2text(time % 60), 2)]"
  -				spawn( 5 )
  -					update_display(disp1, disp2)
  +	if(stat & (BROKEN))
  +		set_picture("ai_bsod")
  +		return
  +	if(src.timing)
  +		var/disp1 = uppertext(id)
  +		var/timeleft = timeleft()
  +		var/disp2 = "[add_zero(num2text((timeleft / 60) % 60),2)]~[add_zero(num2text(timeleft % 60), 2)]"
  +		spawn( 5 )
  +			update_display(disp1, disp2)
  +	else
  +		update_display("SET","TIME")
   
   // Adds an icon in case the screen is broken/off, stolen from status_display.dm
   /obj/machinery/door_timer/proc/set_picture(var/state)
  
positive.code: 
  //Function for using door_timer dialog input, checks if user has permission
  // href_list to
  //  "time" turns on timer
  //  "tp" value to modify timer
  //  "fc" activates flasher
  // Also updates dialog window and timer icon
  /obj/machinery/door_timer/Topic(href, href_list)
  	if(..())
  		return
  	if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon)))
  		usr.machine = src
  		if (href_list["time"])
  			if(src.allowed(usr))
  				src.timing = text2num(href_list["time"])
  				src.closedoor()
  		else
  			if (href_list["tp"])  //adjust timer, close door if not already closed
  				if(src.allowed(usr))
  					var/tp = text2num(href_list["tp"])
  					src.time += tp
  					src.time = min(max(round(src.time), 0), 600)
  					src.timing = 1
  					src.closedoor()
  			if (href_list["fc"])
  				if(src.allowed(usr))
  					for (var/obj/machinery/flasher/F in targetflashers)
  						F.flash()
  		src.add_fingerprint(usr)
  		src.updateUsrDialog()
  		src.update_icon()
  	if (!src.timing) // was a timer set? if not, open door.
  		src.opendoor()
  	return
  
  
negative.code: /obj/machinery/door_timer/proc/opendoor()
  	if(stat & (NOPOWER|BROKEN))
  		return
  	for (var/obj/machinery/door/window/brigdoor/targetdoor in targetdoors)
  		if(targetdoor.density)
  			spawn( 0 )
  				targetdoor.open()
  	return
  
  /obj/machinery/door_timer/proc/closedoor()
  	if(stat & (NOPOWER|BROKEN))
  		return
  	for (var/obj/machinery/door/window/brigdoor/targetdoor in targetdoors)
  		if(!targetdoor.density)
  			spawn( 0 )
  				targetdoor.close()
  	return
  
  /obj/machinery/door_timer/proc/timeleft()
  	. = (releasetime-world.time)/10
  	if (. < 0)
  		. = 0
  
  /obj/machinery/door_timer/proc/timeset(var/seconds)
  	releasetime=world.time+seconds*10
  
  //Allows AIs to use door_timer, see human attack_hand function below
  /obj/machinery/door_timer/attack_ai(var/mob/user as mob)
  