Arduino Due: Programming without 16U2??

Hi everyone,

i am trying to understand things described about the Due programming in this article:

I am not sure about the way the SAM Chip is erasing/resetting itself without the 16U2 chip. In the article above it is described, that there is "wired up some c-code" for setting up the USB port for serial connection etc. where is this code "wired up" and how does this software-resetting work? is it client-side?

what happens exactly when the erase button is pressed? is the erased chip exactly a factory-like sam-chip without any arduino-specific code?

and why is the soft-erase-function not as relieable as the 16U2-version? if the sam chip has this software-feature burned in its rom, it should work. what part of the software can hang up then?

sorry for this questions- i guess i have not understood some principles yet, maybe somebody could explain it in other words? thanks!