Compare commits

2 Commits

Author SHA1 Message Date
msyds 3fa957dceb make opcodes case insensitive 2026-06-21 20:04:32 -06:00
msyds dab92f1e85 nixify 2026-06-21 20:04:10 -06:00
5 changed files with 92 additions and 3 deletions
+1
View File
@@ -0,0 +1 @@
use flake
+3
View File
@@ -0,0 +1,3 @@
.direnv/
play/
*.out
+3 -3
View File
@@ -100,7 +100,7 @@ grammar = [[
label <- <name> ":" label <- <name> ":"
string <- '"' ('\\' / '\"' / !'"' .)* '"' string <- '"' ('\\' / '\"' / !'"' .)* '"'
instruction <- ( <s> ( {<label>} / <number>)? <s> <ln>? <s> {<op>} ( <s> {<param>} )+ <s> ( %nl )+ ) -> {} instruction <- ( <s> ( {<label>} / <number>)? <s> <ln>? <s> {<op>} ( <s> {<param>} )+ <s> ( %nl )+ ) -> {}
op <- [A-Z]+ op <- [A-Za-z]+
param <- <register> / <number> / <name> / <string> param <- <register> / <number> / <name> / <string>
register <- ( "R[" <number> "]" ) register <- ( "R[" <number> "]" )
s <- ( !%nl %s )* s <- ( !%nl %s )*
@@ -310,10 +310,10 @@ function parse_inst(table, parsed, n)
local b = 3 local b = 3
local c = 4 local c = 4
if check_label(table[1]) == nil then if check_label(table[1]) == nil then
op = table[1] op = string.upper (table[1])
else else
set_label(table[1], parsed, n) set_label(table[1], parsed, n)
op = table[2] op = string.upper (table[2])
a = 3 a = 3
b = 4 b = 4
c = 5 c = 5
Generated
+63
View File
@@ -0,0 +1,63 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1781607440,
"narHash": "sha256-rxO+uc/KFbSJp+pgyXRuAX6QlG9hJdnt0BXpEQRXY+U=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3e41b24abd260e8f71dbe2f5737d24122f972158",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1776329215,
"narHash": "sha256-a8BYi3mzoJ/AcJP8UldOx8emoPRLeWqALZWu4ZvjPXw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b86751bc4085f48661017fa226dee99fab6c651b",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs",
"sydpkgs": "sydpkgs"
}
},
"sydpkgs": {
"inputs": {
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1782091643,
"narHash": "sha256-zPo1HibLjRc1Emy+MzUUvwl0iHJr9k7JGni/Fo4MP0A=",
"ref": "lad",
"rev": "a787aeb2a908bc0b39b747f372d952aa1c737be2",
"revCount": 42,
"type": "git",
"url": "https://git.deertopia.net/msyds/sydpkgs"
},
"original": {
"ref": "lad",
"type": "git",
"url": "https://git.deertopia.net/msyds/sydpkgs"
}
}
},
"root": "root",
"version": 7
}
+22
View File
@@ -0,0 +1,22 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
sydpkgs.url = "git+https://git.deertopia.net/msyds/sydpkgs?ref=lad";
};
outputs = inputs:
let
system = "x86_64-linux";
pkgs = import inputs.nixpkgs {
inherit system;
};
in {
devShells.${system}.default = pkgs.mkShell {
packages = [
(pkgs.lua5_1.withPackages (ps: with ps; [
lpeg
]))
];
};
};
}