From 431f739ddca73eb105bced65c169963a335e3134 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Wed, 25 Jul 2018 20:53:43 -0700 Subject: 4414 - subx: syntax checking This is a large patch, and there's a few things wrong with it: a) Helpers are incredibly messy. I want to use has_metadata in layer 24, but can't since it also does error checking. There must be a better basis set of primitives for managing metadata. b) Layer 22 introduces operands for checking, but programs with operands don't actually run until layer 24. So I can't write non-error scenarios in layer 22. That seems ugly. But if I try to introduce layer 24 first there's nothing left to check after it. I *could* play tricks with ordering layers vs transforms. Mu does that a bit, but it becomes hard to mess with, so I'm trying to avoid that. My current plan is for layers within an "abstraction level" to be run in order. Higher layers will necessarily need to come before lower ones. But hopefully this level of hierarchy will help manage the chaos. c) The check for whether an instruction is all hex bytes makes me nervous. I do want to check that an instruction that's just: cd tells the programmer that an operand is missing. The check I currently have is likely not perfectly correct. I *could* put layer 25 in its own commit. But I guess I'm not doing that now. We have a new example program: hello world! --- subx/ex6 | Bin 0 -> 165 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100755 subx/ex6 (limited to 'subx/ex6') diff --git a/subx/ex6 b/subx/ex6 new file mode 100755 index 00000000..dd2219bb Binary files /dev/null and b/subx/ex6 differ -- cgit 1.4.1-2-gfad0 ee/tools/iso/kernel.soso/fatfilesystem.h?h=main&id=4b3461fa0ad4aaa7a29cf914614dab7a6cdcacfc'>tree commit diff stats
path: root/tools/iso/kernel.soso/fatfilesystem.h
blob: f5f3e6f18473842e704b0d8b38d3a5ec0b3d1abd (plain) (blame)
1
2
3
4
5
6