Multiple Programs within ROBOTC

Does anybody know or has implemented/used the multiple programs feature within ROBOTC for the VEX Cortex as we have two programmers for our team (long story) who use different code and motor definitions

Therefore does anybody here know how to use multiple programs as we have a LCD display and I have looked at the ROBOTC Program Chooser sample code (using ROBOTC 3.04) but can’t seem to get the different programs to go in different slots (1,2,etc). I have super user enabled but unlike the (limited) documentation there doesn’t seem to be a Robot>Download & Compile > File System in my menu, just Robot> Download & Compile Program (F5)

Any help would be greatly appreciated as we would like to be able to switch programs between our two programmers when using the robot.(I have looked at merging into one set but also with failure)

I have used it but did not find it that useful for me.

You can only (as far as I can tell) compile & download to the default slot 0. Using the File Management menu item (under the robot menu) you can upload the executable and save as a file on the PC. So the procedure would be something like this.

compile and download code for programmer 1.
Upload and save as program_1

compile and download code for programmer 2.
Upload and save as program_2

compile program chooser and download to default slot 0
using file management download program_1 to slot 1
using file management download program_2 to slot 2

reboot and choose program_1 or program_2 using the program chooser.

A better way would be to integrate the two sets of code into one executable. Move the code from each main task into separate new tasks and create a new main task to start one or the other. Motor and sensor definitions could be setup in code rather than using #pragma if they are different. If function names clash then perhaps prefix with P1 or P2 depending on the programmer.

Hope this helps.

Thanks for that, I will give the multiple slots idea a go later tonight with some other code but I would prefer to do what you say there - use multiple tasks (if only it was that easy)