Log In  

I type stuff into computers to make them do cool things.

[ :: Read More :: ]

What would it take to see pico8 on NES/SNES Classic Mini?

Not just for playing but also for creating. USB keyboards can now be used via a micro USB OTG adapter so you could use it as a development machine.

Of course it would be offline only, you'd have to sync with a computer to get your game off for distribution online.

I'm quite happy to start a fund to make this happen? @zep

P#48619 2018-01-28 05:41 ( Edited 2018-01-28 14:41)

[ :: Read More :: ]

I was interested to see how easy/difficult it is to edit the animated GIF "videos" pico8 produces. My goal was to trim some frames from the beginning and end to make a more succinct recording.

After much trial, error and experimentation here are my findings using Mac OS X.

Animated GIFs can be:

  • viewed frame-by-frame using macOS Preview.app
  • manipulated using "gifsicle" command line tool
  • converted using "ffmpeg" command line tool


  • useful tools need to be installed using "brew" command line tool http://brew.sh


Open the GIF in Preview.app and it will show you all frames.
Preview calls the first frame 1 (one), but other tools usually call it 0 (zero).

original/source animated GIF:


required: gifsicle

brew install gifsicle

then this is how you trim

gifsicle anim.gif "#212-238" > trimmed.gif

note: this makes a copy of the GIF and keep frames 213 to 239 (gifsicle uses zero based frame count)


if you want to double size of the image:

gifsicle --scale 2 trimmed.gif > resized.gif


if you want to add an overlay to caption the animation

required: imagemagick

brew install imagemagick

then use this bash script:

: ${1?"Usage: $0 anim.gif overlay.gif [output.gif]"}
: ${2?"Usage: $0 anim.gif overlay.gif [output.gif]"}

fnsource=$(basename "$source" .gif)
fncaption=$(basename "$caption" .gif)


gifsicle -E $source
for f in *.gif.*; do composite $caption $f $f; done
gifsicle --loopcount *.gif.* > $output
rm *.gif.*

how to run the command

./caption.sh anim.gif overlay.gif [output.gif]

note: if you do not specify an output name, it will be named using original filenames, eg. anim-overlay.gif



required: ffmpeg

brew install ffmpeg

to convert the GIF to MP4:

ffmpeg -i trimmed.gif video.mp4

video uploaded to YouTube:


If there is enough demand I will create a trimming tool that does not require you load terminal every time.

P#22961 2016-06-15 20:26 ( Edited 2020-07-04 12:03)

[ :: Read More :: ]



Submission open from July 1st 2016 at 1:00 AM to August 1st 2016 at 1:00 AM

What is Famicase?
It's an art exhibition of fictional NES cartridge art.
Selected artists and designers are invited to contribute.
It is hosted by and at a shop called Meteor in Tokyo, Japan.

What is the jam about?
It's fun to turn things around and make real games of the fictional artwork.

2015 entries:

I'm one of the hosts of this jam so I'd love to see some pico8 entries!

P#22915 2016-06-15 08:35 ( Edited 2016-06-16 01:59)

[ :: Read More :: ]

I've seen many approaches to combat the limited accuracy of the maths functions, time() due to the fixed point number size limit of 32,768

Given that all of this must have been solved during the 8-bit era are there any best practices or recommended solutions we should know about?

P#21949 2016-05-31 17:08 ( Edited 2016-05-31 23:58)

[ :: Read More :: ]

by matt
Cart #21668 | 2016-05-29 | Code ▽ | Embed ▽ | No License


  • more accurate collision with tail of wire
  • transparent balls so you can see through them
  • flashing ball when it can't be burst
  • flashing of player after respawn is now faster
  • added game score stats screen
  • added new bubble sprites from Johan Vinet
  • fixed some minor visual issues

This is my version of Pang!

I've been obsessed with this game series by Mitchell Corp ever since the 1990 Atari ST version. I'm currently trying to 100% the Nintendo DS version (it's the best version by far!) though I also love the last arcade version which is called Mighty! Pang.

Move left and right and fire your harpoon wire.
Split the bubbles into smaller sizes that are worth more points.
Burst bubbles of the same type in sequence to increase your score multiplier.
Discover special bubbles and power-ups.
You have three lives.

...go for the Hi Score!

cursor left & cursor right = move
cursor up or X = fire harpoon

There's lots done already, I'm pretty happy with it so far.
Gameplay came quickly. Ever since then I've been polishing and adding details.

I want to add more special bubbles and some collectible power-ups.
Needs music. SFX and GFX are (probably) placeholders.

I will write more about the design and my choices sometime before the end of the jam.

P#21363 2016-05-25 20:53 ( Edited 2016-07-22 13:52)

[ :: Read More :: ]

changelog says that time() has been removed

but I can still use it?

though it does seem to behave a bit oddly by eventually returning negative time?

any ideas?

P#21247 2016-05-24 10:12 ( Edited 2016-07-14 19:39)

[ :: Read More :: ]


"Blaze is a miniature, high-res 1.6" 240x240 display with capacitive touch, a powerful 120MHz Cortex M4 micro with GPIO and storage."

P#18588 2016-02-01 19:23 ( Edited 2016-02-13 07:58)

[ :: Read More :: ]

Cart #14153 | 2015-09-14 | Code ▽ | Embed ▽ | No License

Press Z to make spaceship move to another position
Cart uses ease_in_out_cubic (but feel free to edit and change to another included easing function).
Animation is locked at 0.5 seconds per move (feel free to edit this, too)

Here is my attempt at providing tweening/easing functions in PICO-8.
They are based on existing work done by many other people.
These functions help you animate sprites smoothly from one position to another, with different types of acceleration and/or deceleration.
I am using them to animate cards around the screen in my Hanafuda Koi-Koi game.
To read more about Easings, go here: http://easings.net


Circular *

  • partially working

Maybe these are broken because I'm not familiar enough with how PICO-8 maths functions work?

Any help appreciated getting those last few working is appreciated!


P#14136 2015-09-14 11:34 ( Edited 2015-09-15 09:23)

[ :: Read More :: ]

I find the syntax of sspr involves too much work, so I wrote a wrapper function that requires less arguments and less thinking.

Ladies and gentlemen... zspr

--n: standard sprite number
--w: number of sprite blocks wide to grab
--h: number of sprite blocks high to grab
--dx: destination x coordinate
--dy: destination y coordinate
--dz: destination scale/zoom factor

function zspr(n,w,h,dx,dy,dz)
  sx = 8 * (n % 16)
  sy = 8 * flr(n / 16)
  sw = 8 * w
  sh = 8 * h
  dw = sw * dz
  dh = sh * dz

  sspr(sx,sy,sw,sh, dx,dy,dw,dh)

Please let me know if you find it useful.

P#13797 2015-09-07 18:20 ( Edited 2016-06-27 20:03)

[ :: Read More :: ]

The story so far...

I love Hanafuda and I'm making a version in #pico8

First, I drew the cards:

And then made sure it will all fit on a single screen in this mock-up:

Current status:
on hold until after Playdate Hanafuda is released


P#13723 2015-09-05 14:27 ( Edited 2021-12-17 21:50)

[ :: Read More :: ]

I wanted to try some PICO-8 cartridges...

And I just bought this new mini gamepad...

So I thought it would be fun to get it working with PICO-8! :D

The gamepad is a small, keyring size bluetooth controller. It costs around £3 on Amazon.co.uk

It's really meant for Android and iOS, and has various modes of button configuration. However, when connected to my iMac it's seen as an iCade controller (as it is on iOS).

I used ControllerMate OS X app to remap the iCade controls to cursors+z+x+shift+esc. And it works great!

Here's the setup file: http://cl.ly/290U3s2z3I0w

Maybe there's similar software for Windows & Linux to use this little gamepad? Maybe PICO-8 could add iCade support so we don't have to use external software?

Anyway! That is my nice little PI-CO-NTROLLER for PICO-8


If you want to try this, feel free to ask questions!

P#13243 2015-08-28 18:44 ( Edited 2015-11-26 21:07)