Created
June 23, 2021 11:04
-
-
Save ciaranchen/4fa198d48745bc27d723a4b3dbc35832 to your computer and use it in GitHub Desktop.
TIS-100 Code (1)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
MOV ANY, DOWN | |
@1 | |
MOV RIGHT, DOWN | |
@2 | |
MOV ANY,LEFT | |
@3 | |
MOV UP, DOWN | |
@4 | |
MOV UP,DOWN | |
@5 | |
MOV UP, DOWN | |
@6 | |
MOV UP,RIGHT | |
@7 | |
MOV LEFT,DOWN |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
ADD ACC | |
MOV ACC, DOWN | |
@2 | |
@3 | |
@4 | |
MOV UP, DOWN | |
@5 | |
@6 | |
@7 | |
MOV UP,RIGHT | |
@8 | |
MOV LEFT, DOWN | |
@9 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, DOWN | |
MOV UP, ACC | |
ADD ACC | |
MOV ACC, DOWN | |
@2 | |
@3 | |
@4 | |
MOV UP, ACC | |
ADD ACC | |
MOV ACC, DOWN | |
MOV UP, DOWN | |
@5 | |
@6 | |
@7 | |
MOV UP,RIGHT | |
@8 | |
MOV LEFT, DOWN | |
@9 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
SUB ACC | |
MOV UP, ACC | |
SUB RIGHT | |
MOV ACC, DOWN | |
@2 | |
MOV UP, LEFT | |
@3 | |
@4 | |
@5 | |
MOV UP, DOWN | |
@6 | |
@7 | |
@8 | |
MOV UP, ACC | |
MOV ACC, DOWN | |
NEG | |
MOV ACC, RIGHT | |
@9 | |
MOV LEFT, DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
SUB ACC | |
MOV UP, ACC | |
SUB RIGHT | |
MOV ACC, DOWN | |
@2 | |
MOV UP, LEFT | |
@3 | |
@4 | |
@5 | |
MOV UP, DOWN | |
@6 | |
@7 | |
@8 | |
MOV UP, ACC | |
MOV ACC, DOWN | |
NEG | |
MOV ACC, RIGHT | |
@9 | |
MOV LEFT, DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
MOV UP, DOWN | |
@1 | |
@2 | |
@3 | |
@4 | |
MOV UP, DOWN | |
@5 | |
MOV UP,RIGHT | |
@6 | |
MOV LEFT, ACC | |
JGZ OUTPUT | |
MOV 0, DOWN | |
JMP END | |
OUTPUT: | |
MOV 1, DOWN | |
END: | |
MOV ACC, RIGHT | |
@7 | |
MOV LEFT, ACC | |
JNZ YES | |
MOV 1, DOWN | |
JMP END | |
YES: | |
MOV 0, DOWN | |
END: | |
MOV ACC, RIGHT | |
@8 | |
MOV LEFT, ACC | |
JLZ OUTPUT | |
MOV 0, DOWN | |
JMP END | |
OUTPUT: | |
MOV 1,DOWN | |
END: | |
NOP |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
MOV ACC, RIGHT | |
MOV ACC, DOWN | |
@2 | |
MOV UP, DOWN | |
MOV LEFT, DOWN | |
@3 | |
MOV UP, DOWN | |
@4 | |
@5 | |
MOV UP, DOWN | |
@6 | |
MOV UP, ACC | |
MOV ACC, DOWN | |
JGZ OUTPUT | |
MOV UP, DOWN | |
MOV RIGHT, NIL | |
JMP END | |
OUTPUT: | |
MOV UP, NIL | |
MOV RIGHT, DOWN | |
END: | |
@7 | |
MOV UP, ACC | |
MOV ACC, LEFT | |
MOV ACC, DOWN | |
@8 | |
MOV UP, RIGHT | |
@9 | |
MOV UP, ACC | |
JNZ COPY | |
MOV UP, NIL | |
MOV LEFT, ACC | |
ADD RIGHT | |
MOV ACC, DOWN | |
JMP END | |
COPY: | |
MOV UP, DOWN | |
MOV LEFT, NIL | |
MOV RIGHT, NIL | |
END: | |
@10 | |
MOV UP, LEFT |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, RIGHT | |
@2 | |
MOV UP, ACC | |
JGZ GZ | |
JLZ LZ | |
ADD LEFT | |
ADD RIGHT | |
JMP ST | |
LZ: MOV LEFT, ACC | |
MOV RIGHT, NIL | |
JMP ST | |
GZ: MOV RIGHT,ACC | |
MOV LEFT, NIL | |
ST: MOV ACC, DOWN | |
@3 | |
MOV UP, LEFT | |
@4 | |
@5 | |
@6 | |
MOV UP, DOWN | |
@7 | |
@8 | |
@9 | |
MOV UP, DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, DOWN | |
MOV UP, DOWN | |
MOV UP, RIGHT | |
@2 | |
MOV UP, DOWN | |
MOV UP, DOWN | |
MOV UP, ACC | |
JGZ GZ | |
JLZ LZ | |
ADD LEFT | |
ADD RIGHT | |
JMP ST | |
LZ: MOV LEFT, ACC | |
MOV RIGHT, NIL | |
JMP ST | |
GZ: MOV RIGHT,ACC | |
MOV LEFT, NIL | |
ST: MOV ACC, DOWN | |
@3 | |
MOV UP, DOWN | |
MOV UP, DOWN | |
MOV UP, LEFT | |
@4 | |
@5 | |
MOV UP, DOWN | |
MOV UP, RIGHT | |
@6 | |
MOV UP, DOWN | |
MOV UP, ACC | |
JGZ GZ | |
JLZ LZ | |
ADD LEFT | |
ADD RIGHT | |
JMP ST | |
LZ: MOV LEFT, ACC | |
MOV RIGHT, NIL | |
JMP ST | |
GZ: MOV RIGHT,ACC | |
MOV LEFT, NIL | |
ST: MOV ACC, DOWN | |
MOV UP, DOWN | |
@7 | |
MOV UP, DOWN | |
MOV UP, LEFT | |
@8 | |
MOV UP, RIGHT | |
@9 | |
MOV UP, ACC | |
JGZ GZ | |
JLZ LZ | |
ADD LEFT | |
ADD RIGHT | |
JMP ST | |
LZ: MOV LEFT, ACC | |
MOV RIGHT, NIL | |
JMP ST | |
GZ: MOV RIGHT,ACC | |
MOV LEFT, NIL | |
ST: MOV ACC, DOWN | |
MOV UP, DOWN | |
MOV UP, DOWN | |
@10 | |
MOV UP, LEFT |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
MOV ACC, RIGHT | |
MOV ACC, DOWN | |
@2 | |
MOV UP, ACC | |
MOV ACC, RIGHT | |
SUB LEFT | |
MOV ACC, DOWN | |
@3 | |
MOV LEFT, DOWN | |
@4 | |
@5 | |
MOV UP, RIGHT | |
@6 | |
MOV UP, ACC | |
JGZ LR | |
MOV RIGHT, DOWN | |
MOV LEFT, DOWN | |
JMP END | |
LR: | |
MOV LEFT, DOWN | |
MOV RIGHT, DOWN | |
END: | |
@7 | |
MOV UP, LEFT | |
@8 | |
@9 | |
MOV UP, DOWN | |
MOV UP, DOWN | |
MOV 0, DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
MOV ACC, RIGHT | |
MOV ACC, DOWN | |
@2 | |
MOV LEFT, DOWN | |
@3 | |
MOV RIGHT, RIGHT | |
@4 | |
MOV UP, ACC | |
JNZ SEQ | |
SWP | |
MOV ACC, DOWN | |
MOV 0, ACC | |
JRO 4 | |
SEQ: | |
MOV ACC, LEFT | |
SWP | |
ADD LEFT | |
SWP | |
@5 | |
MOV UP, ACC | |
JNZ SEQ | |
SWP | |
MOV ACC, DOWN | |
MOV 0, ACC | |
JRO 3 | |
SEQ: | |
SWP | |
ADD 1 | |
SWP | |
@6 | |
@7 | |
@8 | |
MOV UP, DOWN | |
@9 | |
MOV UP, DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
MOV ACC, RIGHT | |
MOV ACC, RIGHT | |
@2 | |
SUB LEFT | |
MOV ACC, DOWN | |
MOV LEFT, ACC | |
@3 | |
@4 | |
@5 | |
@6 | |
MOV UP, ACC | |
JGZ GZ | |
NEG | |
GZ: | |
MOV ACC, DOWN | |
@7 | |
@8 | |
@9 | |
MOV UP, ACC | |
SUB 10 | |
JLZ G10 | |
MOV 1, DOWN | |
JMP END | |
G10: | |
MOV 0, DOWN | |
END: | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
MOV UP, ACC | |
JEZ ELSE1 | |
SWP | |
JNZ ELSE2 | |
MOV 1, DOWN | |
JMP EXIT | |
ELSE1: SWP | |
ELSE2: MOV 0, DOWN | |
EXIT: | |
@1 | |
MOV UP, ACC | |
JEZ ELSE1 | |
SWP | |
JNZ ELSE2 | |
MOV 2, DOWN | |
JMP EXIT | |
ELSE1: SWP | |
ELSE2: MOV 0, DOWN | |
EXIT: | |
@2 | |
MOV UP, ACC | |
JEZ ELSE1 | |
SWP | |
JNZ ELSE2 | |
MOV 3, DOWN | |
JMP EXIT | |
ELSE1: SWP | |
ELSE2: MOV 0, DOWN | |
EXIT: | |
@3 | |
MOV UP, ACC | |
JEZ ELSE1 | |
SWP | |
JNZ ELSE2 | |
MOV 4, DOWN | |
JMP EXIT | |
ELSE1: SWP | |
ELSE2: MOV 0, DOWN | |
EXIT: | |
@4 | |
MOV UP, RIGHT | |
@5 | |
MOV UP, ACC | |
ADD LEFT | |
MOV ACC, RIGHT | |
@6 | |
MOV UP, ACC | |
ADD LEFT | |
ADD RIGHT | |
MOV ACC, DOWN | |
@7 | |
MOV UP, LEFT | |
@8 | |
@9 | |
MOV UP,DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
JNZ NZERO | |
MOV 1, RIGHT | |
JMP END | |
NZERO: MOV 0,RIGHT | |
END: MOV ACC, DOWN | |
@2 | |
MOV LEFT, ACC | |
MOV LEFT, ACC | |
MOV 0, ACC | |
START: | |
MOV LEFT, DOWN | |
JMP START | |
@3 | |
@4 | |
MOV UP, ACC | |
JNZ NZERO | |
MOV 1, RIGHT | |
JMP END | |
NZERO: MOV 0,RIGHT | |
END: MOV ACC, DOWN | |
@5 | |
MOV LEFT, ACC | |
MOV 0, ACC | |
START: MOV UP, ACC | |
ADD LEFT | |
MOV ACC, DOWN | |
MOV 0, ACC | |
JMP START | |
@6 | |
@7 | |
@8 | |
MOV UP, ACC | |
JNZ NZERO | |
MOV 1, RIGHT | |
JMP END | |
NZERO: MOV 0,RIGHT | |
END: | |
@9 | |
MOV 0, DOWN | |
MOV 0, DOWN | |
START: | |
MOV LEFT, ACC | |
ADD UP | |
SUB 3 | |
JNZ ELSE | |
MOV 1, DOWN | |
JMP END | |
ELSE: | |
MOV 0, DOWN | |
END: | |
MOV 0, ACC | |
JMP START | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
MOV RIGHT, ACC | |
SAV | |
AF:MOV RIGHT, ACC | |
JEZ EZ | |
SWP | |
SAV | |
SUB RIGHT | |
JLZ LZ # R<A | |
MOV RIGHT, ACC | |
JMP AF | |
LZ: SWP # R>A | |
SAV | |
MOV RIGHT, NIL | |
JMP AF | |
EZ: MOV ACC, DOWN | |
@1 | |
@2 | |
MOV LEFT, NIL | |
MOV LEFT, NIL | |
@3 | |
@4 | |
MOV UP, ACC | |
JEZ EZ | |
MOV ACC, RIGHT | |
EZ: | |
@5 | |
MOV LEFT, DOWN | |
@6 | |
MOV LEFT, NIL | |
MOV LEFT, NIL | |
@7 | |
@8 | |
MOV UP, DOWN | |
@9 | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
ST:MOV DOWN, ACC | |
SAV | |
SUB DOWN | |
JGZ GZ # D1 > D2 | |
SWP | |
MOV DOWN, NIL | |
MOV ACC, DOWN | |
JMP ST | |
GZ: | |
MOV DOWN, ACC | |
MOV ACC, DOWN | |
@1 | |
MOV UP, DOWN | |
@2 | |
ST:MOV DOWN, ACC | |
SAV | |
SUB DOWN | |
JLZ GZ # D1 < D2 | |
SWP | |
MOV DOWN, NIL | |
MOV ACC, DOWN | |
JMP ST | |
GZ: | |
MOV DOWN, ACC | |
MOV ACC, DOWN | |
@3 | |
@4 | |
JNZ AF | |
AZ: SWP | |
MOV ACC, DOWN | |
MOV RIGHT, ACC | |
SAV | |
AF:MOV RIGHT, ACC | |
JEZ AZ | |
MOV ACC, UP | |
SWP | |
MOV ACC, UP | |
MOV ACC, UP | |
MOV UP, ACC | |
SAV | |
@5 | |
MOV UP, ACC | |
MOV ACC, LEFT | |
MOV ACC, RIGHT | |
@6 | |
JNZ AF | |
AZ: SWP | |
MOV ACC, DOWN | |
MOV LEFT, ACC | |
SAV | |
AF:MOV LEFT, ACC | |
JEZ AZ | |
MOV ACC, UP | |
SWP | |
MOV ACC, UP | |
MOV ACC, UP | |
MOV UP, ACC | |
SAV | |
@7 | |
ST: MOV UP, ACC | |
JEZ ST | |
MOV ACC, RIGHT | |
@8 | |
MOV LEFT, DOWN | |
@9 | |
ST: MOV UP, ACC | |
JEZ ST | |
MOV ACC, DOWN | |
@10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
ST: MOV RIGHT, ACC | |
JEZ POP | |
SAV | |
JMP ST | |
POP: | |
SWP | |
MOV ACC, RIGHT | |
@1 | |
EMP: MOV UP, ACC | |
JEZ POP | |
MOV ACC, LEFT | |
MOV UP, ACC | |
JEZ POP | |
SAV | |
FULL: MOV UP, ACC | |
JEZ POP | |
MOV ACC, DOWN | |
JMP FULL | |
POP: MOV ACC, DOWN | |
MOV ACC, LEFT | |
SWP | |
MOV ACC, DOWN | |
MOV LEFT, DOWN | |
@2 | |
@3 | |
ST: MOV RIGHT, ACC | |
JEZ POP | |
SAV | |
JMP ST | |
POP: | |
SWP | |
MOV ACC, RIGHT | |
@4 | |
EMP: MOV UP, ACC | |
JEZ POP | |
MOV ACC, LEFT | |
FULL: MOV UP, ACC | |
JEZ POP | |
MOV ACC, RIGHT | |
JMP FULL | |
POP: MOV ACC,RIGHT | |
MOV ACC, LEFT | |
MOV LEFT, RIGHT | |
MOV UP, RIGHT | |
MOV UP, RIGHT | |
@5 | |
EMP: MOV LEFT, ACC | |
JEZ POP | |
MOV ACC, RIGHT | |
FULL: MOV LEFT,ACC | |
JEZ POP | |
MOV ACC, DOWN | |
JMP FULL | |
POP: MOV ACC,DOWN | |
MOV ACC, RIGHT | |
MOV RIGHT, DOWN | |
MOV LEFT, DOWN | |
MOV LEFT, DOWN | |
MOV LEFT, DOWN | |
MOV 0, DOWN | |
@6 | |
ST: MOV LEFT, ACC | |
JEZ POP | |
SAV | |
JMP ST | |
POP: | |
SWP | |
MOV ACC, LEFT | |
@7 | |
EMP: MOV UP, ACC | |
JEZ POP | |
SAV | |
POP: | |
@8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
ST: MOV 6,ACC | |
SAV | |
R: SWP | |
JEZ EZ # SAVE NEXT | |
MOV RIGHT, ACC | |
JEZ ST | |
MOV ACC, DOWN | |
SUB 1 | |
EZ: # SAV SELF | |
MOV RIGHT, ACC | |
SAV # WAIT POP | |
@1 | |
MOV UP, ACC | |
MOV ACC, LEFT | |
@2 | |
@3 | |
@4 | |
@5 | |
@6 | |
@7 | |
@8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
ST: MOV UP, ACC | |
MOV ACC, DOWN | |
JEZ EZ | |
MOV ACC, RIGHT | |
JMP ST | |
EZ: | |
MOV DOWN, NIL | |
@2 | |
@3 | |
@4 | |
MOV 0, ACC | |
SAV | |
NZ: MOV UP, ACC | |
SWP | |
ADD 1 | |
SWP | |
JNZ NZ | |
SWP | |
MOV ACC, RIGHT | |
MOV RIGHT, UP | |
@5 | |
MOV LEFT, ACC | |
SUB 1 | |
JEZ END | |
POP: MOV UP, DOWN | |
SUB 1 | |
JNZ POP | |
END: MOV ACC, LEFT | |
MOV ACC, DOWN | |
@6 | |
@7 | |
MOV UP, DOWN | |
@8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@0 | |
@1 | |
MOV UP, ACC | |
MOV ACC, RIGHT | |
MOV ACC, DOWN | |
@2 | |
MOV UP, ACC | |
SAV | |
MOV LEFT, ACC | |
LP: JEZ EZ | |
SUB 1 | |
SWP | |
MOV ACC, DOWN | |
SWP | |
JMP LP | |
EZ: | |
@3 | |
@4 | |
MOV UP, RIGHT | |
@5 | |
MOV LEFT, ACC | |
JEZ EZ | |
SUB 1 | |
SWP | |
MOV UP, ACC | |
SWP | |
LP: JEZ EZ | |
SUB 1 | |
SWP | |
ADD UP | |
SWP | |
JMP LP | |
EZ: SWP | |
MOV ACC, DOWN | |
@6 | |
@7 | |
MOV UP, DOWN | |
@8 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment