Main_Loop org 0x014C ; 2nd 255 block
Pat_1 call Clear_Display
movlw .2
movwf Repeat_Count
Pat_1_A movlw .40
movwf Count
movlw .1
movwf Height
Pat_1_A_Loop movlw b'10101010'
movwf R1
bsf PCLATH,3
call Spread_Up
bcf PCLATH,3
movlw b'01010101'
movwf R1
bsf PCLATH,3
call Spread_Up
bcf PCLATH,3
decfsz Count,F
goto Pat_1_A_Loop
goto Pat_2
Pat_2 ---
---
Pat_3 ---
---
;All my subroutines placed from 0x0900 onwards
org 0x0900 ; 9th 255 block
Spread_Up clrf R2
Spread_Up_Init movf R1,W
movwf P1
movwf P2
movwf P3
movwf P4
call Init_Column_Set1
Spread_Up_Loop bcf STATUS,C
rlf P4,F
rlf P3,F
rlf P2,F
rlf P1,F
call Feed_1_Column_UP
decfsz Columns,F
goto Spread_Up_Loop
call Delay_1S
incf R2,F
movf R2,W
xorwf Height,W ;2
btfss STATUS,Z
goto Spread_Up_Init
return
Init_Column_Set1 movlw .29
movwf Columns
movlw 30h ; start at 30h
movwf FSR
return
Feed_1_Column_UP rlf INDF,F
incf FSR,F
rlf INDF,F
incf FSR,F
return