Barsik-Barbosik / Zoom-Firmware-Editor

MIT License
193 stars 27 forks source link

Zoom Firmware Editor

Zoom Firmware Editor is a software for modifying guitar/bass multi-effects pedal firmware updater files. It can be used for adding, removing, swapping effects; replacing drum sample sounds.

Later will be added possibitily of modifying drum patterns.

Application screenshot

There are 2 types of supported pedals:

Multi-effect pedals that use ZDL-effect format:
ZOOM G1on
ZOOM G1Xon
ZOOM B1on
ZOOM B1Xon
ZOOM MS-50G
ZOOM MS-60B
ZOOM MS-70CDR
Multi-effect pedals that use ZD2-effect format:
ZOOM G3X
ZOOM G3n
ZOOM G3Xn
ZOOM G5n
ZOOM B3n
ZOOM AC-2
ZOOM AC-3
ZOOM G1 Four *
ZOOM G1X Four *
ZOOM B1 Four *
ZOOM B1X Four *

* - Four-series firmware contains a new file: "GUARDZDL.ZT2". Should it be modified or can be simply removed from file list?

It seems that both pedal types are not compatible with each other: ZDL-type pedals cannot use ZD2-effects and vice versa.

For example, if your multi-effect processor is "G1on", then you can add effects from "B1on", "MS-50G", "MS-60B" (ZDL). But you can't add effects from "G5n", "AC-2" or "B3n" (ZD2).

Not supported pedals:
ZOOM G3
ZOOM G5
ZOOM B3
ZOOM MS-100BT
Other discontinued products

Getting Started

Zoom Firmware Editor application is a self-executable jar-file. If you have Java JRE installed, then double-click on "ZoomFirmwareEditor.jar" should launch it.

If you dont have Java installed on your computer, you can download and run "ZoomFirmwareEditor-setup.exe". That setup application will install the compiled Windows executable with embedded JVM (created using Excelsior JET).

Important notice! If you are going to inject any GUITAR amplifier effect into any BASS pedal firmware, then you should inject the file "CMN_DRV.ZDL" too!

Some of unique "MS-50G" effects are not included into it's firmware updater. But there is an official "MS-50G Effect Manager", which includes a password-protected archive with all 173 effects. Password is "fDmnZwm2H3mtL8KX". Thanks to GitHub user UnnoTed! Unpacked ZDL-files can be downloaded from his repository.

Requirements

Technical information

This chapter may contain some incorrect of false information!

RAW Audio sample format
File table beginning: system info (8 bytes)
File table item (32 bytes)
File (patch) content block

Block size is 4096 bytes.
Structure of content block:

Patch order

Patch order can be organized by using FLST_SEQ.ZDT/FLST_SEQ.ZT2 files. In the current version of Zoom Firmware Editor those files are not used (and automatically excluded from the firmware: that gives 2 extra blocks of free space). Patch file order is achieved by sorting the file table. That kind of sorting is limited: patches are still grouped by the effect type.

TODO

Acknowledgments

I would like to thank the Youtube user compashthefirst for the idea of that project. The main algorithm of swapping effects on ZOOM pedals is based on his video tutorial.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Button icons used in this software are licensed under a Creative Commons Attribution-Share Alike 3.0 License. Ownership and copyright of the icons remains the property of Aha-Soft.