Skip to content

Decky 0.3.4

Choose a tag to compare

@github-actions github-actions released this 12 Sep 16:47
bda7a39

Desktop app 0.3.4 · Deck firmware 0.1.7 (updated)

Installed Decky updates itself: use the updates pill in the title bar, or Settings → Updates. New installs: run the Decky-Setup installer. The deck's firmware updates from the same place, with the deck on USB.

Desktop

  • Play snake on the deck, five taps on an empty key (9520ce8)
    The board is one 20x12 grid across the whole panel, and each key opening
    shows a 4x4 corner of it, so the snake runs behind the printed ribs and
    comes out the next window. Either end of a game crushes what is on screen
    into tiles that fall out of their openings, coloured from the framebuffer
    as it stands. A finger dragged anywhere turns it - a key press is a tile
    of the board, not a direction - so KeyListener gained a raw touched(), and
    the countdown spells SWIPE TO MOVE across the keys.
    The deck cannot know which of its keys are empty, so the desktop counts
    the taps and sends GAME snake; the window keeps the score while it lasts
    and hands the keys back when it ends.
    Anything that draws a key while a game runs now waits behind one
    predicate, Deck::panel_free(), which replaces the loading-and-changing
    test spelled out at six call sites. Live patches, wheels and page states
    are still taken - only the drawing waits, and the page is drawn whole the
    moment the panel comes back.

Firmware

  • Play snake on the deck, five taps on an empty key (9520ce8)
    The board is one 20x12 grid across the whole panel, and each key opening
    shows a 4x4 corner of it, so the snake runs behind the printed ribs and
    comes out the next window. Either end of a game crushes what is on screen
    into tiles that fall out of their openings, coloured from the framebuffer
    as it stands. A finger dragged anywhere turns it - a key press is a tile
    of the board, not a direction - so KeyListener gained a raw touched(), and
    the countdown spells SWIPE TO MOVE across the keys.
    The deck cannot know which of its keys are empty, so the desktop counts
    the taps and sends GAME snake; the window keeps the score while it lasts
    and hands the keys back when it ends.
    Anything that draws a key while a game runs now waits behind one
    predicate, Deck::panel_free(), which replaces the loading-and-changing
    test spelled out at six call sites. Live patches, wheels and page states
    are still taken - only the drawing waits, and the page is drawn whole the
    moment the panel comes back.