Klasse JHardSIDBuilder

java.lang.Object
builder.jhardsid.JHardSIDBuilder
Alle implementierten Schnittstellen:
HardwareSIDBuilder, Mixer, SIDBuilder

public class JHardSIDBuilder extends Object implements HardwareSIDBuilder, Mixer
Support of HARDSID USB devices like HardSID Uno, HardSID UPlay and HardSID4U.
Autor:
Ken Händel
  • Felddetails

    • REGULAR_DELAY

      private static final short REGULAR_DELAY
      Siehe auch:
    • context

      private EventScheduler context
      System event context.
    • config

      private IConfig config
      Configuration
    • cpuClock

      private CPUClock cpuClock
      CPU clock.
    • hardSID

      private final com.hardsid.usb.driver.HardSIDUSB hardSID
    • deviceCount

      private static int deviceCount
      Number of HardSID devices.
    • deviceNames

      private static String[] deviceNames
      Device names of HardSID devices.
    • chipCount

      private static int chipCount
      Number of SIDs of the first HardSID device.
    • deviceID

      private byte deviceID
      Device number. If more devices are connected, we use just the first one.
    • sids

      private List<JHardSIDEmu> sids
      Already used HardSIDs.
    • lastSIDWriteTime

      private long lastSIDWriteTime
    • fastForwardFactor

      private int fastForwardFactor
    • delayInCycles

      private int[] delayInCycles
  • Konstruktordetails

  • Methodendetails

    • destroy

      public void destroy()
      Angegeben von:
      destroy in Schnittstelle SIDBuilder
    • lock

      public SIDEmu lock(SIDEmu oldHardSID, int sidNum, SidTune tune)
      Beschreibung aus Schnittstelle kopiert: SIDBuilder
      Create a new SID chip emulation.
      Angegeben von:
      lock in Schnittstelle SIDBuilder
      Parameter:
      oldHardSID - old SID chip in use
      sidNum - SID chip number
      tune - current tune
      Gibt zurück:
      emulated SID chip
    • printInstallationHint

      public static void printInstallationHint()
    • printLinuxInstallationHint

      private static void printLinuxInstallationHint()
    • printMacInstallationHint

      private static void printMacInstallationHint()
    • printWindowsInstallationHint

      private static void printWindowsInstallationHint()
    • unlock

      public void unlock(SIDEmu sidEmu)
      Beschreibung aus Schnittstelle kopiert: SIDBuilder
      Destroy SID chip emulation.
      Angegeben von:
      unlock in Schnittstelle SIDBuilder
      Parameter:
      sidEmu - SID chip to destroy
    • getDeviceCount

      public int getDeviceCount()
      Beschreibung aus Schnittstelle kopiert: HardwareSIDBuilder
      Get maximum number of supported SID devices.
      Angegeben von:
      getDeviceCount in Schnittstelle HardwareSIDBuilder
      Gibt zurück:
      maximum number of supported SID devices
    • getDeviceNames

      public static String[] getDeviceNames()
    • getDeviceId

      public Integer getDeviceId(int sidNum)
      Beschreibung aus Schnittstelle kopiert: HardwareSIDBuilder
      Get device ID of specified SID
      Angegeben von:
      getDeviceId in Schnittstelle HardwareSIDBuilder
      Parameter:
      sidNum - SID number
      Gibt zurück:
      device ID of specified SID (null means unassigned)
    • getDeviceName

      public String getDeviceName(int sidNum)
      Beschreibung aus Schnittstelle kopiert: HardwareSIDBuilder
      Get device name of specified SID
      Angegeben von:
      getDeviceName in Schnittstelle HardwareSIDBuilder
      Parameter:
      sidNum - SID number
      Gibt zurück:
      device name of specified SID (null means unassigned)
    • setDeviceName

      public void setDeviceName(int sidNum, String serialNo)
    • getDeviceChipModel

      public ChipModel getDeviceChipModel(int sidNum)
      Beschreibung aus Schnittstelle kopiert: HardwareSIDBuilder
      Get device chip model of specified SID
      Angegeben von:
      getDeviceChipModel in Schnittstelle HardwareSIDBuilder
      Parameter:
      sidNum - SID number
      Gibt zurück:
      device chip model of specified SID (null means unassigned)
    • start

      public void start()
      Beschreibung aus Schnittstelle kopiert: Mixer
      Timer start reached, audio output should be produced.
      Angegeben von:
      start in Schnittstelle Mixer
    • fadeIn

      public void fadeIn(double fadeIn)
      Beschreibung aus Schnittstelle kopiert: Mixer
      Fade-in start time reached, audio volume should be increased to the max.
      Angegeben von:
      fadeIn in Schnittstelle Mixer
      Parameter:
      fadeIn - Fade-in time in seconds
    • fadeOut

      public void fadeOut(double fadeOut)
      Beschreibung aus Schnittstelle kopiert: Mixer
      Fade-out start time reached, audio volume should be lowered to zero.
      Angegeben von:
      fadeOut in Schnittstelle Mixer
      Parameter:
      fadeOut - Fade-out time in seconds
    • setVolume

      public void setVolume(int sidNum, float volume)
      Beschreibung aus Schnittstelle kopiert: Mixer
      Volume of the SID chip
      Angegeben von:
      setVolume in Schnittstelle Mixer
      Parameter:
      sidNum - SID chip number
      volume - volume in DB -6(-6db)..6(+6db)
    • setBalance

      public void setBalance(int sidNum, float balance)
      Beschreibung aus Schnittstelle kopiert: Mixer
      Panning feature: spreading of the SID chip sound signal to the two stereo channels
      Angegeben von:
      setBalance in Schnittstelle Mixer
      Parameter:
      sidNum - SID chip number
      balance - balance 0(left speaker)..0.5(centered)..1(right speaker)
    • getDelay

      public int getDelay(int sidNum)
    • setDelay

      public void setDelay(int sidNum, int delay)
      Beschreibung aus Schnittstelle kopiert: Mixer
      Delay feature: Delaying SID chip sound samples by time in milliseconds
      Angegeben von:
      setDelay in Schnittstelle Mixer
      Parameter:
      sidNum - SID chip number
      delay - delay in ms
    • fastForward

      public void fastForward()
      Beschreibung aus Schnittstelle kopiert: Mixer
      Doubles speed factor.
      Angegeben von:
      fastForward in Schnittstelle Mixer
    • normalSpeed

      public void normalSpeed()
      Beschreibung aus Schnittstelle kopiert: Mixer
      Use normal speed factor.
      Angegeben von:
      normalSpeed in Schnittstelle Mixer
    • isFastForward

      public boolean isFastForward()
      Angegeben von:
      isFastForward in Schnittstelle Mixer
      Gibt zurück:
      speed factor is used?
    • getFastForwardBitMask

      public int getFastForwardBitMask()
      Angegeben von:
      getFastForwardBitMask in Schnittstelle Mixer
      Gibt zurück:
      bit mask of current speed factor (1 << 0 = 1x, 1 << 1 = 2x, ... , 1 << 5 = 32x) - 1
    • pause

      public void pause()
      Beschreibung aus Schnittstelle kopiert: Mixer
      Pause player.
      Angegeben von:
      pause in Schnittstelle Mixer
    • createSID

      private JHardSIDEmu createSID(byte deviceId, int chipNum, int sidNum, SidTune tune, ChipModel chipModel, ChipModel defaultChipModel)
    • clocksSinceLastAccess

      int clocksSinceLastAccess()
    • eventuallyDelay

      long eventuallyDelay()