eso depende.
Hay algunas unidades que ya no existen en Delphi, como la DOS y la CRT. Además, si accedes directamente a la memoria (digamos rutinas de memoria de video y otras cosas típicas del desarrollo en DOS (cambiar el vector de interrupciones, etc)) te va a se imposible correr tu aplicación en Delphi. Si por el contrario la aplicación se compone básicamente de procesos y hace una entrada/salida limpia de la consola, podes compilarla como una aplicación de consola de win32 sin ningún problema.
Eso si... has de tener en cuenta que algunos tipos de datos son dependientes de la plataforma; por ejemplo integer, que en dos y win 3.x era de 16 bits, pero a partir de win95 es de 32 bits.. Ya en las nuevas versiones de windows será de 64. Algo similar pasa con el real. Asi que si tenes archivos de registros o alguna otra dependencia, primero tenes que traducir los tipos (o los archivos) para no tener dificultades.
digamos, cambiar todos los Integer por SmallInt, etc. etc.
Hasta luego.