No Description

Kevin Lee 65fc461f66 Initial diff 1 year ago
samples 251e02a8b6 Initial config work 1 year ago
src 65fc461f66 Initial diff 1 year ago
tests 65fc461f66 Initial diff 1 year ago
.gitignore 86b86d25ec Init 1 year ago
Cargo.lock 65fc461f66 Initial diff 1 year ago
Cargo.toml 65fc461f66 Initial diff 1 year ago
README.md 65fc461f66 Initial diff 1 year ago
config.yml d783156e1d Move config code into separate module 1 year ago
imhex.txt 5ab81b24b7 More cleanup 1 year ago

README.md

EzCAD Patcher

This tool parses and patches EZCAD files with values specified in a YAML config file.

Usage

Usage: ezcad_patcher.exe [OPTIONS] --input <INPUT>

Options:
  -i, --input <INPUT>    Input file to parse
  -o, --output <OUTPUT>  Output file to write to
  -c, --config <CONFIG>  Configuration file
  -v, --verbose...       Increase logging verbosity
  -q, --quiet...         Decrease logging verbosity
  -h, --help             Print help

Patching Pen Settings

Three operations are supported for patching pen settings:

  1. Setting values of specific fields for a given pen:
Ops: 
  - !PatchPen
    Pen: 0                  # Required - target pen
    Color: [127, 127, 127]  # Optional - target pen RGB color
    Enabled: true           # Optional - target pen enable flag
    LoopCount: 3            # Optional - target pen loop count
    Speed: 1.234            # Optional - target pen speed
    Power: 10.5             # Optional - target pen power 
    Frequency: 10000        # Optional - target pen frequency
  1. Cloning one pen to another (and optionally override settings):
Ops: 
  - !ClonePen
    From: 0                 # Required - source pen
    To: 1                   # Required - target pen
    # Color: [64, 64, 64]   # Optional - target pen RGB color
    # Enabled: true         # Optional - target pen enable flag
    # LoopCount: 3          # Optional - target pen loop count
    # Speed: 1.234          # Optional - target pen speed
    # Power: 10.5           # Optional - target pen power 
    # Frequency: 10000      # Optional - target pen frequency
  1. Incrementing a specific field by some value across a sequence of pens:
Ops: 
  - !PatternPen
    From: 1                 # Required - starting pen to copy settings from
    To: 5                   # Required - ending pen to stop at (inclusive)
    # Field: !Loops 1         # Choose one
    # Field: !Speed 100.0     # Choose one
    # Field: !Power 10.0      # Choose one
    # Field: !Frequency 1000  # Choose one

Patching operations will be applied in the order that they are defined.