Here's a simple little test I did with the method I described. I used three includes files-- colors.asm, NTSC_colors.asm, and PAL_colors.asm. You include colors.asm in your program, and then add a line that says either "PALETTE = NTSC" or "PALETTE = PAL," depending on which type of Atari/TV you're compiling your program for. Then you can use the color names N_00 through N_FF for the NTSC hex values, or P_00 through P_FF for the PAL hex values, or even mix them together in your program. (I decided to include the odd-numbered values, in case somebody is using bit 0 of the color value for some sort of flag. And I put an underline between the letter and the hex value because the 2600 has something called PF0, PF1, and PF2.

)
The NTSC_colors.asm file is included if PALETTE = NTSC. It contains two color tables-- one to define the N_00 through N_FF values, and another to define the NTSC equivalents for the P_00 through P_FF values. For example, if you use P_54 in your program, it will represent green, as it does in the PAL color palette, but the compiler will replace it with the NTSC equivalent (i.e., $C4). On the other hand, N_54 would be replaced with $54 (NTSC violet red).
The PAL_colors.asm file is included if PALETTE = PAL. It also contains two color tables-- one to define the PAL equivalents for the N_00 through N_FF values, and another to define the P_00 through P_FF values. For example, if you use N_54 in your program, it will represent violet red, as it does in the NTSC color palette, but the compiler will replace it with the PAL equivalent (i.e., $84). On the other hand, P_54 would be replaced with $54 (PAL green).
The first and second test programs use the N hex color values to define seven basic colors-- black, yellow, orange, red, purple, blue, and green. But the first test uses PALETTE = NTSC to compile the program for NTSC, and the second test uses PALETTE = PAL to compile the program for PAL/60. The only difference between these two programs is the "PALETTE =" line.
The third and fourth test programs use the P hex color values to define the same seven basic colors. But the third test uses PALETTE = NTSC to compile the program for NTSC, and the second test uses PALETTE = PAL to compile the program for PAL/60.
Test 1 -- Uses N hex color values -- Compiled for NTSC
Running in z26 with the NTSC palette
Running in z26 with the PAL palette
Test 2 -- Uses N hex color values -- Compiled for PAL/60
Running in z26 with the NTSC palette
Running in z26 with the PAL palette
Test 3 -- Uses P hex color values -- Compiled for NTSC
Running in z26 with the NTSC palette
Running in z26 with the PAL palette
Test 4 -- Uses P hex color values -- Compiled for PAL/60
Running in z26 with the NTSC palette
Running in z26 with the PAL palette
The source files, the ROM binaries, and the three includes files are all in the attached .ZIP file.
Michael