# TIS-100: My emulator for a CPU that doesn't exist

DevFeed: [TIS-100: My emulator for a CPU that doesn't exist](<https://devfeed.tech/articles/tis-100-my-emulator-for-a-cpu-that-doesn-t-exist-40635.md>)

Original publisher: [Read original article](<https://eviltrout.com/blog/2015-06-29-an-emulator-for-tis-100/>)

Published: 2015-06-29T00:00:00Z

Content type: opinion

Language: en

Sources: [Robin Ward](<https://devfeed.tech/sources/robin-ward.md>)

Topics: [Emulator](<https://devfeed.tech/topics/emulator.md>), [Assembly](<https://devfeed.tech/topics/assembly.md>), [cpu](<https://devfeed.tech/topics/cpu.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [C](<https://devfeed.tech/topics/c.md>)

Tags: [assembly](<https://devfeed.tech/tags/assembly.md>), [c](<https://devfeed.tech/tags/c.md>), [emulator](<https://devfeed.tech/tags/emulator.md>), [pdf](<https://devfeed.tech/tags/pdf.md>), [programming](<https://devfeed.tech/tags/programming.md>)

## AI overview

The author describes becoming interested in TIS-100, an assembly-language programming game built around an imaginary CPU. After solving its puzzles, the author finds an inefficient division solution and decides to implement a TIS-100 emulator in pure C.

## Source excerpt

Recently I became infatuated with TIS-100, a game which aptly describes itself as "the assembly language programming game you never asked for!" The point of the game is to program the (imaginary) TIS-100 CPU to solve problems. For example, you might need to take input from two ports and swap them, then write the outputs to two other ports. The game flies in the face of all modern game design: The first thing you need to do is sit and read a 14 page PDF that outlines the TIS-100 instruction set. And when I say "read", I mean "learn", because a quick skim is not going to cut it! There are no tutorial levels or handholding. You must read the manual.