Now Playing Screen - cressie176/Load64 GitHub Wiki

Primary Purpose

Prevent the user from continuing to use LoadC64 while VICE is already running.

Secondary Purpose

  • Manage the running game session without exiting VICE
  • Swap joystick ports and disks
  • Capture screenshots and snapshots
  • View control mappings
  • Quit the game session

The Now Playing screen is an in-session overlay displayed after launching VICE. While this screen has focus:

  • VICE is paused
  • All interaction is handled by LoadC64

Main Screen Design

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  Now Playing > <Game Title>                                                  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  ACTIONS                                     PREVIEW                         │
│  ┌───────────────────────────────────┐      ┌─────────────────────────────┐  │
│  │ > Resume Game                     │      │                             │  │
│  │   View controls                   │      │                             │  │
│  │   Swap joystick ports             │      │                             │  │
│  │   Swap disks                      │      │                             │  │
│  │   Take screenshot                 │      │                             │  │
│  │   Take snapshot                   │      └─────────────────────────────┘  │
│  │                                   │                                       │
│  │  DANGER ZONE                      │                                       │
│  │   Quit Game                       │                                       │
│  └───────────────────────────────────┘                                       │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘
  • Escape does not move Back from this screen. The only way to return to the Game Details or Carousel is via the Quit Game action in the DANGER ZONE group

TOP BAR

Focusable: No
Interactive: No
Purpose: Display the game title

Displays the game title.

ACTIONS

Type: Single-selection vertical list
Focusable: Yes (primary focus region)
Interactive: Yes
Constraints: Only one item focused at a time
Order: Fixed
Purpose: Manage the running game session

Action Behaviour
Resume Game Hide (macOS) or minimise (Linux) LoadC64 and unpause VICE
View controls Navigate to the Controls screen
Swap joystick ports Navigate to the Swap Joystick Ports screen
Swap disks Navigate to the Disk Selection screen
Take screenshot Navigate to the Screenshot screen
Take snapshot Navigate to the Snapshot screen
Quit Game Opens a confirmation overlay before quitting the game session

Counterintuitively Swap disks is shown even for non disk based games, as any game might save to a disk.

The DANGER ZONE group appears below all other items. Its header and items are rendered with a distinct visual treatment (e.g. red or warning colour) consistent with the DANGER ZONE convention used on other screens.

Quit Game

Opens a confirmation overlay before quitting the game session.

┌──────────────────────────────────────────────────────────────────────────────┐
│                    ┌──────────────────────────────┐                          │
│                    │ Quit game?                   │                          │
│                    │                              │                          │
│                    │ VICE will close and you will │                          │
│                    │ return to LoadC64.           │                          │
│                    │                              │                          │
│                    │   > No                       │                          │
│                    │     Yes                      │                          │
│                    └──────────────────────────────┘                          │
└──────────────────────────────────────────────────────────────────────────────┘
Option Behaviour
No Close the overlay and return focus to the ACTIONS list
Yes Close VICE and return to the screen the game was launched from; either the Game Carousel screen or Game Details screen

No is the default selection to prevent accidental quits.

PREVIEW

Focusable: No
Interactive: No
Purpose: Display the gameplay screenshot for the current game

Displays the game's gameplay screenshot, or a neutral placeholder if none has been assigned. Always displayed at 4:3 aspect ratio.

Navigation

This screen has one focus region: ACTIONS. The top bar has no CTAs and is not a focus region. Tab has no effect.

BOTTOM BAR

Focusable: No
Interactive: No
Purpose: Display contextual status messages based on the selected action, and confirmation messages on return from sub-screens

Selected action Message
Resume Game
View controls
Swap joystick ports
Swap disks Current: <Disk Label>
Take screenshot
Take snapshot
Quit Game

After saving a snapshot:

├──────────────────────────────────────────────────────────────────────────────┤
│  BOTTOM BAR                                                                  │
│  Snapshot saved: <filename>                                                  │
└──────────────────────────────────────────────────────────────────────────────┘

After a snapshot save error:

├──────────────────────────────────────────────────────────────────────────────┤
│  BOTTOM BAR                                                                  │
│  Failed to save snapshot: <reason>                                           │
└──────────────────────────────────────────────────────────────────────────────┘

After saving a screenshot:

├──────────────────────────────────────────────────────────────────────────────┤
│  BOTTOM BAR                                                                  │
│  Screenshot saved: <filename>                                                │
└──────────────────────────────────────────────────────────────────────────────┘

After a screenshot save error:

├──────────────────────────────────────────────────────────────────────────────┤
│  BOTTOM BAR                                                                  │
│  Failed to save screenshot: <reason>                                         │
└──────────────────────────────────────────────────────────────────────────────┘
⚠️ **GitHub.com Fallback** ⚠️