The argument is a pointer because the functions are meant to be used with EEMEM...
unsigned long RandomSeed EEMEM = 13;
void setup( void )
{
randomSeed( eeprom_read_dword( &RandomSeed ) );
RandomSeed += 101;
eeprom_write_dword( &RandomSeed, RandomSeed );
}
There are two advantages...
-
The toolset organizes the EEPROM memory layout. You, the developer, don't need to track what is stored where.
-
The toolset generates an upload image with the initial values (the "13" in my example).