Download Latest Version tic80-v1.4-linux-arm64.zip (5.2 MB)
Home / v1.2.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-09-16 32.3 kB
TIC-80 tiny computer 1.2.0 source code.tar.gz 2026-09-16 2.6 MB
TIC-80 tiny computer 1.2.0 source code.zip 2026-09-16 2.8 MB
tic80-v1.2-3ds.zip 2026-09-16 2.2 MB
tic80-v1.2-android.apk 2026-09-16 12.0 MB
tic80-v1.2-html.zip 2026-09-16 2.9 MB
tic80-v1.2-learn.md 2026-09-16 28.6 kB
tic80-v1.2-linux-arm64.deb 2026-09-16 4.3 MB
tic80-v1.2-linux-arm64.zip 2026-09-16 5.2 MB
tic80-v1.2-linux.deb 2026-09-16 4.5 MB
tic80-v1.2-linux.zip 2026-09-16 5.4 MB
tic80-v1.2-mac-arm64.app.zip 2026-09-16 4.4 MB
tic80-v1.2-mac-arm64.dmg 2026-09-16 5.1 MB
tic80-v1.2-mac-arm64.zip 2026-09-16 4.4 MB
tic80-v1.2-mac.app.zip 2026-09-16 4.8 MB
tic80-v1.2-mac.dmg 2026-09-16 5.5 MB
tic80-v1.2-mac.zip 2026-09-16 4.7 MB
tic80-v1.2-stubs.tar.gz 2026-09-16 128.7 MB
tic80-v1.2-switch.zip 2026-09-16 5.7 MB
tic80-v1.2-win.zip 2026-09-16 4.4 MB
Totals: 20 Items   209.8 MB 0

TIC-80 v1.2.0

TIC-80 v1.2.0 is a major update since v1.1.2837, adding new scripting options, platform ports, editor and input fixes, and a rebuilt release pipeline.

What's new

  • YueScript support added as a scripting language, with contributor credits.
  • New language/runtime updates: Lua 5.4, Python bindings v2.1.0, Fennel 1.5.0, Janet, Squirrel, QuickJS, pocketpy v2.0.4, and a Nim WASM template.
  • FFT support: fft and ffts restored for Python, plus general FFT support.
  • Editor/API additions: remap(), flood fill paint, sprite import BPP option, Ruby scrollx/scrolly in mouse(), Wren map() with no args, resume reload, autosave Surf carts, JSON options saving, flags editbox, informative screenshot names, rm alias for del, console wrapped-line indentation, cursor-position search, and Alt caret.
  • Music editor: more piano-roll notes and a DAW-like keyboard layout, note preview routed to the active editor channel, better track switching, and Caps Lock hex input.
  • Touch/gamepad: mobile touch controls for HTML export, gamepad shortcut to Surf/exit Surf, and gamepad state reset.
  • PCM sound channel: 128 samples per frame written straight into RAM, played at 7680 Hz, poked from any language with no new API to learn.
  • Menu behavior: the pause menu now follows where the run came from, not what the cartridge declares. ESC in a player's run always opens it (a game tag adds the game's own items), while a run started from the studio, Ctrl+R or run, steps back to the editor or console. devmode is gone.
  • Byte Battle feature added.

Platform

  • Nintendo Switch port added; libretro NSwitch build fixed.
  • 3DS port revamped, with updated toolchain and CI fixes.
  • Android: .tic/.png file associations, external keyboard arrow keys, Ctrl shortcut fixes, SDL 2.32.10, and Gradle 9.0.0.
  • Linux: .tic/.png associations, F-Droid badge, openSUSE instructions, and ARM link fix.
  • macOS: horizontal scroll direction fix, OpenGL backend, arm64 CI, macOS-15-intel image, and updated build instructions.
  • Web/WASM: touch controls, Safari arrow keys, btnp/fget return type, config saving, and templates after the lld --stack-first change.
  • libretro: monolithic static build, frametime/cursor fixes, updated state handling, zlib option, and PNG extension support.
  • Baremetal: Raspberry Pi fixes and circle-stdlib update.

Bug fixes

  • Fixed memory leaks in TIC/BOOT/BDR callbacks and fs/console/studio; fixed buffer overflow and strncat issues.
  • Fixed crashes from ESC during popup hide, custom --scale, tab completion, [#2595], and palette out-of-bounds.
  • Input: stuck keys on focus loss, Android arrow keys, French AZERTY layout, Alt+1 layouts, Safari arrows, F1 hotkey conflict, and mouse cursor mapping with tab width.
  • Editors: sprite hotkeys, map editor tile/tool behavior, bookmarks whitespace, horizontal scrolling with Shift/trackpads, command history visibility, alias autocomplete, and command-line parsing.
  • Scripting: Janet/Scheme keyword commas, Python issues [#2841]/#2856, Wren bindings, Ruby mouse coordinates, Lua traces, deprecated Lua/Fennel features, tic_modulo, pmemset, and tic_api_memcpy.
  • Graphics/audio: ttri low bpp, bpp2 import, tilesheet segment offsets, negative texture rounding, font chromakey order, and miniaudio updates.
  • File/config: WASM config saving, options JSON, tic_fs_changedir overflow, Windows XP folder error, and whitespace trimming on save.

Build & infrastructure

  • Tag-driven release pipeline with Android signing secrets, itch.io publishing, and self-hosted /create.
  • CMake refactored into submodules, with configurable script languages, system libraries, BUILD_SURF/WREN/zlib options, debug options, and fixed optimization flag ordering.
  • Updated GitHub Actions, macOS images, Ubuntu 24.04/MSYS2/MINGW/openSUSE docs, Zig 0.14.0-dev, and docker toolchains.
  • Vendor updates: SDL 2.32.10, miniaudio, libpng 1.6.43, zlib 1.3.1, zip v0.3.6, QuickJS, Janet, Squirrel, pocketpy, Fennel, and Python bindings.
  • Replaced the msf_gif submodule with a single header; added THIRD_PARTY_LICENSES/LICENSES; removed sokol support; applied cleanup and .clang-format.

Statistics: 286 commits, 218 pull requests, 64 contributors.

What's Changed

New Contributors

Full Changelog: https://github.com/nesbox/TIC-80/compare/v1.1.2837...v1.2.0

Source: README.md, updated 2026-09-16