Script slots and memory: what persists and what does not
The Cronus Zen has eight script slots of 32 KB each; this is what a power cycle, reprogram, erase or hard reset clears, and why script settings reset.
The Cronus Zen has eight memory slots of 32 KB each, and a script programmed into one stays there through power cycles until you replace it, erase the slots or reset the device. What a script remembers about its own settings is a separate matter: it lives in a small persistent store that only some scripts use. Confusing the two is behind most "my script lost its settings" and "my slot is empty" reports. This article separates them and lists what each kind of reset touches.
The eight slots
Cronus's Programmer and Working Panels pages give the Zen eight memory slots of 32 KB each, and say any combination of scripts, GamePacks and remapper profiles can be assigned to them, one per slot. You move between slots with P1, the Memory Slot button, and the OLED shows which one is active. Slot 0 means no slot is loaded: the Zen forwards your controller with no script running, and Cronus says the Collective Minds logo on the OLED means no GamePack or script is active. Device Monitor in Zen Studio shows the active slot number, 0 when none is loaded, and 10 for a script started with Build and Run.
A programmed slot stays put through power loss, through moving the Zen from one console to another and through cable swaps. Cronus's GPC guide puts the line clearly: Build and Run sends a temporary test build to the Zen, and you program a memory slot "only when you want to keep the tested script on Zen".
What survives what
| Event | Programmed slots | Script variables | Saved settings (SPVAR, BVAR) |
|---|---|---|---|
| Power off, unplug, power cycle | Kept | Lost | Kept |
| Switching consoles | Kept | Lost | Kept |
| Changing slot | Kept | Lost for the slot you left | Kept; SPVARs belong to their slot |
| Build and Run test | Not written; the test runs from RAM | Lost | Not affected |
| Reprogramming a slot | That slot replaced | Lost | Zen Studio Live no longer carries the previous script's values into the new one |
| Erase Memory Slots (Device panel) | All cleared; other options untouched | Lost | Not stated by Cronus |
| Factory Reset (Device panel) | Cleared; every option back to default | Lost | Not stated by Cronus |
| Hard reset (P1 and P2 held while connecting, 4 s or more) | Cleared: Cronus says it erases every script | Lost | Not stated by Cronus |
| Firmware update | Cronus does not say; keep your .gpc files | Lost | Not stated by Cronus |
The column that surprises people is the third: whether a script's settings survive depends on the script, not on the Zen. Sources: Cronus's Device, Hard Reset and current troubleshooting pages and its 2026 changelog.
Why a slot can look empty
If a slot shows no script after you were sure you programmed it, check three things. The write may not have completed: programming takes a few seconds, Zen Studio Live confirms it with "Programming complete", and unplugging during the write or a charge-only cable dropping the connection leaves nothing valid in the slot; reprogram and wait. The script may only ever have been run with Build and Run, which never writes a slot. Or the OLED may be showing a different slot from the one you think: press P1 and read the number. How to put a script on the Zen covers the procedure and the cable rule.
Working memory: what a script keeps while running
A running script has variables: the state of a toggle, a calibrated timing, a chosen profile. Cronus's GPC guide lists ordinary runtime variables as not surviving a reload or power loss. That is why a script you tuned in the evening starts from its defaults in the morning: nothing was saved.
GPC gives scripts two persistent stores. SPVARs (SPVAR_1 to SPVAR_64) are private to the memory slot the script is in and are the normal place for per-script settings, read and written with get_pvar and set_pvar (SPVAR storage). BVARs, added in firmware 2.3.0, give each slot 1024 more 16-bit persistent values. A script that uses them remembers your settings across power cycles; a script that does not will not, whatever you do on your side. Whether a given script saves is up to its author, and its instructions should say.
| The script's notes say | What it does | What you do |
|---|---|---|
| "Settings save automatically" | Writes its persistent store when you change something | Nothing |
| "Press X + Y to save" | Writes the store only on that combo | Press it after tuning, before powering down |
| Nothing about saving | Keeps everything in ordinary variables | Write your values down; re-enter them after each boot |
| "Reset to defaults" combo exists | Clears the store on purpose | Avoid the combo unless you mean it |
What a hard reset does
A hard reset, in Cronus's procedure, is a factory reset. With nothing connected, hold P1 and P2 together (the two large blue buttons either side of the OLED), plug the CONSOLE/PC port into a console or PC while holding, and keep holding for at least four seconds until the LEDs flash red, green, blue and the Collective Minds logo appears. Cronus's page says it sweeps the device clean, back to its out-of-the-box state, that M&K profiles must be backed up first, and that scripts cannot be backed up directly, so keep your own copies. Its current guide says a hard reset erases every script on the Zen, follows it with Factory Reset in Zen Studio's Device tab, and then has you reinstall the latest firmware and your scripts.
For a stuck state (a script that hung, a controller the Zen refuses to recognise), a power cycle comes first: Cronus's own fix for an E3002 crash is to unplug every cable for at least 10 seconds and reconnect. That clears the script's variables and keeps the slots. Reach for the hard reset only when the device still misbehaves, and only with your .gpc files to hand.
Holding the small blue button on the back while connecting is a third, different action: that enters the bootloader for firmware flashing. Firmware: update, downgrade, recovery covers it.
Changing slots
Cronus documents no setting for the slot the Zen starts in, so after a power cycle read the OLED before you assume a script has stopped working. Two ways to change slot:
| Method | How |
|---|---|
| On the Zen | Press P1, the Memory Slot button, until the OLED shows the slot |
| From the controller | Zen Studio's Device panel, Remote Slot Change: pick a toggle, for example PS + SHARE or PS + L3 on PlayStation, XBOX + VIEW or XBOX + LS on Xbox One controllers, HOME + MINUS or HOME + L3 on Switch |
GamePacks versus scripts in slots
GamePacks are Cronus's own per-game programs. They occupy a slot exactly like a script does. Their settings are chosen when the pack is put in a slot: desktop Zen Studio can open the GamePack Configuration Interface on drag and drop, and Zen Studio Live opens a settings window, where Cronus notes you can press Save and make the adjustments on the Zen's OLED instead. Because settings can be changed on the device, desktop Zen Studio has Reload Memory Slots to sync itself with what is on the Zen after changes made through the configuration interface.
Practical rules
- Keep every .gpc file you use. Cronus says scripts cannot be backed up from the Zen; reprogramming a slot is a two-minute job if you have the file and impossible if you do not.
- Use Build and Run to try a script and Program to keep it.
- After tuning a script, check its instructions for how to save. If it cannot save, write your settings down.
- When something behaves strangely, power-cycle before reflashing, and reflash before a hard reset. The hard reset wipes every slot.
- Back up M&K profiles before any reset, as Cronus advises.
- Read the slot number on the OLED after every power cycle.
If a script that used to run in a slot now produces an error, the firmware or the tool has likely moved on and the script needs updating; Zen Studio errors explains the messages you will see, and script not working is the ordered diagnostic.
Quick reference
| Symptom | Most likely cause | First fix |
|---|---|---|
| Slot shows empty | Interrupted write, or only ever run with Build and Run | Program the slot; wait for the confirmation |
| Script gone after reboot | The OLED is on a different slot | Press P1; read the number |
| Settings back to defaults | Script does not save, or the save combo was not pressed | Script's notes; write values down |
| Script hung | Runtime state | Unplug every cable for 10 seconds; reconnect |
| Slots empty after a hard reset | It erases every script | Reprogram from your .gpc files |
| Zen boots to "Zen Bootloader" | Reset button held while connecting | Release; that is the flashing mode |
Frequently asked
- How many scripts can the Cronus Zen hold?
- Eight. Cronus lists eight memory slots of 32 KB each, and each holds one script, GamePack or remapper profile. With no slot active (slot 0) no script runs, and the OLED shows the Collective Minds logo.
- Does the Zen forget the script when I unplug it?
- Not a programmed one. A script written to a slot stays through power loss until you replace it, erase the slots or reset the device. A script tested with Build and Run is different: it runs from RAM without being written to a slot, so it is not kept.
- Why did my script's settings reset?
- Ordinary script variables are lost when the Zen loses power. Settings survive only if the script saves them to persistent storage: SPVARs (64 per slot) or, from firmware 2.3.0, BVARs. Whether a script saves is up to its author.
- What does a hard reset erase?
- Every script stored on the Zen, per Cronus, and every setting returns to its out-of-the-box state. Cronus says to back up M&K profiles first and to keep your own copy of every script, because scripts cannot be backed up from the Zen.
- Can two scripts share a slot?
- No. Cronus describes each slot as holding one item: a script, a GamePack or a remapper profile.
- How do I set which slot the Zen starts in?
- Cronus's guides document no start-up slot setting. Read the slot number on the OLED after powering on and press P1, the Memory Slot button, until it shows the slot you want; Zen Studio's Remote Slot Change lets you do the same from the controller.
Something on this page wrong or out of date? Report a correction