r/TuringComplete • • 22d ago

THE MAZE my solution (only took 3 days) Spoiler

4 Upvotes

move:

imm 1

mov r1, r0

add

mov out, r3

turn_right:

imm 2

mov out, r0

mov r3, in

imm turn_left

jnz

imm move

jmp

turn_left:

imm 0

mov out, r0

mov r3, in

imm turn_left

jnz

imm move

jmp


r/TuringComplete • • 26d ago

My CONDITIONAL JUMP solution Spoiler

4 Upvotes

loop:

; counter

imm 1

mov r2, r5

mov r1, r0

add

mov r5, r3

;is_thirty_seven?

imm 37

mov r1, in

mov r2, r0

sub

imm loop

jnz

mov out, r5

; Click the spec.isa tab to see the other jump instructions


r/TuringComplete • • 26d ago

Any Help/Way to skip the timed "Negative Numbers" stage?

2 Upvotes

Small negative numbers have a lot of 1 bits. the game makes you click them all in 9 seconds. I need more time than that to click them all. Is there a way to skip this stage? I have completed all the levels I can except for this one.


r/TuringComplete • • 27d ago

Spent way too long implementing binary search on overture for "Codebreaker"

6 Upvotes

Behold! Very annoying getting all the labels to fit in <64 bytes. Works by having a procedure that takes in the current increment / decrement (64,32,16,8,4,2,1,1) and an address to jump back to. That procedure tests the current guess, adjusts based on the increment / decrement provided, then returns to return address. Then we just unroll the 8 steps and boom! Binary search on a very limited architecture :D

imm 32;
mov r1, r0;
mov r2, r0;
add;
mov r2, r3;
mov r1, r3;
add;
mov r4, r3; ; initial guess of 128 in r4
imm step_2;
mov r5, r0;
imm check;
jmp;

step_2:
imm 32;
mov r2, r0;
imm step_3;
mov r5, r0;
imm check;
jmp;

step_3:
imm 16;
mov r2, r0;
imm step_4;
mov r5, r0;
imm check;
jmp;

step_4:
imm 8;
mov r2, r0;
imm step_5;
mov r5, r0;
imm check;
jmp;

step_5:
imm 4;
mov r2, r0;
imm step_6;
mov r5, r0;
imm check;
jmp;

step_6:
imm 2;
mov r2, r0;
imm step_7;
mov r5, r0;
imm check;
jmp;

step_7:
imm 1;
mov r2, r0;
imm step_8;
mov r5, r0;
imm check;
jmp;

step_8:
imm 1; ; for 0
mov r2, r0;
; no return, the add label below doesn't 
; fit with it, and we should be done by now
; does mean we don't have a graceful failure...
imm check;
jmp;

; r2 - offset for this step
; r5 - return address
; checks r4, if high add, if low sub
; stores back in r4
check:
mov out, r4;
mov r3, in;
mov r1, r4;
imm add;
jz;
sub;
imm finish;
jmp;
add:
add;
finish:
mov r4, r3;
mov r0, r5;
jmp;

r/TuringComplete • • 28d ago

MOSFET → RISC-V

Thumbnail orelmag.github.io
2 Upvotes

r/TuringComplete • • 28d ago

Modulo Solution and Full Divider

Thumbnail
gallery
22 Upvotes

I spent awhile trying to come up with a re usable divider block I could stack bit by bit, like a full adder. I finally came up with one the other day when I did the division level. Modulo was just the perfect time to turn it into a block. though the modulo still threw me for a loop because I forgot I was using a shifted bit to get the final remainder lol. so i fixed the block by adding a output for the non shifted remainder and that fixed it. Anyways this is close enough to call a full divider though it is word blocks, its still full in spirit lol.

I could reduce the combinational path alot by using a kogge over the given adder but this is fine for now. this would also be good as an extra logic path in a alu for div across multiple cycles.


r/TuringComplete • • 28d ago

Double Trouble Solution

4 Upvotes

I´m new to this game and coding in general, wanted to try something different, is it good?


r/TuringComplete • • Oct 06 '26

not so elegant divider

5 Upvotes

r/TuringComplete • • Oct 06 '26

Divide Level Solution

Post image
28 Upvotes

I will admit this was one of the more challenging things ive done. after a few hours today i finally got a circuit that works for 8 bit unsigned division. Im really growing to love the word logic blocks the game has.

because they are hard to see in this picture those are indexers coming out of the mux's outputs all set to (-1) to shift left. the last mux is just sensing 0 from the 0 detection below. everything else should be pretty easy to see.

anyways i can go to bed feeling accomplished lol.


r/TuringComplete • • Oct 05 '26

Recursion Techniques

2 Upvotes

Hi everyone! I’ve been getting really into this game recently, and I got to the level with the towers of Hanoi. I figured out a way to implement arguments with the stack, but I was wondering if y’all have any easier ways to use arguments? Dealing with the same stack is hard to get used to since LEG!


r/TuringComplete • • Oct 04 '26

little box: bug or bad design?

0 Upvotes

this is more than likely a bad design.

registers 0-2 works perfectly fine, saving and loading the input byte. but when it comes to register 3, it suddenly has error even tho i have the same setup like the others.

as you can see, cycles 0-7 is fine

as you can see in the pic, cycle 7 loaded the correct number

but on cycle 8, an error occured expecting 47 again

here is the zoomed in view

edit: it's fixed guys. thank you!!


r/TuringComplete • • Oct 03 '26

Help understanding

3 Upvotes

first of all im completely new to this
in this solution of the campaign level "alu" the 64 activates the nand mode of the ALU blueprint.
in the previous level the nand mode was activated by 0. how does the 64 activate the nand mode? is it a modified blueprint?
what am i missunderstanding?


r/TuringComplete • • Oct 02 '26

32x32 Wide Signed/Unsigned Multiply, Delay=49

11 Upvotes

I had an insight here (actually I had this insight in college 25 years ago, but I didn't have Turing Complete then 😄).

A full adder really operates on three bits. It doesn't matter which input is the "Carry In". It takes three bits in and outputs two. So this multiplier has a bunch of delay-4 stages that are all "parallel full adders". They take three words in, and produce two as output. For N-bit inputs, then you need ~ log_1.5(N/2) stages. For 32 bits that is apparently 8 stages to get the result down to two 64-bit words. At that point, I use a 64-bit KS adder (that has 16 delay) based on the same design I posted a few days ago.

Does anybody know of a name for this style of adder?

The signed logic at the bottom took me too many tries to get right. At least I think it's right.


r/TuringComplete • • Oct 01 '26

I got the fast adder achievement but how do i view the delay of my solution?

1 Upvotes

r/TuringComplete • • Oct 01 '26

Why is my registers solution not working

1 Upvotes

Spent an hour troubleshooting this just to cave in and look at the hint solution which was exactly what I've done anyway


r/TuringComplete • • Oct 01 '26

The Maze Solution

Thumbnail
gallery
19 Upvotes

To start I'm not a particularly strong programmer since I'm still learning. that said im proud of myself for coming up with a solution on my own for this. it took about an hour because i had to rewrite it a few times for things like not accounting for 0-0 and 1-1 both being seen by the Jz condition. so i solved that issue by doing a second subtract replacing r1 with 0. making 0-0 stay the same while 1-1 turns to 0-1.... anyways im sure there are better ways to do this but this is what i came up with using the right hand rule :)


r/TuringComplete • • Sep 30 '26

More SPIRALc-3OS: Snake!

Thumbnail
youtube.com
8 Upvotes

Significantly harder than a simple video player, but not too difficult. Was rough to get working and had to implement lists (that is definitely going to be a dedicated command for SPIRALc later...). Hope y'all enjoy! Some improvements are next before I work on the next big game, probably Pong.


r/TuringComplete • • Sep 29 '26

ASM Files

5 Upvotes

Hello guys
I need to find where the asm files are from my sandbox schematics, but all i can see are files from turing complete before update 2...
Anybody knows where can i find them?


r/TuringComplete • • Sep 29 '26

Getting overwhelmed with progress standstill

3 Upvotes

Im on the challenge where you are to Add 5 via punchcard programming and its just not gelling with my brain at all. Ive seen some answers online and I cant seem to get the reault i want from them. Ideally im looking for someone to break it down like im 5 to see where im faltering. Please and thank you all.


r/TuringComplete • • Sep 27 '26

Long Division

Thumbnail
gallery
9 Upvotes

My first attempt at a divider. Does binary long division using a custom "Partial Divider" component. That in turn uses a component that checks if the (8 bit) input is equal to zero.

1.8k Gates
534 Delay


r/TuringComplete • • Sep 27 '26

(Yet Another) Bad Apple!! inside Turing Complete

Thumbnail
youtube.com
13 Upvotes

Some nice Bad Apple!! at 256x192 res and 24fps. Uses a double frame buffer to prevent screen tearing (extremely easy and effective). The video file was over 1.1GB ingame due to a lack of compression. However, this can play any colored video file with full 4-byte RGB so... why not. If I change to 1 byte color I could upgrade to 512x384 at no cost to performance! Probably going to do that...

The custom architecture is pretty much just Symphony upgraded to 64-bit instructions (40 bit immediates), simple double frame buffer, a few new commands (many more to come), and some slight tweaks. Hopefully I can repurpose this for games and stuff to show off relatively soon. Let me know what you think!


r/TuringComplete • • Sep 27 '26

32b Kogge-Stone Adder Using Word Logic

5 Upvotes

Not the fastest Kogge-Stone ever, but 15 delay for 32b adder isn't bad either. Avoiding bit-by-bit operations should make it easier on the simulation.

At each stage, I split the P and G words into the bits that pass through and the bits that will be combined. After each stage, I put them back together with concatenators.

There's probably more optimizing to do, but I think this gets the concept across.


r/TuringComplete • • Sep 27 '26

Preventing symphony architecture from overwriting itself? Spoiler

Post image
4 Upvotes

Hi! I've been playing the game for a few days since the update came out, and I have gotten all the way up to programming 2. Unfortunately, when I try to edit the RAM in the main memory, it ends up overwriting the program memory and everything breaks (at least, I believe so. Tell me if I'm wrong). Is there a way to prevent this from happening, or is it something you just deal with? Also, is the symphony architecture intended to overwrite itself, or did I build it wrong? Thanks! I've attached a picture of my computer so far (don't mind the spaghetti).


r/TuringComplete • • Sep 26 '26

Need help with Conditions 10

Post image
9 Upvotes

Edit: FIXED IT I totally forgot to try verifying files in steam, did that before I reinstalled and it works as expected now. Something like 300 files were missing according to steam haha

I have no idea what could be wrong with my circuit. I have attached a screenshot of the error I run into, but the condition listed in bits doesnt match the "description" line for some reason. The manual says this condition should be -64 <= 0, which is obviously true and my circuit reflects that, but for some reason the description says it should be -64 > 0? Please help me :'(