Skip to content

Factorio Computer Emulator and compiler for the architectures I design

License

Notifications You must be signed in to change notification settings

giodueck/FC-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FC-Tools

Tools for compiling and running programs for my custom computer architectures.

Features

This project will slowly be developed and made feature complete. Currently there exists:

  • Horizon
    • Parsing/compiling to internal/binary representation
    • Compiling to blueprint string
    • Executing compiled programs
  • Graphical emulator
    • Graphical program to run programs interactively
    • Inspect register and RAM state
    • Step by step debugging
    • WIP Set breakpoints

Building

Dependencies:

  • SDL2
  • SDL2_ttf

Then run make help for a list of make targets. make will compile the program without optimizations and with debug symbols, while make release won't.

Execution

Compilation

To compile a Horizon program use fcc:

$ ./fcc -h

Emulation

To run a Horizon program use fcemu:

$ ./fcemu -h

The input file can be a plaintext program, in which case it will be compiled with fcc, or a compiled binary file created with fcc beforehand.

Running the program launches the visual runner: fcemu window

Blueprint strings

The blueprints for the actual computers can be found in the bp directory.

For the blueprints of Overture, an 8-bit architecture inspired by the one featured in the game Turing Complete, or Everest, the precursor to Horizon, refer to factorio-computing.

About

Factorio Computer Emulator and compiler for the architectures I design

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published