Skip to content

NikodemMarek/lc3-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f8d8319 · Feb 7, 2024

History

60 Commits
Jan 23, 2024
Feb 6, 2024
Feb 6, 2024
Jan 15, 2024
Feb 6, 2024
Feb 6, 2024
Feb 6, 2024
Feb 7, 2024
Jan 15, 2024
Jan 15, 2024
Jan 15, 2024
Feb 6, 2024
Jan 16, 2024
Jan 15, 2024
Feb 1, 2024

Repository files navigation

lc3-rust

This is Little Computer 3 emulator, written in Rust
It supports all instructions (except RTI which is unused in a vm) and high-level implementation of trap routines

Run Locally

Clone the project

git clone https://github.com/NikodemMarek/lc3-rust.git

Go to the project directory

cd lc3-rust

Run the emulator

cargo run -- <filename>

where <filename> is a name of the file to run (hello-world.obj, 2048.obj, rogue.obj)

Running Tests

To run tests, run the following command

cargo test

Usage/Examples

2048

cargo run -- 2048.obj

Control the game using WASD keys.
Are you on an ANSI terminal (y/n)? y

+--------------------------+
|                          |
|         2                |
|                          |
|                          |
|                          |
|   2                      |
|                          |
|                          |
|                          |
+--------------------------+

rogue

cargo run -- rogue.obj

Welcome to LC3 Rogue.
Use WSAD to move.
Press any key..

##################  ############
###################     ########
#######################        #
########################  #  #
###############################D
################################
################################
@ ##############################
#  #############################
##    ##########################
#####  #########################
######  ########################
#######   ######################
#########    ###################
############  ##  ##############
#############      #############

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published