thanks Norm,
i see it now, but in the program portC does not service. (PORTB.0,1,2 FOR DATA, LATCH AND CLK)
after several tests, i found that problem comes from peekcode.
direct input data to the 595, output is ok. but when i read data from flash memory by PEEKCODE, the problem appears.

READING data from flash memory - BYTE
WRITING data to flash memory - WORD

I attempted to isolate lower byte of data (word) reading from flash memory, it does not solve the issue

(note that changing osc configuration in the .inc does not effect the result)

in the section 5.6 (PBP REERENCE MANUAL) concerning POKECODE

"Note that POKECODE is a specialized command intended for use in
circumstances under which standard methods won't serve. LOOKUP
and LOOKUP2 are usually a better choice for constructing lookup
tables in code space"
REGARDS