Sure, all it does is dims a light down after 20 minutes of being on.

@ device pic10F202, mclr_off, protect_off, wdt_off

TRISIO = %1100

triac VAR GPIO.2
trigger VAR GPIO.3

dim VAR WORD
Time VAR WORD
Time2 VAR BYTE
b0 VAR BYTE

Clear
GPIO = 0
dim = 100


Start:

time = time + 1 'increment timer in 1/50 seconds

IF time > 30000 Then 'make a 10 min increment
time = 0
time2 = time2 + 1
EndIF

b0 = b0 + 1 'increment for every 4 phase cycles
IF b0 >= 3 Then b0 = 0

IF time2 >= 2 AND b0 = 2 Then dim = dim + 1 'if over 20 min then start dimming dim period 4 cycles = 10 mins

IF dim > 7500 Then dim = 7500 'down to dim level - 9000 = off, 7500 approx 15%

if time2 > 72 then 'turn off after 12 hours
dim = 9000
time2 = 73 'prevent from cycling
endif

LowSide: 'look for trigger points and trigger triac

IF trigger = 1 Then lowside 'wait for phase to go low
GPIO.5 = 0 'weight input to sense zero crossing
PauseUs dim 'wait for dim period
Output triac 'fire triac
triac = 0
PauseUs 400
Input triac

HighSide:

IF trigger = 0 Then HighSide
GPIO.5 = 1
PauseUs dim
Output triac
triac = 0
PauseUs 400
Input triac

GoTo start