@RULE Bedbugs
-Bedbugs: standard Conway life with complication to use Bedstead rendering
-Alternates between Conway propagation and Bedsteadisation
-2 states for Conway -> 32 states (16x2) for Bedstead -> 2 etc.
+
+Standard Conway life with smoothing inspired by the Mullard SAA5050
+character generator (aka BBC "MODE 7").
+
+Alternately applies a smoothing transition function and the standard
+Conway transition function, so every step of Conway takes twice as
+long. This two-step nature means this is a bit fiddly to use:
+ set View > Show Cell Icons;
+ set Control > Set Base Step to 2;
+ press '+' to set the step to 2^1;
+ draw your pattern using states 0 and 1;
+ press 'Space' to perform a single step and apply the smoothing;
+ then press 'Tab' for every Conway step you want, doing 2 steps at
+ once and only displaying the smoothed version.
+
+Editing should only be done in the 2-state phase; mixing smoothed and
+unsmoothed states will probably confuse the current rules.
+
+If you zoom out beyond the point where icons are displayed, everything
+gets blobby as smoothed 'off' cells are currently displayed; you'll
+probably want to turn icons off again.
+
+The smoothing algorithm comes from Ben Harris' "Bedstead" font generator,
+<http://bjh21.me.uk/bedstead/>. The idea of applying it to cellular
+automata is due to Simon Tatham. Implementation is by Jacob Nevins.
@TABLE
n_states:34
symmetries:none
# Bedsteadisation rules generated by bedbugs.c
# FIXME: vars to allow edit in off states?
-# 1st one hacked
0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,1,2
0,1,0,0,0,0,0,0,0,2
1,1,1,1,1,1,1,1,0,33
1,1,1,1,1,1,1,1,1,33
# Conway rules (autogenerated)
-#zz,qn,qne,qe,qse,qs,qsw,qw,qnw,0
-#aa,qn,qne,qe,qse,qs,qsw,qw,qnw,1
+# rules: 190
+#
+# Golly rule-table format.
+# Each rule: C,N,NE,E,SE,S,SW,W,NW,C'
+# N.B. Where the same variable appears multiple times in a transition,
+# it takes the same value each time.
+#
+# All transitions should be included below, including no-change ones.
+#
var zz={0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17}
var aa={18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33}
var zc={zz}