Данные берутся с того самого стека, который обеспечивает хранилище для локальных переменных. Что там лежало до вызова процедуры, то и будет значением соответствующей переменной. Иван ужеотвечалпро схожую ситуацию