Exactamente como dicen los genios del foro.
Pero ya creo que conoceis una instrucción del MPLAB: el dt
Description
Generates a series of RETLW instructions, one instruction for each <expr>. Each <expr> must be an 8-bit value. Each character in a string is stored in its own RETLW instruction.
Example
dt "A Message", 0
dt FirstValue, SecondValue, EndOfValues
O sea, que hace lo mismo y según acabo de comprobar en el archivo list ocupa solo una linea de programa. Aquí os muestro 2 ejemplos : una tabla con el DT (tabledat1) y otra en forma normal (tabledat).
Debo advertir que en esta pantalla (copy y paste) muestra la linea de DT en varios renglones pero DEBEREIS ponerlo en una misma linea.
Lo que me quedaría por comprobar es si comete el mismo fallo de salto del 255 al 0 igualmente si se ubica en posición indebida.
tabladat1 addwf PCL,F
dt 0x00,0x0c,0xff,0x8f,0x3a,0x10,0x01,0x3a,0x3a,0x1a,0xab,0x3a,0x44,0x51,0x9b,0xc6,0x2f,0x61,0x55,0x2f,0x33,0x41,0x78,0x47,0x54,0x22,0xae,0x35,0xff,0x00,0x00,0x00,0x00
tabladat addwf PCL,F
retlw 0x00 ;main (no se usa pero debo ponerlo) 00h
retlw 0x0C ;interface 01h
retlw 0xff ;reset 02h
retlw 0x8f ;sequencing 03h
retlw 0x3a ;freq 2a 04h
retlw 0x10 ;freq 1a 05h
retlw 0x01 ;freq 0a 06h
retlw 0x3a ;clock a 07h
retlw 0x3a ;freq 2b 08h
retlw 0x1a ;freq 1b 09h
retlw 0xab ;freq 0b 0Ah
retlw 0x3a ;clock b 0Bh
retlw 0x44 ;VCO 0Ch
retlw 0x51 ;MODEM 0Dh
retlw 0x9b ;deviation 0Eh
retlw 0xc6 ;AFC CONTROL 0Fh
retlw 0x2f ;FILTER 10h
retlw 0x61 ;VGA1 11h
retlw 0x55 ;VGA2 12h
retlw 0x2f ;VGA3 13h
retlw 0x33 ;VGA4 14h
retlw 0x41 ;LOCK 15h
retlw 0x78 ;FRONTEND 16h
retlw 0x47 ;ANALOG 17h
retlw 0x54 ;Buff Swing 18h
retlw 0x22 ;Buff Current 19h
retlw 0xAE ;PLL BW 1Ah
retlw 0x35 ;Calibrate 1Bh
retlw 0xff ;PA POWER 1Ch
retlw 0x00 ;MATCH 1Dh
retlw 0x00 ;PHASE COMP 1Eh
retlw 0x00 ;GAIN COMP 1Fh
retlw 0x00 ;POWERDOWN 20h
saluditos