Dir-645 emergency room firmware recovery mode is different.
I finally fixed my router after a firmware update bricked it. It was just flashing the WAN / Internet / global / earth light after power on, whether I was pressing the reset button or not...
1. connect your computer to a router lan port, and manually set computer IP to anything other than 192.168.0.1 AND 192.168.0.101 (e.g. 192.168.0.5, set up the subnet mask to 255.255.255.0, no need to set gateway or dns).
2. power off the router, then power on again. The power light should be green, and the WAN light would be blinking green.
3. browse to 192.168.0.101, you will see the "emergency room" page. You can only upload a new firmware bin file on this page.
4. After upload, you will see a 90-sec countdown page, after 90-sec, the web browser will try to reload. In my case, the update actually took like 3 min, so just wait a bit longer even if the browser fails to reload.
5. After a successful update, the power and wireless and wan lights should all be steady green.