Releases: voliva/ps4-p8
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-saves
folder - 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.
music.1
music.0
This release mainly adds multi-channel sfx + music. Celeste is now playable... a bit slow, but playable.
- P8SCII
- Special character replacement (\123)
- \n \r \b
- background color #
- ★ and ○ characters
- pico-8 predefined functions:
- music
- extcmd (reset, pause, shutdown)
- fget
- fset
- atan2
- ceil
- pset
- shr
- shl
- sgn
- count
- Improve pico-8 lua transform
- sfx offset, length and loops
- squish sprites
- flip sprites
- btnp delay config through poke
- map layers
- improve render performance (will need more work)
- reset cart from pause menu
- add many button aliases for X and O
cartridge-selector.0
- Internal refactor to properly emulate pico-8 memory.
- Add support to additional Pico-8 lua features:
+=
-=
*=
/=
operands.- Binary literals (
0b01110...
) fillp(symbol)
if (condition) do_something
shorthand
- Support more pico-8 predefined functions:
- foreach
- mid
- abs
- del
- deli
- split
- sspr (without stretches or flip)
- poke
- pal
- palt
- camera
- sqrt
- cos
- sin
- map
- mget
- mset
- line
- rectfill (without pattern)
- circ
- circfill (without pattern)
- oval
- ovalfill (without pattern)
- Add cartridge selection menu
- Cartridges can be bundled in the .pkg by putting them in
/assets/misc
. - Cartridges can be added externally by placing them in a PS4's
/data/p8-cartridges
folder
- Cartridges can be bundled in the .pkg by putting them in
minewalker-basic.0
update readme