Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c39ebf5
Add zx81sd architecture for ZX81 + SD81 Booster hardware
wilco2009 Jun 30, 2026
9b9861f
zx81sd: fix graphics/VSYNC, add native keyboard driver and beeper
wilco2009 Jul 1, 2026
1872536
Ignore zx81sd test build artifacts (compila.bat, TESTSD81*.P/.BIN)
wilco2009 Jul 1, 2026
9c2d154
zx81sd: port Spectrum ROM FP calculator (RST 28h), FLOAT support and …
wilco2009 Jul 2, 2026
7ae4d10
zx81sd: BEEP nativo y PLAY sobre los AY ZonX del SD81 Booster
wilco2009 Jul 2, 2026
bc6f618
zx81sd: libreria de comandos del MCU del SD81 Booster (mcu.bas, joy.bas)
wilco2009 Jul 2, 2026
75c8f7f
zx81sd: statements LOAD/SAVE/VERIFY ... CODE contra la SD del SD81
wilco2009 Jul 2, 2026
9903c86
zx81sd: area de UDGs dedicada (los POKE USR CHR$ corrompian el runtime)
wilco2009 Jul 3, 2026
9a24059
zx81sd: INKEY$ en minusculas (semantica Spectrum) y fix de PO_GR_1
wilco2009 Jul 3, 2026
5aa86b2
zx81sd: teclado con mayusculas/CAPS LOCK, fix scroll/heap, MSFS sobre…
wilco2009 Jul 5, 2026
df96a23
zx81sd: documentacion del port y ejemplos adaptados
wilco2009 Jul 5, 2026
507aeb8
zx81sd: enlazar repositorios relacionados en el README
wilco2009 Jul 5, 2026
a469f4a
zx81sd: precisar estado de pendientes de stdlib compartida
wilco2009 Jul 5, 2026
488f991
zx81sd: portar print42.bas/print64.bas (PRINT de 42/64 columnas)
wilco2009 Jul 5, 2026
67f3315
zx81sd: mover documentacion y herramientas a src/arch/zx81sd/
wilco2009 Jul 5, 2026
418dd1f
zx81sd: fix loading instructions and translate documentation to English
wilco2009 Jul 5, 2026
54d4d36
zx81sd: mark print42.bas/print64.bas as confirmed on real hardware
wilco2009 Jul 5, 2026
ecd94da
zx81sd: add MCU command examples (filesystem, WAV, VGM, PEG, joystick…
wilco2009 Jul 5, 2026
46700e3
zx81sd: mark MCU command examples as confirmed on real hardware
wilco2009 Jul 5, 2026
dbe0e9d
zx81sd: fix ruff findings and formatting
wilco2009 Jul 5, 2026
5d0a02d
zx81sd: confirm examples/winscroll.bas needs no adaptation
wilco2009 Jul 5, 2026
470cfbf
zx81sd: mark winscroll.bas as confirmed on real hardware
wilco2009 Jul 5, 2026
0fbb400
zx81sd: port puttile.bas, confirm putchars.bas needs no changes
wilco2009 Jul 5, 2026
9f961b3
zx81sd: mark putchars.bas/puttile.bas as confirmed on real hardware
wilco2009 Jul 5, 2026
0fb1f2a
make tools executable
wilco2009 Jul 5, 2026
ef8a727
zx81sd: activate Chroma81 colour explicitly in stage 1 boot
wilco2009 Jul 5, 2026
6add187
lint: format code
Jul 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 18 additions & 18 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
[bumpversion]
current_version = 1.18.7

[bumpversion:file:src/zxbc/version.py]
search = VERSION: Final[str] = "{current_version}"
replace = VERSION: Final[str] = "{new_version}"

[bumpversion:file:src/zxbasm/version.py]
search = VERSION = "{current_version}"
replace = VERSION = "{new_version}"

[bumpversion:file:pyproject.toml]
search = version = "{current_version}"
replace = version = "{new_version}"

[bumpversion:file:docs/archive.md]
search = {current_version}
replace = {new_version}
[bumpversion]
current_version = 1.18.7
[bumpversion:file:src/zxbc/version.py]
search = VERSION: Final[str] = "{current_version}"
replace = VERSION: Final[str] = "{new_version}"
[bumpversion:file:src/zxbasm/version.py]
search = VERSION = "{current_version}"
replace = VERSION = "{new_version}"
[bumpversion:file:pyproject.toml]
search = version = "{current_version}"
replace = version = "{new_version}"
[bumpversion:file:docs/archive.md]
search = {current_version}
replace = {new_version}
6 changes: 3 additions & 3 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[run]
omit =
.tox/*
[run]
omit =
.tox/*
36 changes: 18 additions & 18 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@

* text=false

*.bas -crlf
*.asm -crlf
*.bi -crlf

*.txt text
*.md text
*.py text
*.ini text
*.yml text

*.png binary
*.bin binary

*.bas linguist-vendored
*.asm linguist-vendored
* text=false
*.bas -crlf
*.asm -crlf
*.bi -crlf
*.txt text
*.md text
*.py text
*.ini text
*.yml text
*.png binary
*.bin binary
*.bas linguist-vendored
*.asm linguist-vendored
108 changes: 54 additions & 54 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
@@ -1,54 +1,54 @@
name: Bug Report
description: File a bug report.
title: "[Bug]: "
labels: ["bug", "triage"]
projects: ["boriel-basic/1"]
assignees:
- boriel
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: input
id: contact
attributes:
label: Contact Details
description: How can we get in touch with you if we need more info?
placeholder: e.g. Telegram @nickname
validations:
required: false
- type: input
id: version
attributes:
label: Compiler version
description: |
Always check you have the latest version.
You can get the version with zxbc --version
placeholder: v1.17.3
validations:
required: true
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
validations:
required: true
- type: textarea
id: logs
attributes:
label: Error and Warning messages
description: |
Please copy and paste any relevant log output.
This will be automatically formatted into code, so no need for backticks.
render: shell
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/boriel-basic/zxbasic/blob/main/CODE_OF_CONDUCT.md).
options:
- label: I agree to follow this project's Code of Conduct
required: true
name: Bug Report
description: File a bug report.
title: "[Bug]: "
labels: ["bug", "triage"]
projects: ["boriel-basic/1"]
assignees:
- boriel
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: input
id: contact
attributes:
label: Contact Details
description: How can we get in touch with you if we need more info?
placeholder: e.g. Telegram @nickname
validations:
required: false
- type: input
id: version
attributes:
label: Compiler version
description: |
Always check you have the latest version.
You can get the version with zxbc --version
placeholder: v1.17.3
validations:
required: true
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
validations:
required: true
- type: textarea
id: logs
attributes:
label: Error and Warning messages
description: |
Please copy and paste any relevant log output.
This will be automatically formatted into code, so no need for backticks.
render: shell
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/boriel-basic/zxbasic/blob/main/CODE_OF_CONDUCT.md).
options:
- label: I agree to follow this project's Code of Conduct
required: true
108 changes: 54 additions & 54 deletions .github/ISSUE_TEMPLATE/bug_report_es.yaml
Original file line number Diff line number Diff line change
@@ -1,54 +1,54 @@
name: Informe de fallo
description: Informar de un problema
title: "[Bug]: "
labels: ["bug", "triage"]
projects: ["boriel-basic/1"]
assignees:
- boriel
body:
- type: markdown
attributes:
value: |
¡Gracias por tomarte el tiempo de informar de este fallo!
- type: input
id: contact
attributes:
label: Detalles de Contacto
description: ¿Cómo podemos contactarte si ncesitamos información? (opcional)
placeholder: e.g. Telegram @nickname
validations:
required: false
- type: input
id: version
attributes:
label: Versión del compilador
description: |
Always check you have the latest version.
You can get the version with zxbc --version
placeholder: v1.17.3
validations:
required: true
- type: textarea
id: what-happened
attributes:
label: ¿Qué ha pasado?
description: Cuéntanos también que esperabas que sucediera.
placeholder: (descripción del problema)
validations:
required: true
- type: textarea
id: logs
attributes:
label: Mensajes de error o warnings del compilador
description: |
Por favor, copia y pega la salida de los logs.
Serán formateados automáticamente como salida de log. No necesitas usar formato.
render: shell
- type: checkboxes
id: terms
attributes:
label: Código de Conducta
description: Al enviar este formulario, acuerdas seguir nuestro [Código de Conducta](https://github.com/boriel-basic/zxbasic/blob/main/CODE_OF_CONDUCT.md).
options:
- label: I agree to follow this project's Code of Conduct
required: true
name: Informe de fallo
description: Informar de un problema
title: "[Bug]: "
labels: ["bug", "triage"]
projects: ["boriel-basic/1"]
assignees:
- boriel
body:
- type: markdown
attributes:
value: |
¡Gracias por tomarte el tiempo de informar de este fallo!
- type: input
id: contact
attributes:
label: Detalles de Contacto
description: ¿Cómo podemos contactarte si ncesitamos información? (opcional)
placeholder: e.g. Telegram @nickname
validations:
required: false
- type: input
id: version
attributes:
label: Versión del compilador
description: |
Always check you have the latest version.
You can get the version with zxbc --version
placeholder: v1.17.3
validations:
required: true
- type: textarea
id: what-happened
attributes:
label: ¿Qué ha pasado?
description: Cuéntanos también que esperabas que sucediera.
placeholder: (descripción del problema)
validations:
required: true
- type: textarea
id: logs
attributes:
label: Mensajes de error o warnings del compilador
description: |
Por favor, copia y pega la salida de los logs.
Serán formateados automáticamente como salida de log. No necesitas usar formato.
render: shell
- type: checkboxes
id: terms
attributes:
label: Código de Conducta
description: Al enviar este formulario, acuerdas seguir nuestro [Código de Conducta](https://github.com/boriel-basic/zxbasic/blob/main/CODE_OF_CONDUCT.md).
options:
- label: I agree to follow this project's Code of Conduct
required: true
47 changes: 26 additions & 21 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
# Created by .ignore support plugin (hsz.mobi)
*.egg-info/
*.pyc
.cache/
.pytest_cache/
.mypy_cache/
.pytype/
.idea/
.python-version
.tox/
MANIFEST
dist/
examples/*.bin
examples/*.tzx
scratch/
.coverage
htmlcov/
build/
venv/
.pypi-token
.coverage.*
# Created by .ignore support plugin (hsz.mobi)
*.egg-info/
*.pyc
.cache/
.pytest_cache/
.mypy_cache/
.pytype/
.idea/
.python-version
.tox/
MANIFEST
dist/
examples/*.bin
examples/*.tzx
scratch/
.coverage
htmlcov/
build/
venv/
.pypi-token
.coverage.*

# zx81sd test build artifacts (compila.bat + split_sd81.py output)
/compila.bat
/TESTSD81*.P
/TESTSD81*.BIN
40 changes: 20 additions & 20 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.6.0
hooks:
- id: check-yaml
exclude: \.(bin|out)$
- id: end-of-file-fixer
exclude: \.(bin|out)$
- id: trailing-whitespace
exclude: \.(bin|out)$

- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: v0.15.12
hooks:
# Run the linter.
- id: ruff
args: [ --fix ]
# Run the formatter.
- id: ruff-format
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.6.0
hooks:
- id: check-yaml
exclude: \.(bin|out)$
- id: end-of-file-fixer
exclude: \.(bin|out)$
- id: trailing-whitespace
exclude: \.(bin|out)$
- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: v0.15.12
hooks:
# Run the linter.
- id: ruff
args: [ --fix ]
# Run the formatter.
- id: ruff-format
Loading
Loading