From e38f108921c61e1e66d65a368f2a67a763d61e69 Mon Sep 17 00:00:00 2001 From: Ben Bridle Date: Sat, 6 May 2023 16:19:15 +1200 Subject: About to refactor parser to be a struct with a method for each stage --- src/main.rs | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/main.rs (limited to 'src/main.rs') diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..82bd92d --- /dev/null +++ b/src/main.rs @@ -0,0 +1,41 @@ +const SOURCE:&'static str = +// " +// %SCREEN-SHUNT 00; +// %SCREEN-DRAW 00; + +// @draw_horizontal_line ( len* clr -- ) +// (1) PSHr ( len* | clr ) +// (4) PSH:41 STD:SCREEN-SHUNT ( len* | clr ) +// &loop +// (2) SKDr:SCREEN-DRAW ( len* | clr ) +// (4) DEC* JKC*:~loop ( len* | clr ) +// (2) STD:SCREEN-SHUNT +// (3) POP POPr JMPr* +// "; + +" +%RED 1234; +%GREEN 5678 @test; +%BLUE 9ABC; + +@start + RED + start + GREEN + BLUE + $4 + @end +"; + +use bedrock_asm::*; + +fn main() { + println!("------- PROGRAM START -------"); + for line in SOURCE.lines() { + println!("{line}"); + } + println!("-------- PROGRAM END --------"); + println!(); + + parse(SOURCE); +} -- cgit v1.2.3-70-g09d2