GLogic, a photon based logic rule with low need for timing

For discussion of other cellular automata.
Post Reply
kaarel
Posts: 31
Joined: August 19th, 2019, 7:23 pm

GLogic, a photon based logic rule with low need for timing

Post by kaarel » June 13th, 2020, 12:30 pm

I got the inspiration to make this rule from messing around with some glider logic (forgot the rule).

Code: Select all

@RULE glogic

@TABLE

n_states: 8
neighborhood:vonNeumann
symmetries:none

##Glogic: A photon logic rule that aims to minimize need for timing
##Inspired by glider logic that makes many life-like rules turing-complete (yes that has very important timing)
##by Kaarel
#Quite reduced from the original idea
#

##States:
#0 - empty
#1-4 - photons (down, left, up, right)
#5 - block
#6 - inactive splitter
#7 - active splitter

var a={0,1,2,3,4,5,6,7} # any state
var a1=a
var a2=a
var a3=a
var a4=a

var d = {1,7} # Stuff that sends signals down
var d1=d
var d2=d
var d3=d
var d4=d
var nd = {0,2,3,4,5,6} # Stuff that doesn't send signals down
var nd1=nd
var nd2=nd
var nd3=nd
var nd4=nd

var l = {2,7} # Stuff that sends signals left
var l1=l
var l2=l
var l3=l
var l4=l
var nl = {0,1,3,4,5,6} # Stuff that doesn't send signals left
var nl1=nl
var nl2=nl
var nl3=nl
var nl4=nl

var u = {3,7} # Stuff that sends signals up
var u1=u
var u2=u
var u3=u
var u4=u
var nu = {0,1,2,4,5,6} # Stuff that doesn't send signals up
var nu1=nu
var nu2=nu
var nu3=nu
var nu4=nu

var r = {4,7} # Stuff that sends signals right
var r1=r
var r2=r
var r3=r
var r4=r
var nr = {0,1,2,3,5,6} # Stuff that doesn't send signals right
var nr1=nr
var nr2=nr
var nr3=nr
var nr4=nr



0,d1,nl2,nu3,nr4,1 # D signal going forward
1,nd1,a2,a3,a4,0   # D signal backend

0,nd1,l2,nu3,nr4,2 # L signal going forward
2,a1,nl2,a3,a4,0   # L signal backend

0,nd1,nl2,u3,nr4,3 # U signal going forward
3,a1,a2,nu3,a4,0   # U signal backend

0,nd1,nl2,nu3,r4,4 # R signal going forward
4,a1,a2,a3,nr4,0   # R signal backend


1,a1,l2,a3,a4,0 # D signal annihilation by L signal
1,a1,a2,a3,r4,0 # D signal annihilation by R signal

2,d1,a2,a3,a4,0 # L signal annihil by D signal
2,a1,a2,u3,a4,0 # L signal annihil by U signal

3,a1,l2,a3,a4,0 # U signal annihil by L signal
3,a1,a2,a3,r4,0 # U signal annihil by R signal

4,d1,a2,a3,a4,0 # R signal annihil by D signal
4,a1,a2,u3,a4,0 # R signal annihil by U signal


6,d1,a2,a3,a4,7 # Splitter activate by D
6,a1,l2,a3,a4,7 # Splitter activate by L
6,a1,a2,u3,a4,7 # Splitter activate by U
6,a1,a2,a3,r4,7 # Splitter activate by R

7,nd1,nl2,nu3,nr4,6 # Splitter deactivate


@COLORS

0 0 0 0
1 255 255 255
2 255 255 255
3 255 255 255
4 255 255 255
5 255 0 0
6 0 255 0
7 255 255 0

@ICONS

XPM
/* width height num_colors chars_per_pixel */
"31 217 5 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
/* icon for state 1 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAA.....AA.....AA.....AAAAAA"
"AAAAAAA.....A.....A.....AAAAAAA"
"AAAAAAAA...............AAAAAAAA"
"AAAAAAAAA.............AAAAAAAAA"
"AAAAAAAAAA...........AAAAAAAAAA"
"AAAAAAAAAAA.........AAAAAAAAAAA"
"AAAAAAAAAAAA.......AAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAAA...AAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA.AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAA..AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAA...AAAAAAAAAAAAAAAAAAAA"
"AAAAAAA....AAAAAAAAAAAAAAAAAAAA"
"AAAAAA.....AAAAAAAAAAAAAAAAAAAA"
"AAAAA.....AAAAAAAAAAAAAAAAAAAAA"
"AAAA.....AAAAAAAAAAAAAAAAAAAAAA"
"AAA...........................A"
"AA............................A"
"A.............................A"
"AA............................A"
"AAA...........................A"
"AAAA.....AAAAAAAAAAAAAAAAAAAAAA"
"AAAAA.....AAAAAAAAAAAAAAAAAAAAA"
"AAAAAA.....AAAAAAAAAAAAAAAAAAAA"
"AAAAAAA....AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAA...AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAA..AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 3 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA.AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAA...AAAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAA.......AAAAAAAAAAAA"
"AAAAAAAAAAA.........AAAAAAAAAAA"
"AAAAAAAAAA...........AAAAAAAAAA"
"AAAAAAAAA.............AAAAAAAAA"
"AAAAAAAA...............AAAAAAAA"
"AAAAAAA.....A.....A.....AAAAAAA"
"AAAAAA.....AA.....AA.....AAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 4 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA..AAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA...AAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA....AAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.....AAAAAA"
"AAAAAAAAAAAAAAAAAAAAA.....AAAAA"
"AAAAAAAAAAAAAAAAAAAAAA.....AAAA"
"A...........................AAA"
"A............................AA"
"A.............................A"
"A............................AA"
"A...........................AAA"
"AAAAAAAAAAAAAAAAAAAAAA.....AAAA"
"AAAAAAAAAAAAAAAAAAAAA.....AAAAA"
"AAAAAAAAAAAAAAAAAAAA.....AAAAAA"
"AAAAAAAAAAAAAAAAAAAA....AAAAAAA"
"AAAAAAAAAAAAAAAAAAAA...AAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA..AAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 5 */
".CCCCCCCCCCCCCCCCCCCCCCCCCCCCC."
"C.CCCCCCCCCCCCCCCCCCCCCCCCCCC.C"
"CC.CCCCCCCCCCCCCCCCCCCCCCCCC.CC"
"CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC"
"CCCC.CCCCCCCCCCCCCCCCCCCCC.CCCC"
"CCCCC.CCCCCCCCCCCCCCCCCCC.CCCCC"
"CCCCCC.CCCCCCCCCCCCCCCCC.CCCCCC"
"CCCCCCC.CCCCCCCCCCCCCCC.CCCCCCC"
"CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCC"
"CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCC"
"CCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC"
"CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCC"
"CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCC"
"CCCCCCCCCCCCC.CCC.CCCCCCCCCCCCC"
"CCCCCCCCCCCCCC.C.CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC.C.CCCCCCCCCCCCCC"
"CCCCCCCCCCCCC.CCC.CCCCCCCCCCCCC"
"CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCC"
"CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCC"
"CCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC"
"CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCC"
"CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCC"
"CCCCCCC.CCCCCCCCCCCCCCC.CCCCCCC"
"CCCCCC.CCCCCCCCCCCCCCCCC.CCCCCC"
"CCCCC.CCCCCCCCCCCCCCCCCCC.CCCCC"
"CCCC.CCCCCCCCCCCCCCCCCCCCC.CCCC"
"CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC"
"CC.CCCCCCCCCCCCCCCCCCCCCCCCC.CC"
"C.CCCCCCCCCCCCCCCCCCCCCCCCCCC.C"
".CCCCCCCCCCCCCCCCCCCCCCCCCCCCC."
/* icon for state 6 */
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"E.............................E"
"E.............................E"
"E.............................E"
"E.............................E"
"E.............................E"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"

XPM
/* width height num_colors chars_per_pixel */
"15 105 5 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
/* icon for state 1 */
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAA.........AAA"
"AAAA.......AAAA"
"AAAAA.....AAAAA"
"AAAAAA...AAAAAA"
"AAAAAAA.AAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAA.AAAAAAAAAA"
"AAA..AAAAAAAAAA"
"AA...AAAAAAAAAA"
"A.............."
"..............."
"A.............."
"AA...AAAAAAAAAA"
"AAA..AAAAAAAAAA"
"AAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
/* icon for state 3 */
"AAAAAAA.AAAAAAA"
"AAAAAA...AAAAAA"
"AAAAA.....AAAAA"
"AAAA.......AAAA"
"AAA.........AAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
/* icon for state 4 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAA"
"AAAAAAAAAA..AAA"
"AAAAAAAAAA...AA"
"..............A"
"..............."
"..............A"
"AAAAAAAAAA...AA"
"AAAAAAAAAA..AAA"
"AAAAAAAAAA.AAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
/* icon for state 5 */
".CCCCCCCCCCCCC."
"C.CCCCCCCCCCC.C"
"CC.CCCCCCCCC.CC"
"CCC.CCCCCCC.CCC"
"CCCC.CCCCC.CCCC"
"CCCCC.CCC.CCCCC"
"CCCCCC.C.CCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCC.C.CCCCCC"
"CCCCC.CCC.CCCCC"
"CCCC.CCCCC.CCCC"
"CCC.CCCCCCC.CCC"
"CC.CCCCCCCCC.CC"
"C.CCCCCCCCCCC.C"
".CCCCCCCCCCCCC."
/* icon for state 6 */
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"..............."
"..............."
"..............."
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"

XPM
/* width height num_colors chars_per_pixel */
"7 49 5 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
/* icon for state 1 */
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"A.....A"
"AA...AA"
"AAA.AAA"
/* icon for state 2 */
"AAAAAAA"
"AA.AAAA"
"A..AAAA"
"......."
"A..AAAA"
"AA.AAAA"
"AAAAAAA"
/* icon for state 3 */
"AAA.AAA"
"AA...AA"
"A.....A"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
/* icon for state 4 */
"AAAAAAA"
"AAAA.AA"
"AAAA..A"
"......."
"AAAA..A"
"AAAA.AA"
"AAAAAAA"
/* icon for state 5 */
".CCCCC."
"C.CCC.C"
"CC.C.CC"
"CCC.CCC"
"CC.C.CC"
"C.CCC.C"
".CCCCC."
/* icon for state 6 */
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
/* icon for state 7 */
"EEEEEEE"
"EEE.EEE"
"EEE.EEE"
"E.....E"
"EEE.EEE"
"EEE.EEE"
"EEEEEEE"
Any pattern made of one of the photon states (1-4) will move at lightspeed without changing at all. Multiple streams of photons annihilate to make ANDNOT gates. State 5 is a block. States 6 and 7 are signal splitters, when a photon ray hits state 6, it turns into state 7 and produces photon rays in the other direction. 2 active splitters next to each other act like a laser.

Diode:

Code: Select all

x = 36, y = 18, rule = glogic
16.2E$15.E2G$16.2EC$10D8.C$17.EGE$17.EGE$18.E5$16.2E$15.E2G7.11B$16.
2EC$18.C$17.EGE$17.EGE$18.E!
NAND gate (guns at bottom are inputs):

Code: Select all

x = 30, y = 15, rule = glogic
19.3E.E.E.3E$19.E.E.E.E2.E$.E17.3E.3E2.E$EG$EG11.E$.E$4.EGE2.EGE$4.EG
E2.EGE$5.E4.E4$5.E.2E$5.E.E.E$5.E.E.E!
XOR:

Code: Select all

x = 16, y = 14, rule = glogic
3.2E$2.E2G9D$3.2E8.EGE$13.EGE$14.E2$.2E$E2G8.FE$.2E8.E3$5.EGE$5.EGE$
6.E!
Oscillator

Code: Select all

x = 13, y = 3, rule = glogic
.E10.E$EG10.F$.E10.E!
Splitter demo

Code: Select all

x = 94, y = 20, rule = glogic
20.E59.E$E19.F17.E41.F$6.E3.E$7.E.E$8.E$7.E.E$6.E3.E65.2E$75.E2G2D$
76.2E.EGE$79.EGE$E5.8D6.FE58.E$20.E45.2E$65.E2G10.FE$66.2E10.E3$93.E$
92.E$89.E.E$90.E!
Unoptimised crossover using the XOR design

Code: Select all

x = 33, y = 30, rule = glogic
9.E$8.EGE$5.E2.EGE3.2E$4.EF3.A3.E2G3D$7.2EA4.2E2.EGE$6.E2G8.FEGE$7.2E
8.E.E3.E$22.EGE$22.EGE$15.EF6.A$10.E12.A$6.4BGE9.2EA2.E$4.EGE2.EG9.E
2G3.FE$4.EGE2.EG3.FEGE3.2E$.2E2.E4.EC2.2EGE$E2G4.F3.C4.E$.2E4.E3.C$
10.EGE$10.EGE$11.E4.E$15.EGE$.2E12.EGE$E2G10.F2.A$.2E10.3EA10.E$13.E
2G11.FE$14.2E8.2E$23.E2G$24.2E4.EGE$30.EGE$31.E!
More optimised one with a different one (I made it before i knew of the xor crossover):

Code: Select all

x = 96, y = 24, rule = glogic
45.2E46.2E$44.E2G42.E3.E.E$45.2EC45.2E$44.EF.C45.E.E$29.2E15.EGE44.2E
$28.E2G14D.EGE$29.2E13.EG2E46.E$44.EGEF41.E3.E.E$33.2E4.E5.E47.3E$32.
E2G4DG7D46.E.E$33.2E4.A.E4.EGE$.E30.EGD4.AEGE3.EGE$E.E4.2E18.E5.CEG3E
AEGE4.E$3E3.E2GD17.F5.CEGE2G2.A$E.E4.2E20.E2.EG2E.2E.EG3DE$28.EGE.EGE
6.E$25.2E.EGE2.E$24.E2G2D5.2E$25.2E.EF3.E2G7.FE$2E5.2E20.E4.2EC6.E$E.
E3.E2GD21.F4.C$2E5.2E22.E3.EGE$E.E32.EGE$2E34.E!
D flip flop (inverted clock)

Code: Select all

x = 28, y = 29, rule = glogic
13.E$12.EGE$9.2E.EGE$8.E2G2D$9.2E$.2E$E2G8D13.3E$.2E3.E3.EGEF10.E.E$
5.2E3.EGE11.3E$4.E2G3D2E15.E$5.2E$2.E4.FE5.2E$10.4B2GE$8.EGE3.2E$8.EG
E$9.E2$3.E3.E2$2.EGE.EGE$2.EGE.EGE$3.E3.E2$5.3E2$.2E3.2E$.E.E.E$.E.E.
E$.2E3.2E!
SR latch (signals need to be long enough):

Code: Select all

x = 33, y = 25, rule = glogic
5.E$3F$F.F$3F$3.F3$13.E$12.EGE$12.EGE.2E$16.2GE$13.FE.2E13.2F$4.EGE4.
2E14.2E2.F$4.EGE3.E2G12.E.2GE2.F$5.E5.2E.EGE10.2E2.2F$14.EGE$15.E4$
13.E$18.2F$12.EGE3.F.F$12.EGE3.2F$13.E4.F.F!

Code: Select all

x = 17, y = -54, z = sdsds, x="'\n ,.b3s, :?:dfsf, rule = B33-33-/s2cekain32-3-232cekain322-323-1-ce6-cekain
b2o$2o$bo999999b!

BokaBB
Posts: 2973
Joined: December 30th, 2019, 11:55 am
Location: Serbia

Re: GLogic, a photon based logic rule with low need for timing

Post by BokaBB » June 13th, 2020, 1:36 pm

We already have the rule ,,NoTimeAtAll" without timing.
Have a good day!

BokaBB
777
I CAN APGSEARCH NOW!


Sure, I was a bad person, but I have changed myself.
I'd love to befriend anybody who's interested.
Have a good day!

BokaBB

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: GLogic, a photon based logic rule with low need for timing

Post by Moosey » June 13th, 2020, 2:29 pm

Suggestion:
Change the reflection reaction so that it doesn't return a glider on the same path it sent it on, otherwise this sometime happens

Code: Select all

x = 7, y = 5, rule = glogic
.A3$EF3.FE$.E3.E!
I suppose this will work in a pinch tho

Code: Select all

x = 24, y = 6, rule = glogic
.E$EGD.FE$EG.CE$.E2C14.3B2.B$.E2GE$2.2E!
Unoptimized OR gate:

Code: Select all

x = 21, y = 11, rule = glogic
.E$EG3D$EG2D.C$.E2.2C$4.2C$4.2C12.B.B$4.2C$4.2C8.B3.B$4.2C$3.E2GE$4.
2E!
not active here but active on discord

BokaBB
Posts: 2973
Joined: December 30th, 2019, 11:55 am
Location: Serbia

Re: GLogic, a photon based logic rule with low need for timing

Post by BokaBB » June 13th, 2020, 4:13 pm

kaarel wrote:
June 13th, 2020, 12:30 pm
I got the inspiration to make this rule from messing around with some glider logic (forgot the rule).

Code: Select all

@RULE glogic

@TABLE

n_states: 8
neighborhood:vonNeumann
symmetries:none

##Glogic: A photon logic rule that aims to minimize need for timing
##Inspired by glider logic that makes many life-like rules turing-complete (yes that has very important timing)
##by Kaarel
#Quite reduced from the original idea
#

##States:
#0 - empty
#1-4 - photons (down, left, up, right)
#5 - block
#6 - inactive splitter
#7 - active splitter

var a={0,1,2,3,4,5,6,7} # any state
var a1=a
var a2=a
var a3=a
var a4=a

var d = {1,7} # Stuff that sends signals down
var d1=d
var d2=d
var d3=d
var d4=d
var nd = {0,2,3,4,5,6} # Stuff that doesn't send signals down
var nd1=nd
var nd2=nd
var nd3=nd
var nd4=nd

var l = {2,7} # Stuff that sends signals left
var l1=l
var l2=l
var l3=l
var l4=l
var nl = {0,1,3,4,5,6} # Stuff that doesn't send signals left
var nl1=nl
var nl2=nl
var nl3=nl
var nl4=nl

var u = {3,7} # Stuff that sends signals up
var u1=u
var u2=u
var u3=u
var u4=u
var nu = {0,1,2,4,5,6} # Stuff that doesn't send signals up
var nu1=nu
var nu2=nu
var nu3=nu
var nu4=nu

var r = {4,7} # Stuff that sends signals right
var r1=r
var r2=r
var r3=r
var r4=r
var nr = {0,1,2,3,5,6} # Stuff that doesn't send signals right
var nr1=nr
var nr2=nr
var nr3=nr
var nr4=nr



0,d1,nl2,nu3,nr4,1 # D signal going forward
1,nd1,a2,a3,a4,0   # D signal backend

0,nd1,l2,nu3,nr4,2 # L signal going forward
2,a1,nl2,a3,a4,0   # L signal backend

0,nd1,nl2,u3,nr4,3 # U signal going forward
3,a1,a2,nu3,a4,0   # U signal backend

0,nd1,nl2,nu3,r4,4 # R signal going forward
4,a1,a2,a3,nr4,0   # R signal backend


1,a1,l2,a3,a4,0 # D signal annihilation by L signal
1,a1,a2,a3,r4,0 # D signal annihilation by R signal

2,d1,a2,a3,a4,0 # L signal annihil by D signal
2,a1,a2,u3,a4,0 # L signal annihil by U signal

3,a1,l2,a3,a4,0 # U signal annihil by L signal
3,a1,a2,a3,r4,0 # U signal annihil by R signal

4,d1,a2,a3,a4,0 # R signal annihil by D signal
4,a1,a2,u3,a4,0 # R signal annihil by U signal


6,d1,a2,a3,a4,7 # Splitter activate by D
6,a1,l2,a3,a4,7 # Splitter activate by L
6,a1,a2,u3,a4,7 # Splitter activate by U
6,a1,a2,a3,r4,7 # Splitter activate by R

7,nd1,nl2,nu3,nr4,6 # Splitter deactivate


@COLORS

0 0 0 0
1 255 255 255
2 255 255 255
3 255 255 255
4 255 255 255
5 255 0 0
6 0 255 0
7 255 255 0

@ICONS

XPM
/* width height num_colors chars_per_pixel */
"31 217 5 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
/* icon for state 1 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAA.....AA.....AA.....AAAAAA"
"AAAAAAA.....A.....A.....AAAAAAA"
"AAAAAAAA...............AAAAAAAA"
"AAAAAAAAA.............AAAAAAAAA"
"AAAAAAAAAA...........AAAAAAAAAA"
"AAAAAAAAAAA.........AAAAAAAAAAA"
"AAAAAAAAAAAA.......AAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAAA...AAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA.AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAA..AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAA...AAAAAAAAAAAAAAAAAAAA"
"AAAAAAA....AAAAAAAAAAAAAAAAAAAA"
"AAAAAA.....AAAAAAAAAAAAAAAAAAAA"
"AAAAA.....AAAAAAAAAAAAAAAAAAAAA"
"AAAA.....AAAAAAAAAAAAAAAAAAAAAA"
"AAA...........................A"
"AA............................A"
"A.............................A"
"AA............................A"
"AAA...........................A"
"AAAA.....AAAAAAAAAAAAAAAAAAAAAA"
"AAAAA.....AAAAAAAAAAAAAAAAAAAAA"
"AAAAAA.....AAAAAAAAAAAAAAAAAAAA"
"AAAAAAA....AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAA...AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAA..AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 3 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA.AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAA...AAAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAA.......AAAAAAAAAAAA"
"AAAAAAAAAAA.........AAAAAAAAAAA"
"AAAAAAAAAA...........AAAAAAAAAA"
"AAAAAAAAA.............AAAAAAAAA"
"AAAAAAAA...............AAAAAAAA"
"AAAAAAA.....A.....A.....AAAAAAA"
"AAAAAA.....AA.....AA.....AAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 4 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA..AAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA...AAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA....AAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.....AAAAAA"
"AAAAAAAAAAAAAAAAAAAAA.....AAAAA"
"AAAAAAAAAAAAAAAAAAAAAA.....AAAA"
"A...........................AAA"
"A............................AA"
"A.............................A"
"A............................AA"
"A...........................AAA"
"AAAAAAAAAAAAAAAAAAAAAA.....AAAA"
"AAAAAAAAAAAAAAAAAAAAA.....AAAAA"
"AAAAAAAAAAAAAAAAAAAA.....AAAAAA"
"AAAAAAAAAAAAAAAAAAAA....AAAAAAA"
"AAAAAAAAAAAAAAAAAAAA...AAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA..AAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 5 */
".CCCCCCCCCCCCCCCCCCCCCCCCCCCCC."
"C.CCCCCCCCCCCCCCCCCCCCCCCCCCC.C"
"CC.CCCCCCCCCCCCCCCCCCCCCCCCC.CC"
"CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC"
"CCCC.CCCCCCCCCCCCCCCCCCCCC.CCCC"
"CCCCC.CCCCCCCCCCCCCCCCCCC.CCCCC"
"CCCCCC.CCCCCCCCCCCCCCCCC.CCCCCC"
"CCCCCCC.CCCCCCCCCCCCCCC.CCCCCCC"
"CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCC"
"CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCC"
"CCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC"
"CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCC"
"CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCC"
"CCCCCCCCCCCCC.CCC.CCCCCCCCCCCCC"
"CCCCCCCCCCCCCC.C.CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC.C.CCCCCCCCCCCCCC"
"CCCCCCCCCCCCC.CCC.CCCCCCCCCCCCC"
"CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCC"
"CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCC"
"CCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC"
"CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCC"
"CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCC"
"CCCCCCC.CCCCCCCCCCCCCCC.CCCCCCC"
"CCCCCC.CCCCCCCCCCCCCCCCC.CCCCCC"
"CCCCC.CCCCCCCCCCCCCCCCCCC.CCCCC"
"CCCC.CCCCCCCCCCCCCCCCCCCCC.CCCC"
"CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC"
"CC.CCCCCCCCCCCCCCCCCCCCCCCCC.CC"
"C.CCCCCCCCCCCCCCCCCCCCCCCCCCC.C"
".CCCCCCCCCCCCCCCCCCCCCCCCCCCCC."
/* icon for state 6 */
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"E.............................E"
"E.............................E"
"E.............................E"
"E.............................E"
"E.............................E"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"

XPM
/* width height num_colors chars_per_pixel */
"15 105 5 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
/* icon for state 1 */
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAA.........AAA"
"AAAA.......AAAA"
"AAAAA.....AAAAA"
"AAAAAA...AAAAAA"
"AAAAAAA.AAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAA.AAAAAAAAAA"
"AAA..AAAAAAAAAA"
"AA...AAAAAAAAAA"
"A.............."
"..............."
"A.............."
"AA...AAAAAAAAAA"
"AAA..AAAAAAAAAA"
"AAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
/* icon for state 3 */
"AAAAAAA.AAAAAAA"
"AAAAAA...AAAAAA"
"AAAAA.....AAAAA"
"AAAA.......AAAA"
"AAA.........AAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
/* icon for state 4 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAA"
"AAAAAAAAAA..AAA"
"AAAAAAAAAA...AA"
"..............A"
"..............."
"..............A"
"AAAAAAAAAA...AA"
"AAAAAAAAAA..AAA"
"AAAAAAAAAA.AAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
/* icon for state 5 */
".CCCCCCCCCCCCC."
"C.CCCCCCCCCCC.C"
"CC.CCCCCCCCC.CC"
"CCC.CCCCCCC.CCC"
"CCCC.CCCCC.CCCC"
"CCCCC.CCC.CCCCC"
"CCCCCC.C.CCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCC.C.CCCCCC"
"CCCCC.CCC.CCCCC"
"CCCC.CCCCC.CCCC"
"CCC.CCCCCCC.CCC"
"CC.CCCCCCCCC.CC"
"C.CCCCCCCCCCC.C"
".CCCCCCCCCCCCC."
/* icon for state 6 */
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"..............."
"..............."
"..............."
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"

XPM
/* width height num_colors chars_per_pixel */
"7 49 5 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
/* icon for state 1 */
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"A.....A"
"AA...AA"
"AAA.AAA"
/* icon for state 2 */
"AAAAAAA"
"AA.AAAA"
"A..AAAA"
"......."
"A..AAAA"
"AA.AAAA"
"AAAAAAA"
/* icon for state 3 */
"AAA.AAA"
"AA...AA"
"A.....A"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
/* icon for state 4 */
"AAAAAAA"
"AAAA.AA"
"AAAA..A"
"......."
"AAAA..A"
"AAAA.AA"
"AAAAAAA"
/* icon for state 5 */
".CCCCC."
"C.CCC.C"
"CC.C.CC"
"CCC.CCC"
"CC.C.CC"
"C.CCC.C"
".CCCCC."
/* icon for state 6 */
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
/* icon for state 7 */
"EEEEEEE"
"EEE.EEE"
"EEE.EEE"
"E.....E"
"EEE.EEE"
"EEE.EEE"
"EEEEEEE"
Any pattern made of one of the photon states (1-4) will move at lightspeed without changing at all. Multiple streams of photons annihilate to make ANDNOT gates. State 5 is a block. States 6 and 7 are signal splitters, when a photon ray hits state 6, it turns into state 7 and produces photon rays in the other direction. 2 active splitters next to each other act like a laser.

Diode:

Code: Select all

x = 36, y = 18, rule = glogic
16.2E$15.E2G$16.2EC$10D8.C$17.EGE$17.EGE$18.E5$16.2E$15.E2G7.11B$16.
2EC$18.C$17.EGE$17.EGE$18.E!
NAND gate (guns at bottom are inputs):

Code: Select all

x = 30, y = 15, rule = glogic
19.3E.E.E.3E$19.E.E.E.E2.E$.E17.3E.3E2.E$EG$EG11.E$.E$4.EGE2.EGE$4.EG
E2.EGE$5.E4.E4$5.E.2E$5.E.E.E$5.E.E.E!
XOR:

Code: Select all

x = 16, y = 14, rule = glogic
3.2E$2.E2G9D$3.2E8.EGE$13.EGE$14.E2$.2E$E2G8.FE$.2E8.E3$5.EGE$5.EGE$
6.E!
Oscillator

Code: Select all

x = 13, y = 3, rule = glogic
.E10.E$EG10.F$.E10.E!
Splitter demo

Code: Select all

x = 94, y = 20, rule = glogic
20.E59.E$E19.F17.E41.F$6.E3.E$7.E.E$8.E$7.E.E$6.E3.E65.2E$75.E2G2D$
76.2E.EGE$79.EGE$E5.8D6.FE58.E$20.E45.2E$65.E2G10.FE$66.2E10.E3$93.E$
92.E$89.E.E$90.E!
Unoptimised crossover using the XOR design

Code: Select all

x = 33, y = 30, rule = glogic
9.E$8.EGE$5.E2.EGE3.2E$4.EF3.A3.E2G3D$7.2EA4.2E2.EGE$6.E2G8.FEGE$7.2E
8.E.E3.E$22.EGE$22.EGE$15.EF6.A$10.E12.A$6.4BGE9.2EA2.E$4.EGE2.EG9.E
2G3.FE$4.EGE2.EG3.FEGE3.2E$.2E2.E4.EC2.2EGE$E2G4.F3.C4.E$.2E4.E3.C$
10.EGE$10.EGE$11.E4.E$15.EGE$.2E12.EGE$E2G10.F2.A$.2E10.3EA10.E$13.E
2G11.FE$14.2E8.2E$23.E2G$24.2E4.EGE$30.EGE$31.E!
More optimised one with a different one (I made it before i knew of the xor crossover):

Code: Select all

x = 96, y = 24, rule = glogic
45.2E46.2E$44.E2G42.E3.E.E$45.2EC45.2E$44.EF.C45.E.E$29.2E15.EGE44.2E
$28.E2G14D.EGE$29.2E13.EG2E46.E$44.EGEF41.E3.E.E$33.2E4.E5.E47.3E$32.
E2G4DG7D46.E.E$33.2E4.A.E4.EGE$.E30.EGD4.AEGE3.EGE$E.E4.2E18.E5.CEG3E
AEGE4.E$3E3.E2GD17.F5.CEGE2G2.A$E.E4.2E20.E2.EG2E.2E.EG3DE$28.EGE.EGE
6.E$25.2E.EGE2.E$24.E2G2D5.2E$25.2E.EF3.E2G7.FE$2E5.2E20.E4.2EC6.E$E.
E3.E2GD21.F4.C$2E5.2E22.E3.EGE$E.E32.EGE$2E34.E!
D flip flop (inverted clock)

Code: Select all

x = 28, y = 29, rule = glogic
13.E$12.EGE$9.2E.EGE$8.E2G2D$9.2E$.2E$E2G8D13.3E$.2E3.E3.EGEF10.E.E$
5.2E3.EGE11.3E$4.E2G3D2E15.E$5.2E$2.E4.FE5.2E$10.4B2GE$8.EGE3.2E$8.EG
E$9.E2$3.E3.E2$2.EGE.EGE$2.EGE.EGE$3.E3.E2$5.3E2$.2E3.2E$.E.E.E$.E.E.
E$.2E3.2E!
SR latch (signals need to be long enough):

Code: Select all

x = 33, y = 25, rule = glogic
5.E$3F$F.F$3F$3.F3$13.E$12.EGE$12.EGE.2E$16.2GE$13.FE.2E13.2F$4.EGE4.
2E14.2E2.F$4.EGE3.E2G12.E.2GE2.F$5.E5.2E.EGE10.2E2.2F$14.EGE$15.E4$
13.E$18.2F$12.EGE3.F.F$12.EGE3.2F$13.E4.F.F!
The ,, oscillator" is actually a gun.
Have a good day!

BokaBB
777
I CAN APGSEARCH NOW!


Sure, I was a bad person, but I have changed myself.
I'd love to befriend anybody who's interested.
Have a good day!

BokaBB

User avatar
toroidalet
Posts: 1514
Joined: August 7th, 2016, 1:48 pm
Location: My computer
Contact:

Re: GLogic, a photon based logic rule with low need for timing

Post by toroidalet » June 13th, 2020, 5:08 pm

Whoa, BokaBB, you really don't need to quote that entire long post just to post a one-line remark.

kaarel, neither of your "crossovers" seem to work due to the "backfire" feature. I suggest making it so that blockers can block the outputs of a diagonally adjacent splitter. In this pattern, the west and south outputs would then be blocked:

Code: Select all

x = 2, y = 2, rule = glogic
.G$E!
Otherwise, it doesn't seem possible to make splitters compatible with (literally) p1 logic.
Any sufficiently advanced software is indistinguishable from malice.

User avatar
blah
Posts: 311
Joined: April 9th, 2016, 7:22 pm

Re: GLogic, a photon based logic rule with low need for timing

Post by blah » June 14th, 2020, 8:22 am

Adder calculating 1+255:

Code: Select all

#C 8-bit ripple carry adder. For operands, the presence of a photon stream is 1,
#C absence is 0. For carry-in (cin), carry-out (cout) and the sum, it's the
#C opposite.
x = 328, y = 84, rule = glogic
135.2E.E.E.2E.E$134.E3.E.E.E.E.E$135.E2.E.E.E.E.E$136.E.E.E.E.E.E$
134.2E3.2E.E.E.E5$19.E34.E34.E34.E69.E34.E34.E$18.E.E32.E.E32.E.E32.E
.E33.E33.E.E32.E.E32.E.E$158.E.E15$16.E34.E34.E34.E34.E34.E34.E34.E$
14.2EF32.2EF32.2EF32.2EF32.2EF32.2EF32.2EF32.2EF$13.EF18.2E2.E8.E.EF
18.2E2.E8.E.EF18.2E2.E8.E.EF18.2E2.E8.E.EF18.2E2.E8.E.EF18.2E2.E8.E.E
F18.2E2.E8.E.EF18.2E2.E8.E$18.EGE11.E2G11.FE5.EGE11.E2G11.FE5.EGE11.E
2G11.FE5.EGE11.E2G11.FE5.EGE11.E2G11.FE5.EGE11.E2G11.FE5.EGE11.E2G11.
FE5.EGE11.E2G11.FE$18.EGE12.2E18.EGE12.2E18.EGE12.2E18.EGE12.2E18.EGE
12.2E18.EGE12.2E18.EGE12.2E18.EGE12.2E$18.FE10.E.EF19.FE10.E.EF19.FE
10.E.EF19.FE10.E.EF19.FE10.E.EF19.FE10.E.EF19.FE10.E.EF19.FE10.E.EF$
30.F34.F34.F34.F34.F34.F34.F34.F$15.EGE2.2E12.EGE13.EGE2.2E12.EGE13.E
GE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.
2E12.EGE13.EGE2.2E12.EGE$15.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E
2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EG
E.E2G9.E2.EGE13.EGE.E2G9.E2.EGE$16.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.
E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E
3.2EF7.2GE2.E15.E3.2EF7.2GE2.E$22.E3.E3.2E25.E3.E3.2E25.E3.E3.2E25.E
3.E3.2E25.E3.E3.2E25.E3.E3.2E25.E3.E3.2E25.E3.E3.2E$23.F2.G2.F28.F2.G
2.F28.F2.G2.F28.F2.G2.F28.F2.G2.F28.F2.G2.F28.F2.G2.F28.F2.G2.F$17.EG
E3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.F
E2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.
EGE3.EF.G.FE2.EGE$17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.
EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.
E3.EGE17.EGE4.E.E.E3.EGE$18.E14.E19.E14.E19.E14.E19.E14.E19.E14.E19.E
14.E19.E14.E19.E14.E$13.E11.FEF10.E9.E11.FEF10.E9.E11.FEF10.E9.E11.FE
F10.E9.E11.FEF10.E9.E11.FEF10.E9.E11.FEF10.E9.E11.FEF10.E$12.E2GE5.2E
13.E2GE7.E2GE5.2E13.E2GE7.E2GE5.2E13.E2GE7.E2GE5.2E13.E2GE7.E2GE5.2E
13.E2GE7.E2GE5.2E13.E2GE7.E2GE5.2E13.E2GE7.E2GE5.2E13.E2GE$13.2E5.E2G
14.2E9.2E5.E2G14.2E9.2E5.E2G14.2E9.2E5.E2G14.2E9.2E5.E2G14.2E9.2E5.E
2G14.2E9.2E5.E2G14.2E9.2E5.E2G14.2E30.2E$3.2E16.2E6.E14.2E10.2E6.E14.
2E10.2E6.E14.2E10.2E6.E14.2E10.2E6.E14.2E10.2E6.E14.2E10.2E6.E14.2E
10.2E6.E14.2E18.E3.E$2.E2G19.E4.FE12.E2G13.E4.FE12.E2G13.E4.FE12.E2G
13.E4.FE12.E2G13.E4.FE12.E2G13.E4.FE12.E2G13.E4.FE12.E2G13.E4.FE12.E
2G19.E2.E$3.2E17.EGEGEGE15.2E11.EGEGEGE15.2E11.EGEGEGE15.2E11.EGEGEGE
15.2E11.EGEGEGE15.2E11.EGEGEGE15.2E11.EGEGEGE15.2E11.EGEGEGE15.2E18.E
3.E4.E2.E.E.3E$22.EGEGEGE5.E2.E19.EGEGEGE5.E2.E19.EGEGEGE5.E2.E19.EGE
GEGE5.E2.E19.EGEGEGE5.E2.E19.EGEGEGE5.E2.E19.EGEGEGE5.E2.E19.EGEGEGE
5.E2.E31.2E.E.E.E.E2.E$.2E20.3E.E30.3E.E30.3E.E30.3E.E30.3E.E30.3E.E
30.3E.E30.3E.E45.E3.2E2.E$E21.2EF9.4E19.2EF9.4E19.2EF9.4E19.2EF9.4E
19.2EF9.4E19.2EF9.4E19.2EF9.4E19.2EF9.4E$E20.EF18.2E2.E10.EF18.2E2.E
10.EF18.2E2.E10.EF18.2E2.E10.EF18.2E2.E10.EF18.2E2.E10.EF18.2E2.E10.E
F18.2E2.E$E3.E.2E20.EGE9.E2G3.FE15.EGE9.E2G3.FE15.EGE9.E2G3.FE15.EGE
9.E2G3.FE15.EGE9.E2G3.FE15.EGE9.E2G3.FE15.EGE9.E2G3.FE15.EGE9.E2G3.FE
$.2E.E.E.E17.E.EGE10.2E3.E14.E.EGE10.2E3.E14.E.EGE10.2E3.E14.E.EGE10.
2E3.E14.E.EGE10.2E3.E14.E.EGE10.2E3.E14.E.EGE10.2E3.E14.E.EGE10.2E3.E
$4.E.E.E17.FE.E8.E.EF19.FE.E8.E.EF19.FE.E8.E.EF19.FE.E8.E.EF19.FE.E8.
E.EF19.FE.E8.E.EF19.FE.E8.E.EF19.FE.E8.E.EF$38.F34.F34.F34.F34.F34.F
34.F34.F$23.EGE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.2E
12.EGE13.EGE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.2E12.EGE13.EGE2.2E12.EG
E$23.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G9.E
2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G9.E2.EGE13.EGE.E2G
9.E2.EGE$24.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF
7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF7.2GE2.E15.E3.2EF
7.2GE2.E$30.E3.E3.2E25.E3.E3.2E25.E3.E3.2E25.E3.E3.2E25.E3.E3.2E25.E
3.E3.2E25.E3.E3.2E25.E3.E3.2E$31.F2.G2.F28.F2.G2.F28.F2.G2.F28.F2.G2.
F28.F2.G2.F28.F2.G2.F28.F2.G2.F28.F2.G2.F$25.EGE3.EF.G.FE2.EGE17.EGE
3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE
2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE17.EGE3.EF.G.FE2.EGE$25.
EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE
17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.EGE17.EGE4.E.E.E3.
EGE$26.E14.E19.E14.E19.E14.E19.E14.E19.E14.E19.E14.E19.E14.E19.E14.E$
33.FEF32.FEF32.FEF32.FEF32.FEF32.FEF32.FEF32.FEF$21.EGE20.EGE9.EGE20.
EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE
$21.EGE20.EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE9.EGE20.EGE
9.EGE20.EGE9.EGE20.EGE$22.E22.E11.E22.E11.E22.E11.E22.E11.E22.E11.E
22.E11.E22.E11.E22.E7$70.E34.E34.E34.E34.E34.E34.E$32.EGEGE30.EGEGE
30.EGEGE30.EGEGE30.EGEGE30.EGEGE30.EGEGE30.EGEGE$32.EGEGE30.EGEGE30.E
GEGE30.EGEGE30.EGEGE30.EGEGE30.EGEGE30.EGEGE$33.E.E32.E.E32.E.E32.E.E
32.E.E32.E.E32.E.E32.E.E3$2E2.E3.3E.E.E4.2E3.E2.2E3.E109.E2.2E2.3E.2E
2.3E.2E2.2E3.2E$E.E.E3.E.E.E.E6.E.E.E3.E.E.E107.E.E.E.E.E3.E.E.E.E.E.
E.E.E.E$2E2.E3.3E.3E5.E2.E.E2.E2.E.E107.E.E.2E2.2E2.2E2.3E.E.E.E.E2.E
$E.E.E3.E.E.E.E4.E3.E.E.E3.E.E107.E.E.E3.E3.E.E.E.E.E.E.E.E3.E$2E2.3E
.E.E.E.E4.3E2.E2.3E2.E109.E2.E3.3E.E.E.E.E.E.E.2E2.2E!
The bulk of it is this crossover I made:

Code: Select all

#C Where the inputs are L and R, the outputs are L' and R', and "^" = XOR:
#C L' = L^R^L, R' = R^L^R
x = 22, y = 20, rule = glogic
3.E14.E$3.FE10.E.EF$15.F$EGE2.2E12.EGE$EGE.E2G9.E2.EGE$.E3.2EF7.2GE2.
E$7.E3.E3.2E$8.F2.G2.F$2.EGE3.EF.G.FE2.EGE$2.EGE4.E.E.E3.EGE$3.E14.E
7$9.EGEGE$9.EGEGE$10.E.E!
The outputs are inverted respective to the inputs, but this doesn't matter; inversion in this rule happens constantly, and to make circuitry effectively I think you just have to be able to keep track of it.
toroidalet wrote:
June 13th, 2020, 5:08 pm
kaarel, neither of your "crossovers" seem to work due to the "backfire" feature. I suggest making it so that blockers can block the outputs of a diagonally adjacent splitter. In this pattern, the west and south outputs would then be blocked:

Code: Select all

x = 2, y = 2, rule = glogic
.G$E!
Otherwise, it doesn't seem possible to make splitters compatible with (literally) p1 logic.
They both work. If the backfire is a problem, insert a diode. And personally, the backfire feature (?) to me is an interesting challenge and I'd rather the rule stay as it is.

EDIT: Smaller crossover. This one generates backfire.

Code: Select all

x = 18, y = 20, rule = glogic
3.E10.E$3.FE6.E.EF$11.F$EGE2.2E8.EGE$EGE.E2G5.E2.EGE$.E3.2EF3.2GE2.E$
7.E3.2E$8.FEF$2.EGE8.EGE$2.EGE8.EGE$3.E10.E7$7.EGEGE$7.EGEGE$8.E.E!
Last edited by blah on June 17th, 2020, 2:52 pm, edited 1 time in total.
succ

kaarel
Posts: 31
Joined: August 19th, 2019, 7:23 pm

Re: GLogic, a photon based logic rule with low need for timing

Post by kaarel » June 15th, 2020, 2:20 am

Here's a version without backfire (it wasn't a feature, but it was useful in some cases and saved states). I also added a gun state because the new system otherwise is a bit bulky.

Code: Select all

@RULE glogicNB

@TABLE

n_states: 12
neighborhood:vonNeumann
symmetries:none

##Glogic: A photon logic rule that aims to minimize need for timing. Version without reflectors backfiring
##Inspired by glider logic that makes many life-like rules turing-complete
##by Kaarel
#Quite reduced from the original idea
#Developers remember: dlur

##States:
#0 - empty
#1-4 - photons (down, left, up, right)
#5 - block
#6 - inactive splitter
#7-10 - active splitters where signals come from d,l,u,r
#11 - laser/gun

var a={0,1,2,3,4,5,6,7,8,9,10,11} # any state
var a1=a
var a2=a
var a3=a
var a4=a

var d = {1,7,8,10,11} # Stuff that sends signals down
var d1=d
var d2=d
var d3=d
var d4=d
var nd = {0,2,3,4,5,6,9} # Stuff that doesn't send signals down
var nd1=nd
var nd2=nd
var nd3=nd
var nd4=nd

var l = {2,7,8,9,11} # Stuff that sends signals left
var l1=l
var l2=l
var l3=l
var l4=l
var nl = {0,1,3,4,5,6,10} # Stuff that doesn't send signals left
var nl1=nl
var nl2=nl
var nl3=nl
var nl4=nl

var u = {3,8,9,10,11} # Stuff that sends signals up
var u1=u
var u2=u
var u3=u
var u4=u
var nu = {0,1,2,4,5,6,7} # Stuff that doesn't send signals up
var nu1=nu
var nu2=nu
var nu3=nu
var nu4=nu

var r = {4,7,9,10,11} # Stuff that sends signals right
var r1=r
var r2=r
var r3=r
var r4=r
var nr = {0,1,2,3,5,6,8} # Stuff that doesn't send signals right
var nr1=nr
var nr2=nr
var nr3=nr
var nr4=nr



0,d1,nl2,nu3,nr4,1 # D signal going forward
1,nd1,a2,a3,a4,0   # D signal backend

0,nd1,l2,nu3,nr4,2 # L signal going forward
2,a1,nl2,a3,a4,0   # L signal backend

0,nd1,nl2,u3,nr4,3 # U signal going forward
3,a1,a2,nu3,a4,0   # U signal backend

0,nd1,nl2,nu3,r4,4 # R signal going forward
4,a1,a2,a3,nr4,0   # R signal backend


1,a1,l2,a3,a4,0 # D signal annihil by L signal
1,a1,a2,a3,r4,0 # D signal annihil by R signal

2,d1,a2,a3,a4,0 # L signal annihil by D signal
2,a1,a2,u3,a4,0 # L signal annihil by U signal

3,a1,l2,a3,a4,0 # U signal annihil by L signal
3,a1,a2,a3,r4,0 # U signal annihil by R signal

4,d1,a2,a3,a4,0 # R signal annihil by D signal
4,a1,a2,u3,a4,0 # R signal annihil by U signal


6,d1,nl2,nu3,nr4,7 # Splitter activate by D
6,nd1,l2,nu3,nr4,8 # Splitter activate by L
6,nd1,nl2,u3,nr4,9 # Splitter activate by U
6,nd1,nl2,nu3,r4,10 # Splitter activate by R

7,nd1,a2,a3,a4,6 # dSplitter deactivate
8,a1,nl2,a3,a4,6 # lSplitter deactivate
9,a1,a2,nu3,a4,6 # uSplitter deactivate
10,a1,a2,a3,nr4,6 # rSplitter deactivate

@COLORS

0 0 0 0
1 255 255 255
2 255 255 255
3 255 255 255
4 255 255 255
5 255 0 0
6 0 255 0
7 255 255 0
8 255 255 0
9 255 255 0
10 255 255 0
11 0 255 255

@ICONS

XPM
/* width height num_colors chars_per_pixel */
"31 341 6 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
"F c #00FFFF"
/* icon for state 1 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAA.....AA.....AA.....AAAAAA"
"AAAAAAA.....A.....A.....AAAAAAA"
"AAAAAAAA...............AAAAAAAA"
"AAAAAAAAA.............AAAAAAAAA"
"AAAAAAAAAA...........AAAAAAAAAA"
"AAAAAAAAAAA.........AAAAAAAAAAA"
"AAAAAAAAAAAA.......AAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAAA...AAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA.AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAA..AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAA...AAAAAAAAAAAAAAAAAAAA"
"AAAAAAA....AAAAAAAAAAAAAAAAAAAA"
"AAAAAA.....AAAAAAAAAAAAAAAAAAAA"
"AAAAA.....AAAAAAAAAAAAAAAAAAAAA"
"AAAA.....AAAAAAAAAAAAAAAAAAAAAA"
"AAA...........................A"
"AA............................A"
"A.............................A"
"AA............................A"
"AAA...........................A"
"AAAA.....AAAAAAAAAAAAAAAAAAAAAA"
"AAAAA.....AAAAAAAAAAAAAAAAAAAAA"
"AAAAAA.....AAAAAAAAAAAAAAAAAAAA"
"AAAAAAA....AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAA...AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAA..AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 3 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA.AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAA...AAAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAA.......AAAAAAAAAAAA"
"AAAAAAAAAAA.........AAAAAAAAAAA"
"AAAAAAAAAA...........AAAAAAAAAA"
"AAAAAAAAA.............AAAAAAAAA"
"AAAAAAAA...............AAAAAAAA"
"AAAAAAA.....A.....A.....AAAAAAA"
"AAAAAA.....AA.....AA.....AAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAA.....AAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 4 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA..AAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA...AAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA....AAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.....AAAAAA"
"AAAAAAAAAAAAAAAAAAAAA.....AAAAA"
"AAAAAAAAAAAAAAAAAAAAAA.....AAAA"
"A...........................AAA"
"A............................AA"
"A.............................A"
"A............................AA"
"A...........................AAA"
"AAAAAAAAAAAAAAAAAAAAAA.....AAAA"
"AAAAAAAAAAAAAAAAAAAAA.....AAAAA"
"AAAAAAAAAAAAAAAAAAAA.....AAAAAA"
"AAAAAAAAAAAAAAAAAAAA....AAAAAAA"
"AAAAAAAAAAAAAAAAAAAA...AAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA..AAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 5 */
".CCCCCCCCCCCCCCCCCCCCCCCCCCCCC."
"C.CCCCCCCCCCCCCCCCCCCCCCCCCCC.C"
"CC.CCCCCCCCCCCCCCCCCCCCCCCCC.CC"
"CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC"
"CCCC.CCCCCCCCCCCCCCCCCCCCC.CCCC"
"CCCCC.CCCCCCCCCCCCCCCCCCC.CCCCC"
"CCCCCC.CCCCCCCCCCCCCCCCC.CCCCCC"
"CCCCCCC.CCCCCCCCCCCCCCC.CCCCCCC"
"CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCC"
"CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCC"
"CCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC"
"CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCC"
"CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCC"
"CCCCCCCCCCCCC.CCC.CCCCCCCCCCCCC"
"CCCCCCCCCCCCCC.C.CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC.C.CCCCCCCCCCCCCC"
"CCCCCCCCCCCCC.CCC.CCCCCCCCCCCCC"
"CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCC"
"CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCC"
"CCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC"
"CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCC"
"CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCC"
"CCCCCCC.CCCCCCCCCCCCCCC.CCCCCCC"
"CCCCCC.CCCCCCCCCCCCCCCCC.CCCCCC"
"CCCCC.CCCCCCCCCCCCCCCCCCC.CCCCC"
"CCCC.CCCCCCCCCCCCCCCCCCCCC.CCCC"
"CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC"
"CC.CCCCCCCCCCCCCCCCCCCCCCCCC.CC"
"C.CCCCCCCCCCCCCCCCCCCCCCCCCCC.C"
".CCCCCCCCCCCCCCCCCCCCCCCCCCCCC."
/* icon for state 6 */
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEE.EEEEEEE.....EEEEEEE.EEEEE"
"EEEE..EEEEEEE.....EEEEEEE..EEEE"
"EEE.........................EEE"
"EE...........................EE"
"E.............................E"
"EE...........................EE"
"EEE.........................EEE"
"EEEE..EEEEEEE.....EEEEEEE..EEEE"
"EEEEE.EEEEEEE.....EEEEEEE.EEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEE.........EEEEEEEEEEE"
"EEEEEEEEEEEE.......EEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEEE...EEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE.EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
/* icon for state 8 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE.EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEE...EEEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEE.......EEEEEEEEEEEE"
"EEEEEEEEEEE.........EEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEE.EEEEEEE.....EEEEEEEEEEEEE"
"EEEE..EEEEEEE.....EEEEEEEEEEEEE"
"EEE..........................EE"
"EE...........................EE"
"E............................EE"
"EE...........................EE"
"EEE..........................EE"
"EEEE..EEEEEEE.....EEEEEEEEEEEEE"
"EEEEE.EEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEE.........EEEEEEEEEEE"
"EEEEEEEEEEEE.......EEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEEE...EEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE.EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
/* icon for state 9 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE.EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEE...EEEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEE.......EEEEEEEEEEEE"
"EEEEEEEEEEE.........EEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEE.EEEEEEE.....EEEEEEE.EEEEE"
"EEEE..EEEEEEE.....EEEEEEE..EEEE"
"EEE.........................EEE"
"EE...........................EE"
"E.............................E"
"EE...........................EE"
"EEE.........................EEE"
"EEEE..EEEEEEE.....EEEEEEE..EEEE"
"EEEEE.EEEEEEE.....EEEEEEE.EEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
/* icon for state 10 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE.EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEE...EEEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEE.......EEEEEEEEEEEE"
"EEEEEEEEEEE.........EEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEE.EEEEE"
"EEEEEEEEEEEEE.....EEEEEEE..EEEE"
"EE..........................EEE"
"EE...........................EE"
"EE............................E"
"EE...........................EE"
"EE..........................EEE"
"EEEEEEEEEEEEE.....EEEEEEE..EEEE"
"EEEEEEEEEEEEE.....EEEEEEE.EEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEE.........EEEEEEEEEEE"
"EEEEEEEEEEEE.......EEEEEEEEEEEE"
"EEEEEEEEEEEEE.....EEEEEEEEEEEEE"
"EEEEEEEEEEEEEE...EEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE.EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
/* icon for state 11 */
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFF.FFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFF...FFFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFF.......FFFFFFFFFFFF"
"FFFFFFFFFFF.........FFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFF.FFFFFFF.....FFFFFFF.FFFFF"
"FFFF..FFFFFFF.....FFFFFFF..FFFF"
"FFF.........................FFF"
"FF...........................FF"
"F.............................F"
"FF...........................FF"
"FFF.........................FFF"
"FFFF..FFFFFFF.....FFFFFFF..FFFF"
"FFFFF.FFFFFFF.....FFFFFFF.FFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFF.........FFFFFFFFFFF"
"FFFFFFFFFFFF.......FFFFFFFFFFFF"
"FFFFFFFFFFFFF.....FFFFFFFFFFFFF"
"FFFFFFFFFFFFFF...FFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFF.FFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"

XPM
/* width height num_colors chars_per_pixel */
"15 165 6 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
"F c #00FFFF"
/* icon for state 1 */
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAA.........AAA"
"AAAA.......AAAA"
"AAAAA.....AAAAA"
"AAAAAA...AAAAAA"
"AAAAAAA.AAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAA.AAAAAAAAAA"
"AAA..AAAAAAAAAA"
"AA...AAAAAAAAAA"
"A.............."
"..............."
"A.............."
"AA...AAAAAAAAAA"
"AAA..AAAAAAAAAA"
"AAAA.AAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
/* icon for state 3 */
"AAAAAAA.AAAAAAA"
"AAAAAA...AAAAAA"
"AAAAA.....AAAAA"
"AAAA.......AAAA"
"AAA.........AAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
"AAAAAA...AAAAAA"
/* icon for state 4 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAA.AAAA"
"AAAAAAAAAA..AAA"
"AAAAAAAAAA...AA"
"..............A"
"..............."
"..............A"
"AAAAAAAAAA...AA"
"AAAAAAAAAA..AAA"
"AAAAAAAAAA.AAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
/* icon for state 5 */
".CCCCCCCCCCCCC."
"C.CCCCCCCCCCC.C"
"CC.CCCCCCCCC.CC"
"CCC.CCCCCCC.CCC"
"CCCC.CCCCC.CCCC"
"CCCCC.CCC.CCCCC"
"CCCCCC.C.CCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCC.C.CCCCCC"
"CCCCC.CCC.CCCCC"
"CCCC.CCCCC.CCCC"
"CCC.CCCCCCC.CCC"
"CC.CCCCCCCCC.CC"
"C.CCCCCCCCCCC.C"
".CCCCCCCCCCCCC."
/* icon for state 6 */
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEEEEEEEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EE.EEE...EEE.EE"
"E.............E"
"..............."
"E.............E"
"EE.EEE...EEE.EE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEE.....EEEEE"
"EEEEEE...EEEEEE"
"EEEEEEE.EEEEEEE"
/* icon for state 8 */
"EEEEEEE.EEEEEEE"
"EEEEEE...EEEEEE"
"EEEEE.....EEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EE.EEE...EEEEEE"
"E.............E"
"..............E"
"E.............E"
"EE.EEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEE.....EEEEE"
"EEEEEE...EEEEEE"
"EEEEEEE.EEEEEEE"
/* icon for state 9 */
"EEEEEEE.EEEEEEE"
"EEEEEE...EEEEEE"
"EEEEE.....EEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EE.EEE...EEE.EE"
"E.............E"
"..............."
"E.............E"
"EE.EEE...EEE.EE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEEEEEEEEEEE"
/* icon for state 10 */
"EEEEEEE.EEEEEEE"
"EEEEEE...EEEEEE"
"EEEEE.....EEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEEE...EEE.EE"
"E.............E"
"E.............."
"E.............E"
"EEEEEE...EEE.EE"
"EEEEEE...EEEEEE"
"EEEEEE...EEEEEE"
"EEEEE.....EEEEE"
"EEEEEE...EEEEEE"
"EEEEEEE.EEEEEEE"
/* icon for state 11 */
"FFFFFFF.FFFFFFF"
"FFFFFF...FFFFFF"
"FFFFF.....FFFFF"
"FFFFFF...FFFFFF"
"FFFFFF...FFFFFF"
"FF.FFF...FFF.FF"
"F.............F"
"..............."
"F.............F"
"FF.FFF...FFF.FF"
"FFFFFF...FFFFFF"
"FFFFFF...FFFFFF"
"FFFFF.....FFFFF"
"FFFFFF...FFFFFF"
"FFFFFFF.FFFFFFF"

XPM
/* width height num_colors chars_per_pixel */
"7 77 6 1"
/* colors */
"A c #FFFFFF"
". c #000000"
"C c #FF0000"
"D c #00FF00"
"E c #FFFF00"
"F c #00FFFF"
/* icon for state 1 */
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"A.....A"
"AA...AA"
"AAA.AAA"
/* icon for state 2 */
"AAAAAAA"
"AA.AAAA"
"A..AAAA"
"......."
"A..AAAA"
"AA.AAAA"
"AAAAAAA"
/* icon for state 3 */
"AAA.AAA"
"AA...AA"
"A.....A"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
"AAA.AAA"
/* icon for state 4 */
"AAAAAAA"
"AAAA.AA"
"AAAA..A"
"......."
"AAAA..A"
"AAAA.AA"
"AAAAAAA"
/* icon for state 5 */
".CCCCC."
"C.CCC.C"
"CC.C.CC"
"CCC.CCC"
"CC.C.CC"
"C.CCC.C"
".CCCCC."
/* icon for state 6 */
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
"DDDDDDD"
/* icon for state 7 */
"EEEEEEE"
"EEE.EEE"
"E.E.E.E"
"......."
"E.E.E.E"
"EE...EE"
"EEE.EEE"
/* icon for state 8 */
"EEE.EEE"
"EE...EE"
"E.E.EEE"
"......E"
"E.E.EEE"
"EE...EE"
"EEE.EEE"
/* icon for state 9 */
"EEE.EEE"
"EE...EE"
"E.E.E.E"
"......."
"E.E.E.E"
"EEE.EEE"
"EEEEEEE"
/* icon for state 10 */
"EEE.EEE"
"EE...EE"
"EEE.E.E"
"E......"
"EEE.E.E"
"EE...EE"
"EEE.EEE"
/* icon for state 11 */
"FFF.FFF"
"FF...FF"
"F.F.F.F"
"......."
"F.F.F.F"
"FF...FF"
"FFF.FFF"
Demo:

Code: Select all

x = 40, y = 26, rule = glogicNB
.E$9.A2$9.A$9.A4$27.E.E$26.EF.FE$EF7.FE27.E$9.E16.EF.F8.KE$27.E.E8.E
9$.E$14.2E$13.EHIE$13.EGJ9.E$14.2E!
I maybe should've made gun/laser state 7 for compatibility but its 11:23 pm so not today.

Code: Select all

x = 17, y = -54, z = sdsds, x="'\n ,.b3s, :?:dfsf, rule = B33-33-/s2cekain32-3-232cekain322-323-1-ce6-cekain
b2o$2o$bo999999b!

Post Reply