Toolchain for assembly and compilation of new code for FM10000 Instruction Processor Boot State Machine
Go to file
2021-08-03 22:14:19 +02:00
asm Add further register bitfields 2021-08-03 19:56:38 +02:00
src Add third offset parseOperatorResult 2021-08-03 22:14:19 +02:00
.drone.jsonnet Fix .drone.jsonnet build 2020-12-31 22:16:00 +01:00
.gitignore WIP: Initial commit, working basic assembler 2020-12-31 22:06:52 +01:00
CMakeLists.txt Add DEBUG flags to CMakeLists.txt 2021-08-03 19:21:25 +02:00
COPYING WIP: Initial commit, working basic assembler 2020-12-31 22:06:52 +01:00
README.md Added full image format, include some debug information at the tail of functions 2021-01-04 08:16:20 +01:00

rrcc (Red Rock Canyon Compiler)

Toolchain for assembly and compilation of new code for FM10000 Instruction Processor Boot State Machine

NOTE: This is a Work In Progress project

Requirements

  • cmake >= 3.13
  • g++ (GCC C++) or clang
  • make

Compilation

  • $ mkdir build && cd build
  • $ cmake ../ && make
  • An executable named ./rrc-as should now exist.

rrc-as

Assembler and linker, kind-of 2-Pass. Quite loose token syntax defined in Token.h.

Usage

  • $ ./rrc-as code.asm [code2.asm ...] output.bin
  • The function named entrypoint will be called by init asm
  • Multiple asm files can be specified. They are interpreted from first in arguments to last.
  • You can call functions across files, as they will be linked together.
  • Directive resolution occurs at parsing time, so while you can override values it does not affect previously parsed files.
  • Directives like .constant are passed to the next files.
  • These files will be automatically included in front every time:

License

  • BSD-3-Clause
  • See COPYING for the full license.