NorviTech Indigo

Suite / Indigo

Changelog

Versions follow semantic versioning; each release is a tag on main.

v1.25.0 — Memory Cards, a cube that flies in, and a drag-and-drop download

The first formal release of Indigo: everything below, tested together, with the guide and every picture recorded again on this build.

Memory Cards

  • Memory Cards, a new row on the System face between System Information and Restart Indigo, shows the saves on the memory cards in Slot A and Slot B and in folders on the SD card, much as the GameCube's own Memory Card screen does. Each save shows its banner, the game's name for it and its size in blocks; the tab says how many blocks the card has free, and the line above the buttons shows the rest of the save's comment. L and R move between Slot A, Slot B and the SD card; A opens a folder.
  • A on a save copies, moves or deletes it. Copy and Move go to the other slot, to the Save Folder, or to another folder you choose. A save copied off a card becomes a .gci named as Dolphin names a GCI folder's saves; Action Replay (.sav) and GameShark (.gcs) saves copy onto a card too. Every copy is read back and compared before it counts, and a Move removes the original only then. A card that already has the save, or hasn't the room for it, says so and nothing changes; a save its game marks as not to be moved can be copied but not moved; Delete asks first, with Cancel highlighted.
  • Settings › Setup › Storage › Save Folder chooses where saves copied off a card go: a folder on the Configuration Device, swiss/saves until you choose another (key Save Folder in global.ini). A lists the folders, X chooses the one that's open.
  • The System face's three rows sit a little closer together to fit under the cube, and Restart Indigo's confirmation returns to its row, now the third.

The cube flies in

  • When Indigo starts, the Home cube flies in from the distance. It starts as a small spinning cube in the middle of the screen, tumbles toward you, and comes to rest on Library half a second later. Home is ready after 0.8 seconds instead of 1.15, and the cube is in view from the first frames instead of fading up out of a dark screen.
  • Starting no longer dims the screen before the cube appears. The face name, its hint and the glass's light fade in as the cube arrives instead of switching on at once.
  • With UI Motion set to Reduced, the cube fades in where it rests. With Off it is simply there, as before.

In-Game Reset comes back to Indigo

  • With In-Game Reset set to Apploader, A + Z + START during a game now returns to Indigo. A reset restarts whatever swiss/patches/apploader.img holds, and until now that was stock Swiss's copy. The release zip now carries Indigo's own. It replaces stock Swiss's, so a game started from stock Swiss resets to Indigo too.

A drag-and-drop download

  • The download is drag and drop. Indigo-vX.Y.Z.zip is laid out exactly as the card is: unzip it, select everything inside and drag it onto the root of the SD card. Before, everything sat in an Indigo-vX.Y.Z/SD card/ folder inside the zip. An Indigo-README.txt says what each file is for, and the licence and notice now travel in swiss/indigo/.

Fixes

  • Starting a game from the Library opens its file afresh. A read error while browsing, which a slow SD card adapter (SD2SP2, SD Gecko) can cause, no longer carries into the launch. A launch that failed after setup no longer leaves the next try reading the game from the wrong place on the card.
  • Indigo records when you last played a game before it prepares the game, as Swiss does with its recent list. It no longer writes to the card after the game's data has been mapped.

Documentation

  • Every picture in the README and the guide is recorded again on this release, and the README gains two animations: the cube flying in when Indigo starts, and Memory Cards copying a save to the SD card. The guide's Memory Cards page has pictures of each screen and a card of its own on the guide's index, next to System. The README and the guide link the video tour and the Indigo page at norvitech.com/indigo; the poster and cheat downloads stay at indigo.norvitech.com, with their checksums.
  • The guide says Settings help closes with B as well as Y.

For developers

  • make dev also builds the packer (cube/packer/reboot.dol), compressing with xz because the build image has no 7z, and buildtools/sd_package.sh turns it into that apploader.img.
  • The host test suite ships with the source: buildtools/ui/tests/ (C unit tests, GX vertex-stream checks and source audits) and the UI isolation guardrail buildtools/check_ui_isolation.sh are now in the public repository, so anyone can run what CI runs with buildtools/ui/tests/run_tests.sh all.

v1.24.0 — four icons for every face, sharp on the glass

  • Each face of the Home cube has four icons of its own, and no face offers another face's. Library has Controller, Books, Covers and Play; Source has Hub, Disc, SD Card and Folder; Settings has Sliders, Gear, Toggles and Dial; System has Clock, Info, Power and Chip. Covers, Play, SD Card, Folder, Toggles, Dial, Info, Power and Chip are new, and None is gone.
  • A settings file that names an icon from another face's list, or None, leaves that face on its first icon.
  • The face icons are drawn after the glass's glow instead of under it, so their lines stay sharp and easy to read.
  • The sun no longer glints in the corner of the glass, and no band of light passes over it while Home rests. The rest of the glass (the bent view through it, the prism edges, the glow, the rim and the halo) is unchanged.
  • The dot that circled the temperature dial at the top right is gone; the time and the temperature stay.

v1.23.2 — a quieter sun on the glass

  • The sun that a corner of the Home cube catches is now a small glint with short rays instead of a large starburst. Its core is smaller and softer, the streak and rays are shorter and fainter, and the reflections across the screen are fainter. The README and guide pictures of Home, Source and System are recorded again with it.

v1.23.1 — pictures of every new screen

  • The README's Library animation shows all three layouts, and two new animations follow its Settings paragraph: a tour of Settings in its new look, and Y opening a game's settings from the Library. Home, Game Detail and Menu Color are recorded again on this release.
  • The guide's Library page has an animation of the Library Layout setting and of the Vertical and Grid layouts, and one of Y and a game's settings. Every picture of Settings, Game Detail, the cheat browser, the Library, the Source and System screens and the troubleshooting box is new, so each shows the current look.
  • The guide's Game Detail, Settings and Controls pages describe the Settings line on Game Detail, Y in the Library and each layout's buttons.

v1.23.0 — Library layouts, and a game's settings from the Library

  • Library Layout, the first setting in Setup › Library, lays the Library out three ways. Horizontal is the row of covers you know. Vertical is a column down the left of the screen, turning like a wheel, with the selected game's title, publisher and details beside its cover. Grid shows rows of five covers, three rows at a time, with a lit frame that slides to the selected cover and its title and publisher above the controls.
  • Every layout wraps round from the last game to the first. In the grid, Left and Right run on from one row to the next, Up and Down move a row and keep to the column, and L and R move three rows at a time.
  • Y on a game in the Library opens that game's own settings, in every layout. Leaving them shows the game's details, and B returns to the Library with the same game selected. Y never starts a game, even with Boot without prompts on.
  • The sliders mark that shows a game has settings of its own now appears on every cover that shows its art.

v1.22.1 — glass that catches the light without burning white

  • When a face of the Home cube turns through the light as the cube turns or tips, it now brightens to a pale lilac with its icon still showing. Before, the glow added on top of the reflection turned the whole face white for a few frames. The cube at rest looks the same as before.

v1.22.0 — Settings in the cheat browser's look

  • Every Settings page (Quick, Game Defaults, Setup and its six sections, and a game's own settings) is drawn like the cheat browser: one full page, the tabs as a segmented control between L and R, the settings as cards, and the highlighted one lit with an accent bar that slides as you move.
  • Settings that are on or off show an ON or OFF switch; settings with more choices show their value in a pill, with arrows while highlighted. Text settings read like a field, and "Not set" when empty. Menu Color shows a swatch of the color.
  • A line above the buttons says what the highlighted setting does, or what its current value does. The buttons that work are shown as icons, with Save & Exit and Discard & Exit beside them.
  • The list of choices, the help and every message and progress box are cards in the same style; a warning's accent is amber and a failure's red.
  • A game's own settings count their Custom rows at the top right ("2 custom"), and Game Detail gains a SETTINGS line: how many are the game's own and the first of them, or "Game Defaults" with X to change them.
  • The page stays on screen for the whole of Settings instead of being rebuilt after every press, so it never flickers.

v1.21.0 — glass that bends light

  • The Home cube is glass that refracts: through the front you see the cube's far edges, its inner cube and the backdrop, bent and slightly magnified, and the rounded edges part the light into red, green and blue like a prism.
  • Highlights, glints and the face icons glow. A fine rim lights the edges that face the light, a halo sits behind the cube, and the glass focuses a patch of light on the floor under it.
  • A corner that catches the light flares like the sun: a bright point, six rays, a long streak and faint reflections strung across the screen.
  • While Home rests, a band of light passes over the glass every seven seconds. It needs UI Motion set to Full.
  • All of it follows Menu Color. The sun's white core and the prism's fringes keep their own colors.

v1.20.0 — see which games have their own settings

  • In the Library, a small sliders mark in the corner of a cover means the game has settings of its own: at least one that differs from Game Defaults, the same count Game Detail shows as "X SETTINGS (2 CUSTOM)". A game reset to its defaults loses the mark. It follows Menu Color.
  • Indigo reads the games' settings files once when the Library first opens, and again after you save settings.
  • Game Defaults no longer shows Force Vertical Offset. That default never reached a game (each game starts at -3 with GCVideo or GCDigital and +0 otherwise), so the row did nothing. Set it in a game's own settings; the key in global.ini is still read.

v1.19.1 — the Indigo guide

  • New: the Indigo guide, thirteen pages with pictures from the real interface. It covers installing, the controls, Home, the Library, game details, cheats, Settings and a game's own settings, Menu Color and the cube icons, sources, System, posters and troubleshooting, and ends with every setting explained.
  • The README links to it, and its Home animation and System picture are re-recorded with v1.19.0's cube, whose icons now share one shade.

v1.19.0 — cube face icons

  • Settings › Setup › Console has a row for each face of the Home cube: Library Icon, Source Icon, Settings Icon and System Icon. Each picks the picture on its face: Controller, Books, Hub, Disc, Sliders, Gear, Clock or None. Any face can show any of them, and a face keeps its name and what A does there.
  • Disc and Gear are new, and Books is the bookshelf the Library face had in v1.4.0. Controller mirrors your controller and Clock tells the time on whichever face you put them.
  • Every icon now glows in the same lilac, the Library controller's, on every face, and the glass behind each face has the same tint. The defaults are still the controller, hub, sliders and clock.
  • The settings file keys are Library Icon, Source Icon, Settings Icon and System Icon.

v1.18.0 — button icons in prompts

  • Message boxes show their buttons as icons too. "Press A to continue." becomes the A button and CONTINUE, and deleting a file shows L + A to continue or B to cancel.
  • Settings' two questions end on their buttons: "Reset everything on this screen?" shows A RESET or B KEEP, and "Keep this video mode?" shows A KEEP or B CHANGE BACK under its countdown.
  • The icons also reach these screens:
    • the on-screen keyboard;
    • the DOL parameters screen;
    • the cheat browser when it has nothing to show;
    • the older Swiss screens: the classic file browser's game box, the file manager, the folder and DOL pickers, and the MP3 player.

v1.17.2 — Menu Color in the README

  • The README shows Menu Color: the Home cube in each of the eight colors, and the Menu Color list previewing each one before you choose.
  • The README's Posters and Cheats sections link straight to the three downloads (posters for USA and Japan, posters for Europe and Australia, cheats for every region) instead of only to the page.

v1.17.0 — Menu Color previews in its list

  • The list that A opens on Settings › Setup › Console › Menu Color now shows each color on screen as you move through it, the way Left and Right already do on the row. B puts your color back; A keeps the one you are on.

v1.16.1 — posters and cheats to download

  • Ready-made poster packs (USA and Japan, or Europe and Australia) and a cheat pack for every region are at https://indigo.norvitech.com. The README and the release zip's instructions point there; building your own posters.pak still works as before.

v1.16.0 — Menu Color

  • Settings › Setup › Console › Menu Color colors the whole interface: the cube, its light and the stage behind it, the panels, the highlight and the text. Choose Indigo (the default), Azure, Emerald, Gold, Spice, Crimson, Rose or Jet Black. Right steps round the color wheel and A lists them all. The new color shows at once, and Discard & Exit puts the old one back.
  • Every color keeps Indigo's brightness, so text reads as easily and the glass cube keeps its depth. Cover art, banners, the controller buttons in the hints, warnings and enabled cheats keep their own colors.
  • The settings file key is Menu Color.

v1.15.0 — button icons

  • Control hints show the controller's buttons instead of spelling them out, the way games do. You see a green A, a red B, grey X and Y, a purple Z, the L and R triggers, START, the control stick and the D-pad, each followed by what it does.
  • They cover every hint line: Home, the source picker, the Library, game detail, cheats, Settings and System information. On the game detail card they also mark the launch button, "Choose cheats" and the shortcuts. Hold L and press A shows as L + A.
  • A game's own settings now show all of "X DEFAULT B DONE". The title bar used to cut it off.
  • The README's pictures are re-recorded with the icons.

v1.14.1 — Home

  • The white frame on the cube is gone. The white line and the dark line inside it no longer outline the face you are on; the glass, its reflection and each face's emblem are unchanged.
  • The README's Home animation and System screenshot are re-recorded without it.

v1.14.0 — pick from a list

  • A on a setting with four or more choices lists them all. That covers the video modes, languages, polling rates, horizontal scale, camera stick options, RetroTINK-4K profiles and a few more. Move with the D-pad or stick, press A to pick, or B to keep what you had; the current choice is marked. Left and Right still step one choice at a time.
  • The list holds exactly what Right steps through, so video modes your cable can't show stay out of it, and the polling rates the list would otherwise name twice appear once.

v1.13.1 — the video prompt names the new mode

  • "Keep this video mode?" now says what you'd keep, for example "Keep Swiss Video Mode: PAL 576p?". The row behind the prompt still showed the old value until you answered.

v1.13.0 — steady stick in the last two old lists; the disc drive is "Game Disc"

  • The folder picker (copying or moving a file) and the "Select DOL" list now scroll with the stick like every other list: one row, a pause, then a steady repeat. Before, a full stick raced through a row every 24 ms or so.
  • The disc drive is called "Game Disc" instead of "DVD" wherever Indigo names a source: the source picker, Home's Source screen, the file list and System information. Settings about the drive itself keep their names.
  • System information says CPU calibration is adjusted in Setup / Console, where it moved in v1.9.0, instead of the old "Settings / System".

v1.12.1 — Home

  • The white frame on the cube now marks the face you are on. It stayed on the face Library starts on, so after a turn it sat edge-on beside the face you had chosen, or on the top or bottom after Up or Down. Now it fades across to each face as that face turns to the front.
  • The README's Home animation is re-recorded with it, and the System screenshot is current: it still showed the rings around the cube removed in v1.4.1.

v1.12.0 — settings read the positive way round

  • Settings stored as "Disable …" now read the way you'd say them: Controller Recalibration, Alpha Dithering and Hypervisor show On or Off, like Controller Rumble already did. The settings file keeps its key names, so Disable Hypervisor=Yes still works and shows as Hypervisor › Off.
  • Their help says what On and Off each do.

v1.11.0 — Storage says whether your settings file loaded

  • Settings › Setup › Storage now tells you, under its title, where your settings live and whether that file loaded: "Settings are saved in swiss/settings/global.ini.", "No swiss/settings/global.ini yet: using defaults." or "No device to save settings to."
  • Configuration Device's help names the file and says the choice changes only once Save & Exit has written the settings there.

v1.10.0 — help for every setting; saving keeps your files intact

  • Y now explains every setting in Settings. 34 rows had no help, including most of Network, Swiss Video Mode, Disable Video Patches, Force Widescreen, Field Rendering and Horizontal Scale.

  • Game Defaults' NTSC and PAL video modes have their own help instead of sharing a game's.

  • Saving settings no longer wipes a hand-edited global.ini or game file:

    • comments, blank lines and keys Indigo doesn't know stay where they are;
    • known keys get their new value in place;
    • missing keys are added before the End marker.

    Older key names are replaced by their current ones.

  • Reset to defaults in a game's settings no longer wipes the Comment and Status lines in its file.

  • Toggling autoload (Z) saves only the Autoload line. Before, it saved every setting in memory, including ones turned off for this session only, such as Boot without prompts when B was held at launch.

  • A new Configuration Device is written to the console's SRAM only after the settings are saved to it. If that save fails, the console keeps the old device instead of pointing at one without settings.

  • A settings file that can only be read in part now counts as unreadable, so it is never half-applied or saved over.

  • Fixed in v1.9.0's game settings: opening them with X no longer puts the game's Force Video Mode back to its default. The X press that opened the screen was also read as "X: use the default" on the first row.

v1.9.0 — Settings layout and a game's own settings

  • Settings is reorganised around when you change things:
    • It opens on Quick: nine settings that fit on one screen. They are menu music and sounds, UI motion, rumble, In-Game Reset, the GameCube main menu, memory-card emulation, auto-loaded cheats, and boot without prompts.
    • Game Defaults holds what every game starts with.
    • Setup holds everything you set once, in six sections: Display, Console, Storage, Network, Library and Developer. A opens a section and B goes back.
    • L and R move between the three.
  • A game's own settings (X on its detail screen) open on their own, titled with the game's name and without the global tabs, so changing them can't also change the defaults.
  • The Save & Exit and Discard & Exit buttons replace Back and Next.
  • The old Game tab's "Reset to defaults" is gone, because its settings are now spread across Quick and Setup. Game Defaults and a game's own settings keep their resets.
  • docs/SETTINGS.md now lists each key under the screen that shows it.
  • Values that differ from Game Defaults are marked Custom. Every other row follows Game Defaults, and so changes whenever the defaults do.
  • X puts the highlighted row back to its Game Defaults value.
  • The rows you're most likely to change come first, in the same order on Game Defaults: video mode, widescreen, language, polling rate and the controls. Compatibility, picture tuning and the RetroTINK-4K profile follow.
  • "Reset to defaults" asks before it resets a whole screen.
  • Game Detail says when a game has its own settings: the hint reads "X SETTINGS (2 CUSTOM)".

v1.8.0 — Settings controls

  • Holding the D-pad now repeats, the same way the control stick does: hold Down to run through a list.
  • A changes the highlighted value, the same as Right.
  • B leaves Settings. Anything you changed is saved, as with Save & Exit. Discard & Exit is still there to undo.
  • L and R wrap around the six tabs.
  • After you change Swiss Video Mode, System Video, AVE Compatibility, Force DTV Status or RetroTINK-4K HDMI Input, Settings asks whether to keep the new picture. Press A within 10 seconds to keep it; otherwise it changes back by itself, so a mode your TV can't show never sticks.
  • Fixed: if you opened Settings from a game and changed a game default, saving wrote that game's old values into its own settings file, so the game stopped following the defaults. It now keeps following them.

v1.7.0 — Home

  • The cube is glass, like the GameCube's own menu. A soft reflection lies across each face and slides over it as the cube turns and sways, and the bevelled edges catch the light as thin glints.
  • The light stays put while the cube turns, so every face looks the same when it comes to the front. Before, the lighting was painted on the cube and turned with it: Source arrived brighter than Library, and Up or Down carried the bright top to the front.
  • The README's Home animation tips the cube up and down as well as turning it left and right, as Up and Down on the D-pad or control stick do.

v1.6.0 — download

  • Each release now has an Indigo-vX.Y.Z.zip download. Its SD card folder holds ipl.dol and the games and swiss/ui folders, ready to copy to the root of the card.
  • The README's new "Set up your library" section says how /games has to look for the Library to appear, and how to add posters.
  • buildtools/ui/poster_pack.py is now published. --covers DIR builds posters.pak from a folder of cover images named by game ID, and a missing Docker image produces the exact docker pull command instead of Docker's error.

v1.5.2 — settings files

  • New: docs/SETTINGS.md lists every key Swiss reads from global.ini and from a game's own settings file, with its values, its default and where it appears in Settings, so a card can be set up on a computer before it goes in the console. Example files are in docs/examples/.
  • The README no longer says Settings was rebuilt: it keeps Swiss's six tabs, restyled.

v1.5.1 — README

  • Install now says where swiss.dol goes on the console: in place of the file your loader already boots, under that file's name, with PicoBoot spelled out. The build path cube/swiss/swiss.dol read as a path on the SD card.

v1.5.0 — Home

  • The Library face shows a GameCube controller instead of the bookshelf, and it follows the controller in your hand: the control stick and C-stick lean with yours, and A, B, X, Y, Start, the D-pad and the L and R triggers light while you hold them. Two seconds after you let go it starts playing by itself; with reduced motion on it only mirrors you.
  • The short marks on the four sides of the cube are gone, on Home, in Settings and on the restart prompt.
  • The README's Home animation is re-recorded with the controller.

v1.4.2 — README

  • The README's licence section notes that Indigo's interface was built with Claude Code.

v1.4.1 — Home

  • The orbit rings around the cube are gone, on Home and on every other screen that shows the cube; it now sits on its own over the backdrop.
  • The README's Home animation is re-recorded without them.

v1.4.0 — Indigo

  • Swiss UI is now called Indigo, with a new home at spencercnorton/indigo. Earlier releases stay in the archived spencercnorton/swiss-ui repository. The executable is still swiss.dol and settings stay where they were, so an existing card needs no changes.
  • Home names only the face you are on, under the cube. The source name above the cube and the neighbouring faces' names beside it are gone; they did not turn with the cube.
  • The Library face shows books on a shelf instead of three bars that read as a chart.
  • The README's Home animation is re-recorded with the new labels and emblem.
  • System Information and the restart prompt use the new name, and the About page's source link points at this repository.

v1.3.4 — cheats

  • Fixed: leaving the cheat browser crashed Swiss when the cheat file came from a read-only device such as a data disc. Saving the selection now skips a device that cannot write instead of calling a missing write handler.
  • The game detail picture is now an animation: the cheat browser opens, cheats are switched on and off, and the detail screen shows the new count.

v1.3.3 — screenshots

  • The library animation and game detail still show real GameCube games with their box art from a poster pack, instead of fictitious placeholder titles.

v1.3.2 — screenshots

  • The library animation and game detail still now show a poster pack in use: nine illustrated covers drawn for the fictitious demonstration titles, rendered by the real poster pipeline (focus scaling, depth, retained art), instead of the generated fallback cards.

v1.3.1 — screenshots

  • The Home animation is re-cut on the rotations: the loop now walks Library, Source, System and back to Library, instead of opening on four idle seconds and cutting off mid-turn.

v1.3.0 — screenshots

  • The README now shows the interface: an animated capture of the Home cube turning between its four faces, the game library, and the game detail screen.
  • Captured from a demonstration card built for the purpose — nine fictitious titles with generated cover art — so nothing in frame is anyone's real library or third-party artwork. The animations are APNG, which GitHub renders in a README like any image.

v1.2.0 — first public release

The first published release of the interface rebuild. Everything below is what this tag contains rather than a list of changes against an earlier public version; the upstream Swiss history it is built on is at emukidid/swiss-gc.

  • Home: an animated four-face cube, one face per destination, with device state carried through the rotation.
  • Library: a retained poster grid over the device's games, with a saved selection that survives a return to Home.
  • Game details: a per-title surface with artwork, region and format information, and the boot options for that title.
  • Cheats: a presentation pass over the cheat browser, with clearer per-cheat state and safer runtime handling.
  • Settings and System: rebuilt surfaces with consistent controller navigation shared across every screen.
  • Interface work only: device handlers, the patch engine and the loader are upstream Swiss.

From CHANGELOG.md in Indigo v1.25.0, rendered for the web. Spotted a mistake? Suggest an edit.