From a7af1a4664318581cbb6f3403b89bf5e6ca92546 Mon Sep 17 00:00:00 2001 From: Torsten Ruger Date: Wed, 16 Apr 2014 12:45:36 +0300 Subject: [PATCH] small doc --- README.md | 52 ++++++++++++++++++++++++++++++++ lib/asm/arm/instruction_tools.rb | 2 +- 2 files changed, 53 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2ab75cc1..58b46e3d 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,58 @@ Small steps on a long road, will nevertheless lead to the destination Sorry about the Zen, but it feels like i'm about to walk to China. +Step 1 +------ + +Produce binary that represent code. Traditionally called assembling, but there is no need for an external file +representation. + +Ie only in ruby code do i want to create machine code. + +First instructions are in fact assembling correctly. Meaning i have tests, and i can use objbump to verify the correct assembler code is disasembled + +Step 2 +------ + +Package the code into an executable. Run that and verufy it's output. + +Currently hangin on the elf format. + +Step 3 +------- + +Start parsing some simple code. Using Parslet. + +Get the parse - compile - execute -verify cycle going. + +Step 4 +------- + +Implement function calling to modularise. +Implement a way to call libc + +Step 5 +------ + +Implement classes, implement Core library of arrays/hash + +Step 6 +------ + +Implement Blocks + +Step 7 +------ + +Implement Exceptions + +Step 8 +------- + + +Celebrate New year 2020 + + Contributing to crystal ----------------------- diff --git a/lib/asm/arm/instruction_tools.rb b/lib/asm/arm/instruction_tools.rb index eb52e74d..bddf904c 100644 --- a/lib/asm/arm/instruction_tools.rb +++ b/lib/asm/arm/instruction_tools.rb @@ -1,6 +1,6 @@ module Asm module Arm - module Asm::Arm::InstructionTools + module InstructionTools def reg_ref(arg) if (not arg.is_a?(Asm::RegisterArgNode)) raise Asm::AssemblyError.new('argument must be a register', arg)