Skip to content
/ lmc Public

a virtual machine implementation of Dr. Madnick's "Little Man Computer" along with an assembler.

License

Notifications You must be signed in to change notification settings

tcort/lmc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lmc

Build Status

LMC stands for Little Man Computer. It was created in 1965 by Dr. Stuart Madnick as a way to illustrate the basic features of a programmable computer.

This repository contains an implementation of a virtual LMC as well as an assembler to compile simple programs into byte code that can be executed by the virtual machine.

Requirements

  • C compiler and standard build tools (make, sh, autoconf/automake, ...).
  • lex or flex
  • yacc or bison

Building

Use the following commands to build, test, and install LMC.

./configure
make
make check
make install

Requirements for Cross Compiling (Target: mingw32)

  • Cross toolchain (ex: mingw32 on Debian)
  • lex or flex
  • yacc or bison
  • nsis (for generating an installer)
  • wine (for running the test suite)

Cross Compiling (Target: mingw32)

Use the follow commands to cross compile LMC, run the test suite under wine, and generate an installer exe:

./configure --host=i586-mingw32msvc
make
make check
makensis lmc.nsi

About

a virtual machine implementation of Dr. Madnick's "Little Man Computer" along with an assembler.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published