Releases: voliva/ps4-p8
0.5.0
0.4.1
Features
- Custom font compatibility
- Support games with their own rendering loop through "flip". Save states for these games will not work yet.
Compatibility fixes
- stat(table) should behave like stat(0)
- printing backspaces
- stop looping SFX after length mark
- tonum("") should return empty instead of 0
- time() should go in exact intervals based on frame rate instead of the actual time.
0.4.0
This update mainly focuses on the switch version:
- switch: Move all application data (cartridges, savestates, etc.) to
/switch/switch-p8to reduce clutter. - enable pico-8 saves without needing a specific folder setup.
- splore: add a context menu accessible with "pause" (button
+) to save a BBS cartridge to the local SD. - local cartridges: add a context menu to delete cartridges from the local SD.
- add animation to splore cartridges
Fixes
- implement pico-8
load()function, a function that loads external cartridges. - avoid skipping too many frames
0.3.2
-
Fixes
fget(_, nil)tostring(float)was not showing the correct numbertonum(nil)crash,str[number]indexing was returning null.split()would convert "-" to "0"min()andmax()with nil valuespairs(nil)should return an empty iterator
-
p8scii
- inline binary characters (
\^.) - inline hex characters (
\^:)
- inline binary characters (
-
Cartridges used to try these
0.3.1-switch
fix crash on exit, set metadata, update readme, adjust resolution
0.3.1
- Cartrige compatibility
- Add missing peek, peek2, peek4 shorthands (% $ @)
- Predefined functions
- pack
- pal with table
- tline
- Fixes
- ord: work with binary strings (specially strings with null characters in them)
- ord: it was returing negative integers, when it should only return positive integers.
- pal: keep transparency palette intact
- spr: the rendering was offset by 1px when flipy=true
- sub: add support for nil parameters
0.3.0
This release adds more compatible games, and features save states!
- Added save states.
- Added save/load state on the menu.
- Every cartridge have their own save state which is persisted on disk.
- New predefined functions
- poke2
- poke4
- run (+ breadcrumbs)
- p8scii
- Repeats
- Bgcolor
- Vertical cursor move
- Horizontal + Vertical cursor move
- p8lua
- Parse special characters (e.g. # - etc.)
- Discovered a special compression method used by pico-8 in some of its characters that caused the cartridge to fail loading.
- Fixes
- Chr not returning values.
- Default values for map() parameters cellw and cellh.
- print() returns the width of the text drawn.
- all() behaviour when mutating the underlying array.
0.2.0
This release improves compatibility and performance, specially when rendering fill ovals or rectangles.
- Added a new tab to fetch the newest cartirdges published on pico8's BBS.
- Fixes
- Rendering cache after pal() changes
- Sspr rendering with odd offsets
- Music timing
- Bitwise operations with constants
- Multiple btnp calls on the same button
- p8lua
- Special characters can now be used as variable names
- By default each special character is given a value to be used with fillp and btn/btnp
- New predefined functions
- memcpy
- tostr for other types than numbers + undocumented 0x2 flag
- fillp with transparency
- t (alias for time)
- coroutine methods (cocreate, coresume, costatus, yield)
- pal(0) resets draw palette
- reload()
0.1.0
This release focused on improving compatibility. For this a major refactor was done, heavily modifying Lua to accept syntax differences on p8lua, and having every number in 16-bit fixed point (just as the real pico8).
Srand + random also have the same behaviour as the original pico8
- p8lua
- Improve reliability of many transforms (if shorthand, bitwise operators, unary operators, assignment operator, etc.)
- bitwise operations with decimals
- add missing assignment operators (e.g. |= &= etc.)
- draw
- fill patterns
- detect incompatible cartridges (avoid crashes)
- show warning icon when an error happens in lua
- add saves - To enable them, create the
/data/p8-savesfolder - predefined functions
- sget
- sset
- clip
- cartdata
- dget
- dset
- memset
- fillp
- pget
- flip
- band
- bor
- bxor
- brotl
- brotr
- bshl
- bshr
- blshr
- srand
- peek
- peek2
- peek4
- unpack
splore.0
This release adds a new (quite unpolished) screen on the main menu, that fetches the top 32 featured cartridges from Pico-8's BBS and lets you load them:
Note that compatibility is still very limited - From today's list only 4 were playable. It will improve over time.
- Improved render performance by ~15%
- Fix framerate control (on PS4 it wasn't targetting 30/60fps)
- Added new page on main menu to load cartridges from the featured Pico-8 BBS
- Polished music stability.
