Skip to content

Recreate Div-0/RTFM/RainSel, but for ZD2 #93

@mungewell

Description

@mungewell

The original MS pedals had a set of community modified effects, which are ZDL format.

https://github.com/ELynx/zoom-fx-modding

The author wrote a fair bit of documentation on how they work, and how they interact with the pedals. Knowing engineers the ones at Zoom probably have the same (or similar) operation on the newer/G-Series pedals....

I've figured out the first part; downloading the ZD2, extracting the ELF segment and disassembing it...

$ python3 zoomzt2.py --effectdown LINESEL.ZD2
Downloading effect: "LINESEL.ZD2"

$ python3 decode_effect.py --summary LINESEL.ZD2
0x09000f00 : LINESEL.ZD2, LineSel (v1.10 2.66%)

$ python3 decode_effect.py --code LINESEL.ZD2.code LINESEL.ZD2

$ md5sum LINESEL.ZD2.code
ae35e3f3813b3395845582472f0c1196  LINESEL.ZD2.code

$ hexdump -C LINESEL.ZD2.code | head
00000000  7f 45 4c 46 01 01 01 40  00 00 00 00 00 00 00 00  |.ELF...@........|
00000010  03 00 8c 00 01 00 00 00  60 02 00 00 3f 18 00 00  |........`...?...|

TI have a compiler for our CPU here:
https://www.ti.com/product/TMS320C6745?keyMatch=TMS320C6745&tisearch=universal_search&usecase=GPN#software-development

C:\ti\ccs2002\ccs\tools\compiler\ti-cgt-c6000_8.3.13\bin>.\dis6x.exe c:\Users\simon\Downloads\LINESEL.ZD2.code

Disassembly of c:\Users\simon\Downloads\LINESEL.ZD2.code:

TEXT Section .text (Little Endian), 0x2c0 bytes at 0x00000000
00000000            Fx_SFX_LineSel_onf:
00000000       a247           MV.L2         B4,B5
00000002       0a33 ||        MVK.S2        40,B4
00000004       31f7 ||        STW.D2T2      B3,*B15--[2]
00000006       948d           LDW.D2T2      *B5[B4],B0
00000008       200c           LDW.D1T1      *A4[1],A0
0000000a       004c           LDW.D1T1      *A4[0],A4
0000000c       0627           MVK.L2        0,B4
0000000e       0c6e           NOP           1
00000010   10004413           CALLP.S2      __call_stub (PC+544 = 0x00000220),B3
...

Now to see if I can understand the inner workings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions