I'm stuck ...at red lines bellow ...
Code:
;                        Termo 7 seg
'======================================================================================

@ DEVICE pic16F628A, intOSC_osc_noclkout, WDT_OFF, PWRT_ON, MCLR_OFF, LVP_OFF, CPD_OFF

DEFINE OSC 4
CMCON	= 7
VRCON 	= 0
INTCON 	= 0

                                
    Common_4   	VAR PORTA.0
    Common_3   	VAR PORTA.1
    Common_2   	VAR PORTA.2
    Common_1   	VAR PORTA.3  
    DP            VAR PORTB.7

Temp   	    Var     byte
Temperature     Var     Word
TempC           Var     Word
I               Var     Byte
Sign            Var     Word
Float           Var     Word
V		    Var     Word		   
Dummy           Var     Byte
Busy		    Var     Bit
    DIGIT_0     VAR 	BYTE
    DIGIT_1     VAR 	BYTE
    DIGIT_2     VAR 	BYTE
    DIGIT_3     VAR 	BYTE
digit		    Var 	BYTE


DQ VAR PORTA.4
DQ_DIR var TRISA.4
command var byte
pis   var byte

	TrisB=0					' Make PortB outputs
	TrisA.0=0:TrisA.1=0:TrisA.2=0		' Make only the specific bits of PortA outputs					
	TrisA.3=0:TrisA.4=1
	PortA=0:PortB=0			     	' Clear PortB and PortA

INTCON = %00100000
OPTION_REG = %10000000
ON INTERRUPT GOTO ISR
INTCON = %10100000

    
'======================================================================================
 
   Gosub init1820      ' Init the DS1820
   command = $cc       ' Issue Skip ROM command
   Gosub write1820

   command = $44       ' Start temperature conversion
   Gosub write1820
   Pause 2000          ' Wait 2 seconds for conversion to complete
   Gosub init1820      ' Do another init

   command = $cc       ' Issue Skip ROM command
   Gosub write1820

MAIN :
   command = $be       ' Read the temperature
   Gosub write1820
   Gosub read1820

temperature = ??????
sign = ????

Gosub Selectie
Goto Main

'======================================================================================
Selectie :
IF sign ="-" then					
    DIGIT_3="-"
    else
    DIGIT_3=" "
ENDIF
 
IF TEMPERATURE DIG 2 = 0 THEN
    DIGIT_2 = " "
    ELSE
    DIGIT_2 = TEMPERATURE dig 2
ENDIF

    DIGIT_1 = TEMPERATURE dig 1
    DIGIT_0 = TEMPERATURE dig 0

RETURN

'====================================================================================== 
DISABLE
ISR:   
 
for i=0 to 4
    TEMP = DIGIT_3 : gosub segments
    COMMON_1 = 1 : PAUSE 1 : COMMON_1 = 0

     
    TEMP = DIGIT_2 : GOSUB segments
    COMMON_2 = 1 : PAUSE 1 : COMMON_2 = 0
   
    TEMP = DIGIT_1 : GOSUB segments
    COMMON_3 = 1 : DP = 0 : PAUSE 1 : COMMON_3 = 0 : DP = 1
  
    TEMP = DIGIT_0 : GOSUB segments
    COMMON_4 = 1 : PAUSE 1 : COMMON_4 = 0
next i

segments:  ; CONVERTS DATES TO 7 SEGMENT CODE for Common ANOD
    
    SELECT CASE TEMP       
CASE 0 	 : PortB=%11000000 ; 0=ON ; 1=OFF
CASE 1 	 : PortB=%11111001
CASE 2 	 : PortB=%10100100      
CASE 3 	 : PortB=%10110000        
CASE 4 	 : PortB=%10011001
CASE 5 	 : PortB=%10010010        
CASE 6 	 : PortB=%10000010
CASE 7 	 : PortB=%11111000        
CASE 8 	 : PortB=%10000000       
CASE 9 	 : PortB=%10010000        
CASE "-"     : PortB=%10111111               
CASE " "     : PortB=%11111111        
    END SELECT 
return

INTCON.2=0
RESUME
ENABLE
'====================================================================================== 
' Initialize DS1820 and check for presence
init1820:
   Low DQ              ' Set the data pin low to init
   Pauseus 500         ' Wait > 480us
   DQ_DIR = 1          ' Release data pin (set to input for high)

   Pauseus 100         ' Wait > 60us
   If DQ = 1 Then
      Pause 500
      Goto main        ' Try again
   Endif
   Pauseus 400         ' Wait for end of presence pulse
   Return

' Write "command" byte to the DS1820
write1820:
   For pis = 1 To 8      ' 8 bits to a byte
     If command.0 = 0 Then
        Gosub write0   ' Write a 0 bit
     Else
        Gosub write1   ' Write a 1 bit
     Endif
     command = command >> 1  ' Shift to next bit
   Next pis
   Return

' Write a 0 bit to the DS1820
write0:
   Low DQ
   Pauseus 60          ' Low for > 60us for 0
   DQ_DIR = 1          ' Release data pin (set to input for high)
   Return

' Write a 1 bit to the DS1820
write1:
   Low DQ              ' Low for < 15us for 1
 @ nop                 ' Delay 1us at 4MHz
   DQ_DIR = 1          ' Release data pin (set to input for high)
   Pauseus 60          ' Use up rest of time slot
   Return

' Read temperature from the DS1820
read1820:
   For pis = 1 To 16     ' 16 bits to a word
     temperature = temperature >> 1  ' Shift down bits
     Gosub readbit     ' Get the bit to the top of temp
   Next pis
   Return

' Read a bit from the DS1820
readbit:
   temperature.15 = 1         ' Preset read bit to 1
   Low DQ              ' Start the time slot
 @ nop                 ' Delay 1us at 4MHz
   DQ_DIR = 1          ' Release data pin (set to input for high)
   If DQ = 0 Then
      temperature.15 = 0      ' Set bit to 0
   Endif
   Pauseus 60          ' Wait out rest of time slot
   Return    

end
I have no ideea how to find the value of temperature ...