diff --git a/conway.lua b/conway.lua
new file mode 100644
index 0000000..64565e4
--- /dev/null
+++ b/conway.lua
@@ -0,0 +1,100 @@
+-- title: Conway TIC of life
+-- author: Fabien Freling
+-- desc: short description
+-- script: lua
+
+t=0
+width=240
+height=136
+buffer={}
+ib={} -- integral-buffer
+for i=0,width*height-1 do
+ buffer[i]=0
+end
+-- initial state
+buffer[11+10*width]=1
+buffer[12+10*width]=1
+buffer[13+10*width]=1
+
+function display()
+ for y=0,height-1 do
+ for x=0,width-1 do
+ local color=0
+ if buffer[x+y*width]==1 then
+ color=13
+ end
+ pix(x,y,color)
+ end
+ end
+end
+
+function compute_ib()
+ for i=0,width*height-1 do
+ ib[i]=buffer[i]
+ end
+ for x=1,width-1 do
+ ib[x]=ib[x]+ib[x-1]
+ end
+ for y=1,height-1 do
+ ib[y*width]=ib[y*width]+ib[(y-1)*width]
+ end
+ for y=1,height-1 do
+ for x=1,width-1 do
+ ib[x+y*width]=ib[x+y*width]+ib[x-1+y*width]+ib[x+(y-1)*width]
+ end
+ end
+end
+
+function update()
+ compute_ib()
+ -- deal with border later
+ for y=2,height-3 do
+ for x=2,width-3 do
+ i=x+y*width
+ local n=ib[x+1+(y+1)*width]-ib[x-2+(y+1)*width]-ib[x+1+(y-2)*width]+ib[x-2+(y-2)*width]
+ n=n-buffer[i]
+ if n < 2 then
+ buffer[i]=0
+ elseif n == 3 then
+ buffer[i]=1
+ else
+ buffer[i]=0
+ end
+ end
+ end
+end
+
+function TIC()
+ display()
+ if btn(0) then update() end
+ if btn(1) then update() end
+ if btn(2) then update() end
+ if btn(3) then update() end
+ t=t+1
+end
+
+--
+-- 001:efffffffff222222f8888888f8222222f8fffffff8ff0ffff8ff0ffff8ff0fff
+-- 002:fffffeee2222ffee88880fee22280feefff80fff0ff80f0f0ff80f0f0ff80f0f
+-- 003:efffffffff222222f8888888f8222222f8fffffff8fffffff8ff0ffff8ff0fff
+-- 004:fffffeee2222ffee88880fee22280feefff80ffffff80f0f0ff80f0f0ff80f0f
+-- 017:f8fffffff8888888f888f888f8888ffff8888888f2222222ff000fffefffffef
+-- 018:fff800ff88880ffef8880fee88880fee88880fee2222ffee000ffeeeffffeeee
+-- 019:f8fffffff8888888f888f888f8888ffff8888888f2222222ff000fffefffffef
+-- 020:fff800ff88880ffef8880fee88880fee88880fee2222ffee000ffeeeffffeeee
+--
+
+--
+-- 000:00000000ffffffff00000000ffffffff
+-- 001:0123456789abcdeffedcba9876543210
+-- 002:0123456789abcdef0123456789abcdef
+--
+
+--
+-- 000:000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000304000000000
+--
+
+--
+-- 000:140c1c44243430346d4e4a4e854c30346524d04648757161597dced27d2c8595a16daa2cd2aa996dc2cadad45edeeed6
+--
+