https://github.com/elemeants/lc3-virtualmachine
Educational project and I choose the LC-3 CPU to make a virtual machine code that executes obj files.
https://github.com/elemeants/lc3-virtualmachine
c lc3 lc3-assembly lc3-vm virtual-machine vm
Last synced: 10 months ago
JSON representation
Educational project and I choose the LC-3 CPU to make a virtual machine code that executes obj files.
- Host: GitHub
- URL: https://github.com/elemeants/lc3-virtualmachine
- Owner: Elemeants
- Created: 2021-01-24T00:29:59.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-29T03:34:38.000Z (over 5 years ago)
- Last Synced: 2025-03-17T11:18:02.974Z (over 1 year ago)
- Topics: c, lc3, lc3-assembly, lc3-vm, virtual-machine, vm
- Language: C
- Homepage:
- Size: 46.9 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# LC-3 (Little Computer 3) Virtual Machine
The Lc3 is an educational CPU, that is not physically implemented, so as a personal educational project I made a virtual machine that can execute code targeted to the Lc3.
## Prerequisites
There are no many prerequisites, only need a C compiler, CMake, and maybe make or visual studio, i test it with make.
- GCC (Tested in gcc-4.6.3)
- Make (Tested in GNU Make 4.2.1)
- CMake >= 3.1.0
## Building project
Fist need to create a folder to save generated build files.
```bash
mkdir build && cd build
```
Inside the build folder call cmake to the project.
```bash
cmake ../
```
Now you can build the project using cmake or any you want.
```bash
cmake --build .
```
## Usage
Call the executable and as argument the path to the object file of your code.
```bash
lc3vm [obj-file]
```
A simulation log file will generate called "lc3vm.log", used to debug the application.
## Based on
I use the information provided in the next repository: [LC3-VM](https://github.com/justinmeiners/lc3-vm)