NEW
is used to request a chunk of memory that is reserved for your application, usually to how a structure of data.
Do not mix, New and FreeMem, or GetMem and Dispose, internally they are using different regions of memory.
Type PUserData = ^UserData; UserData = Packed Record Username:String[36]; Password:String[40]; {.. more fields here ..} var UserRec=PUserData; Begin New(UserRec); UserRec^.Username:='Ozz Nixon'; UserRec^.Password:=SHA1('MySecret'); {.. more stuff ..} // When finished: Dispose(UserRec); End.Source: Reserved Words