Skip to content
/ bfckr Public

A little brainfuck interpreter and debugger written in C.

License

Notifications You must be signed in to change notification settings

id101010/bfckr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bfckr Build Status

A simple to use brainfuck interpreter with built in debugger written in C.

How to run

  • Type "make"
  • Read this
  • Create your own brainfuck software
  • let bfckr run your own .bf code

Usage

Usage: ./bfckr [OPTION]
-h        Show this help.
-d        Enable debugger.
-f        Execute brainfuck code given as file.
-e        Execute brainfuck expression given as argument.

examples:

./bfckr -f examples/pi.bf

3.14070455282885

./bfckr -d -f examples/pi.bf

[ENTER]: single step [c]: continue
Source viewer:                                            
------------------------------------------------------------
                              >+++++++++++++++[<+>>>>>>>>+++
                              ^                             
                              ip=0                         
------------------------------------------------------------

Memory viewer:                                            
------------------------------------------------------------
000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 

                              ^                             
                              mp=1                         
000 000 000 000 000 000 001 002 003 004 005 006 007 008 009 
------------------------------------------------------------

Output viewer:                                              
------------------------------------------------------------

------------------------------------------------------------

./bfckr -e "----[---->+<]>++."

A

echo "42=" | ./bfckr -f examples/bintodec.bf

42=101010

Breakpoints

A # in the brainfuck source will be interpreted as breakpoint. You can use them if you want to stop the program flow at a specific point and start the debugger from there. If you are in debugger mode pressing c will get you back to executing the program.

./bfckr -e "----[#---->+<]>++."

[ENTER]: single step [c]: continue

Source viewer:                                            
------------------------------------------------------------
                         ----[#---->+<]>++.
                              ^                             
                              ip=5                         
------------------------------------------------------------

Memory viewer:                                            
------------------------------------------------------------
000 000 000 000 000 000 000 -04 000 000 000 000 000 000 000 
                              ^                             
                              mp=0                         
993 994 995 996 997 998 999 000 001 002 003 004 005 006 007 
------------------------------------------------------------

Output viewer:                                              
------------------------------------------------------------

------------------------------------------------------------

Licence

WTFPL

Copyright © 2016 Aaron aaron@duckpond.ch This work is free. You can redistribute it and/or modify it under the terms of the Do What The Fuck You Want To Public License, Version 2, as published by Sam Hocevar. See the COPYING file for more details.

About

A little brainfuck interpreter and debugger written in C.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published