Skip to content

SNESTICLE REVIVE v1.0.2 [PS2]

Choose a tag to compare

@ReyFxck ReyFxck released this 29 Jul 02:27

CONTEXT

Project based on the source code of SNESticle (Icer Addis), available since 2022 — however abandoned and full of pending issues: several bugs, missing files, a very old compiler (GCC 3.2), very little documentation, and also corrupted files.

CREDITS

  • Thanks to Icer Addis for this incredible emulator (the original SNESticle).
  • Port based on the fork by wolf3s.
  • Thanks to Adriano Oliveira and Yamark for testing on real hardware.
  • Thanks to wLaunchELF ISR (Israpps), the Open PS2 Loader community, FCEUmm (AKuHAK), PicoDrive (Irixxxx), and others for keeping their repositories public — they greatly helped in understanding how to implement new features (I borrowed a thing or two from each).
  • Thanks to the Snes9x and bsnes repositories, and to other docs/repositories that helped with the implementation of special chips.
  • Thanks to the Miniz and Upng repositories for lightweight code for file/image decompression.
  • Thanks to HardLevel for publicizing the project and providing a tutorial.

NOTES

  • Not everything has been tested, since I am testing on an emulator (my PlayStation 2 is broken) — so some bugs may appear in certain things.
  • Problems and life improvements related to Issue #17

BUGS

There is still a known bug with the bgm folder in certain PS2 models; consider using only the ISO file if you are experiencing this problem. mmce is not working yet.

WHAT'S NEW?

Documentation

  • [FIX] Readme has been fully updated.

Save states

  • Restored the original SNESticle shortcuts: L2 + Cross saves a state and
    L2 + Circle loads it. L2 + R2 remains reserved for opening or closing the
    menu and saving modified SRAM.
  • Added a one-time destination chooser shown on the first save: Auto, USB,
    Memory Card, MMCE, or Internal HDD. The choice is remembered and can be reset
    later from the Save States menu.
  • Auto always uses quick slot 1 and, when only a Memory Card is available, uses
    the connected card with preference for mc0:.
  • Added five quick slots for explicitly selected destinations.
  • The save-state format now includes ROM identity, version, generation, and CRC
    checks. Each slot keeps two banks so the previous bank can be recovered
    automatically if the newest one is incomplete or corrupt.
  • New states use fast deflate compression and avoid unnecessary full-payload
    rereads, substantially reducing save and load times.
  • Existing uncompressed version-1 save states remain compatible.

Management and interface

  • The Save States screen now works as a file manager both on the initial
    homebrew screen and while a game is paused.
  • States stored on USB, Memory Card, MMCE, and Internal HDD can be browsed and
    deleted through the file menu. Deleting a state removes both banks belonging
    to its slot.
  • The Save States title is aligned near the top without moving the original
    option and help-text positions.

Memory Card, SRAM, and audio

  • Unformatted Memory Cards are detected before use. The emulator asks whether
    to format the card, clearly warns that all contents will be erased, and
    selects No / Cancel by default.
  • After confirmed formatting, the SNESticle directory and icons are recreated
    and the pending save or browse operation resumes.
  • SRAM changes are checked immediately when opening the menu so a recent
    in-game write is not missed.
  • Audio is muted during blocking operations and restored correctly when
    returning to the game, preventing repeated tail audio and resume deadlocks.

Compatibility

  • Save states are available for base SNES hardware.
  • Games using DSP, SuperFX, CX4, OBC1, S-DD1, S-RTC, or Super Game Boy remain
    blocked until the complete state of those chips is serialized.