You code has a number of bugs. Please consider this:
@echo off
define parameter=%1
echo This is first: %1
if "%parameter%"=="" set /p parameter=Enter parameter value:
echo %parameter%
pause
Pay attention: command-line parameter is %1, not %%1; there is not "defined"; you should use string comparison, which is the operator '=='.
Does it help you?
—SA