TIC-80 tiny computer 0.90.1723
CHANGELOG v0.90.1723
CLOSED ISSUES
- #1517 - [0.90] "Cart has changed" dialog does not close
- #1513 - map editor: tile cursor not visible in 0.90
- #1494 - [0.90] Watcher fails when loading multiple carts
- #1510 - Unable to draw to bigger circles in 0.90
- #1499 - TIC-80 keeps stopping (Android)
- #1490 - [0.90] (Win7) getsystemtimepreciseasfiletime error in exported executable
- #1501 - TIC-80 is not opening on linux
- #1493 - Wonky icon [0.90 Bug]
- #1495 - [0.90] TIC-80 does not start
- #1492 - [0.90]No name and author name by pressing Ctrl+S to save cart.png
- #1496 - Won't Start in Firefox
- #1489 - [0.90 bug] ctrl+r returns multiple times
CHANGELOG v0.90.1706
THANKS to all the people who helped release this version, especially the contributors
@cogk
@Voklen
@brickviking
@schraf
@Karethoth
@jminor
@cgrs
@RobLoach
@txgruppi
@tstopak
@phlubby
@joshgoebel
@technomancy
@nalquas
@msx80
@asiekierka
@drako0812
MAIN CHANGES
Added text selection/copy/paste to the console
A cart can be saved and distributes as a PNG image, use save game.png
command.
TIC-80 can work like a compiler without UI with --cli
command line parameter, for example here we load game.tic
cart from current dir (use --fs .
) and export it as game.exe
executable for Windows:
$ ./tic80 --cli --fs . --cmd "load game.tic & export win game.exe & exit"
cart game.tic loaded!
use RUN command to run it
GET /export/0.90/win [100%]
game.exe exported :)
Also, games can be exported without access to the editors with alone=1
flag (PRO feature)
export linux game.exe alone=1
The help
command was redesigned and you can get info about spec/ram/api/command/...
>help
usage: help [<text>|version|welcome|
spec|ram|vram|commands|api|startup|
terms|license]
>help api
API functions:
OVR SCN TIC btn btnp circ circb clip
cls elli ellib exit fget font fset key
keyp line map memcpy memset mget mouse
mset music peek peek4 pix pmem poke
poke4 print rect rectb reset sfx spr
sync textri time trace tri trib tstamp
>help sync
---=== API ===---
sync(mask=0 bank=0 tocart=false)
The pro version of TIC-80 contains 8
memory banks.
To switch between these banks, sync can
be used to either load contents from a
memory bank to runtime, or save
contents from the active runtime to a
bank.
The function can only be called once
per frame.If you have manipulated the
runtime memory (e.g. by using mset),
you can reset the active state by
calling sync(0,0,false).
This resets the whole runtime memory to
the contents of bank 0.Note that sync
is not used to load code from banks;
this is done automatically.
Another useful thing you can export whole help info in Markdown format, use command export help cheatsheet.md
Added mouse capture functionality to receive relative values instead of the current cursor position (useful in first-person 3D games), the cursor is hidden and this mode. To enable this mode pls use poke(0x7FC3F,1,1)
command.
Small example with enabling the relative mode:
function flip(val)return val>0 and 0 or 1 end
function TIC()
if btnp(4)then
poke(0x7FC3F,flip(peek(0x7FC3F,1)),1)
end
cls()
local x,y=mouse()
print(x..":"..y)
end
Added baremetal/rpi/3ds builds to Github Actions and all the Nightly Builds can be downloaded here https://nightly.link/nesbox/TIC-80/workflows/build/master
Now you can change bit mode in the map editor
On Android, you can switch between the system keyboard and TIC-80 internal keyboard
Hardware keyboard now detects automatically.
CLOSED ISSUES
- #1486 - Problems with Jxx and row parameter of the music () function again present. Old lines are being used in src/core/sound.c
- #1482 - Website: Can’t upload Fennel cartridges
- #1480 - Website: Page titles
- #1477 - saveid not working when exporting with alone=1
- #1475 - Add an additional parameter to peek/poke functions for diferent bit resolutions
- #1469 - TIC-80 crash on Windows XP
- #1455 - Move all the icons to the config.lua
- #1454 - TIC throws OOMs when trying to run this cart in browser
- #1447 - Cursor shows over bookmarks tab
- #1446 - M command retriggers note
- #1434 - map editor select appears over show tiles
- #1430 - Horizontal scrolling while shift is held
- #1421 - Navigate palette with [ and ] keys
- #1414 - Please add Git SHA to the build number version in console
- #1405 - Code outline items corruption
- #1398 - TIC-80 Crashes when I stream it in a Discord voice channel.
- #1396 - Buffer Overflow Vulnerability in src/studio/fs.c
- #1395 - Distribute Linux version as zip on itch.io for better itch.io app integration
- #1394 - Incorrect OVR palette
- #1388 - RESUME command doesn't restore screen bug
- #1380 - Update wiki: CHUNK_SCREEN, tic_screen, sync, etc.
- #1372 - Path does not update on console correctly bug
- #1370 - Editor does not update when pressing enter bug
- #1360 - music function crashes in javascript bug
- #1356 - Saving cartridge crashes the dev (Pro) build bug
- #1345 - Crash in editor with 1BPP mode bug
- #1343 - (end) add "Debug" to TIC_VERSION_LABEL for debug builds
- #1338 - TIC80 Freezes When Trying To Run Game After Saving As Lua bug
- #1332 - alt-tab inserts a space in the code editor bug
- #1331 - Little pause at the beginning of the music
- #1326 - current build crashes on 3ds
- #1323 - duktape submodule fetches all duktape versions ever released
- #1319 - Add new & popular filter to the website
- #1315 - Add pagination to the website website
- #1312 - [Request] Please add THEME.CODE.FG to alter foreground text in code editor
- #1308 - Add a chunk to load default palette/waveforms
- #1306 - Game exits to the console if you press ESC twice
- #1290 - Live reload not working bug
- #1282 - Dividing by Zero in line function causes Tic-80 to crash. bug
- #1275 - Please add back ability to name gifs
- #1273 - Distorted sound with 0.80.1345 Pro on Linux
- #1271 - new fennel creates the cart with the old palette
- #1269 - tic80 -h command outputs to nowhere unless redirected
- #1268 - Zlib compression does not seem to work in 0.80+ versions of TIC-80
- #1267 - Command line arguments do not work anymore in the latest commit
- #1264 - Make all the network requests async
- #1255 - CRT effect in mac
- #1254 - better clipboard support
- #1247 - Make TIC work more like a compiler. console
- #1246 - Add benchmark demos for every supported script.
- #1240 - When compiling TIC-80 with GCC Mingw-w64 it (mingw64) adds additional DLL dependencies
- #1239 - Gif export does not automatically add .gif extension
- #1227 - Feature: Add colors to text with control characters (like Commodore 64)
- #1226 - music() parameter changed? bug lang: javascript
- #1225 - Change Bits Per Pixel in the Map Editor editor: map
- #1224 - install target on Linux does not follow CMAKE_INSTALL_PREFIX
- #1220 - In HTML exported games, all unused buttons on Xbox One controller open/close the TIC menu
- #1216 - Please add a export for web platform: html5
- #1213 - Default text color is now a dark grey
- #1210 - Missing Xext.h on Armbian buster
- #1206 - Minor bug when typing "cd "
- #1205 - 0.80 running quite slower than 0.70.6
- #1195 - editor outline command ctrl+o scrolling not possible
- #1193 - Music() function with tempo parameters API
- #1192 - editor command for comment/uncomment for multiple lines bug editor: code
- #1188 - Creating or loading a cartridge resets font setting to default in code editor editor: code enhancement
- #1159 - (0.80 beta) No wave cut/copy/paste anymore in new SFX editor?
- #1111 - tic.c could be split into quasi-independent parts for api, io, core loop, drawing, music...
- #1102 - Add Keyboard Shortcuts for switching banks
- #1084 - Building without GTK dependencies
- #1044 - Error on openig in linux platform: linux
- #1033 - ls/dir fails to sort properly
- #1017 - Build succeeded : TIC-80 for Raspberry Pi (Raspbian Buster)
- #1003 - please add to the music editor the button "play from now on" editor: music
- #1001 - Use cover as raw binary screen buffer instead GIF
- #999 - (0.80-dev suggestion) Allow array of volumes in sfx() for left/right API
- #987 - key()/keyp() codes 66 to 78 don't work bug
- #986 - Suggestion: add a mouse capture functionality
- #979 - Replacement of circ() and circb() functions
- #978 - Add Keyboard Shortcuts to Music Editor
- #957 - CTRL+R doesn't work when launching a tic.computer/play cart SURF
- #923 - Website "store" improvements website
- #921 - Setup CI using Github Actions
- #912 - Integrating Raspberry Baremetal build
- #909 - Small font not working in "player" executable bug
- #901 - Properly name of cart.tic software in website website
- #832 - (0.80.0-dev Pro) Custom system sounds won't play at the correct speed bug
- #823 - corrupted size vs prev_size
- #799 - Native export shows "File not downloaded" bug
- #764 - Map editor: replace tile feature editor: map enhancement
- #755 - [Feature Request] Cartridge embedded in PNG export for easy sharing enhancement
- #749 - Music "joins" channels together after pressing "Play" while music / frame is still playing
- #726 - it should be possible to save and switch multiple 'sections' of the memory to a different 'bank' using sync (e.g. sprites & map) API bug
- #692 - Indent with the same characters as were used for previous line.
- #660 - Enable keyboard in landscape mode on Android
- #658 - Add CRT-filter option to the game menu enhancement
- #640 - Clear Input Text Instantly console enhancement
- #639 - Page Up / Page Down console enhancement
- #636 - CRT Shader Alternative (Speed, Simplicity)
- #559 - mouse() returns x,y outside 0,0-239,135 when mouse pointer is on screen border
- #454 - Allow using/pasting palettes with less than 16 colors editor: sprites enhancement
- #426 - Import sprite to specific slot enhancement
- #415 - input rgb values into palette editor editor: sprites enhancement
- #370 - Syntax highlighting bug bug editor: code lang: lua
- #312 - if you press up or down very fast it keeps repeating the same selection in SURF SURF bug
- #253 - Distribute TIC as package in Linux enhancement platform: linux
- #169 - Disable Editors PRO enhancement
- #154 - help (api function) command enhancement
MERGED PULL REQUESTS
- #1483 - #764: replace tile feature in map editor by @cogk
- #1464 - Installing and running instructions by @Voklen
- #1463 - Correct spelling of a single word by @brickviking
- #1457 - Adding a Progressive Web App build by @schraf
- #1456 - Fixes for 2 SIGSEGVs when section is NULL by @Karethoth
- #1443 - Enable CRT shader in wasm/WebGL build by @jminor
- #1442 - Fix import command. by @jminor
- #1435 - Fix CRT shader on macOS. by @jminor
- #1427 - fix dapper builds by @cgrs
- #1416 - wren: Add as and continue keywords by @RobLoach
- #1406 - Update Wren to 0.4.0 by @RobLoach
- #1393 - libretro: Add features from jdgleaver by @RobLoach
- #1390 - libretro: Fix retro_get_memory_size() by @RobLoach
- #1386 - Add "code" to the import usage documentation by @RobLoach
- #1385 - Font fix on cart load by @txgruppi
- #1369 - Fixed Squirrel's print function fixed flag by @txgruppi
- #1368 - Wren TIC.btn fixes by @txgruppi
- #1363 - Multiline Comments by @tstopak
- #1361 - libretro: Update the memory data slots by @RobLoach
- #1358 - Fix MinGW build, do not add msvc specific flag by @tstopak
- #1355 - Fix using full path as cart name when loading cart by @phlubby
- #1348 - libretro: Update libretro.h and code standards by @RobLoach
- #1341 - Show how to build pro version by @joshgoebel
- #1336 - Update to Fennel 0.8.1. by @technomancy
- #1328 - Update to Duktape 2.6.0, and use a shallow clone by @RobLoach
- #1322 - Clip mouse values in SDL and Sokol by @nalquas
- #1318 - Make RAM and VRAM a bit more explicit by @joshgoebel
- #1316 - (chore) Migrate Raspberry Pi build instructions from wiki by @joshgoebel
- #1265 - minor cleaning on RPI baremetal build and Credits by @msx80
- #1256 - bare metal rpi build updated to latest TIC-80 and Circle by @msx80
- #1234 - SDL Player: Add constants and clean up error reporting by @RobLoach
- #1222 - n3ds: add prescale linear filter, wide mode support; close #1219 by @asiekierka
- #1221 - Update Lua to 5.3.6. by @asiekierka
- #1218 - libretro: Add Mouse Hide Delay option by @RobLoach
- #1217 - n3ds: fix crash in async net_httpc access, close #1200 by @asiekierka
- #1178 - Update Duktape to 2.5.0 by @RobLoach
- #1176 - SDL: Render in the correct aspect ratio by @RobLoach
- #1175 - Update Wren to 0.3.0 by @RobLoach
- #1165 - fixes #1163 (0.80 beta) time() always returns 0 when built with sokol by @drako0812
- #1161 - Update to Fennel version 0.6.0. by @technomancy