A simple, stack-based Bitcoin Script interpreter written in x86-64 Assembly. This is a basic implementation for learning and experimentation.
btc-vm/
├── README.md # Basic project overview
├── btc_vm.asm # Main assembly code for the VM
├── scripts/
│ ├── simple_test.hex # Simple test script for validation
│ └── sample_scripts/ # Directory for more example scripts
├── tests/
│ └── test_runner.sh # Simple test runner script
├── docs/
│ └── ARCHITECTURE.md # Notes about the VM architecture
└── LICENSE # MIT License file
nasm -f elf64 btc_vm.asm -o btc_vm.o
ld btc_vm.o -o btc_vm./btc_vmbash tests/test_runner.shMain assembly code for the Bitcoin Script VM. This is where the interpreter logic lives.
A very basic test script to verify the VM is working.