Discuss Scratch

ezfox17
Scratcher
100+ posts

WWEJ3 is underrated


Painfully Complicated UCC specifications:
Corpus cell count: 3,000,000+
Corpus bounding rectangle: Big
Replication time: A few truly ridiculous amounts of time
== PROGRAM TAPE==
Length of tape: ???
Tape instruction count: ???
Bits per instruction: 5+
Instruction set: In another post
== DATA TAPE ==
Length of tape: Extremely long
Tape instruction count: A lot
Bits per instruction: 3+
=== DATA TAPE INSTRUCTION SET ===
(I changed to a less naive approach just in time to avoid a computer-crashing replicator)
111: No operation
110: Construct a normal state
101: Construct a special state
100: Skip over this cell
011: RLE Construct normal states
010: RLE Skip over cells
001: End of row
000: Halt
RLE instruction usage:
[codon][n zeroes]1[an n-bit binary number]
== SPECIAL NOTE ==
Unlike most of my replicators, a full cycle of this one has never been achieved. I have estimated that replication will take several quadrillion generations, putting it safely beyond even a hashlife algorithm’s ability to simulate a full cycle. However, there is also the Fibonacci calculator, which doesn't halt.

Last edited by ezfox17 (Aug. 19, 2018 15:11:02)


I am Ahulika the Creator.
apgfun
ezfox17
Scratcher
100+ posts

WWEJ3 is underrated

The instruction set is kinda complicated:
00000				`halt instruction
00001 `no operation
00010 `conditional jump backwards
00011 `conditional jump forwards
001000 `move data arm D left
001001 `move data arm D right
001010 `move data arm E left
001011 `move data arm E right
001100 `change signal type by 2
001101 `change signal type by 1
001110 `inject signal
001111 `change signal type by 4
0100000 `clear register R0
0100001 `clear register R1
0100010 `clear register R2
0100011 `clear register R3
0100100 `clear register R4
0100101 `clear register R5
0100110 `clear register R6
0100111 `clear register R7
01011 `subtract/compare R0 and R1
011001 `shift right R0 and place final bit in G0
01101 `TESTDEC R0 and place result in G0
0111001 `transfer R1 to R0 and add
0111010 `transfer R2 to R0 and add
0111011 `transfer R3 to R0 and add
0111100 `transfer R4 to R0 and add
0111101 `transfer R5 to R0 and add
0111110 `transfer R6 to R0 and add
0111111 `transfer R7 to R0 and add
10000 `write G0 to data tape D
10001 `write G0 to data tape E
10010 `read G0 from data tape D
10011 `read G0 from data tape E
10101 `add G0 to R0
10110000 `close gate G0
10110001 `close gate G1
10110010 `close gate G2
10110011 `close gate G3
10110100 `close gate G4
10110101 `close gate G5
10110110 `close gate G6
10110111 `close gate G7
10111000 `open gate G0
10111001 `open gate G1
10111010 `open gate G2
10111011 `open gate G3
10111100 `open gate G4
10111101 `open gate G5
10111110 `open gate G6
10111111 `open gate G7
1100000 `invert gate G0
1100001 `invert gate G1
1100010 `invert gate G2
1100011 `invert gate G3
1100100 `invert gate G4
1100101 `invert gate G5
1100110 `invert gate G6
1100111 `invert gate G7
11010001 `copy G0 to G1
11010010 `copy G0 to G2
11010011 `copy G0 to G3
11010100 `copy G0 to G4
11010101 `copy G0 to G5
11010110 `copy G0 to G6
11010111 `copy G0 to G7
11011001 `copy G0 to G1 and invert
11011010 `copy G0 to G2 and invert
11011011 `copy G0 to G3 and invert
11011100 `copy G0 to G4 and invert
11011101 `copy G0 to G5 and invert
11011110 `copy G0 to G6 and invert
11011111 `copy G0 to G7 and invert
1110001 `copy G1 to G0
1110010 `copy G2 to G0
1110011 `copy G3 to G0
1110100 `copy G4 to G0
1110101 `copy G5 to G0
1110110 `copy G6 to G0
1110111 `copy G7 to G0
1111001 `copy R0 to R1 and add
1111010 `copy R0 to R2 and add
1111011 `copy R0 to R3 and add
1111100 `copy R0 to R4 and add
1111101 `copy R0 to R5 and add
1111110 `copy R0 to R6 and add
1111111 `copy R0 to R7 and add
List of signal types:
0: Changes the tiny 0 to a tiny 1. No signal injected.
1: Construct normal. “Construct” in WWE2, “Write” in WWEJ3.
2: Construct special. “Freeze” in WWE2, “Isolate” in WWEJ3.
3: Retract. “Minor retract” in WWE2, “Move backwards” in WWEJ3.
4: Extend. “Extend” in WWE2, “Move forwards” in WWEJ3.
5: Turn right. “Turn right” in WWE2 and WWEJ3.
6: Turn left. “Turn left” in WWE2 and WWEJ3.
7: Inject signal. ”Inject signal” in WWE2 and WWEJ3. Arm does not move, but can be useful for injecting the sheathing or activation signals.
Note: Sheathing does not exist in WWEJ3. Therefore, only one signal injection is necessary.

Conditional jump is used like this:
[instruction][n zeroes]1[an n-bit binary number]

Last edited by ezfox17 (Aug. 13, 2018 12:57:37)


I am Ahulika the Creator.
apgfun
ezfox17
Scratcher
100+ posts

WWEJ3 is underrated

I've put this project on hold because everything seems to be working, but the conditional jump fails to work. It behaves differently, but is doesn't seem to work even in the WWE2 version.

I am Ahulika the Creator.
apgfun

Powered by DjangoBB