swiss-gc

Swiss - The swiss army knife of GameCube homebrew

GPL-2.0 License

Stars
1.3K

Bot releases are hidden (Show)

swiss-gc - Swiss v0.5r836

Published by Extrems over 4 years ago

A small update after we got distracted with Nintendo 64 emulation and other projects.

@cristofercruz committed:

  • New set of device images
  • Fix free space display in standard view (issue #338)
  • Add checks to skip current device when looking for cheats on SD

@Extrems committed:

  • Fix SRAM dumping.
  • Calculate total space for File Service Protocol and USB Gecko.
  • Do the minimum needed to get Ikaruga playable on all devices.
  • Fix PADRead signature matching for Ikaruga.
  • Show which devices support game boot.
  • Fix UI inconsistency regarding EXI speed.
6e330ff4324f4bf8ca5b6bf981decd6ac86ca0886f22e8c67721b815d886e228  swiss_r836.7z
swiss-gc - Swiss v0.5r827

Published by Extrems over 4 years ago

A few too many reports of Memory Slot A not working are popping up, so here goes.

@cristofercruz committed:

  • Updated list view and region icons

@emukidid committed:

  • Fix analog range issue on scrolling (issue #329)

@Extrems committed:

  • Skip ELF duplicate of default DOL.
  • Stop streaming audio on IGR.
  • Add basic disc read speed emulation for GCLoader.
  • Fix issue with timer 3-4.
  • Prepare for full DI emulation.
  • Fix Memory Slot A usage with no patch device present.
  • Fix build with devkitPPC release 36.
f2d832aef0fba5149972430338b80f7b780df793853a2459e90ac9ecab16f0b7  swiss_r827.7z
swiss-gc - Swiss v0.5r813

Published by Extrems over 4 years ago

A bug that appeared in v0.4r775 preventing Game Boy Interface presets from working has been fixed.
Some interface rendering tweaks have been done, and using Swiss as igr.dol should now work again.
Compatibility with 10-15 years old Kingston SD cards has been fixed through a libOGC patch.

@Extrems committed:

  • Code space optimizations.
  • Fix .dol+cli files.
  • Fix crash when igr.dol overlap critical section of game executable.
  • Fix UI projection matrix.
  • Improve text downscaling quality.
  • Apply pixel center fix.
  • Use point sampling for upscaling banners.
  • Add __OSBootDolSimple signature found in Kururin Squash!
  • Don't setup progressive scan for BS2 NTSC Revision 1.0.
  • Trigger IGR on game crash.
9f715905ceb41f68601b955a230f4bcaa5733b0fad7579dc7f656ba5f9173c03  swiss_r813.7z
swiss-gc - Swiss v0.5r806

Published by Extrems over 4 years ago

For this release, @cristofercruz has kindly contributed a new interface theme. We hope you'll like it.

A new fastboot apploader has been introduced. Users with an optical drive emulator can now enjoy near-instant access to Swiss. You can use the boot through IPL feature to bring back the boot animation when loading games.

Patching certain late EA titles with non-stripped ELF binaries has been fixed.

The music in Baten Kaitos: Eternal Wings and the Lost Ocean has been fixed for devices using full DI emulation.

To commemorate these changes, we've bumped the version number to 0.5.

@cristofercruz committed:

  • Correct highlight button image dimensions to 4x4, raise menu bar slightly, adjust spacing between menu bar and file browser.
  • Updated file type image templates.
  • Updated interface images for backdrop, file type and menu buttons. Minor tweaks to text positions.
  • Remove redundant condition.
  • Split cli and dcp reading to allow loading arguments from both.

@emukidid committed:

  • Bump version to 0.5
  • Update BNR credits
  • Add patreon supporters list to credits

@Extrems committed:

  • Patch DVDGetTransferredSize.
  • Only read portion of ELFs we care about.
  • Don't use compressed DOL for ISOs.
  • Update apploader build date.
  • Force IPL menu on exit.
  • Use new fastboot apploader.
7b664e54366caa94d3af470ed259f473e6769361304b0185c57e20346f5fd0ff  swiss_r806.7z
swiss-gc - Swiss v0.4r798

Published by Extrems over 4 years ago

Cleaning up the mess from the previous release, the Wiikey Fusion should now work better than ever, including 2-disc support.

A long-standing bug causing crashes with DVD/GCLoader and patch fragments has been fixed.

There's now the option of booting games through the GameCube Main Menu. This feature has some issues still, but it mostly work. Current game settings apply, so it can be seen in progressive scan.

@EBLeifEricson committed:

  • Added check of SP2 slot for cheats when on a different device

@Extrems committed:

  • Add exception for PAL games booted through IPL.
  • Show disc number when other disc has been found.
  • Generalize text encoding patch for early SDK.
  • Remove debug log spam.
  • Add text encoding patch for BS2.
  • Add region patch for BS2.
  • Add video patches for BS2.
  • Port Wiikey Fusion over to the new patches.
  • Add boot through IPL feature.
  • Rewrite workaround for CPU lockup on EFB Z peek during a copy operation.
  • Fix DVD read starting in the alignment for a previous patched file.
  • Don't allocate audio streaming buffer for new patches.
  • Reimplement DVD-R spin-up.
e323d17c04716ddb2940061a930c3f48b5cc0cb97dc4b2dbb5dd14846f29b87a  swiss_r798.7z
swiss-gc - Swiss v0.4r785

Published by Extrems over 4 years ago

DVD/GCLoader have been ported over to the new read patches, and all games are now treated as potentially reloading. This allow certain games, most famously XIII, to be played in progressive scan using an original/backup disc or GCLoader, and also allow other patches to persist across resets. An SD Card Adapter is required for this to function.

If you had disabled the new read patches before, these will be reset to enabled. The option to disable them has been replaced with a more succinct "Emulate Audio Streaming" option. This should also fix cases where they've been inadvertently disabled by the last release. This option only take hold for SD Card Adapters and IDE-EXI.

@Extrems committed:

  • Fix comparison with falsely flagged audio streaming.
  • Save and compare disc header.
  • Port DVD/GCLoader over to the new patches.
  • Hide .nkit.iso extension.
  • Hide swiss_patches directory upon creation.
  • Implement sync ioctl.
  • Check other file attributes of existing patch fragments.
  • Change "Alternate Read Patches" option for a "Emulate Audio Streaming" option.
  • Simply enable interrupts and call OSResetSystem.
  • Hijack current thread to call OSResetSystem.
  • Patch EXIDetach.
cf0543ac99252fa807a8cabf67dffaadbda6687f0ce7b7a8482055907246e995  swiss_r785.7z
swiss-gc - Swiss v0.4r775-1

Published by Extrems over 4 years ago

An issue preventing an SD card on Serial Port 2 to be detected, or making it run at a slower speed, was discovered.

I apologize for the inconvenience.

defdc152ad9c0bfc48734fcbd8c08b96528e1022ee1b88233b491b3e90c60574  swiss_r775.7z
swiss-gc - Swiss v0.4r775

Published by emukidid over 4 years ago

In this release, I've added a new, more game oriented File Browser type which can be enabled via the General Settings screen. The ability to configure network options within Swiss itself is now possible too (not for SMB yet). Additionally, default game settings should now apply on games that have never had their config saved before too, there'll be some more work in the future regarding being able to default specific options, since the current default is more a "settings template for new games". @Extrems fixed SD initialisation issues with some additional commits in libOGC to back the changes.

@emukidid committed:

  • Tidy up last commit
  • Fix issue #301, tidy up some unused warnings
  • Display bba_ip on info screen if initialized
  • Fix GCLoader device name
  • New optional file browser targeted at GCM files
  • Push WIP text entry for certain settings
  • Fix default game settings for new entries

@Extrems committed:

  • Adjust for libOGC changes.
  • Add auto speed downgrade.
  • Make use of EXILock with SD Gecko and IDE-EXI.
swiss-gc - Swiss v0.4r766

Published by Extrems almost 5 years ago

For this release, while I mostly focused on the Broadband Adapter, the way in-game reset work in the new read patches has changed. @emukidid worked on improving file browsing speed.

@emukidid committed:

  • Make less calls when reading banner data, standardise it with a struct
  • Fix banner description display when carriage return is present
  • Fix read/size issue when banner is at the end of the file

@Extrems committed:

  • Make use of EXILock callback for transmit.
  • Make use of __OSMaskInterrupts/__OSUnmaskInterrupts.
  • Change IGR to call OSResetSystem in idle thread.
  • Fix another cause of missed interrupts.
  • Don't trap reset button if not using IGR.
  • Find __OSUnhandledException and put it in our table.
  • Reuse __OSInitSystemCall to install a jump table.
  • Smooth things out with the Broadband Adapter.
swiss-gc - Swiss v0.4r756

Published by Extrems almost 5 years ago

It's time to upend compatibility and performance again.

This release fixes certain edge cases that couldn't be seen with the Broadband Adapter (File Service Protocol), where most game testing occurs.

While there may be regressions, there is no turning back.

@emukidid committed:

  • Avoid NKit message on WODE entries by setting entry size to DISC_SIZE

@Extrems committed:

  • Fix issues with timer 2+.
  • Fix FAT disk status.
  • Remove signatures that are no longer needed.
  • Add signatures found in 007: Everything or Nothing.
  • Change identification method for GCLoader.
  • Set second disc first as a workaround for a firmware bug.
  • Other minor corrections for GCLoader.
  • Refactor read scheduling.
  • Do our own scheduling.
  • Remove workaround for race hazard in Luigi's Mansion.
  • Remove game-specific patch for Viewtiful Joe (Europe).
swiss-gc - Swiss v0.4r748

Published by Extrems almost 5 years ago

  • Fix regression with Wiikey Fusion.
swiss-gc - Swiss v0.4r747

Published by Extrems almost 5 years ago

I guess I'll just release at my own pace now.

This release frees you from arbitrary file naming conventions for 2-disc games.

@emukidid committed:

  • Update gcloader.png to final

@Extrems committed:

  • Find second disc through the metadata cache.
  • Don't load stale patch fragments.
  • Fix igr.dol without patch fragments.
  • Fix fragments list handling.
  • Skip duplicates of default DOL.
swiss-gc - Swiss v0.4r743

Published by Extrems almost 5 years ago

Standing in for @emukidid this Christmas. Hopefully everything built correctly.

No, this doesn't prevent using the SD2SP2.

@emukidid committed:

  • Don't patch PAD for GCLoader since it has no patch base installed (yet)
  • Don't install execD patch unless if we really need to (non alt patches is the only real use)
  • Add GCLoader support (no multi-dol patch support)
  • Don't show select_alt_dol when the selection is just the main DOL and the apploader trailer

@Extrems committed:

  • Basic accommodation for shrunk disc images without requisite size alignment.
  • Add 2-disc support for USB Gecko.
  • Fix size of fragmented patch fragments.
  • Fix igr.dol for Wiikey Fusion.
  • Add 2-disc support for File Service Protocol.
  • Use virtual offset for second disc.
  • Use DMA length for read command.
  • Fix subtle bugs with igr.dol.
  • Optimize globals with minimal impact.
  • Give DOL apploaders their own type.
  • Add game-specific patch for Phantasy Star Online Episode III: C.A.R.D. Revolution.
  • Rewrite game-specific patch for Phantasy Star Online Episode I & II Plus.
  • Patch Phantasy Star Online's compressed switcher DOL.
  • Add workaround for race hazard in Luigi's Mansion.
  • Prevent File Service Protocol from being used as configuration device.
  • Add game-specific patch for Pokémon Box: Ruby & Sapphire.
  • Rewrite anti-debugger removal for Pokémon Colosseum.
  • Rewrite anti-debugger removal for Pokémon XD: Gale of Darkness.
  • Handle mixed debug/release build for Billy Hatcher and the Giant Egg.
  • Improve IGR.
  • Prevent access to Serial Port 2.
  • Remove redundant check.
  • Fix crash in Star Wars: Bounty Hunter.
  • Add game-specific patch for Summoner: A Goddess Reborn.
  • Complete game-specific patch for Viewtiful Joe (Europe).
  • Fix FAT mount status.
  • Add game-specific patch for Viewtiful Joe (Europe).
  • Minor optimizations.
  • Support read fragments for GCLoader.
  • Improve in-game SD card compatibility.
  • Fix stupid mistake.
swiss-gc - Swiss

Published by emukidid almost 5 years ago

@Extrems has been busy fixing game and SD compatibility issues over the last 3 weeks amongst other general usability improvements. See below for the full commit log for this release! Note that this build and all builds in the future will nag you if you are using improperly shrunk GCM files so please make sure they're either properly shrunk with NKit, or not shrunk at all.

  • Warn against broken shrinking tools.
  • Go to real mode for user DSI exception handler.
  • Add game-specific patch for The Hobbit.
  • Fix crash in Metal Gear Solid: The Twin Snakes. (thanks tueidj!)
  • Show true streaming audio status.
  • Fix EXI speed selection after changing device.
  • Add signatures for Batman: Vengeance's apploader.
  • Add stateBusy signature for Super Mario Sunshine's apploader.
  • Try Serial Port 2 first.
  • Fix SD Card detection.
  • Really adhere to EXI speed setting.
  • Remove nonsense.
  • Bring PAD patching up to current standards.
  • Add PAD signatures for BS2 NTSC Revision 1.0.
  • Add PAD signatures for The Dodger Demo.
  • Add PADInit signature for Sega Soccer Slam.
  • Add PAD signatures for Killer7 prototypes.
  • Add some signatures for Killer7 prototypes.
  • Add EXI signatures for Sega Soccer Slam.
  • Add missed OSResetSystem signature.
  • Change things up a bit.
  • Add missed signature for Metroid Prime 2: Echoes Bonus Disc.
  • Some refactoring.
  • Prevent our tower of cards from collapsing.
  • Add DVD signatures for The Dodger Demo.
  • Document some game-specific patches.
  • Add game-specific patch for Pokémon Colosseum Bonus Disc.
  • Add game-specific patch for Metroid Prime 2: Echoes Bonus Disc.
  • Clean up game-specific patch for F-Zero GX.
  • Add game-specific patch for Star Wars: The Clone Wars.
  • Fix crash in BS2 NTSC Revision 1.0.
  • Stub out __VIInit.
  • Add some signatures found in BS2 NTSC Revision 1.0.
  • Add game-specific patch for Pokémon Channel.
  • Separate out game-specific patches for streaming audio.
  • Add signatures found in Metroid Prime 2: Echoes Bonus Disc.
  • Add game-specific patch for Second Sight.
  • Add game-specific patch for TimeSplitters: Future Perfect.
  • Add exception for TimeSplitters: Future Perfect.
  • Add game-specific patch for Pokémon XD: Gale of Darkness.
  • Patch EXISelectSD.
  • Add signatures for Pokémon Colosseum.
swiss-gc - Swiss

Published by emukidid almost 5 years ago

This release adjusts the SD card read timeout in-game to match with what libOGC has, it will only apply to SD cards from a memory card slot or SD2SP2. It may improve the situation where a SD card works in Swiss/other homebrew but fails to boot ISO files.

Other minor optimizations have also been made to in-game patches.

@Extrems committed:

  • Match libOGC's R1 timeout.
  • Minor optimizations.
swiss-gc - Swiss

Published by emukidid almost 5 years ago

This release fixes read errors using the alternate reads (issue #244):

@Extrems committed:

  • Fix random missed interrupt.
  • Fix Game Boy Player Start-up Disc soft reset.
  • Update FatFs to R0.14.
swiss-gc - Swiss

Published by emukidid about 5 years ago

This release fixes broken WKF/WASP support.

swiss-gc - Swiss

Published by emukidid about 5 years ago

This release adds support for micro SD cards via Serial Port 2 on GameCube consoles where that port exists. It requires a small PCB (open source design here) and the compatibility/speed is the same as using an SD card via the front memory card ports. The main benefit is that it leaves the 2 front slots free for a memory card and any other peripherals you might require in games.

That being said, the alternate read patches (which are now the default) have basically been rewritten by @Extrems since the last release and should be much more stable and compatible. 2-disc support has been added into these patches but audio streaming is still only available via the old non alternate patches for now.

Full commit list from the previous release by author:

@emukidid

  • Fix free space reporting on multi-slot devices
  • Display Serial Port 2 device on the info screen
  • Serial Port 2 preliminary SD support

@Extrems

  • Add 2-disc support for block devices.
  • Always treat games as potentially reloading with read patches.
  • Rewrite IGR.
  • Optimize hardware registers access.
  • Prevent DVD reset.
  • Cheat to save some space.
  • Fix all EXI conflicts.
  • Finish(?) tedious work.
  • Install own EXI interrupt handler.
  • Clean up and space optimization.
  • Fix patching 2004 apploaders.
  • Full DI interrupt emulation.
  • Continue tedious work.
  • Fix IDE-EXI after f87dedc.
  • Always treat games as potentially reloading for SD Gecko.
  • Fix some multi-DOL issues.
  • Stop multiple block read on hot reset without IGR.
  • Hook __OSDoHotReset for IGR.
  • Stop multiple block read on hot reset.
  • Partial DI interrupt emulation.
  • Update FatFs to R0.13c-p5.
  • Fix patches on Serial Port 2 for other devices.
  • Fix patches on byte addressing SD for other devices.
  • Some additional work on DI emulation.
  • Break ground on DI emulation.
  • Fix patches on Serial Port 2.
  • Reverse patch device order.
  • Use DVD queue to manage breakpoint.
  • Add remainder of ECID.
  • Add force DTV status.
swiss-gc - Swiss

Published by emukidid about 5 years ago

Mostly bug fixes this release, changes listed by author below.

@emukidid:

  • Fix mistakes in settings text
  • Move "Alternate Read Patches" setting to be a per game (and default) level setting
  • Enable "Alternate Read Patches" setting by default
  • Fix empty memory card crash, fix blocks label
  • Fix issue #217 (graphical issues with banners when navigating devices)

@Extrems:

  • Fix 540p and 1080i video timings.
swiss-gc - Swiss

Published by emukidid over 5 years ago

  • Fixed 2 disc detection (disable "Use Alternate Read Patches" for 2-disc when swapping is required)
  • Fixed GameID display issues on certain titles on the info box