OK, ignore the last one. That's what I get for using a simulator.
This is 14 WORDS, 1 less than Tim's.
At least it beats him 
	Code:
	    list      p=16F88
    #include "P16F88.inc"
    errorlevel  -302        ; suppress message 302 from list file
    __CONFIG  _CONFIG1, _XT_OSC & _CP_OFF & _BODEN_ON & _MCLR_ON & _WDT_ON & _PWRTE_ON & _LVP_OFF
    clrf    PORTB         ; PORTB all 0's
    bsf     STATUS,RP0    ; Bank 1
    bcf     OPTION_REG, 0 ; 1:64 prescaler to WDT
    bcf     TRISB, 0      ; RB0 output
Loop
    sleep                 ; nite nite
    btfss   SPBRG,0       ; SPBRG used for it's 00 reset value   
    rlf     TRISB,F       ; rotate Left across TRISB
    btfsc   SPBRG,0
    rrf     TRISB,F       ; rotate Right across TRISB
    
    btfss   TRISB, 7      ; At LED7? - go the other way
    incf    SPBRG,F
    btfss   TRISB, 0      ; At LED0? - go the other way
    incf    SPBRG,F 
    
    goto    Loop          ; Repeat
 LED's go to VDD.
Tested, working on 16F88, should be the same (except configs) on 16F628A.
<br>
				
			
Bookmarks