// I use C definitions; Keil accept them for assembler
features ds 1 ; use some bit addressable location (e.g. 20h
#define HOLD    features^4
#define FLASH   features^3
#define FADE    features^2
#define TWINKLE features^1
#define SPARKLE features^o

#define M_HOLD    0x10
#define M_FLASH   0x08
#define M_FADE    0x04
#define M_TWINKLE 0x02
#define M_SPARKLE 0x01



now the code becomes


     	movc	a,@A+DPTR
     	mov     features,a
     	
locate this elsewhere
                ;0  + M_HOLD + M_FLASH + M_FADE + M_TWINKLE + M_SPARKLE 
JMPTBL:	dw	0     
	dw	0  + M_HOLD 
           ....