Klasse WaveformCalculator

java.lang.Object
builder.resid.residfp.WaveformCalculator

public final class WaveformCalculator extends Object
Combined waveform calculator for WaveformGenerator.
Autor:
Antti Lankila
  • Felddetails

  • Konstruktordetails

    • WaveformCalculator

      public WaveformCalculator()
  • Methodendetails

    • makeSample

      private static float makeSample(float[] dac, float[] o)
    • makeDigital

      private static byte makeDigital(float[] o)
    • rebuildWftable

      protected static Object[] rebuildWftable(ChipModel model, float nonlinearity)
      Build waveform tables for use by WaveformGenerator. The method returns 3 tables in an Object[] wrapper: 1. float[11][4096] wftable: the analog values in the waveform table 2. float[12] dac table for values of the nonlinear bits used in waveforms. 3. byte[11][4096] wfdigital: the digital values in the waveform table. The wf* tables are structured as follows: indices 0 .. 6 correspond to SID waveforms of 1 to 7 with pulse width value set to 0x1000 (never triggered). Indices 7 .. 10 correspond to the pulse waveforms with width set to 0x000 (always triggered).
      Parameter:
      model - Chip model to use
      nonlinearity - Nonlinearity factor for 6581 tables, 1.0 for 8580
      Gibt zurück:
      Table suite
    • populate

      private static void populate(int v, float[] o)
    • fillInWaveformSample

      private static void fillInWaveformSample(float[] o, ChipModel model, int waveform, int accumulator, int pw)
    • main

      public static void main(String[] args)
    • dump

      private static void dump(String basename, Object[] data)