Android · Kotlin · Jetpack Compose
Dorado-HD
The Zune HD handheld, reborn for modern Android phones: white-on-black typography-first Metro design, a text menu cropped at the screen edge, crossbar navigation, and the tri-state heart rating.
The device-side sibling
Just as the Zune HD was the device and Zune 4.8 was the desktop, Dorado-HD is the phone and Dorado is the desktop. The current port faithfully reproduces the device across home + quickplay + 5 media pivots + 29 installed mini-apps — design-language-correct, tokenized, and audited by Robolectric unit tests and a source-level design-invariant scanner.
Shell — home & quickplay
- Home menu with the full canonical 9 entries — music, videos, pictures, radio, marketplace, social, podcasts, internet, settings — lowercase, oversized, right-edge cropped, kinetically scrollable.
- Quickplay slides out as a 3D-parallax “left and rear” panel: Now Playing card, Smart DJ lane (hearts-first, broken-skipped), Pins, History and New.
- Lock shade with a wallpaper-backed translucently-tinted background that fades up under the time and date.
- Device mode letterboxes the whole UI in the canonical 480×272 canvas.
Crossbar navigation
Every collection screen uses a horizontal CrossbarBar pivot strip
with right-edge-cropped labels and the spec’d 380 ms deceleration.
- Music — albums · artists · playlists · songs · genres (the real device order).
- Artist — albums · songs · bio · photos · related (bio via Wikipedia REST, photos via MusicBrainz).
- Marketplace — music · videos · podcasts · apps, with the full frozen official catalog (62 entries).
- Videos, Pictures, Podcasts and Radio each carry their canonical pivots.
Music & Now Playing
- Alphabet rail with a full A–Z popup, separated at the right edge.
- Now Playing with an explicit back arrow, tappable title → album track list, tappable artist → artist page, swipe ← → to skip.
- Transport overlay — play/pause centre, prev/next sides, vertical-swipe volume.
- Smart DJ shuffle — hearts prioritized, broken hearts skipped.
- Screensaver — tokenized 5 s idle with a slow Ken Burns artist photo; tap-to-show-overlay.
- Tri-state heart rating (heart / broken heart / none).
Mini-app platform — 29 apps
Behavioral re-implementations across three categories:
- Utilities (12) — calculator, notes, stopwatch, metronome, alarm clock, calendar, level, piano, drum machine, chord finder, music quiz, shuffle by album. PCM-synth instruments; accelerometer level; Room-backed notes / calendar / alarms.
- Games (9) — solitaire, sudoku, hexic, reversi, hearts, spades, checkers, chess, texas hold ’em. Pure-Kotlin engines with dealer, hand-rank, check/stalemate and AI logic under test; chess is alpha-beta depth 3.
- Mock shells (8) — weather, twitter, facebook, email, messenger, msn money, zune reader, zunesocial — era-faithful canned layouts for the dead marketplace services.
Reverse-engineering deliverable
docs/zcp-inventory.md lists all 62 official Zune HD marketplace
packages with title, GUID and description, regenerable from the community
ZuneRedux archive. Encrypted payloads are never bundled — metadata only.
Build & test
./gradlew assembleDebug test lint
Licensing posture
MIT for code. Selawik (SIL OFL 1.1) stands in for Segoe-metric Zegoe; MedTune
attribution lives in NOTICE.md. MusicIn2001 is Research-Only and
used strictly as a behavioral specification — no code copied. No Microsoft
fonts or firmware are bundled.
Put the Zune HD in your pocket.
Text-first navigation, zero rounded corners, hearts not stars — the canon is law.