Yes, it was really fun!
Yes, doubled if you meant... To calculate the next generation I dumped the current (vga memory) after the grid is rendered to a buffer in memory and calculating the next one right to video memory back.