diff --git a/poetry.lock b/poetry.lock index dbca8ea0c..39477ad01 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "atomicwrites" @@ -680,32 +680,6 @@ files = [ [package.dependencies] pyyaml = "*" -[[package]] -name = "ruff" -version = "0.2.2" -description = "An extremely fast Python linter and code formatter, written in Rust." -optional = false -python-versions = ">=3.7" -files = [ - {file = "ruff-0.2.2-py3-none-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:0a9efb032855ffb3c21f6405751d5e147b0c6b631e3ca3f6b20f917572b97eb6"}, - {file = "ruff-0.2.2-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:d450b7fbff85913f866a5384d8912710936e2b96da74541c82c1b458472ddb39"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ecd46e3106850a5c26aee114e562c329f9a1fbe9e4821b008c4404f64ff9ce73"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5e22676a5b875bd72acd3d11d5fa9075d3a5f53b877fe7b4793e4673499318ba"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1695700d1e25a99d28f7a1636d85bafcc5030bba9d0578c0781ba1790dbcf51c"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:b0c232af3d0bd8f521806223723456ffebf8e323bd1e4e82b0befb20ba18388e"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f63d96494eeec2fc70d909393bcd76c69f35334cdbd9e20d089fb3f0640216ca"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a61ea0ff048e06de273b2e45bd72629f470f5da8f71daf09fe481278b175001"}, - {file = "ruff-0.2.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5e1439c8f407e4f356470e54cdecdca1bd5439a0673792dbe34a2b0a551a2fe3"}, - {file = "ruff-0.2.2-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:940de32dc8853eba0f67f7198b3e79bc6ba95c2edbfdfac2144c8235114d6726"}, - {file = "ruff-0.2.2-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:0c126da55c38dd917621552ab430213bdb3273bb10ddb67bc4b761989210eb6e"}, - {file = "ruff-0.2.2-py3-none-musllinux_1_2_i686.whl", hash = "sha256:3b65494f7e4bed2e74110dac1f0d17dc8e1f42faaa784e7c58a98e335ec83d7e"}, - {file = "ruff-0.2.2-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:1ec49be4fe6ddac0503833f3ed8930528e26d1e60ad35c2446da372d16651ce9"}, - {file = "ruff-0.2.2-py3-none-win32.whl", hash = "sha256:d920499b576f6c68295bc04e7b17b6544d9d05f196bb3aac4358792ef6f34325"}, - {file = "ruff-0.2.2-py3-none-win_amd64.whl", hash = "sha256:cc9a91ae137d687f43a44c900e5d95e9617cb37d4c989e462980ba27039d239d"}, - {file = "ruff-0.2.2-py3-none-win_arm64.whl", hash = "sha256:c9d15fc41e6054bfc7200478720570078f0b41c9ae4f010bcc16bd6f4d1aacdd"}, - {file = "ruff-0.2.2.tar.gz", hash = "sha256:e62ed7f36b3068a30ba39193a14274cd706bc486fad521276458022f7bccb31d"}, -] - [[package]] name = "setuptools" version = "69.1.1" @@ -830,4 +804,4 @@ watchmedo = ["PyYAML (>=3.10)"] [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "4c8546b80bc9b6b255d8fdf7ad5bee73c579ecfb80d7fdcccc663ab93b64aae7" +content-hash = "641743fedbea526add30513ee525a8909c3449b84d1e7655c218b2cb6bd3ffe1" diff --git a/pyproject.toml b/pyproject.toml index 68d4d6df2..79766605e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -40,9 +40,11 @@ pre-commit = "^2.15.0" mkdocs = "^1.2.2" poethepoet = "^0.15.0" pytest-cov = "^3.0.0" -ruff = "^0.2.2" mypy = "^1.8.0" +[tool.poetry.group.dev.dependencies] +ruff = "^0.4.7" + [build-system] requires = ["poetry>=0.12"] build-backend = "poetry.masonry.api" diff --git a/src/api/global_.py b/src/api/global_.py index 5523dcea2..9e5f87447 100644 --- a/src/api/global_.py +++ b/src/api/global_.py @@ -126,7 +126,7 @@ class LoopInfo(NamedTuple): SIZE_TYPE: TYPE = TYPE.ubyte # ---------------------------------------------------------------------- -# CORE namespace (for core runtime library, like FP Calc) +# CORE namespace (for core runtime stdlib, like FP Calc) # ---------------------------------------------------------------------- CORE_NAMESPACE: Final[str] = ".core" diff --git a/src/arch/z80/beep.py b/src/arch/z80/beep.py index 7a4063b3b..ff3cc61d9 100755 --- a/src/arch/z80/beep.py +++ b/src/arch/z80/beep.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # vim:ts=4:et:sw=4: -__doc___ = """This library converts duration,pitch for a beep +__doc___ = """This stdlib converts duration,pitch for a beep from floating point to HL,DE Integers. """ diff --git a/src/arch/zx48k/library-asm/SP/CharLeft.asm b/src/lib/arch/zx48k/runtime/SP/CharLeft.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/CharLeft.asm rename to src/lib/arch/zx48k/runtime/SP/CharLeft.asm diff --git a/src/arch/zx48k/library-asm/SP/CharRight.asm b/src/lib/arch/zx48k/runtime/SP/CharRight.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/CharRight.asm rename to src/lib/arch/zx48k/runtime/SP/CharRight.asm diff --git a/src/arch/zx48k/library-asm/SP/GetScrnAddr.asm b/src/lib/arch/zx48k/runtime/SP/GetScrnAddr.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/GetScrnAddr.asm rename to src/lib/arch/zx48k/runtime/SP/GetScrnAddr.asm diff --git a/src/arch/zx48k/library-asm/SP/PixelDown.asm b/src/lib/arch/zx48k/runtime/SP/PixelDown.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/PixelDown.asm rename to src/lib/arch/zx48k/runtime/SP/PixelDown.asm diff --git a/src/arch/zx48k/library-asm/SP/PixelLeft.asm b/src/lib/arch/zx48k/runtime/SP/PixelLeft.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/PixelLeft.asm rename to src/lib/arch/zx48k/runtime/SP/PixelLeft.asm diff --git a/src/arch/zx48k/library-asm/SP/PixelRight.asm b/src/lib/arch/zx48k/runtime/SP/PixelRight.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/PixelRight.asm rename to src/lib/arch/zx48k/runtime/SP/PixelRight.asm diff --git a/src/arch/zx48k/library-asm/SP/PixelUp.asm b/src/lib/arch/zx48k/runtime/SP/PixelUp.asm similarity index 100% rename from src/arch/zx48k/library-asm/SP/PixelUp.asm rename to src/lib/arch/zx48k/runtime/SP/PixelUp.asm diff --git a/src/arch/zx48k/library-asm/_mul32.asm b/src/lib/arch/zx48k/runtime/_mul32.asm similarity index 100% rename from src/arch/zx48k/library-asm/_mul32.asm rename to src/lib/arch/zx48k/runtime/_mul32.asm diff --git a/src/arch/zx48k/library-asm/abs16.asm b/src/lib/arch/zx48k/runtime/abs16.asm similarity index 100% rename from src/arch/zx48k/library-asm/abs16.asm rename to src/lib/arch/zx48k/runtime/abs16.asm diff --git a/src/arch/zx48k/library-asm/abs32.asm b/src/lib/arch/zx48k/runtime/abs32.asm similarity index 100% rename from src/arch/zx48k/library-asm/abs32.asm rename to src/lib/arch/zx48k/runtime/abs32.asm diff --git a/src/arch/zx48k/library-asm/abs8.asm b/src/lib/arch/zx48k/runtime/abs8.asm similarity index 100% rename from src/arch/zx48k/library-asm/abs8.asm rename to src/lib/arch/zx48k/runtime/abs8.asm diff --git a/src/arch/zx48k/library-asm/absf.asm b/src/lib/arch/zx48k/runtime/absf.asm similarity index 100% rename from src/arch/zx48k/library-asm/absf.asm rename to src/lib/arch/zx48k/runtime/absf.asm diff --git a/src/arch/zx48k/library-asm/acos.asm b/src/lib/arch/zx48k/runtime/acos.asm similarity index 100% rename from src/arch/zx48k/library-asm/acos.asm rename to src/lib/arch/zx48k/runtime/acos.asm diff --git a/src/arch/zx48k/library-asm/addf.asm b/src/lib/arch/zx48k/runtime/addf.asm similarity index 100% rename from src/arch/zx48k/library-asm/addf.asm rename to src/lib/arch/zx48k/runtime/addf.asm diff --git a/src/arch/zx48k/library-asm/alloc.asm b/src/lib/arch/zx48k/runtime/alloc.asm similarity index 100% rename from src/arch/zx48k/library-asm/alloc.asm rename to src/lib/arch/zx48k/runtime/alloc.asm diff --git a/src/arch/zx48k/library-asm/and16.asm b/src/lib/arch/zx48k/runtime/and16.asm similarity index 100% rename from src/arch/zx48k/library-asm/and16.asm rename to src/lib/arch/zx48k/runtime/and16.asm diff --git a/src/arch/zx48k/library-asm/and32.asm b/src/lib/arch/zx48k/runtime/and32.asm similarity index 100% rename from src/arch/zx48k/library-asm/and32.asm rename to src/lib/arch/zx48k/runtime/and32.asm diff --git a/src/arch/zx48k/library-asm/and8.asm b/src/lib/arch/zx48k/runtime/and8.asm similarity index 100% rename from src/arch/zx48k/library-asm/and8.asm rename to src/lib/arch/zx48k/runtime/and8.asm diff --git a/src/arch/zx48k/library-asm/andf.asm b/src/lib/arch/zx48k/runtime/andf.asm similarity index 100% rename from src/arch/zx48k/library-asm/andf.asm rename to src/lib/arch/zx48k/runtime/andf.asm diff --git a/src/arch/zx48k/library-asm/array.asm b/src/lib/arch/zx48k/runtime/array.asm similarity index 100% rename from src/arch/zx48k/library-asm/array.asm rename to src/lib/arch/zx48k/runtime/array.asm diff --git a/src/arch/zx48k/library-asm/arrayalloc.asm b/src/lib/arch/zx48k/runtime/arrayalloc.asm similarity index 100% rename from src/arch/zx48k/library-asm/arrayalloc.asm rename to src/lib/arch/zx48k/runtime/arrayalloc.asm diff --git a/src/arch/zx48k/library-asm/arraystrfree.asm b/src/lib/arch/zx48k/runtime/arraystrfree.asm similarity index 100% rename from src/arch/zx48k/library-asm/arraystrfree.asm rename to src/lib/arch/zx48k/runtime/arraystrfree.asm diff --git a/src/arch/zx48k/library-asm/asc.asm b/src/lib/arch/zx48k/runtime/asc.asm similarity index 100% rename from src/arch/zx48k/library-asm/asc.asm rename to src/lib/arch/zx48k/runtime/asc.asm diff --git a/src/arch/zx48k/library-asm/asin.asm b/src/lib/arch/zx48k/runtime/asin.asm similarity index 100% rename from src/arch/zx48k/library-asm/asin.asm rename to src/lib/arch/zx48k/runtime/asin.asm diff --git a/src/arch/zx48k/library-asm/atan.asm b/src/lib/arch/zx48k/runtime/atan.asm similarity index 100% rename from src/arch/zx48k/library-asm/atan.asm rename to src/lib/arch/zx48k/runtime/atan.asm diff --git a/src/arch/zx48k/library-asm/attr.asm b/src/lib/arch/zx48k/runtime/attr.asm similarity index 100% rename from src/arch/zx48k/library-asm/attr.asm rename to src/lib/arch/zx48k/runtime/attr.asm diff --git a/src/arch/zx48k/library-asm/band16.asm b/src/lib/arch/zx48k/runtime/band16.asm similarity index 100% rename from src/arch/zx48k/library-asm/band16.asm rename to src/lib/arch/zx48k/runtime/band16.asm diff --git a/src/arch/zx48k/library-asm/band32.asm b/src/lib/arch/zx48k/runtime/band32.asm similarity index 100% rename from src/arch/zx48k/library-asm/band32.asm rename to src/lib/arch/zx48k/runtime/band32.asm diff --git a/src/arch/zx48k/library-asm/beep.asm b/src/lib/arch/zx48k/runtime/beep.asm similarity index 100% rename from src/arch/zx48k/library-asm/beep.asm rename to src/lib/arch/zx48k/runtime/beep.asm diff --git a/src/arch/zx48k/library-asm/beeper.asm b/src/lib/arch/zx48k/runtime/beeper.asm similarity index 100% rename from src/arch/zx48k/library-asm/beeper.asm rename to src/lib/arch/zx48k/runtime/beeper.asm diff --git a/src/arch/zx48k/library-asm/bnot16.asm b/src/lib/arch/zx48k/runtime/bnot16.asm similarity index 100% rename from src/arch/zx48k/library-asm/bnot16.asm rename to src/lib/arch/zx48k/runtime/bnot16.asm diff --git a/src/arch/zx48k/library-asm/bnot32.asm b/src/lib/arch/zx48k/runtime/bnot32.asm similarity index 100% rename from src/arch/zx48k/library-asm/bnot32.asm rename to src/lib/arch/zx48k/runtime/bnot32.asm diff --git a/src/arch/zx48k/library-asm/bold.asm b/src/lib/arch/zx48k/runtime/bold.asm similarity index 100% rename from src/arch/zx48k/library-asm/bold.asm rename to src/lib/arch/zx48k/runtime/bold.asm diff --git a/src/arch/zx48k/library-asm/bor16.asm b/src/lib/arch/zx48k/runtime/bor16.asm similarity index 100% rename from src/arch/zx48k/library-asm/bor16.asm rename to src/lib/arch/zx48k/runtime/bor16.asm diff --git a/src/arch/zx48k/library-asm/bor32.asm b/src/lib/arch/zx48k/runtime/bor32.asm similarity index 100% rename from src/arch/zx48k/library-asm/bor32.asm rename to src/lib/arch/zx48k/runtime/bor32.asm diff --git a/src/arch/zx48k/library-asm/border.asm b/src/lib/arch/zx48k/runtime/border.asm similarity index 100% rename from src/arch/zx48k/library-asm/border.asm rename to src/lib/arch/zx48k/runtime/border.asm diff --git a/src/arch/zx48k/library-asm/bound.asm b/src/lib/arch/zx48k/runtime/bound.asm similarity index 100% rename from src/arch/zx48k/library-asm/bound.asm rename to src/lib/arch/zx48k/runtime/bound.asm diff --git a/src/arch/zx48k/library-asm/break.asm b/src/lib/arch/zx48k/runtime/break.asm similarity index 100% rename from src/arch/zx48k/library-asm/break.asm rename to src/lib/arch/zx48k/runtime/break.asm diff --git a/src/arch/zx48k/library-asm/bright.asm b/src/lib/arch/zx48k/runtime/bright.asm similarity index 100% rename from src/arch/zx48k/library-asm/bright.asm rename to src/lib/arch/zx48k/runtime/bright.asm diff --git a/src/arch/zx48k/library-asm/bxor16.asm b/src/lib/arch/zx48k/runtime/bxor16.asm similarity index 100% rename from src/arch/zx48k/library-asm/bxor16.asm rename to src/lib/arch/zx48k/runtime/bxor16.asm diff --git a/src/arch/zx48k/library-asm/bxor32.asm b/src/lib/arch/zx48k/runtime/bxor32.asm similarity index 100% rename from src/arch/zx48k/library-asm/bxor32.asm rename to src/lib/arch/zx48k/runtime/bxor32.asm diff --git a/src/arch/zx48k/library-asm/calloc.asm b/src/lib/arch/zx48k/runtime/calloc.asm similarity index 100% rename from src/arch/zx48k/library-asm/calloc.asm rename to src/lib/arch/zx48k/runtime/calloc.asm diff --git a/src/arch/zx48k/library-asm/chr.asm b/src/lib/arch/zx48k/runtime/chr.asm similarity index 100% rename from src/arch/zx48k/library-asm/chr.asm rename to src/lib/arch/zx48k/runtime/chr.asm diff --git a/src/arch/zx48k/library-asm/circle.asm b/src/lib/arch/zx48k/runtime/circle.asm similarity index 100% rename from src/arch/zx48k/library-asm/circle.asm rename to src/lib/arch/zx48k/runtime/circle.asm diff --git a/src/arch/zx48k/library-asm/cls.asm b/src/lib/arch/zx48k/runtime/cls.asm similarity index 100% rename from src/arch/zx48k/library-asm/cls.asm rename to src/lib/arch/zx48k/runtime/cls.asm diff --git a/src/arch/zx48k/library-asm/copy_attr.asm b/src/lib/arch/zx48k/runtime/copy_attr.asm similarity index 100% rename from src/arch/zx48k/library-asm/copy_attr.asm rename to src/lib/arch/zx48k/runtime/copy_attr.asm diff --git a/src/arch/zx48k/library-asm/cos.asm b/src/lib/arch/zx48k/runtime/cos.asm similarity index 100% rename from src/arch/zx48k/library-asm/cos.asm rename to src/lib/arch/zx48k/runtime/cos.asm diff --git a/src/arch/zx48k/library-asm/div16.asm b/src/lib/arch/zx48k/runtime/div16.asm similarity index 100% rename from src/arch/zx48k/library-asm/div16.asm rename to src/lib/arch/zx48k/runtime/div16.asm diff --git a/src/arch/zx48k/library-asm/div32.asm b/src/lib/arch/zx48k/runtime/div32.asm similarity index 100% rename from src/arch/zx48k/library-asm/div32.asm rename to src/lib/arch/zx48k/runtime/div32.asm diff --git a/src/arch/zx48k/library-asm/div8.asm b/src/lib/arch/zx48k/runtime/div8.asm similarity index 100% rename from src/arch/zx48k/library-asm/div8.asm rename to src/lib/arch/zx48k/runtime/div8.asm diff --git a/src/arch/zx48k/library-asm/divf.asm b/src/lib/arch/zx48k/runtime/divf.asm similarity index 100% rename from src/arch/zx48k/library-asm/divf.asm rename to src/lib/arch/zx48k/runtime/divf.asm diff --git a/src/arch/zx48k/library-asm/divf16.asm b/src/lib/arch/zx48k/runtime/divf16.asm similarity index 100% rename from src/arch/zx48k/library-asm/divf16.asm rename to src/lib/arch/zx48k/runtime/divf16.asm diff --git a/src/arch/zx48k/library-asm/draw.asm b/src/lib/arch/zx48k/runtime/draw.asm similarity index 100% rename from src/arch/zx48k/library-asm/draw.asm rename to src/lib/arch/zx48k/runtime/draw.asm diff --git a/src/arch/zx48k/library-asm/draw3.asm b/src/lib/arch/zx48k/runtime/draw3.asm similarity index 100% rename from src/arch/zx48k/library-asm/draw3.asm rename to src/lib/arch/zx48k/runtime/draw3.asm diff --git a/src/arch/zx48k/library-asm/eq16.asm b/src/lib/arch/zx48k/runtime/eq16.asm similarity index 100% rename from src/arch/zx48k/library-asm/eq16.asm rename to src/lib/arch/zx48k/runtime/eq16.asm diff --git a/src/arch/zx48k/library-asm/eq32.asm b/src/lib/arch/zx48k/runtime/eq32.asm similarity index 100% rename from src/arch/zx48k/library-asm/eq32.asm rename to src/lib/arch/zx48k/runtime/eq32.asm diff --git a/src/arch/zx48k/library-asm/eqf.asm b/src/lib/arch/zx48k/runtime/eqf.asm similarity index 100% rename from src/arch/zx48k/library-asm/eqf.asm rename to src/lib/arch/zx48k/runtime/eqf.asm diff --git a/src/arch/zx48k/library-asm/error.asm b/src/lib/arch/zx48k/runtime/error.asm similarity index 100% rename from src/arch/zx48k/library-asm/error.asm rename to src/lib/arch/zx48k/runtime/error.asm diff --git a/src/arch/zx48k/library-asm/exp.asm b/src/lib/arch/zx48k/runtime/exp.asm similarity index 100% rename from src/arch/zx48k/library-asm/exp.asm rename to src/lib/arch/zx48k/runtime/exp.asm diff --git a/src/arch/zx48k/library-asm/f16tofreg.asm b/src/lib/arch/zx48k/runtime/f16tofreg.asm similarity index 100% rename from src/arch/zx48k/library-asm/f16tofreg.asm rename to src/lib/arch/zx48k/runtime/f16tofreg.asm diff --git a/src/arch/zx48k/library-asm/flash.asm b/src/lib/arch/zx48k/runtime/flash.asm similarity index 100% rename from src/arch/zx48k/library-asm/flash.asm rename to src/lib/arch/zx48k/runtime/flash.asm diff --git a/src/arch/zx48k/library-asm/free.asm b/src/lib/arch/zx48k/runtime/free.asm similarity index 100% rename from src/arch/zx48k/library-asm/free.asm rename to src/lib/arch/zx48k/runtime/free.asm diff --git a/src/arch/zx48k/library-asm/ftof16reg.asm b/src/lib/arch/zx48k/runtime/ftof16reg.asm similarity index 100% rename from src/arch/zx48k/library-asm/ftof16reg.asm rename to src/lib/arch/zx48k/runtime/ftof16reg.asm diff --git a/src/arch/zx48k/library-asm/ftou32reg.asm b/src/lib/arch/zx48k/runtime/ftou32reg.asm similarity index 100% rename from src/arch/zx48k/library-asm/ftou32reg.asm rename to src/lib/arch/zx48k/runtime/ftou32reg.asm diff --git a/src/arch/zx48k/library-asm/gef.asm b/src/lib/arch/zx48k/runtime/gef.asm similarity index 100% rename from src/arch/zx48k/library-asm/gef.asm rename to src/lib/arch/zx48k/runtime/gef.asm diff --git a/src/arch/zx48k/library-asm/gtf.asm b/src/lib/arch/zx48k/runtime/gtf.asm similarity index 100% rename from src/arch/zx48k/library-asm/gtf.asm rename to src/lib/arch/zx48k/runtime/gtf.asm diff --git a/src/arch/zx48k/library-asm/heapinit.asm b/src/lib/arch/zx48k/runtime/heapinit.asm similarity index 100% rename from src/arch/zx48k/library-asm/heapinit.asm rename to src/lib/arch/zx48k/runtime/heapinit.asm diff --git a/src/arch/zx48k/library-asm/iload32.asm b/src/lib/arch/zx48k/runtime/iload32.asm similarity index 100% rename from src/arch/zx48k/library-asm/iload32.asm rename to src/lib/arch/zx48k/runtime/iload32.asm diff --git a/src/arch/zx48k/library-asm/iloadf.asm b/src/lib/arch/zx48k/runtime/iloadf.asm similarity index 100% rename from src/arch/zx48k/library-asm/iloadf.asm rename to src/lib/arch/zx48k/runtime/iloadf.asm diff --git a/src/arch/zx48k/library-asm/in_screen.asm b/src/lib/arch/zx48k/runtime/in_screen.asm similarity index 100% rename from src/arch/zx48k/library-asm/in_screen.asm rename to src/lib/arch/zx48k/runtime/in_screen.asm diff --git a/src/arch/zx48k/library-asm/ink.asm b/src/lib/arch/zx48k/runtime/ink.asm similarity index 100% rename from src/arch/zx48k/library-asm/ink.asm rename to src/lib/arch/zx48k/runtime/ink.asm diff --git a/src/arch/zx48k/library-asm/inkey.asm b/src/lib/arch/zx48k/runtime/inkey.asm similarity index 100% rename from src/arch/zx48k/library-asm/inkey.asm rename to src/lib/arch/zx48k/runtime/inkey.asm diff --git a/src/arch/zx48k/library-asm/inverse.asm b/src/lib/arch/zx48k/runtime/inverse.asm similarity index 100% rename from src/arch/zx48k/library-asm/inverse.asm rename to src/lib/arch/zx48k/runtime/inverse.asm diff --git a/src/arch/zx48k/library-asm/istore16.asm b/src/lib/arch/zx48k/runtime/istore16.asm similarity index 100% rename from src/arch/zx48k/library-asm/istore16.asm rename to src/lib/arch/zx48k/runtime/istore16.asm diff --git a/src/arch/zx48k/library-asm/italic.asm b/src/lib/arch/zx48k/runtime/italic.asm similarity index 100% rename from src/arch/zx48k/library-asm/italic.asm rename to src/lib/arch/zx48k/runtime/italic.asm diff --git a/src/arch/zx48k/library-asm/lddede.asm b/src/lib/arch/zx48k/runtime/lddede.asm similarity index 100% rename from src/arch/zx48k/library-asm/lddede.asm rename to src/lib/arch/zx48k/runtime/lddede.asm diff --git a/src/arch/zx48k/library-asm/lef.asm b/src/lib/arch/zx48k/runtime/lef.asm similarity index 100% rename from src/arch/zx48k/library-asm/lef.asm rename to src/lib/arch/zx48k/runtime/lef.asm diff --git a/src/arch/zx48k/library-asm/lei16.asm b/src/lib/arch/zx48k/runtime/lei16.asm similarity index 100% rename from src/arch/zx48k/library-asm/lei16.asm rename to src/lib/arch/zx48k/runtime/lei16.asm diff --git a/src/arch/zx48k/library-asm/lei32.asm b/src/lib/arch/zx48k/runtime/lei32.asm similarity index 100% rename from src/arch/zx48k/library-asm/lei32.asm rename to src/lib/arch/zx48k/runtime/lei32.asm diff --git a/src/arch/zx48k/library-asm/lei8.asm b/src/lib/arch/zx48k/runtime/lei8.asm similarity index 100% rename from src/arch/zx48k/library-asm/lei8.asm rename to src/lib/arch/zx48k/runtime/lei8.asm diff --git a/src/arch/zx48k/library-asm/letsubstr.asm b/src/lib/arch/zx48k/runtime/letsubstr.asm similarity index 100% rename from src/arch/zx48k/library-asm/letsubstr.asm rename to src/lib/arch/zx48k/runtime/letsubstr.asm diff --git a/src/arch/zx48k/library-asm/load.asm b/src/lib/arch/zx48k/runtime/load.asm similarity index 100% rename from src/arch/zx48k/library-asm/load.asm rename to src/lib/arch/zx48k/runtime/load.asm diff --git a/src/arch/zx48k/library-asm/loadstr.asm b/src/lib/arch/zx48k/runtime/loadstr.asm similarity index 100% rename from src/arch/zx48k/library-asm/loadstr.asm rename to src/lib/arch/zx48k/runtime/loadstr.asm diff --git a/src/arch/zx48k/library-asm/logn.asm b/src/lib/arch/zx48k/runtime/logn.asm similarity index 100% rename from src/arch/zx48k/library-asm/logn.asm rename to src/lib/arch/zx48k/runtime/logn.asm diff --git a/src/arch/zx48k/library-asm/ltf.asm b/src/lib/arch/zx48k/runtime/ltf.asm similarity index 100% rename from src/arch/zx48k/library-asm/ltf.asm rename to src/lib/arch/zx48k/runtime/ltf.asm diff --git a/src/arch/zx48k/library-asm/lti16.asm b/src/lib/arch/zx48k/runtime/lti16.asm similarity index 100% rename from src/arch/zx48k/library-asm/lti16.asm rename to src/lib/arch/zx48k/runtime/lti16.asm diff --git a/src/arch/zx48k/library-asm/lti32.asm b/src/lib/arch/zx48k/runtime/lti32.asm similarity index 100% rename from src/arch/zx48k/library-asm/lti32.asm rename to src/lib/arch/zx48k/runtime/lti32.asm diff --git a/src/arch/zx48k/library-asm/lti8.asm b/src/lib/arch/zx48k/runtime/lti8.asm similarity index 100% rename from src/arch/zx48k/library-asm/lti8.asm rename to src/lib/arch/zx48k/runtime/lti8.asm diff --git a/src/arch/zx48k/library-asm/memcopy.asm b/src/lib/arch/zx48k/runtime/memcopy.asm similarity index 100% rename from src/arch/zx48k/library-asm/memcopy.asm rename to src/lib/arch/zx48k/runtime/memcopy.asm diff --git a/src/arch/zx48k/library-asm/modf.asm b/src/lib/arch/zx48k/runtime/modf.asm similarity index 100% rename from src/arch/zx48k/library-asm/modf.asm rename to src/lib/arch/zx48k/runtime/modf.asm diff --git a/src/arch/zx48k/library-asm/modf16.asm b/src/lib/arch/zx48k/runtime/modf16.asm similarity index 100% rename from src/arch/zx48k/library-asm/modf16.asm rename to src/lib/arch/zx48k/runtime/modf16.asm diff --git a/src/arch/zx48k/library-asm/mul16.asm b/src/lib/arch/zx48k/runtime/mul16.asm similarity index 100% rename from src/arch/zx48k/library-asm/mul16.asm rename to src/lib/arch/zx48k/runtime/mul16.asm diff --git a/src/arch/zx48k/library-asm/mul32.asm b/src/lib/arch/zx48k/runtime/mul32.asm similarity index 100% rename from src/arch/zx48k/library-asm/mul32.asm rename to src/lib/arch/zx48k/runtime/mul32.asm diff --git a/src/arch/zx48k/library-asm/mul8.asm b/src/lib/arch/zx48k/runtime/mul8.asm similarity index 100% rename from src/arch/zx48k/library-asm/mul8.asm rename to src/lib/arch/zx48k/runtime/mul8.asm diff --git a/src/arch/zx48k/library-asm/mulf.asm b/src/lib/arch/zx48k/runtime/mulf.asm similarity index 100% rename from src/arch/zx48k/library-asm/mulf.asm rename to src/lib/arch/zx48k/runtime/mulf.asm diff --git a/src/arch/zx48k/library-asm/mulf16.asm b/src/lib/arch/zx48k/runtime/mulf16.asm similarity index 100% rename from src/arch/zx48k/library-asm/mulf16.asm rename to src/lib/arch/zx48k/runtime/mulf16.asm diff --git a/src/arch/zx48k/library-asm/nef.asm b/src/lib/arch/zx48k/runtime/nef.asm similarity index 100% rename from src/arch/zx48k/library-asm/nef.asm rename to src/lib/arch/zx48k/runtime/nef.asm diff --git a/src/arch/zx48k/library-asm/neg16.asm b/src/lib/arch/zx48k/runtime/neg16.asm similarity index 100% rename from src/arch/zx48k/library-asm/neg16.asm rename to src/lib/arch/zx48k/runtime/neg16.asm diff --git a/src/arch/zx48k/library-asm/neg32.asm b/src/lib/arch/zx48k/runtime/neg32.asm similarity index 100% rename from src/arch/zx48k/library-asm/neg32.asm rename to src/lib/arch/zx48k/runtime/neg32.asm diff --git a/src/arch/zx48k/library-asm/negf.asm b/src/lib/arch/zx48k/runtime/negf.asm similarity index 100% rename from src/arch/zx48k/library-asm/negf.asm rename to src/lib/arch/zx48k/runtime/negf.asm diff --git a/src/arch/zx48k/library-asm/not32.asm b/src/lib/arch/zx48k/runtime/not32.asm similarity index 100% rename from src/arch/zx48k/library-asm/not32.asm rename to src/lib/arch/zx48k/runtime/not32.asm diff --git a/src/arch/zx48k/library-asm/notf.asm b/src/lib/arch/zx48k/runtime/notf.asm similarity index 100% rename from src/arch/zx48k/library-asm/notf.asm rename to src/lib/arch/zx48k/runtime/notf.asm diff --git a/src/arch/zx48k/library-asm/ongoto.asm b/src/lib/arch/zx48k/runtime/ongoto.asm similarity index 100% rename from src/arch/zx48k/library-asm/ongoto.asm rename to src/lib/arch/zx48k/runtime/ongoto.asm diff --git a/src/arch/zx48k/library-asm/or32.asm b/src/lib/arch/zx48k/runtime/or32.asm similarity index 100% rename from src/arch/zx48k/library-asm/or32.asm rename to src/lib/arch/zx48k/runtime/or32.asm diff --git a/src/arch/zx48k/library-asm/orf.asm b/src/lib/arch/zx48k/runtime/orf.asm similarity index 100% rename from src/arch/zx48k/library-asm/orf.asm rename to src/lib/arch/zx48k/runtime/orf.asm diff --git a/src/arch/zx48k/library-asm/over.asm b/src/lib/arch/zx48k/runtime/over.asm similarity index 100% rename from src/arch/zx48k/library-asm/over.asm rename to src/lib/arch/zx48k/runtime/over.asm diff --git a/src/arch/zx48k/library-asm/paper.asm b/src/lib/arch/zx48k/runtime/paper.asm similarity index 100% rename from src/arch/zx48k/library-asm/paper.asm rename to src/lib/arch/zx48k/runtime/paper.asm diff --git a/src/arch/zx48k/library-asm/pause.asm b/src/lib/arch/zx48k/runtime/pause.asm similarity index 100% rename from src/arch/zx48k/library-asm/pause.asm rename to src/lib/arch/zx48k/runtime/pause.asm diff --git a/src/arch/zx48k/library-asm/pistore32.asm b/src/lib/arch/zx48k/runtime/pistore32.asm similarity index 100% rename from src/arch/zx48k/library-asm/pistore32.asm rename to src/lib/arch/zx48k/runtime/pistore32.asm diff --git a/src/arch/zx48k/library-asm/ploadf.asm b/src/lib/arch/zx48k/runtime/ploadf.asm similarity index 100% rename from src/arch/zx48k/library-asm/ploadf.asm rename to src/lib/arch/zx48k/runtime/ploadf.asm diff --git a/src/arch/zx48k/library-asm/plot.asm b/src/lib/arch/zx48k/runtime/plot.asm similarity index 100% rename from src/arch/zx48k/library-asm/plot.asm rename to src/lib/arch/zx48k/runtime/plot.asm diff --git a/src/arch/zx48k/library-asm/pow.asm b/src/lib/arch/zx48k/runtime/pow.asm similarity index 100% rename from src/arch/zx48k/library-asm/pow.asm rename to src/lib/arch/zx48k/runtime/pow.asm diff --git a/src/arch/zx48k/library-asm/print.asm b/src/lib/arch/zx48k/runtime/print.asm similarity index 100% rename from src/arch/zx48k/library-asm/print.asm rename to src/lib/arch/zx48k/runtime/print.asm diff --git a/src/arch/zx48k/library-asm/print_eol_attr.asm b/src/lib/arch/zx48k/runtime/print_eol_attr.asm similarity index 100% rename from src/arch/zx48k/library-asm/print_eol_attr.asm rename to src/lib/arch/zx48k/runtime/print_eol_attr.asm diff --git a/src/arch/zx48k/library-asm/printf.asm b/src/lib/arch/zx48k/runtime/printf.asm similarity index 100% rename from src/arch/zx48k/library-asm/printf.asm rename to src/lib/arch/zx48k/runtime/printf.asm diff --git a/src/arch/zx48k/library-asm/printf16.asm b/src/lib/arch/zx48k/runtime/printf16.asm similarity index 100% rename from src/arch/zx48k/library-asm/printf16.asm rename to src/lib/arch/zx48k/runtime/printf16.asm diff --git a/src/arch/zx48k/library-asm/printi16.asm b/src/lib/arch/zx48k/runtime/printi16.asm similarity index 100% rename from src/arch/zx48k/library-asm/printi16.asm rename to src/lib/arch/zx48k/runtime/printi16.asm diff --git a/src/arch/zx48k/library-asm/printi32.asm b/src/lib/arch/zx48k/runtime/printi32.asm similarity index 100% rename from src/arch/zx48k/library-asm/printi32.asm rename to src/lib/arch/zx48k/runtime/printi32.asm diff --git a/src/arch/zx48k/library-asm/printi8.asm b/src/lib/arch/zx48k/runtime/printi8.asm similarity index 100% rename from src/arch/zx48k/library-asm/printi8.asm rename to src/lib/arch/zx48k/runtime/printi8.asm diff --git a/src/arch/zx48k/library-asm/printnum.asm b/src/lib/arch/zx48k/runtime/printnum.asm similarity index 100% rename from src/arch/zx48k/library-asm/printnum.asm rename to src/lib/arch/zx48k/runtime/printnum.asm diff --git a/src/arch/zx48k/library-asm/printstr.asm b/src/lib/arch/zx48k/runtime/printstr.asm similarity index 100% rename from src/arch/zx48k/library-asm/printstr.asm rename to src/lib/arch/zx48k/runtime/printstr.asm diff --git a/src/arch/zx48k/library-asm/printu16.asm b/src/lib/arch/zx48k/runtime/printu16.asm similarity index 100% rename from src/arch/zx48k/library-asm/printu16.asm rename to src/lib/arch/zx48k/runtime/printu16.asm diff --git a/src/arch/zx48k/library-asm/printu32.asm b/src/lib/arch/zx48k/runtime/printu32.asm similarity index 100% rename from src/arch/zx48k/library-asm/printu32.asm rename to src/lib/arch/zx48k/runtime/printu32.asm diff --git a/src/arch/zx48k/library-asm/printu8.asm b/src/lib/arch/zx48k/runtime/printu8.asm similarity index 100% rename from src/arch/zx48k/library-asm/printu8.asm rename to src/lib/arch/zx48k/runtime/printu8.asm diff --git a/src/arch/zx48k/library-asm/pstore32.asm b/src/lib/arch/zx48k/runtime/pstore32.asm similarity index 100% rename from src/arch/zx48k/library-asm/pstore32.asm rename to src/lib/arch/zx48k/runtime/pstore32.asm diff --git a/src/arch/zx48k/library-asm/pstoref.asm b/src/lib/arch/zx48k/runtime/pstoref.asm similarity index 100% rename from src/arch/zx48k/library-asm/pstoref.asm rename to src/lib/arch/zx48k/runtime/pstoref.asm diff --git a/src/arch/zx48k/library-asm/pstorestr.asm b/src/lib/arch/zx48k/runtime/pstorestr.asm similarity index 100% rename from src/arch/zx48k/library-asm/pstorestr.asm rename to src/lib/arch/zx48k/runtime/pstorestr.asm diff --git a/src/arch/zx48k/library-asm/pstorestr2.asm b/src/lib/arch/zx48k/runtime/pstorestr2.asm similarity index 100% rename from src/arch/zx48k/library-asm/pstorestr2.asm rename to src/lib/arch/zx48k/runtime/pstorestr2.asm diff --git a/src/arch/zx48k/library-asm/pushf.asm b/src/lib/arch/zx48k/runtime/pushf.asm similarity index 100% rename from src/arch/zx48k/library-asm/pushf.asm rename to src/lib/arch/zx48k/runtime/pushf.asm diff --git a/src/arch/zx48k/library-asm/random.asm b/src/lib/arch/zx48k/runtime/random.asm similarity index 100% rename from src/arch/zx48k/library-asm/random.asm rename to src/lib/arch/zx48k/runtime/random.asm diff --git a/src/arch/zx48k/library-asm/read_restore.asm b/src/lib/arch/zx48k/runtime/read_restore.asm similarity index 100% rename from src/arch/zx48k/library-asm/read_restore.asm rename to src/lib/arch/zx48k/runtime/read_restore.asm diff --git a/src/arch/zx48k/library-asm/realloc.asm b/src/lib/arch/zx48k/runtime/realloc.asm similarity index 100% rename from src/arch/zx48k/library-asm/realloc.asm rename to src/lib/arch/zx48k/runtime/realloc.asm diff --git a/src/arch/zx48k/library-asm/save.asm b/src/lib/arch/zx48k/runtime/save.asm similarity index 100% rename from src/arch/zx48k/library-asm/save.asm rename to src/lib/arch/zx48k/runtime/save.asm diff --git a/src/arch/zx48k/library-asm/set_pixel_addr_attr.asm b/src/lib/arch/zx48k/runtime/set_pixel_addr_attr.asm similarity index 100% rename from src/arch/zx48k/library-asm/set_pixel_addr_attr.asm rename to src/lib/arch/zx48k/runtime/set_pixel_addr_attr.asm diff --git a/src/arch/zx48k/library-asm/sgn.asm b/src/lib/arch/zx48k/runtime/sgn.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgn.asm rename to src/lib/arch/zx48k/runtime/sgn.asm diff --git a/src/arch/zx48k/library-asm/sgnf.asm b/src/lib/arch/zx48k/runtime/sgnf.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgnf.asm rename to src/lib/arch/zx48k/runtime/sgnf.asm diff --git a/src/arch/zx48k/library-asm/sgnf16.asm b/src/lib/arch/zx48k/runtime/sgnf16.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgnf16.asm rename to src/lib/arch/zx48k/runtime/sgnf16.asm diff --git a/src/arch/zx48k/library-asm/sgni16.asm b/src/lib/arch/zx48k/runtime/sgni16.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgni16.asm rename to src/lib/arch/zx48k/runtime/sgni16.asm diff --git a/src/arch/zx48k/library-asm/sgni32.asm b/src/lib/arch/zx48k/runtime/sgni32.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgni32.asm rename to src/lib/arch/zx48k/runtime/sgni32.asm diff --git a/src/arch/zx48k/library-asm/sgni8.asm b/src/lib/arch/zx48k/runtime/sgni8.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgni8.asm rename to src/lib/arch/zx48k/runtime/sgni8.asm diff --git a/src/arch/zx48k/library-asm/sgnu16.asm b/src/lib/arch/zx48k/runtime/sgnu16.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgnu16.asm rename to src/lib/arch/zx48k/runtime/sgnu16.asm diff --git a/src/arch/zx48k/library-asm/sgnu32.asm b/src/lib/arch/zx48k/runtime/sgnu32.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgnu32.asm rename to src/lib/arch/zx48k/runtime/sgnu32.asm diff --git a/src/arch/zx48k/library-asm/sgnu8.asm b/src/lib/arch/zx48k/runtime/sgnu8.asm similarity index 100% rename from src/arch/zx48k/library-asm/sgnu8.asm rename to src/lib/arch/zx48k/runtime/sgnu8.asm diff --git a/src/arch/zx48k/library-asm/shl32.asm b/src/lib/arch/zx48k/runtime/shl32.asm similarity index 100% rename from src/arch/zx48k/library-asm/shl32.asm rename to src/lib/arch/zx48k/runtime/shl32.asm diff --git a/src/arch/zx48k/library-asm/shra32.asm b/src/lib/arch/zx48k/runtime/shra32.asm similarity index 100% rename from src/arch/zx48k/library-asm/shra32.asm rename to src/lib/arch/zx48k/runtime/shra32.asm diff --git a/src/arch/zx48k/library-asm/shrl32.asm b/src/lib/arch/zx48k/runtime/shrl32.asm similarity index 100% rename from src/arch/zx48k/library-asm/shrl32.asm rename to src/lib/arch/zx48k/runtime/shrl32.asm diff --git a/src/arch/zx48k/library-asm/sin.asm b/src/lib/arch/zx48k/runtime/sin.asm similarity index 100% rename from src/arch/zx48k/library-asm/sin.asm rename to src/lib/arch/zx48k/runtime/sin.asm diff --git a/src/arch/zx48k/library-asm/spectranet.inc b/src/lib/arch/zx48k/runtime/spectranet.inc similarity index 100% rename from src/arch/zx48k/library-asm/spectranet.inc rename to src/lib/arch/zx48k/runtime/spectranet.inc diff --git a/src/arch/zx48k/library-asm/sposn.asm b/src/lib/arch/zx48k/runtime/sposn.asm similarity index 100% rename from src/arch/zx48k/library-asm/sposn.asm rename to src/lib/arch/zx48k/runtime/sposn.asm diff --git a/src/arch/zx48k/library-asm/sqrt.asm b/src/lib/arch/zx48k/runtime/sqrt.asm similarity index 100% rename from src/arch/zx48k/library-asm/sqrt.asm rename to src/lib/arch/zx48k/runtime/sqrt.asm diff --git a/src/arch/zx48k/library-asm/stackf.asm b/src/lib/arch/zx48k/runtime/stackf.asm similarity index 100% rename from src/arch/zx48k/library-asm/stackf.asm rename to src/lib/arch/zx48k/runtime/stackf.asm diff --git a/src/arch/zx48k/library-asm/store32.asm b/src/lib/arch/zx48k/runtime/store32.asm similarity index 100% rename from src/arch/zx48k/library-asm/store32.asm rename to src/lib/arch/zx48k/runtime/store32.asm diff --git a/src/arch/zx48k/library-asm/storef.asm b/src/lib/arch/zx48k/runtime/storef.asm similarity index 100% rename from src/arch/zx48k/library-asm/storef.asm rename to src/lib/arch/zx48k/runtime/storef.asm diff --git a/src/arch/zx48k/library-asm/storestr.asm b/src/lib/arch/zx48k/runtime/storestr.asm similarity index 100% rename from src/arch/zx48k/library-asm/storestr.asm rename to src/lib/arch/zx48k/runtime/storestr.asm diff --git a/src/arch/zx48k/library-asm/storestr2.asm b/src/lib/arch/zx48k/runtime/storestr2.asm similarity index 100% rename from src/arch/zx48k/library-asm/storestr2.asm rename to src/lib/arch/zx48k/runtime/storestr2.asm diff --git a/src/arch/zx48k/library-asm/str.asm b/src/lib/arch/zx48k/runtime/str.asm similarity index 100% rename from src/arch/zx48k/library-asm/str.asm rename to src/lib/arch/zx48k/runtime/str.asm diff --git a/src/arch/zx48k/library-asm/strarraycpy.asm b/src/lib/arch/zx48k/runtime/strarraycpy.asm similarity index 100% rename from src/arch/zx48k/library-asm/strarraycpy.asm rename to src/lib/arch/zx48k/runtime/strarraycpy.asm diff --git a/src/arch/zx48k/library-asm/strcat.asm b/src/lib/arch/zx48k/runtime/strcat.asm similarity index 100% rename from src/arch/zx48k/library-asm/strcat.asm rename to src/lib/arch/zx48k/runtime/strcat.asm diff --git a/src/arch/zx48k/library-asm/strcpy.asm b/src/lib/arch/zx48k/runtime/strcpy.asm similarity index 100% rename from src/arch/zx48k/library-asm/strcpy.asm rename to src/lib/arch/zx48k/runtime/strcpy.asm diff --git a/src/arch/zx48k/library-asm/strictbool.asm b/src/lib/arch/zx48k/runtime/strictbool.asm similarity index 100% rename from src/arch/zx48k/library-asm/strictbool.asm rename to src/lib/arch/zx48k/runtime/strictbool.asm diff --git a/src/arch/zx48k/library-asm/string.asm b/src/lib/arch/zx48k/runtime/string.asm similarity index 100% rename from src/arch/zx48k/library-asm/string.asm rename to src/lib/arch/zx48k/runtime/string.asm diff --git a/src/arch/zx48k/library-asm/strlen.asm b/src/lib/arch/zx48k/runtime/strlen.asm similarity index 100% rename from src/arch/zx48k/library-asm/strlen.asm rename to src/lib/arch/zx48k/runtime/strlen.asm diff --git a/src/arch/zx48k/library-asm/strslice.asm b/src/lib/arch/zx48k/runtime/strslice.asm similarity index 100% rename from src/arch/zx48k/library-asm/strslice.asm rename to src/lib/arch/zx48k/runtime/strslice.asm diff --git a/src/arch/zx48k/library-asm/sub32.asm b/src/lib/arch/zx48k/runtime/sub32.asm similarity index 100% rename from src/arch/zx48k/library-asm/sub32.asm rename to src/lib/arch/zx48k/runtime/sub32.asm diff --git a/src/arch/zx48k/library-asm/subf.asm b/src/lib/arch/zx48k/runtime/subf.asm similarity index 100% rename from src/arch/zx48k/library-asm/subf.asm rename to src/lib/arch/zx48k/runtime/subf.asm diff --git a/src/arch/zx48k/library-asm/swap32.asm b/src/lib/arch/zx48k/runtime/swap32.asm similarity index 100% rename from src/arch/zx48k/library-asm/swap32.asm rename to src/lib/arch/zx48k/runtime/swap32.asm diff --git a/src/arch/zx48k/library-asm/sysvars.asm b/src/lib/arch/zx48k/runtime/sysvars.asm similarity index 100% rename from src/arch/zx48k/library-asm/sysvars.asm rename to src/lib/arch/zx48k/runtime/sysvars.asm diff --git a/src/arch/zx48k/library-asm/table_jump.asm b/src/lib/arch/zx48k/runtime/table_jump.asm similarity index 100% rename from src/arch/zx48k/library-asm/table_jump.asm rename to src/lib/arch/zx48k/runtime/table_jump.asm diff --git a/src/arch/zx48k/library-asm/tan.asm b/src/lib/arch/zx48k/runtime/tan.asm similarity index 100% rename from src/arch/zx48k/library-asm/tan.asm rename to src/lib/arch/zx48k/runtime/tan.asm diff --git a/src/arch/zx48k/library-asm/u32tofreg.asm b/src/lib/arch/zx48k/runtime/u32tofreg.asm similarity index 100% rename from src/arch/zx48k/library-asm/u32tofreg.asm rename to src/lib/arch/zx48k/runtime/u32tofreg.asm diff --git a/src/arch/zx48k/library-asm/usr.asm b/src/lib/arch/zx48k/runtime/usr.asm similarity index 100% rename from src/arch/zx48k/library-asm/usr.asm rename to src/lib/arch/zx48k/runtime/usr.asm diff --git a/src/arch/zx48k/library-asm/usr_str.asm b/src/lib/arch/zx48k/runtime/usr_str.asm similarity index 100% rename from src/arch/zx48k/library-asm/usr_str.asm rename to src/lib/arch/zx48k/runtime/usr_str.asm diff --git a/src/arch/zx48k/library-asm/val.asm b/src/lib/arch/zx48k/runtime/val.asm similarity index 100% rename from src/arch/zx48k/library-asm/val.asm rename to src/lib/arch/zx48k/runtime/val.asm diff --git a/src/arch/zx48k/library-asm/xor16.asm b/src/lib/arch/zx48k/runtime/xor16.asm similarity index 100% rename from src/arch/zx48k/library-asm/xor16.asm rename to src/lib/arch/zx48k/runtime/xor16.asm diff --git a/src/arch/zx48k/library-asm/xor32.asm b/src/lib/arch/zx48k/runtime/xor32.asm similarity index 100% rename from src/arch/zx48k/library-asm/xor32.asm rename to src/lib/arch/zx48k/runtime/xor32.asm diff --git a/src/arch/zx48k/library-asm/xor8.asm b/src/lib/arch/zx48k/runtime/xor8.asm similarity index 100% rename from src/arch/zx48k/library-asm/xor8.asm rename to src/lib/arch/zx48k/runtime/xor8.asm diff --git a/src/arch/zx48k/library-asm/xorf.asm b/src/lib/arch/zx48k/runtime/xorf.asm similarity index 100% rename from src/arch/zx48k/library-asm/xorf.asm rename to src/lib/arch/zx48k/runtime/xorf.asm diff --git a/src/arch/zx48k/library/IM2.bas b/src/lib/arch/zx48k/stdlib/IM2.bas similarity index 100% rename from src/arch/zx48k/library/IM2.bas rename to src/lib/arch/zx48k/stdlib/IM2.bas diff --git a/src/arch/zx48k/library/README b/src/lib/arch/zx48k/stdlib/README similarity index 100% rename from src/arch/zx48k/library/README rename to src/lib/arch/zx48k/stdlib/README diff --git a/src/arch/zx48k/library/SP/Fill.bas b/src/lib/arch/zx48k/stdlib/SP/Fill.bas similarity index 100% rename from src/arch/zx48k/library/SP/Fill.bas rename to src/lib/arch/zx48k/stdlib/SP/Fill.bas diff --git a/src/arch/zx48k/library/alloc.bas b/src/lib/arch/zx48k/stdlib/alloc.bas similarity index 100% rename from src/arch/zx48k/library/alloc.bas rename to src/lib/arch/zx48k/stdlib/alloc.bas diff --git a/src/arch/zx48k/library/asc.bas b/src/lib/arch/zx48k/stdlib/asc.bas similarity index 100% rename from src/arch/zx48k/library/asc.bas rename to src/lib/arch/zx48k/stdlib/asc.bas diff --git a/src/arch/zx48k/library/attr.bas b/src/lib/arch/zx48k/stdlib/attr.bas similarity index 100% rename from src/arch/zx48k/library/attr.bas rename to src/lib/arch/zx48k/stdlib/attr.bas diff --git a/src/arch/zx48k/library/basic.bas b/src/lib/arch/zx48k/stdlib/basic.bas similarity index 100% rename from src/arch/zx48k/library/basic.bas rename to src/lib/arch/zx48k/stdlib/basic.bas diff --git a/src/arch/zx48k/library/clearbox.bas b/src/lib/arch/zx48k/stdlib/clearbox.bas similarity index 100% rename from src/arch/zx48k/library/clearbox.bas rename to src/lib/arch/zx48k/stdlib/clearbox.bas diff --git a/src/arch/zx48k/library/csrlin.bas b/src/lib/arch/zx48k/stdlib/csrlin.bas similarity index 100% rename from src/arch/zx48k/library/csrlin.bas rename to src/lib/arch/zx48k/stdlib/csrlin.bas diff --git a/src/arch/zx48k/library/esxdos.bas b/src/lib/arch/zx48k/stdlib/esxdos.bas similarity index 100% rename from src/arch/zx48k/library/esxdos.bas rename to src/lib/arch/zx48k/stdlib/esxdos.bas diff --git a/src/arch/zx48k/library/fastplot.bas b/src/lib/arch/zx48k/stdlib/fastplot.bas similarity index 100% rename from src/arch/zx48k/library/fastplot.bas rename to src/lib/arch/zx48k/stdlib/fastplot.bas diff --git a/src/arch/zx48k/library/fzx_fonts/academy.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/academy.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/academy.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/academy.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/belegost1.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/belegost1.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/belegost1.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/belegost1.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/belegost2.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/belegost2.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/belegost2.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/belegost2.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/bigbold.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/bigbold.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/bigbold.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/bigbold.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/cobra.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/cobra.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/cobra.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/cobra.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/crash.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/crash.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/crash.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/crash.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/d_o_c.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/d_o_c.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/d_o_c.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/d_o_c.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/eclipse.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/eclipse.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/eclipse.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/eclipse.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/extra.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/extra.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/extra.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/extra.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/hijack.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/hijack.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/hijack.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/hijack.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/italika.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/italika.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/italika.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/italika.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/just6.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/just6.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/just6.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/just6.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/locomotion.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/locomotion.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/locomotion.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/locomotion.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/midnight.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/midnight.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/midnight.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/midnight.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/moonalert.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/moonalert.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/moonalert.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/moonalert.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/nether.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/nether.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/nether.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/nether.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/neverend.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/neverend.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/neverend.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/neverend.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/roman.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/roman.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/roman.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/roman.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/script.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/script.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/script.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/script.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/script2.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/script2.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/script2.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/script2.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/standard.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/standard.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/standard.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/standard.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/tomahawk.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/tomahawk.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/tomahawk.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/tomahawk.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/ultrabold.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/ultrabold.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/ultrabold.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/ultrabold.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/upcasebold.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/upcasebold.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/upcasebold.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/upcasebold.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/wildvest.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/wildvest.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/wildvest.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/wildvest.fzx diff --git a/src/arch/zx48k/library/fzx_fonts/winter.fzx b/src/lib/arch/zx48k/stdlib/fzx_fonts/winter.fzx similarity index 100% rename from src/arch/zx48k/library/fzx_fonts/winter.fzx rename to src/lib/arch/zx48k/stdlib/fzx_fonts/winter.fzx diff --git a/src/arch/zx48k/library/hex.bas b/src/lib/arch/zx48k/stdlib/hex.bas similarity index 100% rename from src/arch/zx48k/library/hex.bas rename to src/lib/arch/zx48k/stdlib/hex.bas diff --git a/src/arch/zx48k/library/input.bas b/src/lib/arch/zx48k/stdlib/input.bas similarity index 100% rename from src/arch/zx48k/library/input.bas rename to src/lib/arch/zx48k/stdlib/input.bas diff --git a/src/arch/zx48k/library/input42.bas b/src/lib/arch/zx48k/stdlib/input42.bas similarity index 100% rename from src/arch/zx48k/library/input42.bas rename to src/lib/arch/zx48k/stdlib/input42.bas diff --git a/src/arch/zx48k/library/keys.bas b/src/lib/arch/zx48k/stdlib/keys.bas similarity index 100% rename from src/arch/zx48k/library/keys.bas rename to src/lib/arch/zx48k/stdlib/keys.bas diff --git a/src/arch/zx48k/library/megalz.bas b/src/lib/arch/zx48k/stdlib/megalz.bas similarity index 100% rename from src/arch/zx48k/library/megalz.bas rename to src/lib/arch/zx48k/stdlib/megalz.bas diff --git a/src/arch/zx48k/library/memcopy.bas b/src/lib/arch/zx48k/stdlib/memcopy.bas similarity index 100% rename from src/arch/zx48k/library/memcopy.bas rename to src/lib/arch/zx48k/stdlib/memcopy.bas diff --git a/src/arch/zx48k/library/mj/fourspriter.bas b/src/lib/arch/zx48k/stdlib/mj/fourspriter.bas similarity index 100% rename from src/arch/zx48k/library/mj/fourspriter.bas rename to src/lib/arch/zx48k/stdlib/mj/fourspriter.bas diff --git a/src/arch/zx48k/library/point.bas b/src/lib/arch/zx48k/stdlib/point.bas similarity index 100% rename from src/arch/zx48k/library/point.bas rename to src/lib/arch/zx48k/stdlib/point.bas diff --git a/src/arch/zx48k/library/pos.bas b/src/lib/arch/zx48k/stdlib/pos.bas similarity index 100% rename from src/arch/zx48k/library/pos.bas rename to src/lib/arch/zx48k/stdlib/pos.bas diff --git a/src/arch/zx48k/library/print42.bas b/src/lib/arch/zx48k/stdlib/print42.bas similarity index 100% rename from src/arch/zx48k/library/print42.bas rename to src/lib/arch/zx48k/stdlib/print42.bas diff --git a/src/arch/zx48k/library/print64.bas b/src/lib/arch/zx48k/stdlib/print64.bas similarity index 100% rename from src/arch/zx48k/library/print64.bas rename to src/lib/arch/zx48k/stdlib/print64.bas diff --git a/src/arch/zx48k/library/printfzx.bas b/src/lib/arch/zx48k/stdlib/printfzx.bas similarity index 100% rename from src/arch/zx48k/library/printfzx.bas rename to src/lib/arch/zx48k/stdlib/printfzx.bas diff --git a/src/arch/zx48k/library/putchars.bas b/src/lib/arch/zx48k/stdlib/putchars.bas similarity index 100% rename from src/arch/zx48k/library/putchars.bas rename to src/lib/arch/zx48k/stdlib/putchars.bas diff --git a/src/arch/zx48k/library/puttile.bas b/src/lib/arch/zx48k/stdlib/puttile.bas similarity index 100% rename from src/arch/zx48k/library/puttile.bas rename to src/lib/arch/zx48k/stdlib/puttile.bas diff --git a/src/arch/zx48k/library/retrace.bas b/src/lib/arch/zx48k/stdlib/retrace.bas similarity index 100% rename from src/arch/zx48k/library/retrace.bas rename to src/lib/arch/zx48k/stdlib/retrace.bas diff --git a/src/arch/zx48k/library/round.bas b/src/lib/arch/zx48k/stdlib/round.bas similarity index 100% rename from src/arch/zx48k/library/round.bas rename to src/lib/arch/zx48k/stdlib/round.bas diff --git a/src/arch/zx48k/library/scrbuffer.bas b/src/lib/arch/zx48k/stdlib/scrbuffer.bas similarity index 100% rename from src/arch/zx48k/library/scrbuffer.bas rename to src/lib/arch/zx48k/stdlib/scrbuffer.bas diff --git a/src/arch/zx48k/library/screen.bas b/src/lib/arch/zx48k/stdlib/screen.bas similarity index 100% rename from src/arch/zx48k/library/screen.bas rename to src/lib/arch/zx48k/stdlib/screen.bas diff --git a/src/arch/zx48k/library/scroll.bas b/src/lib/arch/zx48k/stdlib/scroll.bas similarity index 100% rename from src/arch/zx48k/library/scroll.bas rename to src/lib/arch/zx48k/stdlib/scroll.bas diff --git a/src/arch/zx48k/library/sinclair.bas b/src/lib/arch/zx48k/stdlib/sinclair.bas similarity index 100% rename from src/arch/zx48k/library/sinclair.bas rename to src/lib/arch/zx48k/stdlib/sinclair.bas diff --git a/src/arch/zx48k/library/spectranet.bas b/src/lib/arch/zx48k/stdlib/spectranet.bas similarity index 100% rename from src/arch/zx48k/library/spectranet.bas rename to src/lib/arch/zx48k/stdlib/spectranet.bas diff --git a/src/arch/zx48k/library/string.bas b/src/lib/arch/zx48k/stdlib/string.bas similarity index 100% rename from src/arch/zx48k/library/string.bas rename to src/lib/arch/zx48k/stdlib/string.bas diff --git a/src/arch/zx48k/library/template.bas b/src/lib/arch/zx48k/stdlib/template.bas similarity index 100% rename from src/arch/zx48k/library/template.bas rename to src/lib/arch/zx48k/stdlib/template.bas diff --git a/src/arch/zx48k/library/winscroll.bas b/src/lib/arch/zx48k/stdlib/winscroll.bas similarity index 100% rename from src/arch/zx48k/library/winscroll.bas rename to src/lib/arch/zx48k/stdlib/winscroll.bas diff --git a/src/arch/zx48k/library/zx0.bas b/src/lib/arch/zx48k/stdlib/zx0.bas similarity index 100% rename from src/arch/zx48k/library/zx0.bas rename to src/lib/arch/zx48k/stdlib/zx0.bas diff --git a/src/arch/zx48k/library/zxuno/haplofnt.bin b/src/lib/arch/zx48k/stdlib/zxuno/haplofnt.bin similarity index 100% rename from src/arch/zx48k/library/zxuno/haplofnt.bin rename to src/lib/arch/zx48k/stdlib/zxuno/haplofnt.bin diff --git a/src/arch/zx48k/library/zxuno/radastan.bas b/src/lib/arch/zx48k/stdlib/zxuno/radastan.bas similarity index 100% rename from src/arch/zx48k/library/zxuno/radastan.bas rename to src/lib/arch/zx48k/stdlib/zxuno/radastan.bas diff --git a/src/arch/zx48k/library/zxuno/uart.bas b/src/lib/arch/zx48k/stdlib/zxuno/uart.bas similarity index 100% rename from src/arch/zx48k/library/zxuno/uart.bas rename to src/lib/arch/zx48k/stdlib/zxuno/uart.bas diff --git a/src/arch/zxnext/library-asm/SP/CharLeft.asm b/src/lib/arch/zxnext/runtime/SP/CharLeft.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/CharLeft.asm rename to src/lib/arch/zxnext/runtime/SP/CharLeft.asm diff --git a/src/arch/zxnext/library-asm/SP/CharRight.asm b/src/lib/arch/zxnext/runtime/SP/CharRight.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/CharRight.asm rename to src/lib/arch/zxnext/runtime/SP/CharRight.asm diff --git a/src/arch/zxnext/library-asm/SP/GetScrnAddr.asm b/src/lib/arch/zxnext/runtime/SP/GetScrnAddr.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/GetScrnAddr.asm rename to src/lib/arch/zxnext/runtime/SP/GetScrnAddr.asm diff --git a/src/arch/zxnext/library-asm/SP/PixelDown.asm b/src/lib/arch/zxnext/runtime/SP/PixelDown.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/PixelDown.asm rename to src/lib/arch/zxnext/runtime/SP/PixelDown.asm diff --git a/src/arch/zxnext/library-asm/SP/PixelLeft.asm b/src/lib/arch/zxnext/runtime/SP/PixelLeft.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/PixelLeft.asm rename to src/lib/arch/zxnext/runtime/SP/PixelLeft.asm diff --git a/src/arch/zxnext/library-asm/SP/PixelRight.asm b/src/lib/arch/zxnext/runtime/SP/PixelRight.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/PixelRight.asm rename to src/lib/arch/zxnext/runtime/SP/PixelRight.asm diff --git a/src/arch/zxnext/library-asm/SP/PixelUp.asm b/src/lib/arch/zxnext/runtime/SP/PixelUp.asm similarity index 100% rename from src/arch/zxnext/library-asm/SP/PixelUp.asm rename to src/lib/arch/zxnext/runtime/SP/PixelUp.asm diff --git a/src/arch/zxnext/library-asm/_mul32.asm b/src/lib/arch/zxnext/runtime/_mul32.asm similarity index 100% rename from src/arch/zxnext/library-asm/_mul32.asm rename to src/lib/arch/zxnext/runtime/_mul32.asm diff --git a/src/arch/zxnext/library-asm/abs16.asm b/src/lib/arch/zxnext/runtime/abs16.asm similarity index 100% rename from src/arch/zxnext/library-asm/abs16.asm rename to src/lib/arch/zxnext/runtime/abs16.asm diff --git a/src/arch/zxnext/library-asm/abs32.asm b/src/lib/arch/zxnext/runtime/abs32.asm similarity index 100% rename from src/arch/zxnext/library-asm/abs32.asm rename to src/lib/arch/zxnext/runtime/abs32.asm diff --git a/src/arch/zxnext/library-asm/abs8.asm b/src/lib/arch/zxnext/runtime/abs8.asm similarity index 100% rename from src/arch/zxnext/library-asm/abs8.asm rename to src/lib/arch/zxnext/runtime/abs8.asm diff --git a/src/arch/zxnext/library-asm/absf.asm b/src/lib/arch/zxnext/runtime/absf.asm similarity index 100% rename from src/arch/zxnext/library-asm/absf.asm rename to src/lib/arch/zxnext/runtime/absf.asm diff --git a/src/arch/zxnext/library-asm/acos.asm b/src/lib/arch/zxnext/runtime/acos.asm similarity index 100% rename from src/arch/zxnext/library-asm/acos.asm rename to src/lib/arch/zxnext/runtime/acos.asm diff --git a/src/arch/zxnext/library-asm/addf.asm b/src/lib/arch/zxnext/runtime/addf.asm similarity index 100% rename from src/arch/zxnext/library-asm/addf.asm rename to src/lib/arch/zxnext/runtime/addf.asm diff --git a/src/arch/zxnext/library-asm/alloc.asm b/src/lib/arch/zxnext/runtime/alloc.asm similarity index 100% rename from src/arch/zxnext/library-asm/alloc.asm rename to src/lib/arch/zxnext/runtime/alloc.asm diff --git a/src/arch/zxnext/library-asm/and16.asm b/src/lib/arch/zxnext/runtime/and16.asm similarity index 100% rename from src/arch/zxnext/library-asm/and16.asm rename to src/lib/arch/zxnext/runtime/and16.asm diff --git a/src/arch/zxnext/library-asm/and32.asm b/src/lib/arch/zxnext/runtime/and32.asm similarity index 100% rename from src/arch/zxnext/library-asm/and32.asm rename to src/lib/arch/zxnext/runtime/and32.asm diff --git a/src/arch/zxnext/library-asm/and8.asm b/src/lib/arch/zxnext/runtime/and8.asm similarity index 100% rename from src/arch/zxnext/library-asm/and8.asm rename to src/lib/arch/zxnext/runtime/and8.asm diff --git a/src/arch/zxnext/library-asm/andf.asm b/src/lib/arch/zxnext/runtime/andf.asm similarity index 100% rename from src/arch/zxnext/library-asm/andf.asm rename to src/lib/arch/zxnext/runtime/andf.asm diff --git a/src/arch/zxnext/library-asm/array.asm b/src/lib/arch/zxnext/runtime/array.asm similarity index 100% rename from src/arch/zxnext/library-asm/array.asm rename to src/lib/arch/zxnext/runtime/array.asm diff --git a/src/arch/zxnext/library-asm/arrayalloc.asm b/src/lib/arch/zxnext/runtime/arrayalloc.asm similarity index 100% rename from src/arch/zxnext/library-asm/arrayalloc.asm rename to src/lib/arch/zxnext/runtime/arrayalloc.asm diff --git a/src/arch/zxnext/library-asm/arraystrfree.asm b/src/lib/arch/zxnext/runtime/arraystrfree.asm similarity index 100% rename from src/arch/zxnext/library-asm/arraystrfree.asm rename to src/lib/arch/zxnext/runtime/arraystrfree.asm diff --git a/src/arch/zxnext/library-asm/asc.asm b/src/lib/arch/zxnext/runtime/asc.asm similarity index 100% rename from src/arch/zxnext/library-asm/asc.asm rename to src/lib/arch/zxnext/runtime/asc.asm diff --git a/src/arch/zxnext/library-asm/asin.asm b/src/lib/arch/zxnext/runtime/asin.asm similarity index 100% rename from src/arch/zxnext/library-asm/asin.asm rename to src/lib/arch/zxnext/runtime/asin.asm diff --git a/src/arch/zxnext/library-asm/atan.asm b/src/lib/arch/zxnext/runtime/atan.asm similarity index 100% rename from src/arch/zxnext/library-asm/atan.asm rename to src/lib/arch/zxnext/runtime/atan.asm diff --git a/src/arch/zxnext/library-asm/attr.asm b/src/lib/arch/zxnext/runtime/attr.asm similarity index 100% rename from src/arch/zxnext/library-asm/attr.asm rename to src/lib/arch/zxnext/runtime/attr.asm diff --git a/src/arch/zxnext/library-asm/band16.asm b/src/lib/arch/zxnext/runtime/band16.asm similarity index 100% rename from src/arch/zxnext/library-asm/band16.asm rename to src/lib/arch/zxnext/runtime/band16.asm diff --git a/src/arch/zxnext/library-asm/band32.asm b/src/lib/arch/zxnext/runtime/band32.asm similarity index 100% rename from src/arch/zxnext/library-asm/band32.asm rename to src/lib/arch/zxnext/runtime/band32.asm diff --git a/src/arch/zxnext/library-asm/beep.asm b/src/lib/arch/zxnext/runtime/beep.asm similarity index 100% rename from src/arch/zxnext/library-asm/beep.asm rename to src/lib/arch/zxnext/runtime/beep.asm diff --git a/src/arch/zxnext/library-asm/beeper.asm b/src/lib/arch/zxnext/runtime/beeper.asm similarity index 100% rename from src/arch/zxnext/library-asm/beeper.asm rename to src/lib/arch/zxnext/runtime/beeper.asm diff --git a/src/arch/zxnext/library-asm/bnot16.asm b/src/lib/arch/zxnext/runtime/bnot16.asm similarity index 100% rename from src/arch/zxnext/library-asm/bnot16.asm rename to src/lib/arch/zxnext/runtime/bnot16.asm diff --git a/src/arch/zxnext/library-asm/bnot32.asm b/src/lib/arch/zxnext/runtime/bnot32.asm similarity index 100% rename from src/arch/zxnext/library-asm/bnot32.asm rename to src/lib/arch/zxnext/runtime/bnot32.asm diff --git a/src/arch/zxnext/library-asm/bold.asm b/src/lib/arch/zxnext/runtime/bold.asm similarity index 100% rename from src/arch/zxnext/library-asm/bold.asm rename to src/lib/arch/zxnext/runtime/bold.asm diff --git a/src/arch/zxnext/library-asm/bor16.asm b/src/lib/arch/zxnext/runtime/bor16.asm similarity index 100% rename from src/arch/zxnext/library-asm/bor16.asm rename to src/lib/arch/zxnext/runtime/bor16.asm diff --git a/src/arch/zxnext/library-asm/bor32.asm b/src/lib/arch/zxnext/runtime/bor32.asm similarity index 100% rename from src/arch/zxnext/library-asm/bor32.asm rename to src/lib/arch/zxnext/runtime/bor32.asm diff --git a/src/arch/zxnext/library-asm/border.asm b/src/lib/arch/zxnext/runtime/border.asm similarity index 100% rename from src/arch/zxnext/library-asm/border.asm rename to src/lib/arch/zxnext/runtime/border.asm diff --git a/src/arch/zxnext/library-asm/bound.asm b/src/lib/arch/zxnext/runtime/bound.asm similarity index 100% rename from src/arch/zxnext/library-asm/bound.asm rename to src/lib/arch/zxnext/runtime/bound.asm diff --git a/src/arch/zxnext/library-asm/break.asm b/src/lib/arch/zxnext/runtime/break.asm similarity index 100% rename from src/arch/zxnext/library-asm/break.asm rename to src/lib/arch/zxnext/runtime/break.asm diff --git a/src/arch/zxnext/library-asm/bright.asm b/src/lib/arch/zxnext/runtime/bright.asm similarity index 100% rename from src/arch/zxnext/library-asm/bright.asm rename to src/lib/arch/zxnext/runtime/bright.asm diff --git a/src/arch/zxnext/library-asm/bxor16.asm b/src/lib/arch/zxnext/runtime/bxor16.asm similarity index 100% rename from src/arch/zxnext/library-asm/bxor16.asm rename to src/lib/arch/zxnext/runtime/bxor16.asm diff --git a/src/arch/zxnext/library-asm/bxor32.asm b/src/lib/arch/zxnext/runtime/bxor32.asm similarity index 100% rename from src/arch/zxnext/library-asm/bxor32.asm rename to src/lib/arch/zxnext/runtime/bxor32.asm diff --git a/src/arch/zxnext/library-asm/calloc.asm b/src/lib/arch/zxnext/runtime/calloc.asm similarity index 100% rename from src/arch/zxnext/library-asm/calloc.asm rename to src/lib/arch/zxnext/runtime/calloc.asm diff --git a/src/arch/zxnext/library-asm/chr.asm b/src/lib/arch/zxnext/runtime/chr.asm similarity index 100% rename from src/arch/zxnext/library-asm/chr.asm rename to src/lib/arch/zxnext/runtime/chr.asm diff --git a/src/arch/zxnext/library-asm/circle.asm b/src/lib/arch/zxnext/runtime/circle.asm similarity index 100% rename from src/arch/zxnext/library-asm/circle.asm rename to src/lib/arch/zxnext/runtime/circle.asm diff --git a/src/arch/zxnext/library-asm/cls.asm b/src/lib/arch/zxnext/runtime/cls.asm similarity index 100% rename from src/arch/zxnext/library-asm/cls.asm rename to src/lib/arch/zxnext/runtime/cls.asm diff --git a/src/arch/zxnext/library-asm/copy_attr.asm b/src/lib/arch/zxnext/runtime/copy_attr.asm similarity index 100% rename from src/arch/zxnext/library-asm/copy_attr.asm rename to src/lib/arch/zxnext/runtime/copy_attr.asm diff --git a/src/arch/zxnext/library-asm/cos.asm b/src/lib/arch/zxnext/runtime/cos.asm similarity index 100% rename from src/arch/zxnext/library-asm/cos.asm rename to src/lib/arch/zxnext/runtime/cos.asm diff --git a/src/arch/zxnext/library-asm/div16.asm b/src/lib/arch/zxnext/runtime/div16.asm similarity index 100% rename from src/arch/zxnext/library-asm/div16.asm rename to src/lib/arch/zxnext/runtime/div16.asm diff --git a/src/arch/zxnext/library-asm/div32.asm b/src/lib/arch/zxnext/runtime/div32.asm similarity index 100% rename from src/arch/zxnext/library-asm/div32.asm rename to src/lib/arch/zxnext/runtime/div32.asm diff --git a/src/arch/zxnext/library-asm/div8.asm b/src/lib/arch/zxnext/runtime/div8.asm similarity index 100% rename from src/arch/zxnext/library-asm/div8.asm rename to src/lib/arch/zxnext/runtime/div8.asm diff --git a/src/arch/zxnext/library-asm/divf.asm b/src/lib/arch/zxnext/runtime/divf.asm similarity index 100% rename from src/arch/zxnext/library-asm/divf.asm rename to src/lib/arch/zxnext/runtime/divf.asm diff --git a/src/arch/zxnext/library-asm/divf16.asm b/src/lib/arch/zxnext/runtime/divf16.asm similarity index 100% rename from src/arch/zxnext/library-asm/divf16.asm rename to src/lib/arch/zxnext/runtime/divf16.asm diff --git a/src/arch/zxnext/library-asm/draw.asm b/src/lib/arch/zxnext/runtime/draw.asm similarity index 100% rename from src/arch/zxnext/library-asm/draw.asm rename to src/lib/arch/zxnext/runtime/draw.asm diff --git a/src/arch/zxnext/library-asm/draw3.asm b/src/lib/arch/zxnext/runtime/draw3.asm similarity index 100% rename from src/arch/zxnext/library-asm/draw3.asm rename to src/lib/arch/zxnext/runtime/draw3.asm diff --git a/src/arch/zxnext/library-asm/eq16.asm b/src/lib/arch/zxnext/runtime/eq16.asm similarity index 100% rename from src/arch/zxnext/library-asm/eq16.asm rename to src/lib/arch/zxnext/runtime/eq16.asm diff --git a/src/arch/zxnext/library-asm/eq32.asm b/src/lib/arch/zxnext/runtime/eq32.asm similarity index 100% rename from src/arch/zxnext/library-asm/eq32.asm rename to src/lib/arch/zxnext/runtime/eq32.asm diff --git a/src/arch/zxnext/library-asm/eqf.asm b/src/lib/arch/zxnext/runtime/eqf.asm similarity index 100% rename from src/arch/zxnext/library-asm/eqf.asm rename to src/lib/arch/zxnext/runtime/eqf.asm diff --git a/src/arch/zxnext/library-asm/error.asm b/src/lib/arch/zxnext/runtime/error.asm similarity index 100% rename from src/arch/zxnext/library-asm/error.asm rename to src/lib/arch/zxnext/runtime/error.asm diff --git a/src/arch/zxnext/library-asm/exp.asm b/src/lib/arch/zxnext/runtime/exp.asm similarity index 100% rename from src/arch/zxnext/library-asm/exp.asm rename to src/lib/arch/zxnext/runtime/exp.asm diff --git a/src/arch/zxnext/library-asm/f16tofreg.asm b/src/lib/arch/zxnext/runtime/f16tofreg.asm similarity index 100% rename from src/arch/zxnext/library-asm/f16tofreg.asm rename to src/lib/arch/zxnext/runtime/f16tofreg.asm diff --git a/src/arch/zxnext/library-asm/flash.asm b/src/lib/arch/zxnext/runtime/flash.asm similarity index 100% rename from src/arch/zxnext/library-asm/flash.asm rename to src/lib/arch/zxnext/runtime/flash.asm diff --git a/src/arch/zxnext/library-asm/free.asm b/src/lib/arch/zxnext/runtime/free.asm similarity index 100% rename from src/arch/zxnext/library-asm/free.asm rename to src/lib/arch/zxnext/runtime/free.asm diff --git a/src/arch/zxnext/library-asm/ftof16reg.asm b/src/lib/arch/zxnext/runtime/ftof16reg.asm similarity index 100% rename from src/arch/zxnext/library-asm/ftof16reg.asm rename to src/lib/arch/zxnext/runtime/ftof16reg.asm diff --git a/src/arch/zxnext/library-asm/ftou32reg.asm b/src/lib/arch/zxnext/runtime/ftou32reg.asm similarity index 100% rename from src/arch/zxnext/library-asm/ftou32reg.asm rename to src/lib/arch/zxnext/runtime/ftou32reg.asm diff --git a/src/arch/zxnext/library-asm/gef.asm b/src/lib/arch/zxnext/runtime/gef.asm similarity index 100% rename from src/arch/zxnext/library-asm/gef.asm rename to src/lib/arch/zxnext/runtime/gef.asm diff --git a/src/arch/zxnext/library-asm/gtf.asm b/src/lib/arch/zxnext/runtime/gtf.asm similarity index 100% rename from src/arch/zxnext/library-asm/gtf.asm rename to src/lib/arch/zxnext/runtime/gtf.asm diff --git a/src/arch/zxnext/library-asm/heapinit.asm b/src/lib/arch/zxnext/runtime/heapinit.asm similarity index 100% rename from src/arch/zxnext/library-asm/heapinit.asm rename to src/lib/arch/zxnext/runtime/heapinit.asm diff --git a/src/arch/zxnext/library-asm/iload32.asm b/src/lib/arch/zxnext/runtime/iload32.asm similarity index 100% rename from src/arch/zxnext/library-asm/iload32.asm rename to src/lib/arch/zxnext/runtime/iload32.asm diff --git a/src/arch/zxnext/library-asm/iloadf.asm b/src/lib/arch/zxnext/runtime/iloadf.asm similarity index 100% rename from src/arch/zxnext/library-asm/iloadf.asm rename to src/lib/arch/zxnext/runtime/iloadf.asm diff --git a/src/arch/zxnext/library-asm/in_screen.asm b/src/lib/arch/zxnext/runtime/in_screen.asm similarity index 100% rename from src/arch/zxnext/library-asm/in_screen.asm rename to src/lib/arch/zxnext/runtime/in_screen.asm diff --git a/src/arch/zxnext/library-asm/ink.asm b/src/lib/arch/zxnext/runtime/ink.asm similarity index 100% rename from src/arch/zxnext/library-asm/ink.asm rename to src/lib/arch/zxnext/runtime/ink.asm diff --git a/src/arch/zxnext/library-asm/inkey.asm b/src/lib/arch/zxnext/runtime/inkey.asm similarity index 100% rename from src/arch/zxnext/library-asm/inkey.asm rename to src/lib/arch/zxnext/runtime/inkey.asm diff --git a/src/arch/zxnext/library-asm/inverse.asm b/src/lib/arch/zxnext/runtime/inverse.asm similarity index 100% rename from src/arch/zxnext/library-asm/inverse.asm rename to src/lib/arch/zxnext/runtime/inverse.asm diff --git a/src/arch/zxnext/library-asm/istore16.asm b/src/lib/arch/zxnext/runtime/istore16.asm similarity index 100% rename from src/arch/zxnext/library-asm/istore16.asm rename to src/lib/arch/zxnext/runtime/istore16.asm diff --git a/src/arch/zxnext/library-asm/italic.asm b/src/lib/arch/zxnext/runtime/italic.asm similarity index 100% rename from src/arch/zxnext/library-asm/italic.asm rename to src/lib/arch/zxnext/runtime/italic.asm diff --git a/src/arch/zxnext/library-asm/lddede.asm b/src/lib/arch/zxnext/runtime/lddede.asm similarity index 100% rename from src/arch/zxnext/library-asm/lddede.asm rename to src/lib/arch/zxnext/runtime/lddede.asm diff --git a/src/arch/zxnext/library-asm/lef.asm b/src/lib/arch/zxnext/runtime/lef.asm similarity index 100% rename from src/arch/zxnext/library-asm/lef.asm rename to src/lib/arch/zxnext/runtime/lef.asm diff --git a/src/arch/zxnext/library-asm/lei16.asm b/src/lib/arch/zxnext/runtime/lei16.asm similarity index 100% rename from src/arch/zxnext/library-asm/lei16.asm rename to src/lib/arch/zxnext/runtime/lei16.asm diff --git a/src/arch/zxnext/library-asm/lei32.asm b/src/lib/arch/zxnext/runtime/lei32.asm similarity index 100% rename from src/arch/zxnext/library-asm/lei32.asm rename to src/lib/arch/zxnext/runtime/lei32.asm diff --git a/src/arch/zxnext/library-asm/lei8.asm b/src/lib/arch/zxnext/runtime/lei8.asm similarity index 100% rename from src/arch/zxnext/library-asm/lei8.asm rename to src/lib/arch/zxnext/runtime/lei8.asm diff --git a/src/arch/zxnext/library-asm/letsubstr.asm b/src/lib/arch/zxnext/runtime/letsubstr.asm similarity index 100% rename from src/arch/zxnext/library-asm/letsubstr.asm rename to src/lib/arch/zxnext/runtime/letsubstr.asm diff --git a/src/arch/zxnext/library-asm/load.asm b/src/lib/arch/zxnext/runtime/load.asm similarity index 100% rename from src/arch/zxnext/library-asm/load.asm rename to src/lib/arch/zxnext/runtime/load.asm diff --git a/src/arch/zxnext/library-asm/loadstr.asm b/src/lib/arch/zxnext/runtime/loadstr.asm similarity index 100% rename from src/arch/zxnext/library-asm/loadstr.asm rename to src/lib/arch/zxnext/runtime/loadstr.asm diff --git a/src/arch/zxnext/library-asm/logn.asm b/src/lib/arch/zxnext/runtime/logn.asm similarity index 100% rename from src/arch/zxnext/library-asm/logn.asm rename to src/lib/arch/zxnext/runtime/logn.asm diff --git a/src/arch/zxnext/library-asm/ltf.asm b/src/lib/arch/zxnext/runtime/ltf.asm similarity index 100% rename from src/arch/zxnext/library-asm/ltf.asm rename to src/lib/arch/zxnext/runtime/ltf.asm diff --git a/src/arch/zxnext/library-asm/lti16.asm b/src/lib/arch/zxnext/runtime/lti16.asm similarity index 100% rename from src/arch/zxnext/library-asm/lti16.asm rename to src/lib/arch/zxnext/runtime/lti16.asm diff --git a/src/arch/zxnext/library-asm/lti32.asm b/src/lib/arch/zxnext/runtime/lti32.asm similarity index 100% rename from src/arch/zxnext/library-asm/lti32.asm rename to src/lib/arch/zxnext/runtime/lti32.asm diff --git a/src/arch/zxnext/library-asm/lti8.asm b/src/lib/arch/zxnext/runtime/lti8.asm similarity index 100% rename from src/arch/zxnext/library-asm/lti8.asm rename to src/lib/arch/zxnext/runtime/lti8.asm diff --git a/src/arch/zxnext/library-asm/memcopy.asm b/src/lib/arch/zxnext/runtime/memcopy.asm similarity index 100% rename from src/arch/zxnext/library-asm/memcopy.asm rename to src/lib/arch/zxnext/runtime/memcopy.asm diff --git a/src/arch/zxnext/library-asm/modf.asm b/src/lib/arch/zxnext/runtime/modf.asm similarity index 100% rename from src/arch/zxnext/library-asm/modf.asm rename to src/lib/arch/zxnext/runtime/modf.asm diff --git a/src/arch/zxnext/library-asm/modf16.asm b/src/lib/arch/zxnext/runtime/modf16.asm similarity index 100% rename from src/arch/zxnext/library-asm/modf16.asm rename to src/lib/arch/zxnext/runtime/modf16.asm diff --git a/src/arch/zxnext/library-asm/mul16.asm b/src/lib/arch/zxnext/runtime/mul16.asm similarity index 100% rename from src/arch/zxnext/library-asm/mul16.asm rename to src/lib/arch/zxnext/runtime/mul16.asm diff --git a/src/arch/zxnext/library-asm/mul32.asm b/src/lib/arch/zxnext/runtime/mul32.asm similarity index 100% rename from src/arch/zxnext/library-asm/mul32.asm rename to src/lib/arch/zxnext/runtime/mul32.asm diff --git a/src/arch/zxnext/library-asm/mul8.asm b/src/lib/arch/zxnext/runtime/mul8.asm similarity index 100% rename from src/arch/zxnext/library-asm/mul8.asm rename to src/lib/arch/zxnext/runtime/mul8.asm diff --git a/src/arch/zxnext/library-asm/mulf.asm b/src/lib/arch/zxnext/runtime/mulf.asm similarity index 100% rename from src/arch/zxnext/library-asm/mulf.asm rename to src/lib/arch/zxnext/runtime/mulf.asm diff --git a/src/arch/zxnext/library-asm/mulf16.asm b/src/lib/arch/zxnext/runtime/mulf16.asm similarity index 100% rename from src/arch/zxnext/library-asm/mulf16.asm rename to src/lib/arch/zxnext/runtime/mulf16.asm diff --git a/src/arch/zxnext/library-asm/nef.asm b/src/lib/arch/zxnext/runtime/nef.asm similarity index 100% rename from src/arch/zxnext/library-asm/nef.asm rename to src/lib/arch/zxnext/runtime/nef.asm diff --git a/src/arch/zxnext/library-asm/neg16.asm b/src/lib/arch/zxnext/runtime/neg16.asm similarity index 100% rename from src/arch/zxnext/library-asm/neg16.asm rename to src/lib/arch/zxnext/runtime/neg16.asm diff --git a/src/arch/zxnext/library-asm/neg32.asm b/src/lib/arch/zxnext/runtime/neg32.asm similarity index 100% rename from src/arch/zxnext/library-asm/neg32.asm rename to src/lib/arch/zxnext/runtime/neg32.asm diff --git a/src/arch/zxnext/library-asm/negf.asm b/src/lib/arch/zxnext/runtime/negf.asm similarity index 100% rename from src/arch/zxnext/library-asm/negf.asm rename to src/lib/arch/zxnext/runtime/negf.asm diff --git a/src/arch/zxnext/library-asm/not32.asm b/src/lib/arch/zxnext/runtime/not32.asm similarity index 100% rename from src/arch/zxnext/library-asm/not32.asm rename to src/lib/arch/zxnext/runtime/not32.asm diff --git a/src/arch/zxnext/library-asm/notf.asm b/src/lib/arch/zxnext/runtime/notf.asm similarity index 100% rename from src/arch/zxnext/library-asm/notf.asm rename to src/lib/arch/zxnext/runtime/notf.asm diff --git a/src/arch/zxnext/library-asm/ongoto.asm b/src/lib/arch/zxnext/runtime/ongoto.asm similarity index 100% rename from src/arch/zxnext/library-asm/ongoto.asm rename to src/lib/arch/zxnext/runtime/ongoto.asm diff --git a/src/arch/zxnext/library-asm/or32.asm b/src/lib/arch/zxnext/runtime/or32.asm similarity index 100% rename from src/arch/zxnext/library-asm/or32.asm rename to src/lib/arch/zxnext/runtime/or32.asm diff --git a/src/arch/zxnext/library-asm/orf.asm b/src/lib/arch/zxnext/runtime/orf.asm similarity index 100% rename from src/arch/zxnext/library-asm/orf.asm rename to src/lib/arch/zxnext/runtime/orf.asm diff --git a/src/arch/zxnext/library-asm/over.asm b/src/lib/arch/zxnext/runtime/over.asm similarity index 100% rename from src/arch/zxnext/library-asm/over.asm rename to src/lib/arch/zxnext/runtime/over.asm diff --git a/src/arch/zxnext/library-asm/paper.asm b/src/lib/arch/zxnext/runtime/paper.asm similarity index 100% rename from src/arch/zxnext/library-asm/paper.asm rename to src/lib/arch/zxnext/runtime/paper.asm diff --git a/src/arch/zxnext/library-asm/pause.asm b/src/lib/arch/zxnext/runtime/pause.asm similarity index 100% rename from src/arch/zxnext/library-asm/pause.asm rename to src/lib/arch/zxnext/runtime/pause.asm diff --git a/src/arch/zxnext/library-asm/pistore32.asm b/src/lib/arch/zxnext/runtime/pistore32.asm similarity index 100% rename from src/arch/zxnext/library-asm/pistore32.asm rename to src/lib/arch/zxnext/runtime/pistore32.asm diff --git a/src/arch/zxnext/library-asm/ploadf.asm b/src/lib/arch/zxnext/runtime/ploadf.asm similarity index 100% rename from src/arch/zxnext/library-asm/ploadf.asm rename to src/lib/arch/zxnext/runtime/ploadf.asm diff --git a/src/arch/zxnext/library-asm/plot.asm b/src/lib/arch/zxnext/runtime/plot.asm similarity index 100% rename from src/arch/zxnext/library-asm/plot.asm rename to src/lib/arch/zxnext/runtime/plot.asm diff --git a/src/arch/zxnext/library-asm/pow.asm b/src/lib/arch/zxnext/runtime/pow.asm similarity index 100% rename from src/arch/zxnext/library-asm/pow.asm rename to src/lib/arch/zxnext/runtime/pow.asm diff --git a/src/arch/zxnext/library-asm/print.asm b/src/lib/arch/zxnext/runtime/print.asm similarity index 100% rename from src/arch/zxnext/library-asm/print.asm rename to src/lib/arch/zxnext/runtime/print.asm diff --git a/src/arch/zxnext/library-asm/print_eol_attr.asm b/src/lib/arch/zxnext/runtime/print_eol_attr.asm similarity index 100% rename from src/arch/zxnext/library-asm/print_eol_attr.asm rename to src/lib/arch/zxnext/runtime/print_eol_attr.asm diff --git a/src/arch/zxnext/library-asm/printf.asm b/src/lib/arch/zxnext/runtime/printf.asm similarity index 100% rename from src/arch/zxnext/library-asm/printf.asm rename to src/lib/arch/zxnext/runtime/printf.asm diff --git a/src/arch/zxnext/library-asm/printf16.asm b/src/lib/arch/zxnext/runtime/printf16.asm similarity index 100% rename from src/arch/zxnext/library-asm/printf16.asm rename to src/lib/arch/zxnext/runtime/printf16.asm diff --git a/src/arch/zxnext/library-asm/printi16.asm b/src/lib/arch/zxnext/runtime/printi16.asm similarity index 100% rename from src/arch/zxnext/library-asm/printi16.asm rename to src/lib/arch/zxnext/runtime/printi16.asm diff --git a/src/arch/zxnext/library-asm/printi32.asm b/src/lib/arch/zxnext/runtime/printi32.asm similarity index 100% rename from src/arch/zxnext/library-asm/printi32.asm rename to src/lib/arch/zxnext/runtime/printi32.asm diff --git a/src/arch/zxnext/library-asm/printi8.asm b/src/lib/arch/zxnext/runtime/printi8.asm similarity index 100% rename from src/arch/zxnext/library-asm/printi8.asm rename to src/lib/arch/zxnext/runtime/printi8.asm diff --git a/src/arch/zxnext/library-asm/printnum.asm b/src/lib/arch/zxnext/runtime/printnum.asm similarity index 100% rename from src/arch/zxnext/library-asm/printnum.asm rename to src/lib/arch/zxnext/runtime/printnum.asm diff --git a/src/arch/zxnext/library-asm/printstr.asm b/src/lib/arch/zxnext/runtime/printstr.asm similarity index 100% rename from src/arch/zxnext/library-asm/printstr.asm rename to src/lib/arch/zxnext/runtime/printstr.asm diff --git a/src/arch/zxnext/library-asm/printu16.asm b/src/lib/arch/zxnext/runtime/printu16.asm similarity index 100% rename from src/arch/zxnext/library-asm/printu16.asm rename to src/lib/arch/zxnext/runtime/printu16.asm diff --git a/src/arch/zxnext/library-asm/printu32.asm b/src/lib/arch/zxnext/runtime/printu32.asm similarity index 100% rename from src/arch/zxnext/library-asm/printu32.asm rename to src/lib/arch/zxnext/runtime/printu32.asm diff --git a/src/arch/zxnext/library-asm/printu8.asm b/src/lib/arch/zxnext/runtime/printu8.asm similarity index 100% rename from src/arch/zxnext/library-asm/printu8.asm rename to src/lib/arch/zxnext/runtime/printu8.asm diff --git a/src/arch/zxnext/library-asm/pstore32.asm b/src/lib/arch/zxnext/runtime/pstore32.asm similarity index 100% rename from src/arch/zxnext/library-asm/pstore32.asm rename to src/lib/arch/zxnext/runtime/pstore32.asm diff --git a/src/arch/zxnext/library-asm/pstoref.asm b/src/lib/arch/zxnext/runtime/pstoref.asm similarity index 100% rename from src/arch/zxnext/library-asm/pstoref.asm rename to src/lib/arch/zxnext/runtime/pstoref.asm diff --git a/src/arch/zxnext/library-asm/pstorestr.asm b/src/lib/arch/zxnext/runtime/pstorestr.asm similarity index 100% rename from src/arch/zxnext/library-asm/pstorestr.asm rename to src/lib/arch/zxnext/runtime/pstorestr.asm diff --git a/src/arch/zxnext/library-asm/pstorestr2.asm b/src/lib/arch/zxnext/runtime/pstorestr2.asm similarity index 100% rename from src/arch/zxnext/library-asm/pstorestr2.asm rename to src/lib/arch/zxnext/runtime/pstorestr2.asm diff --git a/src/arch/zxnext/library-asm/pushf.asm b/src/lib/arch/zxnext/runtime/pushf.asm similarity index 100% rename from src/arch/zxnext/library-asm/pushf.asm rename to src/lib/arch/zxnext/runtime/pushf.asm diff --git a/src/arch/zxnext/library-asm/random.asm b/src/lib/arch/zxnext/runtime/random.asm similarity index 100% rename from src/arch/zxnext/library-asm/random.asm rename to src/lib/arch/zxnext/runtime/random.asm diff --git a/src/arch/zxnext/library-asm/read_restore.asm b/src/lib/arch/zxnext/runtime/read_restore.asm similarity index 100% rename from src/arch/zxnext/library-asm/read_restore.asm rename to src/lib/arch/zxnext/runtime/read_restore.asm diff --git a/src/arch/zxnext/library-asm/realloc.asm b/src/lib/arch/zxnext/runtime/realloc.asm similarity index 100% rename from src/arch/zxnext/library-asm/realloc.asm rename to src/lib/arch/zxnext/runtime/realloc.asm diff --git a/src/arch/zxnext/library-asm/save.asm b/src/lib/arch/zxnext/runtime/save.asm similarity index 100% rename from src/arch/zxnext/library-asm/save.asm rename to src/lib/arch/zxnext/runtime/save.asm diff --git a/src/arch/zxnext/library-asm/set_pixel_addr_attr.asm b/src/lib/arch/zxnext/runtime/set_pixel_addr_attr.asm similarity index 100% rename from src/arch/zxnext/library-asm/set_pixel_addr_attr.asm rename to src/lib/arch/zxnext/runtime/set_pixel_addr_attr.asm diff --git a/src/arch/zxnext/library-asm/sgn.asm b/src/lib/arch/zxnext/runtime/sgn.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgn.asm rename to src/lib/arch/zxnext/runtime/sgn.asm diff --git a/src/arch/zxnext/library-asm/sgnf.asm b/src/lib/arch/zxnext/runtime/sgnf.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgnf.asm rename to src/lib/arch/zxnext/runtime/sgnf.asm diff --git a/src/arch/zxnext/library-asm/sgnf16.asm b/src/lib/arch/zxnext/runtime/sgnf16.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgnf16.asm rename to src/lib/arch/zxnext/runtime/sgnf16.asm diff --git a/src/arch/zxnext/library-asm/sgni16.asm b/src/lib/arch/zxnext/runtime/sgni16.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgni16.asm rename to src/lib/arch/zxnext/runtime/sgni16.asm diff --git a/src/arch/zxnext/library-asm/sgni32.asm b/src/lib/arch/zxnext/runtime/sgni32.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgni32.asm rename to src/lib/arch/zxnext/runtime/sgni32.asm diff --git a/src/arch/zxnext/library-asm/sgni8.asm b/src/lib/arch/zxnext/runtime/sgni8.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgni8.asm rename to src/lib/arch/zxnext/runtime/sgni8.asm diff --git a/src/arch/zxnext/library-asm/sgnu16.asm b/src/lib/arch/zxnext/runtime/sgnu16.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgnu16.asm rename to src/lib/arch/zxnext/runtime/sgnu16.asm diff --git a/src/arch/zxnext/library-asm/sgnu32.asm b/src/lib/arch/zxnext/runtime/sgnu32.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgnu32.asm rename to src/lib/arch/zxnext/runtime/sgnu32.asm diff --git a/src/arch/zxnext/library-asm/sgnu8.asm b/src/lib/arch/zxnext/runtime/sgnu8.asm similarity index 100% rename from src/arch/zxnext/library-asm/sgnu8.asm rename to src/lib/arch/zxnext/runtime/sgnu8.asm diff --git a/src/arch/zxnext/library-asm/shl32.asm b/src/lib/arch/zxnext/runtime/shl32.asm similarity index 100% rename from src/arch/zxnext/library-asm/shl32.asm rename to src/lib/arch/zxnext/runtime/shl32.asm diff --git a/src/arch/zxnext/library-asm/shra32.asm b/src/lib/arch/zxnext/runtime/shra32.asm similarity index 100% rename from src/arch/zxnext/library-asm/shra32.asm rename to src/lib/arch/zxnext/runtime/shra32.asm diff --git a/src/arch/zxnext/library-asm/shrl32.asm b/src/lib/arch/zxnext/runtime/shrl32.asm similarity index 100% rename from src/arch/zxnext/library-asm/shrl32.asm rename to src/lib/arch/zxnext/runtime/shrl32.asm diff --git a/src/arch/zxnext/library-asm/sin.asm b/src/lib/arch/zxnext/runtime/sin.asm similarity index 100% rename from src/arch/zxnext/library-asm/sin.asm rename to src/lib/arch/zxnext/runtime/sin.asm diff --git a/src/arch/zxnext/library-asm/spectranet.inc b/src/lib/arch/zxnext/runtime/spectranet.inc similarity index 100% rename from src/arch/zxnext/library-asm/spectranet.inc rename to src/lib/arch/zxnext/runtime/spectranet.inc diff --git a/src/arch/zxnext/library-asm/sposn.asm b/src/lib/arch/zxnext/runtime/sposn.asm similarity index 100% rename from src/arch/zxnext/library-asm/sposn.asm rename to src/lib/arch/zxnext/runtime/sposn.asm diff --git a/src/arch/zxnext/library-asm/sqrt.asm b/src/lib/arch/zxnext/runtime/sqrt.asm similarity index 100% rename from src/arch/zxnext/library-asm/sqrt.asm rename to src/lib/arch/zxnext/runtime/sqrt.asm diff --git a/src/arch/zxnext/library-asm/stackf.asm b/src/lib/arch/zxnext/runtime/stackf.asm similarity index 100% rename from src/arch/zxnext/library-asm/stackf.asm rename to src/lib/arch/zxnext/runtime/stackf.asm diff --git a/src/arch/zxnext/library-asm/store32.asm b/src/lib/arch/zxnext/runtime/store32.asm similarity index 100% rename from src/arch/zxnext/library-asm/store32.asm rename to src/lib/arch/zxnext/runtime/store32.asm diff --git a/src/arch/zxnext/library-asm/storef.asm b/src/lib/arch/zxnext/runtime/storef.asm similarity index 100% rename from src/arch/zxnext/library-asm/storef.asm rename to src/lib/arch/zxnext/runtime/storef.asm diff --git a/src/arch/zxnext/library-asm/storestr.asm b/src/lib/arch/zxnext/runtime/storestr.asm similarity index 100% rename from src/arch/zxnext/library-asm/storestr.asm rename to src/lib/arch/zxnext/runtime/storestr.asm diff --git a/src/arch/zxnext/library-asm/storestr2.asm b/src/lib/arch/zxnext/runtime/storestr2.asm similarity index 100% rename from src/arch/zxnext/library-asm/storestr2.asm rename to src/lib/arch/zxnext/runtime/storestr2.asm diff --git a/src/arch/zxnext/library-asm/str.asm b/src/lib/arch/zxnext/runtime/str.asm similarity index 100% rename from src/arch/zxnext/library-asm/str.asm rename to src/lib/arch/zxnext/runtime/str.asm diff --git a/src/arch/zxnext/library-asm/strarraycpy.asm b/src/lib/arch/zxnext/runtime/strarraycpy.asm similarity index 100% rename from src/arch/zxnext/library-asm/strarraycpy.asm rename to src/lib/arch/zxnext/runtime/strarraycpy.asm diff --git a/src/arch/zxnext/library-asm/strcat.asm b/src/lib/arch/zxnext/runtime/strcat.asm similarity index 100% rename from src/arch/zxnext/library-asm/strcat.asm rename to src/lib/arch/zxnext/runtime/strcat.asm diff --git a/src/arch/zxnext/library-asm/strcpy.asm b/src/lib/arch/zxnext/runtime/strcpy.asm similarity index 100% rename from src/arch/zxnext/library-asm/strcpy.asm rename to src/lib/arch/zxnext/runtime/strcpy.asm diff --git a/src/arch/zxnext/library-asm/strictbool.asm b/src/lib/arch/zxnext/runtime/strictbool.asm similarity index 100% rename from src/arch/zxnext/library-asm/strictbool.asm rename to src/lib/arch/zxnext/runtime/strictbool.asm diff --git a/src/arch/zxnext/library-asm/string.asm b/src/lib/arch/zxnext/runtime/string.asm similarity index 100% rename from src/arch/zxnext/library-asm/string.asm rename to src/lib/arch/zxnext/runtime/string.asm diff --git a/src/arch/zxnext/library-asm/strlen.asm b/src/lib/arch/zxnext/runtime/strlen.asm similarity index 100% rename from src/arch/zxnext/library-asm/strlen.asm rename to src/lib/arch/zxnext/runtime/strlen.asm diff --git a/src/arch/zxnext/library-asm/strslice.asm b/src/lib/arch/zxnext/runtime/strslice.asm similarity index 100% rename from src/arch/zxnext/library-asm/strslice.asm rename to src/lib/arch/zxnext/runtime/strslice.asm diff --git a/src/arch/zxnext/library-asm/sub32.asm b/src/lib/arch/zxnext/runtime/sub32.asm similarity index 100% rename from src/arch/zxnext/library-asm/sub32.asm rename to src/lib/arch/zxnext/runtime/sub32.asm diff --git a/src/arch/zxnext/library-asm/subf.asm b/src/lib/arch/zxnext/runtime/subf.asm similarity index 100% rename from src/arch/zxnext/library-asm/subf.asm rename to src/lib/arch/zxnext/runtime/subf.asm diff --git a/src/arch/zxnext/library-asm/swap32.asm b/src/lib/arch/zxnext/runtime/swap32.asm similarity index 100% rename from src/arch/zxnext/library-asm/swap32.asm rename to src/lib/arch/zxnext/runtime/swap32.asm diff --git a/src/arch/zxnext/library-asm/sysvars.asm b/src/lib/arch/zxnext/runtime/sysvars.asm similarity index 100% rename from src/arch/zxnext/library-asm/sysvars.asm rename to src/lib/arch/zxnext/runtime/sysvars.asm diff --git a/src/arch/zxnext/library-asm/table_jump.asm b/src/lib/arch/zxnext/runtime/table_jump.asm similarity index 100% rename from src/arch/zxnext/library-asm/table_jump.asm rename to src/lib/arch/zxnext/runtime/table_jump.asm diff --git a/src/arch/zxnext/library-asm/tan.asm b/src/lib/arch/zxnext/runtime/tan.asm similarity index 100% rename from src/arch/zxnext/library-asm/tan.asm rename to src/lib/arch/zxnext/runtime/tan.asm diff --git a/src/arch/zxnext/library-asm/u32tofreg.asm b/src/lib/arch/zxnext/runtime/u32tofreg.asm similarity index 100% rename from src/arch/zxnext/library-asm/u32tofreg.asm rename to src/lib/arch/zxnext/runtime/u32tofreg.asm diff --git a/src/arch/zxnext/library-asm/usr.asm b/src/lib/arch/zxnext/runtime/usr.asm similarity index 100% rename from src/arch/zxnext/library-asm/usr.asm rename to src/lib/arch/zxnext/runtime/usr.asm diff --git a/src/arch/zxnext/library-asm/usr_str.asm b/src/lib/arch/zxnext/runtime/usr_str.asm similarity index 100% rename from src/arch/zxnext/library-asm/usr_str.asm rename to src/lib/arch/zxnext/runtime/usr_str.asm diff --git a/src/arch/zxnext/library-asm/val.asm b/src/lib/arch/zxnext/runtime/val.asm similarity index 100% rename from src/arch/zxnext/library-asm/val.asm rename to src/lib/arch/zxnext/runtime/val.asm diff --git a/src/arch/zxnext/library-asm/xor16.asm b/src/lib/arch/zxnext/runtime/xor16.asm similarity index 100% rename from src/arch/zxnext/library-asm/xor16.asm rename to src/lib/arch/zxnext/runtime/xor16.asm diff --git a/src/arch/zxnext/library-asm/xor32.asm b/src/lib/arch/zxnext/runtime/xor32.asm similarity index 100% rename from src/arch/zxnext/library-asm/xor32.asm rename to src/lib/arch/zxnext/runtime/xor32.asm diff --git a/src/arch/zxnext/library-asm/xor8.asm b/src/lib/arch/zxnext/runtime/xor8.asm similarity index 100% rename from src/arch/zxnext/library-asm/xor8.asm rename to src/lib/arch/zxnext/runtime/xor8.asm diff --git a/src/arch/zxnext/library-asm/xorf.asm b/src/lib/arch/zxnext/runtime/xorf.asm similarity index 100% rename from src/arch/zxnext/library-asm/xorf.asm rename to src/lib/arch/zxnext/runtime/xorf.asm diff --git a/src/arch/zxnext/library/IM2.bas b/src/lib/arch/zxnext/stdlib/IM2.bas similarity index 100% rename from src/arch/zxnext/library/IM2.bas rename to src/lib/arch/zxnext/stdlib/IM2.bas diff --git a/src/arch/zxnext/library/README b/src/lib/arch/zxnext/stdlib/README similarity index 100% rename from src/arch/zxnext/library/README rename to src/lib/arch/zxnext/stdlib/README diff --git a/src/arch/zxnext/library/SP/Fill.bas b/src/lib/arch/zxnext/stdlib/SP/Fill.bas similarity index 100% rename from src/arch/zxnext/library/SP/Fill.bas rename to src/lib/arch/zxnext/stdlib/SP/Fill.bas diff --git a/src/arch/zxnext/library/alloc.bas b/src/lib/arch/zxnext/stdlib/alloc.bas similarity index 100% rename from src/arch/zxnext/library/alloc.bas rename to src/lib/arch/zxnext/stdlib/alloc.bas diff --git a/src/arch/zxnext/library/asc.bas b/src/lib/arch/zxnext/stdlib/asc.bas similarity index 100% rename from src/arch/zxnext/library/asc.bas rename to src/lib/arch/zxnext/stdlib/asc.bas diff --git a/src/arch/zxnext/library/attr.bas b/src/lib/arch/zxnext/stdlib/attr.bas similarity index 100% rename from src/arch/zxnext/library/attr.bas rename to src/lib/arch/zxnext/stdlib/attr.bas diff --git a/src/arch/zxnext/library/basic.bas b/src/lib/arch/zxnext/stdlib/basic.bas similarity index 100% rename from src/arch/zxnext/library/basic.bas rename to src/lib/arch/zxnext/stdlib/basic.bas diff --git a/src/arch/zxnext/library/clearbox.bas b/src/lib/arch/zxnext/stdlib/clearbox.bas similarity index 100% rename from src/arch/zxnext/library/clearbox.bas rename to src/lib/arch/zxnext/stdlib/clearbox.bas diff --git a/src/arch/zxnext/library/csrlin.bas b/src/lib/arch/zxnext/stdlib/csrlin.bas similarity index 100% rename from src/arch/zxnext/library/csrlin.bas rename to src/lib/arch/zxnext/stdlib/csrlin.bas diff --git a/src/arch/zxnext/library/esxdos.bas b/src/lib/arch/zxnext/stdlib/esxdos.bas similarity index 100% rename from src/arch/zxnext/library/esxdos.bas rename to src/lib/arch/zxnext/stdlib/esxdos.bas diff --git a/src/arch/zxnext/library/fastplot.bas b/src/lib/arch/zxnext/stdlib/fastplot.bas similarity index 100% rename from src/arch/zxnext/library/fastplot.bas rename to src/lib/arch/zxnext/stdlib/fastplot.bas diff --git a/src/arch/zxnext/library/fzx_fonts/academy.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/academy.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/academy.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/academy.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/belegost1.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/belegost1.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/belegost1.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/belegost1.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/belegost2.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/belegost2.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/belegost2.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/belegost2.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/bigbold.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/bigbold.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/bigbold.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/bigbold.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/cobra.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/cobra.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/cobra.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/cobra.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/crash.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/crash.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/crash.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/crash.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/d_o_c.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/d_o_c.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/d_o_c.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/d_o_c.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/eclipse.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/eclipse.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/eclipse.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/eclipse.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/extra.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/extra.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/extra.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/extra.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/hijack.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/hijack.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/hijack.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/hijack.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/italika.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/italika.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/italika.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/italika.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/just6.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/just6.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/just6.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/just6.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/locomotion.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/locomotion.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/locomotion.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/locomotion.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/midnight.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/midnight.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/midnight.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/midnight.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/moonalert.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/moonalert.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/moonalert.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/moonalert.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/nether.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/nether.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/nether.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/nether.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/neverend.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/neverend.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/neverend.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/neverend.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/roman.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/roman.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/roman.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/roman.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/script.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/script.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/script.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/script.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/script2.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/script2.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/script2.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/script2.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/standard.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/standard.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/standard.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/standard.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/tomahawk.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/tomahawk.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/tomahawk.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/tomahawk.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/ultrabold.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/ultrabold.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/ultrabold.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/ultrabold.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/upcasebold.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/upcasebold.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/upcasebold.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/upcasebold.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/wildvest.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/wildvest.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/wildvest.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/wildvest.fzx diff --git a/src/arch/zxnext/library/fzx_fonts/winter.fzx b/src/lib/arch/zxnext/stdlib/fzx_fonts/winter.fzx similarity index 100% rename from src/arch/zxnext/library/fzx_fonts/winter.fzx rename to src/lib/arch/zxnext/stdlib/fzx_fonts/winter.fzx diff --git a/src/arch/zxnext/library/haplofnt.bin b/src/lib/arch/zxnext/stdlib/haplofnt.bin similarity index 100% rename from src/arch/zxnext/library/haplofnt.bin rename to src/lib/arch/zxnext/stdlib/haplofnt.bin diff --git a/src/arch/zxnext/library/hex.bas b/src/lib/arch/zxnext/stdlib/hex.bas similarity index 100% rename from src/arch/zxnext/library/hex.bas rename to src/lib/arch/zxnext/stdlib/hex.bas diff --git a/src/arch/zxnext/library/input.bas b/src/lib/arch/zxnext/stdlib/input.bas similarity index 100% rename from src/arch/zxnext/library/input.bas rename to src/lib/arch/zxnext/stdlib/input.bas diff --git a/src/arch/zxnext/library/input42.bas b/src/lib/arch/zxnext/stdlib/input42.bas similarity index 100% rename from src/arch/zxnext/library/input42.bas rename to src/lib/arch/zxnext/stdlib/input42.bas diff --git a/src/arch/zxnext/library/keys.bas b/src/lib/arch/zxnext/stdlib/keys.bas similarity index 100% rename from src/arch/zxnext/library/keys.bas rename to src/lib/arch/zxnext/stdlib/keys.bas diff --git a/src/arch/zxnext/library/megalz.bas b/src/lib/arch/zxnext/stdlib/megalz.bas similarity index 100% rename from src/arch/zxnext/library/megalz.bas rename to src/lib/arch/zxnext/stdlib/megalz.bas diff --git a/src/arch/zxnext/library/memcopy.bas b/src/lib/arch/zxnext/stdlib/memcopy.bas similarity index 100% rename from src/arch/zxnext/library/memcopy.bas rename to src/lib/arch/zxnext/stdlib/memcopy.bas diff --git a/src/arch/zxnext/library/mj/fourspriter.bas b/src/lib/arch/zxnext/stdlib/mj/fourspriter.bas similarity index 100% rename from src/arch/zxnext/library/mj/fourspriter.bas rename to src/lib/arch/zxnext/stdlib/mj/fourspriter.bas diff --git a/src/arch/zxnext/library/point.bas b/src/lib/arch/zxnext/stdlib/point.bas similarity index 100% rename from src/arch/zxnext/library/point.bas rename to src/lib/arch/zxnext/stdlib/point.bas diff --git a/src/arch/zxnext/library/pos.bas b/src/lib/arch/zxnext/stdlib/pos.bas similarity index 100% rename from src/arch/zxnext/library/pos.bas rename to src/lib/arch/zxnext/stdlib/pos.bas diff --git a/src/arch/zxnext/library/print42.bas b/src/lib/arch/zxnext/stdlib/print42.bas similarity index 100% rename from src/arch/zxnext/library/print42.bas rename to src/lib/arch/zxnext/stdlib/print42.bas diff --git a/src/arch/zxnext/library/print64.bas b/src/lib/arch/zxnext/stdlib/print64.bas similarity index 100% rename from src/arch/zxnext/library/print64.bas rename to src/lib/arch/zxnext/stdlib/print64.bas diff --git a/src/arch/zxnext/library/printfzx.bas b/src/lib/arch/zxnext/stdlib/printfzx.bas similarity index 100% rename from src/arch/zxnext/library/printfzx.bas rename to src/lib/arch/zxnext/stdlib/printfzx.bas diff --git a/src/arch/zxnext/library/putchars.bas b/src/lib/arch/zxnext/stdlib/putchars.bas similarity index 100% rename from src/arch/zxnext/library/putchars.bas rename to src/lib/arch/zxnext/stdlib/putchars.bas diff --git a/src/arch/zxnext/library/puttile.bas b/src/lib/arch/zxnext/stdlib/puttile.bas similarity index 100% rename from src/arch/zxnext/library/puttile.bas rename to src/lib/arch/zxnext/stdlib/puttile.bas diff --git a/src/arch/zxnext/library/radastan.bas b/src/lib/arch/zxnext/stdlib/radastan.bas similarity index 100% rename from src/arch/zxnext/library/radastan.bas rename to src/lib/arch/zxnext/stdlib/radastan.bas diff --git a/src/arch/zxnext/library/retrace.bas b/src/lib/arch/zxnext/stdlib/retrace.bas similarity index 100% rename from src/arch/zxnext/library/retrace.bas rename to src/lib/arch/zxnext/stdlib/retrace.bas diff --git a/src/arch/zxnext/library/round.bas b/src/lib/arch/zxnext/stdlib/round.bas similarity index 100% rename from src/arch/zxnext/library/round.bas rename to src/lib/arch/zxnext/stdlib/round.bas diff --git a/src/arch/zxnext/library/scrbuffer.bas b/src/lib/arch/zxnext/stdlib/scrbuffer.bas similarity index 100% rename from src/arch/zxnext/library/scrbuffer.bas rename to src/lib/arch/zxnext/stdlib/scrbuffer.bas diff --git a/src/arch/zxnext/library/screen.bas b/src/lib/arch/zxnext/stdlib/screen.bas similarity index 100% rename from src/arch/zxnext/library/screen.bas rename to src/lib/arch/zxnext/stdlib/screen.bas diff --git a/src/arch/zxnext/library/scroll.bas b/src/lib/arch/zxnext/stdlib/scroll.bas similarity index 100% rename from src/arch/zxnext/library/scroll.bas rename to src/lib/arch/zxnext/stdlib/scroll.bas diff --git a/src/arch/zxnext/library/sinclair.bas b/src/lib/arch/zxnext/stdlib/sinclair.bas similarity index 100% rename from src/arch/zxnext/library/sinclair.bas rename to src/lib/arch/zxnext/stdlib/sinclair.bas diff --git a/src/arch/zxnext/library/spectranet.bas b/src/lib/arch/zxnext/stdlib/spectranet.bas similarity index 100% rename from src/arch/zxnext/library/spectranet.bas rename to src/lib/arch/zxnext/stdlib/spectranet.bas diff --git a/src/arch/zxnext/library/string.bas b/src/lib/arch/zxnext/stdlib/string.bas similarity index 100% rename from src/arch/zxnext/library/string.bas rename to src/lib/arch/zxnext/stdlib/string.bas diff --git a/src/arch/zxnext/library/template.bas b/src/lib/arch/zxnext/stdlib/template.bas similarity index 100% rename from src/arch/zxnext/library/template.bas rename to src/lib/arch/zxnext/stdlib/template.bas diff --git a/src/arch/zxnext/library/winscroll.bas b/src/lib/arch/zxnext/stdlib/winscroll.bas similarity index 100% rename from src/arch/zxnext/library/winscroll.bas rename to src/lib/arch/zxnext/stdlib/winscroll.bas diff --git a/src/arch/zxnext/library/zx0.bas b/src/lib/arch/zxnext/stdlib/zx0.bas similarity index 100% rename from src/arch/zxnext/library/zx0.bas rename to src/lib/arch/zxnext/stdlib/zx0.bas diff --git a/src/outfmt/tap.py b/src/outfmt/tap.py index 9c0087294..a8b6d54ff 100755 --- a/src/outfmt/tap.py +++ b/src/outfmt/tap.py @@ -8,7 +8,7 @@ # This program is licensed under the # GNU Public License v.3.0 # -# Simple .tap file library +# Simple .tap file stdlib # Only supports standard headers by now. # -------------------------------------------- diff --git a/src/outfmt/tzx.py b/src/outfmt/tzx.py index 972b2a052..89250d721 100755 --- a/src/outfmt/tzx.py +++ b/src/outfmt/tzx.py @@ -8,7 +8,7 @@ # This program is licensed under the # GNU Public License v.3.0 # -# Simple .tzx file library +# Simple .tzx file stdlib # Only supports standard headers by now. # -------------------------------------------- diff --git a/src/zxbc/zxbparser.py b/src/zxbc/zxbparser.py index 8a0c6b6ae..33f844367 100755 --- a/src/zxbc/zxbparser.py +++ b/src/zxbc/zxbparser.py @@ -230,7 +230,7 @@ def make_builtin(lineno, fname, operands, func=None, type_=None): if operands is None: operands = [] assert isinstance(operands, Symbol) or isinstance(operands, tuple) or isinstance(operands, list) - # TODO: In the future, builtin functions will be implemented in an external library, like POINT or ATTR + # TODO: In the future, builtin functions will be implemented in an external stdlib, like POINT or ATTR __DEBUG__('Creating BUILTIN "{}"'.format(fname), 1) if not isinstance(operands, (list, tuple, set)): operands = [operands] @@ -315,7 +315,11 @@ def make_array_access(id_, lineno, arglist): This is an RVALUE (Read the element) """ for i, arg in enumerate(arglist): - value = make_typecast(TYPE.by_name(src.api.constants.TYPE.to_string(gl.BOUND_TYPE)), arg.value, arg.lineno) + value = make_typecast( + TYPE.by_name(src.api.constants.TYPE.to_string(gl.BOUND_TYPE)), + arg.value, + arg.lineno, + ) if value is None: # semantic error? return None # return error arg.value = value @@ -416,7 +420,13 @@ def make_call(id_: str, lineno: int, args: sym.ARGLIST): return make_func_call(id_, lineno, args) -def make_param_decl(id_: str, lineno: int, typedef, is_array: bool, default_value: Optional[sym.SYMBOL] = None): +def make_param_decl( + id_: str, + lineno: int, + typedef, + is_array: bool, + default_value: Optional[sym.SYMBOL] = None, +): """Wrapper that creates a param declaration""" return SYMBOL_TABLE.declare_param(id_, lineno, typedef, is_array, default_value) @@ -719,7 +729,12 @@ def p_var_decl_ini(p): SYMBOL_TABLE.declare_const(idlist[0].name, idlist[0].lineno, typedef, default_value=defval) if defval is None: # Okay do a delayed initialization - p[0] = make_sentence(p.lineno(1), "LET", SYMBOL_TABLE.access_var(idlist[0].name, p.lineno(1)), value) + p[0] = make_sentence( + p.lineno(1), + "LET", + SYMBOL_TABLE.access_var(idlist[0].name, p.lineno(1)), + value, + ) def p_singleid(p): @@ -759,7 +774,10 @@ def p_arr_decl_attr(p): if expr.token == "UNARY" and expr.operator == "ADDRESS": # Must be an ID if expr.operand.token == "ARRAYACCESS": if expr.operand.offset is None: - error(p.lineno(4), "Address is not constant. Only constant subscripts are allowed") + error( + p.lineno(4), + "Address is not constant. Only constant subscripts are allowed", + ) return else: if expr.operand.token not in ("ID", "VAR", "LABEL"): @@ -803,16 +821,23 @@ def check_bound(boundlist, remaining): if not isinstance(remaining, list): return True # It's OK :-) - error(lineno, "Unexpected extra vector dimensions. It should be %i" % len(remaining)) + error( + lineno, + "Unexpected extra vector dimensions. It should be %i" % len(remaining), + ) return False if not isinstance(remaining, list): - error(lineno, "Mismatched vector size. Missing %i extra dimension(s)" % len(boundlist)) + error( + lineno, + "Mismatched vector size. Missing %i extra dimension(s)" % len(boundlist), + ) return False if len(remaining) != boundlist[0].count: error( - lineno, "Mismatched vector size. Expected %i elements, got %i." % (boundlist[0].count, len(remaining)) + lineno, + "Mismatched vector size. Expected %i elements, got %i." % (boundlist[0].count, len(remaining)), ) return False # It's wrong. :-( @@ -934,7 +959,10 @@ def p_statement_border(p): def p_statement_plot(p): """statement : PLOT expr COMMA expr""" p[0] = make_sentence( - p.lineno(1), "PLOT", make_typecast(TYPE.ubyte, p[2], p.lineno(3)), make_typecast(TYPE.ubyte, p[4], p.lineno(3)) + p.lineno(1), + "PLOT", + make_typecast(TYPE.ubyte, p[2], p.lineno(3)), + make_typecast(TYPE.ubyte, p[4], p.lineno(3)), ) @@ -1143,11 +1171,17 @@ def p_array_copy(p): return if larray.ref.count != rarray.ref.count: - warning(l1, "Arrays '%s' and '%s' don't have the same number of dimensions" % (larray.name, rarray.name)) + warning( + l1, + "Arrays '%s' and '%s' don't have the same number of dimensions" % (larray.name, rarray.name), + ) else: for b1, b2 in zip(larray.ref.bounds, rarray.ref.bounds): if b1.count != b2.count: - warning(l1, "Arrays '%s' and '%s' don't have the same dimensions" % (array_id1, array_id2)) + warning( + l1, + "Arrays '%s' and '%s' don't have the same dimensions" % (array_id1, array_id2), + ) break # Array copy mark_entry_as_accessed(larray) @@ -1256,8 +1290,16 @@ def p_substr_assignment(p): ) else: substr = ( - make_typecast(_TYPE(gl.STR_INDEX_TYPE), make_number(gl.MIN_STRSLICE_IDX, lineno=p.lineno(2)), p.lineno(2)), - make_typecast(_TYPE(gl.STR_INDEX_TYPE), make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(2)), p.lineno(2)), + make_typecast( + _TYPE(gl.STR_INDEX_TYPE), + make_number(gl.MIN_STRSLICE_IDX, lineno=p.lineno(2)), + p.lineno(2), + ), + make_typecast( + _TYPE(gl.STR_INDEX_TYPE), + make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(2)), + p.lineno(2), + ), ) lineno = p.lineno(2) @@ -1567,10 +1609,16 @@ def p_for_sentence_start(p): warning(p.lineno(5), "STEP value is 0 and FOR might loop forever") if p[4].value > p[6].value and p[7].value > 0: - warning(p.lineno(5), "FOR start value is greater than end. This FOR loop is useless") + warning( + p.lineno(5), + "FOR start value is greater than end. This FOR loop is useless", + ) if p[4].value < p[6].value and p[7].value < 0: - warning(p.lineno(2), "FOR start value is lower than end. This FOR loop is useless") + warning( + p.lineno(2), + "FOR start value is lower than end. This FOR loop is useless", + ) id_type = common_type(common_type(p[4], p[6]), p[7]) variable = SYMBOL_TABLE.access_var(p[2], p.lineno(2), default_type=id_type) @@ -1609,7 +1657,13 @@ def p_end(p): def p_error_raise(p): """statement : ERROR expr""" q = make_number(1, lineno=p.lineno(2)) - r = make_binary(p.lineno(1), "MINUS", make_typecast(TYPE.ubyte, p[2], p.lineno(1)), q, lambda x, y: x - y) + r = make_binary( + p.lineno(1), + "MINUS", + make_typecast(TYPE.ubyte, p[2], p.lineno(1)), + q, + lambda x, y: x - y, + ) p[0] = make_sentence(p.lineno(1), "ERROR", r) @@ -1619,7 +1673,13 @@ def p_stop_raise(p): """ q = make_number(9, lineno=p.lineno(1)) if len(p) == 2 else p[2] z = make_number(1, lineno=p.lineno(1)) - r = make_binary(p.lineno(1), "MINUS", make_typecast(TYPE.ubyte, q, p.lineno(1)), z, lambda x, y: x - y) + r = make_binary( + p.lineno(1), + "MINUS", + make_typecast(TYPE.ubyte, q, p.lineno(1)), + z, + lambda x, y: x - y, + ) p[0] = make_sentence(p.lineno(1), "STOP", r) @@ -1764,7 +1824,11 @@ def p_read(p): if isinstance(entry, sym.ARRAYLOAD): reads.append( - make_sentence(p.lineno(1), "READ", sym.ARRAYACCESS(entry.entry, entry.args, entry.lineno, gl.FILENAME)) + make_sentence( + p.lineno(1), + "READ", + sym.ARRAYACCESS(entry.entry, entry.args, entry.lineno, gl.FILENAME), + ) ) continue @@ -2065,17 +2129,26 @@ def p_return_expr(p): return if is_numeric(p[2]) and FUNCTION_LEVEL[-1].type_ == TYPE.string: - error(p.lineno(2), "Type Error: Function must return a string, not a numeric value") + error( + p.lineno(2), + "Type Error: Function must return a string, not a numeric value", + ) p[0] = None return if not is_numeric(p[2]) and FUNCTION_LEVEL[-1].type_ != TYPE.string: - error(p.lineno(2), "Type Error: Function must return a numeric value, not a string") + error( + p.lineno(2), + "Type Error: Function must return a numeric value, not a string", + ) p[0] = None return p[0] = make_sentence( - p.lineno(1), "RETURN", FUNCTION_LEVEL[-1], make_typecast(FUNCTION_LEVEL[-1].type_, p[2], p.lineno(1)) + p.lineno(1), + "RETURN", + FUNCTION_LEVEL[-1], + make_typecast(FUNCTION_LEVEL[-1].type_, p[2], p.lineno(1)), ) @@ -2339,7 +2412,13 @@ def p_expr_shl_expr(p): if p[1].type_ in (TYPE.float_, TYPE.fixed): p[1] = make_typecast(TYPE.ulong, p[1], p.lineno(2)) - p[0] = make_binary(p.lineno(2), "SHL", p[1], make_typecast(TYPE.ubyte, p[3], p.lineno(2)), lambda x, y: x << y) + p[0] = make_binary( + p.lineno(2), + "SHL", + p[1], + make_typecast(TYPE.ubyte, p[3], p.lineno(2)), + lambda x, y: x << y, + ) def p_expr_shr_expr(p): @@ -2351,7 +2430,13 @@ def p_expr_shr_expr(p): if p[1].type_ in (TYPE.float_, TYPE.fixed): p[1] = make_typecast(TYPE.ulong, p[1], p.lineno(2)) - p[0] = make_binary(p.lineno(2), "SHR", p[1], make_typecast(TYPE.ubyte, p[3], p.lineno(2)), lambda x, y: x >> y) + p[0] = make_binary( + p.lineno(2), + "SHR", + p[1], + make_typecast(TYPE.ubyte, p[3], p.lineno(2)), + lambda x, y: x >> y, + ) def p_minus_expr(p): @@ -2503,7 +2588,10 @@ def p_string_substr(p): def p_string_expr_lp(p): """string : LP expr RP substr""" if p[2].type_ != TYPE.string: - error(p.lexer.lineno, "Expected a string type expression. " "Got %s type instead" % TYPE.to_string(p[2].type_)) + error( + p.lexer.lineno, + "Expected a string type expression. " "Got %s type instead" % TYPE.to_string(p[2].type_), + ) p[0] = None else: p[0] = make_strslice(p.lexer.lineno, p[2], p[4][0], p[4][1]) @@ -2511,7 +2599,10 @@ def p_string_expr_lp(p): def p_subind_str(p): """substr : LP expr TO expr RP""" - p[0] = (make_typecast(TYPE.uinteger, p[2], p.lineno(1)), make_typecast(TYPE.uinteger, p[4], p.lineno(3))) + p[0] = ( + make_typecast(TYPE.uinteger, p[2], p.lineno(1)), + make_typecast(TYPE.uinteger, p[4], p.lineno(3)), + ) def p_subind_strTO(p): @@ -2526,7 +2617,11 @@ def p_subind_TOstr(p): """substr : LP expr TO RP""" p[0] = ( make_typecast(TYPE.uinteger, p[2], p.lineno(1)), - make_typecast(TYPE.uinteger, make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(4)), lineno=p.lineno(4)), + make_typecast( + TYPE.uinteger, + make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(4)), + lineno=p.lineno(4), + ), p.lineno(3), ) @@ -2535,7 +2630,11 @@ def p_subind_TO(p): """substr : LP TO RP""" p[0] = ( make_typecast(TYPE.uinteger, make_number(0, lineno=p.lineno(2)), p.lineno(1)), - make_typecast(TYPE.uinteger, make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(3)), p.lineno(2)), + make_typecast( + TYPE.uinteger, + make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(3)), + p.lineno(2), + ), ) @@ -2555,7 +2654,10 @@ def p_id_expr(p): if entry.class_ == CLASS.array: # HINT: This should never happen now if not LET_ASSIGNMENT: - error(p.lineno(1), "Variable '%s' is an array and cannot be used in this context" % p[1]) + error( + p.lineno(1), + "Variable '%s' is an array and cannot be used in this context" % p[1], + ) p[0] = None elif entry.class_ == CLASS.function: # Function call with 0 args p[0] = make_call(p[1], p.lineno(1), make_arg_list(None)) @@ -2662,7 +2764,10 @@ def p_let_arr_substr_in_args(p): id_ = p[i] arg_list = p[i + 2] - substr = (arg_list.children.pop().value, make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(i + 3))) + substr = ( + arg_list.children.pop().value, + make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(i + 3)), + ) expr_ = p[i + 6] p[0] = make_array_substr_assign(p.lineno(i), id_, arg_list, substr, expr_) @@ -2689,7 +2794,10 @@ def p_let_arr_substr_in_args3(p): id_ = p[i] arg_list = p[i + 2] - substr = (make_number(0, lineno=p.lineno(i + 4)), make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(i + 3))) + substr = ( + make_number(0, lineno=p.lineno(i + 4)), + make_number(gl.MAX_STRSLICE_IDX, lineno=p.lineno(i + 3)), + ) expr_ = p[i + 7] p[0] = make_array_substr_assign(p.lineno(i), id_, arg_list, substr, expr_) @@ -2872,7 +2980,8 @@ def p_function_header_pre(p): for a, b in zip(p1, p2): if a.name != b.name: warning( - lineno, "Parameter '%s' in function '%s' has been renamed to '%s'" % (a.name, p[0].name, b.name) + lineno, + "Parameter '%s' in function '%s' has been renamed to '%s'" % (a.name, p[0].name, b.name), ) if a.type_ != b.type_ or a.byref != b.byref: @@ -2898,7 +3007,10 @@ def p_function_header_pre(p): def p_function_error(p): """function_declaration : function_header program_co END error""" p[0] = None - error(p.lineno(3), "Unexpected token 'END'. Expected 'END FUNCTION' or 'END SUB' instead.") + error( + p.lineno(3), + "Unexpected token 'END'. Expected 'END FUNCTION' or 'END SUB' instead.", + ) def p_function_def(p): @@ -3047,12 +3159,18 @@ def p_function_body(p): | END SUB """ if not FUNCTION_LEVEL: - error(p.lineno(3), "Unexpected token 'END %s'. No Function or Sub has been defined." % p[2]) + error( + p.lineno(3), + "Unexpected token 'END %s'. No Function or Sub has been defined." % p[2], + ) p[0] = None return a = FUNCTION_LEVEL[-1].class_ - if a not in (CLASS.sub, CLASS.function): # This function/sub was not correctly declared, so exit now + if a not in ( + CLASS.sub, + CLASS.function, + ): # This function/sub was not correctly declared, so exit now p[0] = None return @@ -3060,7 +3178,10 @@ def p_function_body(p): b = p[i].lower() if a != b: - error(p.lineno(i), "Unexpected token 'END %s'. Should be 'END %s'" % (b.upper(), a.upper())) + error( + p.lineno(i), + "Unexpected token 'END %s'. Should be 'END %s'" % (b.upper(), a.upper()), + ) p[0] = None else: p[0] = make_block() if p[1] == "END" else p[1] @@ -3153,7 +3274,12 @@ def p_expr_usr(p): if p[2].type_ == TYPE.string: p[0] = make_builtin(p.lineno(1), "USR_STR", p[2], type_=TYPE.uinteger) else: - p[0] = make_builtin(p.lineno(1), "USR", make_typecast(TYPE.uinteger, p[2], p.lineno(1)), type_=TYPE.uinteger) + p[0] = make_builtin( + p.lineno(1), + "USR", + make_typecast(TYPE.uinteger, p[2], p.lineno(1)), + type_=TYPE.uinteger, + ) def p_expr_rnd(p): @@ -3165,7 +3291,12 @@ def p_expr_rnd(p): def p_expr_peek(p): """bexpr : PEEK bexpr %prec UMINUS""" - p[0] = make_builtin(p.lineno(1), "PEEK", make_typecast(TYPE.uinteger, p[2], p.lineno(1)), type_=TYPE.ubyte) + p[0] = make_builtin( + p.lineno(1), + "PEEK", + make_typecast(TYPE.uinteger, p[2], p.lineno(1)), + type_=TYPE.ubyte, + ) def p_expr_peektype_(p): @@ -3175,7 +3306,12 @@ def p_expr_peektype_(p): def p_expr_in(p): """bexpr : IN bexpr %prec UMINUS""" - p[0] = make_builtin(p.lineno(1), "IN", make_typecast(TYPE.uinteger, p[2], p.lineno(1)), type_=TYPE.ubyte) + p[0] = make_builtin( + p.lineno(1), + "IN", + make_typecast(TYPE.uinteger, p[2], p.lineno(1)), + type_=TYPE.ubyte, + ) def p_expr_lbound(p): @@ -3216,7 +3352,10 @@ def p_expr_lbound_expr(p): p[0] = None return - if is_number(num) and entry.scope in (SCOPE.local, SCOPE.global_): # Try constant propagation + if is_number(num) and entry.scope in ( + SCOPE.local, + SCOPE.global_, + ): # Try constant propagation val = num.value if val < 0 or val > len(entry.bounds): error(p.lineno(6), "Dimension out of range") @@ -3272,7 +3411,12 @@ def p_str(p): if is_number(p[2]): # A constant is converted to string directly p[0] = sym.STRING(str(p[2].value), p.lineno(1)) else: - p[0] = make_builtin(p.lineno(1), "STR", make_typecast(TYPE.float_, p[2], p.lineno(1)), type_=TYPE.string) + p[0] = make_builtin( + p.lineno(1), + "STR", + make_typecast(TYPE.float_, p[2], p.lineno(1)), + type_=TYPE.string, + ) def p_inkey(p): diff --git a/src/zxbpp/zxbpp.py b/src/zxbpp/zxbpp.py index 1e54e50f9..5f89a9edd 100755 --- a/src/zxbpp/zxbpp.py +++ b/src/zxbpp/zxbpp.py @@ -52,7 +52,7 @@ class PreprocMode(str, Enum): CURRENT_DIR = None # Default include path -INCLUDEPATH: List[str] = ["library", "library-asm"] +INCLUDEPATH: List[str] = ["stdlib", "runtime"] # Enabled to FALSE if IFDEF failed ENABLED: bool = True @@ -142,14 +142,14 @@ def init(): def get_include_path() -> str: """Default include path using a tricky sys calls.""" return os.path.realpath( - os.path.join(os.path.dirname(__file__), os.path.pardir, "arch", config.OPTIONS.architecture or "") + os.path.join(os.path.dirname(__file__), os.path.pardir, "lib", "arch", config.OPTIONS.architecture or "") ) def set_include_path(): global INCLUDEPATH pwd = get_include_path() - INCLUDEPATH = [os.path.join(pwd, "library"), os.path.join(pwd, "library-asm")] + INCLUDEPATH = [os.path.join(pwd, "stdlib"), os.path.join(pwd, "runtime")] def setMode(mode: PreprocMode) -> None: @@ -497,7 +497,13 @@ def p_define(p): else: output.warning_missing_whitespace_after_macro(p.lineno(1), p.lexer.current_file) - ID_TABLE.define(id_, args=params, value=defs, lineno=p.lineno(2), fname=output.CURRENT_FILE[-1]) + ID_TABLE.define( + id_, + args=params, + value=defs, + lineno=p.lineno(2), + fname=output.CURRENT_FILE[-1], + ) p[0] = [] @@ -821,13 +827,25 @@ def p_argstring_argstring(p): def p_error(p): if p is not None: if p.type == "NEWLINE": - error(p.lineno, "Syntax error. Unexpected end of line", output.CURRENT_FILE[-1]) + error( + p.lineno, + "Syntax error. Unexpected end of line", + output.CURRENT_FILE[-1], + ) elif p.type == "_ENDFILE_": - error(p.lineno, "Syntax error. Unexpected end of file", output.CURRENT_FILE[-1]) + error( + p.lineno, + "Syntax error. Unexpected end of file", + output.CURRENT_FILE[-1], + ) else: value = p.value value = "".join(["|%s|" % hex(ord(x)) if x < " " else x for x in value]) - error(p.lineno, "Syntax error. Unexpected token '%s' [%s]" % (value, p.type), output.CURRENT_FILE[-1]) + error( + p.lineno, + "Syntax error. Unexpected token '%s' [%s]" % (value, p.type), + output.CURRENT_FILE[-1], + ) else: config.OPTIONS.stderr.write("General syntax error at preprocessor " "(unexpected End of File?)") global_.has_errors += 1 diff --git a/tests/functional/test.py b/tests/functional/test.py index bd5e0f664..844bd45b0 100755 --- a/tests/functional/test.py +++ b/tests/functional/test.py @@ -405,7 +405,7 @@ def testBAS( if inline: func = lambda: zxbc.main( - options + ["-I", ":".join(os.path.join(ZXBASIC_ROOT, x) for x in ("library", "library-asm"))] + options + ["-I", ":".join(os.path.join(ZXBASIC_ROOT, x) for x in ("stdlib", "runtime"))] ) else: syscmd = "{0} {1}".format(ZXB, " ".join(options))