{"id":29123035,"url":"https://github.com/richarddorian/brainfuck-asm","last_synced_at":"2025-06-29T18:05:19.618Z","repository":{"id":301447294,"uuid":"771777757","full_name":"RichardDorian/brainfuck-asm","owner":"RichardDorian","description":"A Brainfuck interpreter written in x64 assembly for Linux","archived":false,"fork":false,"pushed_at":"2025-06-26T22:53:57.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-26T23:56:46.338Z","etag":null,"topics":["assembly","brainfuck","brainfuck-interpreter","interpreter"],"latest_commit_sha":null,"homepage":"","language":"Assembly","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RichardDorian.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-03-13T23:43:35.000Z","updated_at":"2025-06-26T22:54:00.000Z","dependencies_parsed_at":"2025-06-26T23:56:49.066Z","dependency_job_id":"3950ff40-8fa3-475e-83db-3eba4a15be99","html_url":"https://github.com/RichardDorian/brainfuck-asm","commit_stats":null,"previous_names":["richarddorian/brainfuck-asm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RichardDorian/brainfuck-asm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardDorian%2Fbrainfuck-asm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardDorian%2Fbrainfuck-asm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardDorian%2Fbrainfuck-asm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardDorian%2Fbrainfuck-asm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RichardDorian","download_url":"https://codeload.github.com/RichardDorian/brainfuck-asm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardDorian%2Fbrainfuck-asm/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262642953,"owners_count":23341817,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assembly","brainfuck","brainfuck-interpreter","interpreter"],"created_at":"2025-06-29T18:05:18.263Z","updated_at":"2025-06-29T18:05:19.587Z","avatar_url":"https://github.com/RichardDorian.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `brainfuck-asm`\n\nA [Brainfuck](https://en.wikipedia.org/wiki/Brainfuck) interpreter written in x86_64 assembly for Linux based systems.\n\n\u003e [!IMPORTANT]  \n\u003e I made this because I was bored at night. I don't guarantee any support of any kind. This project was made thanks to the Almighty Coffee God. Don't ask too many questions about how it really works because it's very likely that I already forgot everything!\n\n## Usage\n\nI have absolutely no idea why would you want to know how to use a Brainfuck interpreter.. Anyways, apparently you do so let's dive in!\n\nFor now the program is hardcoded because I really need to get some sleep. I'll do program loading when my brain decides not to be a lazy fu\\*\\*. Here's how to run it:\n\n```bash\n./interpreter\n```\n\n## How do I write a Brainfuck program?\n\nHeads up: that's a terrible idea. Here's the [Wikipedia](https://en.wikipedia.org/wiki/Brainfuck) page. There, you can find a simple but useful table which states everything you can do. The language is pretty basic and easy to understand but is a living hell to use.\n\n## Exit codes\n\nIt might go wrong. If, somehow, you manage to encounter a handled error the program will exit with a non zero exit code.\n\nIf you are lucky, the program will tell you what happened. Most of the time it wont; especially if you catch a never seen before error (_or worse, a segfault_ 😱)\n\n| Exit code | Description     |\n| --------- | --------------- |\n| `0`       | No error        |\n| `1`       | Incorrect usage |\n\n## Build\n\nIf you want to build this project on your machine, I am so sorry but it's all lost and hopeless for you.. I am not joking, nobody can help you at this point.. Anyways, here's a simple guide:\n\n1. Make sure you are on a Linux distribution (you didn't really expect this to work on Windows, did you??). You can use WSL if you want.\n2. Install the `nasm` compiler (should be `apt install nasm` on most distributions and `pacman -S nasm` for the elite).\n3. Run the `./compile.sh` script. This will compile the program and create a binary named `interpreter` inside the `build` folder.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fricharddorian%2Fbrainfuck-asm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fricharddorian%2Fbrainfuck-asm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fricharddorian%2Fbrainfuck-asm/lists"}