Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/picolove/picolove
PICO-8 Reimplementation in Love2D. Chat: https://discord.gg/jGEMUse6RM
https://github.com/picolove/picolove
android emulator fantasy-console linux love2d lua luajit osx pico-8 pico8 virtual-console windows
Last synced: about 1 month ago
JSON representation
PICO-8 Reimplementation in Love2D. Chat: https://discord.gg/jGEMUse6RM
- Host: GitHub
- URL: https://github.com/picolove/picolove
- Owner: picolove
- License: zlib
- Created: 2015-09-09T11:52:44.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-04-28T12:12:54.000Z (6 months ago)
- Last Synced: 2024-09-26T20:02:13.609Z (about 1 month ago)
- Topics: android, emulator, fantasy-console, linux, love2d, lua, luajit, osx, pico-8, pico8, virtual-console, windows
- Language: Lua
- Homepage:
- Size: 679 KB
- Stars: 751
- Watchers: 28
- Forks: 66
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-PICO-8 - PicoLove - Pico-8 Reimplementation in LÖVE. (Uncategorized / Uncategorized)
README
PICOLOVE
--------Run PICO-8 games and computer programs with free and open-source software.
On github at: https://github.com/picolove/picolove
![Screenshot of PICOLOVE after startup](/assets/screenshot.png?raw=true "PICOLOVE screenshot after startup")
Requires LÖVE 0.10.2
What it is:
* An implementation of PICO-8's API in LÖVE
What is PICO-8:
* See http://www.lexaloffle.com/pico-8.php
What is LÖVE:
* See https://love2d.org/
Why:
* For a fun challenge!
* Allow standalone publishing of PICO-8 games on other platforms
* Should work on mobile devices [*](#android-packaging)
* Configurable controls
* Extendable
* No arbitrary cpu or memory limitations
* No arbitrary code size limitations
* Better debugging tools available
* Free and open-source softwareWhat it isn't:
* A replacement for PICO-8
* A perfect replica
* No dev tools, no image editor, map editor, sfx editor, music editor
* No modifying or saving carts
* Not memory compatible with PICO-8Not Yet Implemented:
* Memory modification/reading
* PICO-8 cartridge versions > 8Differences:
* Uses floating point numbers not fixed point
* sqrt doesn't freeze
* Uses LuaJIT not lua 5.2Extra features:
* `ipairs()` standard lua function
* `log(...)` function prints to console for debugging
* `error(message)` bluescreens with an error message
* `warning(message)` prints warning and stacktrace to console
* `setfps(fps)` changes the consoles framerate
* `_keyup`, `_keydown`, `_textinput` allow using direct keyboard input
* `_touchup`, `_touchdown` allow using touch input
* `_getcursorx()`, `_getcursory()` allow access to the cursor position
* `_getpicoloveversion()` returns the version of picolove
* `_hasfocus()` window focus state (only false on first blur frame in _draw)Development requirements:
* Runtime: `LÖVE 0.10.2`
* Building: `make`
* Formatting: `sed` and `stylua`
* Linting: `luacheck`
* Packaging: `zip`Development:
* Run in endless loop: `make dev`
* Modify code
* Press ctrl+q to reloadBefore pushing:
* Run `make format`
* Run `make lint`
* Run `make test`
or
* Run `make all`Android Packaging:
Replace the default cartridge (nocart.p8) with your game. Text (P8) or PNG (P8.PNG) is supported.
Follow the [Android Game Packaging](https://bitbucket.org/MartinFelis/love-android-sdl2/wiki/Game_Packaging) steps.
Optionally, for orientation rotation support (Portrait and Landscape), remove ```android:screenOrientation="landscape"``` in the AndroidManifest.xml