Hi raasco_alan,
We don't have a method of transferring programs without the source.
I suppose you could write a program to write out the Thread memory spaces as binary bytes then read them back in on the other board.
(From PC_DSP.h)
Code:
#define USER_PROG_ADDRESS_KFLOP 0x80050000 // where first user program is loaded
#define MAX_USER_PROG_SIZE_KFLOP 0x10000 // space between each thread/user program
#define N_USER_THREADS 7 // how many user programs/threads there are
I think you would need to also copy the persist structure that contains UserData, Program EntryPoints, and RunOnStartUp:
(From KMotionDef.h)
Code:
#define N_USER_DATA_VARS 200
typedef struct
{
int RunOnStartUp; // word Bits 1-7 selects which threads to execute on startup
unsigned int EntryPoints[N_USER_THREADS]; // each downloaded program's entry point
int UserData[N_USER_DATA_VARS]; // General purpose way to share and or save user program data
} PERSIST;
extern PERSIST persist;