PromDelay 1.0.0 — macOS (VST3, Audio Unit, standalone; universal: Apple silicon + Intel)
========================================================================================
A 1984 hard-wired multi-tap delay (no processor: TTL logic stepped by five control PROMs) running its own PROMs:
the control PROMs IC72-IC76 and the reverb PROMs IC3/IC4 (required), the display EPROMs IC77/IC101 and the BCD
converter IC81 (optional). The images are NOT included — use your dumps. Each file is recognised by its socket in the
name (IC72.BIN, IC76_V12.BIN, IC101_HN462732G.BIN ...), loose, in a folder (subfolders are fine) or in a .zip.

INSTALL
1. Copy  PromDelay.vst3  into  ~/Library/Audio/Plug-Ins/VST3/  and  PromDelay.component  into
   ~/Library/Audio/Plug-Ins/Components/  (or the same folders under /Library for every user).
2. Give it the PROMs, either way:
   a) open the plugin, click  LOAD PROMS...  (top right) and pick the files, their folder, or the .zip.
      They are remembered for every instance and both formats (stored in
      ~/Library/Application Support/PromDelay/PromDelay.settings), or
   b) make a folder named  PromDelay PROMs  next to the plugin (in the VST3 and/or Components folder) and put the
      files in it.
   Always next to the plugin, never inside its bundle: changing a signed bundle breaks its signature.
3. Rescan plugins in your DAW (Logic: Settings > Plug-in Manager > Reset & Rescan).
   It is listed as "PromDelay" by "Unbranded" (Fx / Delay / Reverb).
   The header should read "PROMs loaded  set e791d906  (10 of 10 images)" with the dumps it was tested with.
   Without the required seven only the direct (dry) path works and the header says which are missing.

STANDALONE
Open PromDelay.app. Put a "PromDelay PROMs" folder next to it, or use LOAD PROMS... .
Audio devices: Options > Audio/MIDI Settings. The first launch asks for
microphone access (needed for audio input); if you said no: System Settings > Privacy & Security > Microphone.

USING IT (it is the unit's front panel)
- DELAY TAPS: eight green displays (ms). Drag a display up/down to scroll it (Shift = one sample), the arrows or the
  mouse wheel nudge it by 1 ms, double-click resets. The displays read in 0.8 ms steps, truncated, as the unit's
  display PROM does (125 ms shows 124); the exact value is printed under each. LEVEL and L / L+R / R per tap.
- TIME SLIDE: SLIDE moves all eight taps together (+ = shorter delays). AUTO SLIDE sweeps them in a triangle:
  LIMIT = peak-to-peak width, RATE = speed (1999 = one sample per frame: an octave up, then frozen; 1990 ≈ ±10 %
  pitch; 1900 ≈ ±1 %; lower = slow drifts).
- MODES: DELAY (the taps), REVERB (8 more taps from the reverb PROMs, chosen with the REVERB MEMORY wheel 00-31),
  ECHO (one repeat at the ECHO time; takes over the reverb taps). FEEDBACK feeds the outputs back in; HF and LF
  RESPONSE darken / thin the repeats. Near 10 it self-oscillates, as the original echo was set up to.
- DELAY MEMORY + ENABLE: 80 memories (taps, slide, limit, rate, echo). The panel always writes into the memory in
  use; set the wheel and press ENABLE to recall another. They are saved with your project.
- I/P LEVEL with the bargraph (converter level), BYPASS LVL (direct signal), BYPASS (footswitch: direct only).
- COMPANDER, SWEEP/JUMP and TRIM are plug-in options: compander on/off; time changes either glide one sample per
  frame like the unit's keys (SWEEP, pitch-bending) or jump; output trim.
- Latency: the plugin reports ~1.4 ms and delays its dry path to match, so the host keeps everything aligned.

If macOS says the plugin or app "cannot be checked for malicious software" (a build without notarisation):
right-click > Open once, or in Terminal:  xattr -dr com.apple.quarantine <path to the .vst3/.component/.app>
