Hackasm

A Ruby-based compiler for the Hack platform developed in the scope of the NAND to Tetris course(parts 1 and 2.

Installation

Add this line to your application's Gemfile:

gem 'hackasm'

And then execute:

$ bundle

Or install it yourself as:

$ gem install hackasm

Usage

This tool is a translator that is aimed to translate code from the higher level programming language in the stack of Hack platform to the lower one.

new command

Translate *.asm file of assembler commands to *.hack file of binary commands. This command matches the project 7 and 9 of NAND to Tetris.

asm2binarycommand

Translate *.vm file with virtual machine code or a folder of *.vm files to the single *.asm file of assembler commands. This command matches the project 6 of NAND to Tetris.

Code of Conduct

Everyone interacting in the Hackasm project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

Copyright (c) 2020 Artur Martsinkovskyi. See MIT License for further details.