Repository navigation
Releases: marnixk/mmcore
Release list
mmcore v0.293.0
mmcore v0.293.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.293.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.293.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.293.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.293.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.293.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.293.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.293.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.293.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: console/kernel.cpp matches console/kernel.cpp, so the release could not be scoped to related suites.
Changes since v0.292.0
- Merge pull request #1413 from marnixk/task/ramdisk-demo-test-robustness-0ccd
- tests: decouple ramdisk capacity and pick-list tests from seed (#1412)
- Merge pull request #1411 from marnixk/task/test-linux-native-frameprof-link-0ccd
- tests: link frame profiler into SDL host builds (#1410)
- Merge pull request #1409 from marnixk/task/pi-console-sync-0ccd
- Pi: reconcile only the presented rect after a partial BLIT present (#1403)
- Merge pull request #1408 from marnixk/task/pi-wait-0ccd
- Pi: drop dead present-wait spin and audio mix coupling (#1404)
- Merge pull request #1407 from marnixk/task/test-mouse-frame-prof-link-0ccd
- tests: link frame_prof.c into mouse gfx reconcile driver (#1405)
- Merge pull request #1406 from marnixk/task/pi-coalesce-0ccd
- Pi: coalesce display-page BLIT presents per frame (#1402)
mmcore v0.292.0
mmcore v0.292.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage and a Windows x86_64 zip.
Install
unzip mmcore-console-rpi3-v0.292.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.292.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.292.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.292.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exeArtifacts
mmcore-console-rpi3-v0.292.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.292.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.292.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.292.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 build
Tests
Full test suite. broad/core change: console/Makefile matches console/Makefile, so the release could not be scoped to related suites.
Changes since v0.291.0
- Add Pi vs fbdev perf analysis and opt-in frame profiler (#1401)
mmcore v0.291.0
mmcore v0.291.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.291.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.291.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.291.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.291.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.291.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.291.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.291.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.291.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: native/platform_sdl.c matches native/platform_sdl.c, so the release could not be scoped to related suites.
Changes since v0.290.0
mmcore v0.290.0
mmcore v0.290.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.290.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.290.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.290.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.290.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.290.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.290.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.290.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.290.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Test suites related to the changes since 0.289.0:
tests/test_editor_char_picker.pytests/test_editor_theme_contrast.pytests/test_editor_tui.pytests/test_tui_prompt_cmm2.pytests/test_linux_native.py
Selected because:
- editor: editor / TUI sources changed [mmbasic/src/editor.c]
- test: tests/test_editor_tui.py changed
- test: tests/test_linux_native.py changed
Changes since v0.289.0
mmcore v0.289.0
mmcore v0.289.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.289.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.289.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.289.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.289.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.289.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.289.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.289.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.289.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: mmbasic/include/mmb_priv.h matches mmbasic/include/*, so the release could not be scoped to related suites.
Changes since v0.288.0
- Merge pull request #1397 from marnixk/task/help-link-fix-0ccd
- docs: use the ON help topic for OPTION ERROR links (#1327)
- Merge pull request #1396 from marnixk/task/error-continue-0ccd
- core: honour OPTION ERROR CONTINUE as the RUN error baseline
- Merge pull request #1395 from marnixk/task/core-findings-0ccd
- core: resume after END SELECT colon and run deferred SUB in EXECUTE loops
- Merge pull request #1394 from marnixk/task/tc-findvar-0ccd
- tracecache: resolve variable names through the name hash (#1385)
- Merge pull request #1392 from marnixk/task/core-runtime-0ccd
- core: fix event error unwind, EXECUTE loops, and ENDIF colon resume
- Merge pull request #1389 from marnixk/task/version-test-0ccd
- Compare version tests against the image, not a live git describe
- Merge pull request #1388 from marnixk/task/core-trio-0ccd
- Merge pull request #1386 from marnixk/task/local-scan-0ccd
- Fix keyword-colon prescans, spaced PRINT separators, immediate FOR resume
- vars: make LOCAL binding lookup and slot recycle O(1) (#1328)
- Merge pull request #1383 from marnixk/task/present-align-0ccd
- Merge pull request #1384 from marnixk/task/colour-suffix-0ccd
- expr: read suffixed colour-named variables as variables (#1307)
- SDL present: align software/KMS scanout to the frame grid (#1380)
mmcore v0.288.0
mmcore v0.288.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.288.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.288.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.288.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.288.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.288.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.288.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.288.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.288.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: mmbasic/include/mmb_priv.h matches mmbasic/include/*, so the release could not be scoped to related suites.
Changes since v0.287.0
- Merge pull request #1381 from marnixk/task/tui-dirty-0ccd
- TUI: mark one dirty rect per glyph, not per pixel (#1379)
- Merge pull request #1378 from marnixk/task/present-pacing-0ccd
- SDL present: one display grid, dirty-rect list, no blocking vsync (#1367)
- Merge pull request #1377 from marnixk/task/expr-cache-0ccd
- tracecache: compile idiv/MOD, logic, expression indices and IF branches (#1370)
- Merge pull request #1376 from marnixk/task/tc-slots-0ccd
- tracecache: grow slots and evict cold entries (#1369)
- Merge pull request #1375 from marnixk/task/input-pump-0ccd
- input: rate-limit the per-line SDL event pump (#1370)
- Merge pull request #1373 from marnixk/task/blit-fast-0ccd
- Merge remote-tracking branch 'origin/master' into task/blit-fast-0ccd
- graphics: fast BLIT arguments and native transparent BLIT (#1370)
- Merge pull request #1372 from marnixk/task/tc-local-0ccd
- vars: use per-slot generations for LOCAL/DIM cache validity (#1368)
- Merge pull request #1371 from marnixk/task/on-goto-0ccd
- language: ON n GOTO/GOSUB dispatch to named labels (#1370)
mmcore v0.287.0
mmcore v0.287.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.287.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.287.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.287.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.287.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.287.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.287.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.287.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.287.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. unmapped path: .github/workflows/interrupt-fuzz.yml, so the release could not be scoped to related suites.
Changes since v0.286.0
- Merge pull request #1366 from marnixk/task/interrupt-fuzz-0ccd
- tests: add interrupt fuzz harness for SETTICK state isolation (#1352)
- Merge pull request #1365 from marnixk/task/arena-per-console-0ccd
- strings: make the expression arena per-console (#1351)
- Merge pull request #1363 from marnixk/task/execute-frame-0ccd
- core: run EXECUTE in a self-contained execution frame (#1354)
- Merge pull request #1362 from marnixk/task/on-n-gosub-frame-0ccd
- core: push a full gosub frame for ON n GOSUB (#1349)
- Merge pull request #1360 from marnixk/task/events-branch-pos-0ccd
- test: pin branch_pos save/restore across SETTICK handlers (#1350)
- Merge pull request #1358 from marnixk/task/run-nested-helper-0ccd
- core: route nested bodies through mmb_run_nested (#1348)
- Merge pull request #1357 from marnixk/task/one-line-if-frame-0ccd
- if: save one-line IF flags in the gosub checkpoint (#1353)
mmcore v0.286.0
mmcore v0.286.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.286.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.286.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.286.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.286.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.286.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.286.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.286.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.286.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: console/Makefile matches console/Makefile, so the release could not be scoped to related suites.
Changes since v0.285.0
- Merge pull request #1356 from marnixk/task/pkg-node-1291-0ccd
- test: free the archive node in test_package_run_app_over_95_nodes (#1291)
- Merge pull request #1355 from marnixk/task/exec-frame-type-0ccd
- core: add mmb_exec_frame execution-state type (#1347)
- Merge pull request #1345 from marnixk/task/end-function-1343-0ccd
- core: END inside FUNCTION/SUB stops the program (#1343)
- Merge pull request #1344 from marnixk/task/if-shadow-1342-0ccd
- if: preserve skipped nested-IF count across interrupt calls (#1342)
mmcore v0.285.0
mmcore v0.285.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.285.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.285.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.285.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.285.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.285.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.285.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.285.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.285.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: mmbasic/include/mmb_priv.h matches mmbasic/include/*, so the release could not be scoped to related suites.
Changes since v0.284.0
- Merge pull request #1340 from marnixk/task/if-skip-perf-0ccd
- core: skip untaken block IF arms arm-to-arm (#1333)
- Merge pull request #1339 from marnixk/task/cmd-assign-0ccd
- names: reject bare command assignments instead of running them (#1337)
- Merge pull request #1338 from marnixk/task/flow-midline-0ccd
- flow: fix mid-line DO/LOOP and same-line EXIT SUB resume (#1329, #1332)
- Merge pull request #1336 from marnixk/task/names-const-0ccd
- names: reject terminating command names and name CONST parameter clashes (#1334, #1335)
mmcore v0.284.0
mmcore v0.284.0
Bare-metal mmcore for Raspberry Pi. Each zip is a FAT-ready SD-card image
plus install-sdcard.sh for Linux, and native desktop builds are attached:
a Linux AppImage, a Windows x86_64 zip, and a universal macOS app.
Install
unzip mmcore-console-rpi3-v0.284.0.zip
sudo ./install-sdcard.sh --bootstrap --model rpi3 /dev/sdX # Pi 3 / 3B+ / 3A+
unzip mmcore-console-pizero2-v0.284.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2 /dev/sdX # Pi Zero 2
unzip mmcore-console-pizero2w-v0.284.0.zip
sudo ./install-sdcard.sh --bootstrap --model pizero2w /dev/sdX # Pi Zero 2 W
unzip mmcore-console-pi400-v0.284.0.zip
sudo ./install-sdcard.sh --bootstrap --model pi400 /dev/sdX # Pi 400 / 4B / CM4--update refreshes kernel and firmware without wiping BASIC files on C:.
Linux native (AppImage)
Run the desktop build on a Linux x86_64 host (SDL2 window; type at the prompt):
chmod +x mmcore-x86_64.AppImage
./mmcore-x86_64.AppImageLinux framebuffer (KMS/DRM)
Run the KMS/DRM build from a text virtual terminal (no X11/Wayland):
tar -xzf mmcore-fb-linux-x86_64.tar.gz
./mmcore-fb-linux-x86_64/mmcore-fbBootable USB / ISO (Alpine, KMS/DRM)
The ISO ships compressed as mmcore-fb-x86_64.iso.zst. Decompress it,
then write it to a USB stick or microSD; install-usb.sh adds a persistent MMCORE
partition so BASIC files survive reboots:
zstd -d mmcore-fb-x86_64.iso.zst
sudo ./install-usb.sh --iso mmcore-fb-x86_64.iso /dev/sdXinstall-usb.sh also accepts the compressed .iso.zst directly.
--read-write keeps the live session writable and persists C: on that
stick or microSD without installing onto an internal disk.
Windows native (x86_64)
Unzip and run mmcore.exe from Explorer or a terminal; keep the
bundled SDL2.dll next to it (the SDL2 window shows output and keyboard
input). The executable is Authenticode-signed for release builds.
Expand-Archive mmcore-windows-x86_64.zip .
.\mmcore-windows-x86_64\mmcore.exemacOS native (universal: Apple Silicon + Intel)
Unzip and drag mmcore.app to Applications, then launch it from Finder
(the SDL2 window shows the prompt and keyboard input):
unzip mmcore-macos-universal.zip
open mmcore.appArtifacts
mmcore-console-rpi3-v0.284.0.zip— Raspberry Pi 3 / 3B+ / 3A+mmcore-console-pizero2-v0.284.0.zip— Raspberry Pi Zero 2 (no onboard WLAN)mmcore-console-pizero2w-v0.284.0.zip— Raspberry Pi Zero 2 W (CYW43436)mmcore-console-pi400-v0.284.0.zip— Raspberry Pi 400 (also Pi 4B / CM4)install-sdcard.sh— same installer, also inside each zipmmcore-x86_64.AppImage— Linux native SDL2 desktop buildmmcore-fb-linux-x86_64.tar.gz— Linux x86_64 KMS/DRM framebuffer buildmmcore-fb-x86_64.iso.zst— bootable Alpine live USB/ISO, zstd-compressed (KMS/DRM, Wi-Fi/Ethernet)install-usb.sh— decompress/write the ISO to USB and add the persistent partitionmmcore-windows-x86_64.zip— Windows x86_64 native SDL2 buildmmcore-macos-universal.zip— macOS universal app bundle (mmcore.app)
Tests
Full test suite. broad/core change: mmbasic/include/mmb_priv.h matches mmbasic/include/*, so the release could not be scoped to related suites.