コード例 #1
0
ファイル: SoundBlaster.cs プロジェクト: gregdivis/Aeon
 /// <summary>
 /// Initializes a new instance of the SoundBlaster class.
 /// </summary>
 /// <param name="vm">Virtual machine instance associated with the device.</param>
 /// <param name="hwnd">Main application window handle.</param>
 /// <param name="irq">IRQ number for the Sound Blaster.</param>
 /// <param name="dma8">8-bit DMA channel for the Sound Blaster.</param>
 /// <param name="dma16">16-bit DMA channel for the Sound Blaster.</param>
 public SoundBlaster(VirtualMachine vm, int irq, int dma8, int dma16)
 {
     this.vm         = vm ?? throw new ArgumentNullException(nameof(vm));
     this.IRQ        = irq;
     this.DMA        = dma8;
     this.dma16      = dma16;
     this.mixer      = new Mixer(this);
     this.dmaChannel = vm.DmaController.Channels[this.DMA];
     this.dsp        = new Dsp(vm, dma8, dma16);
     this.dsp.AutoInitBufferComplete += (o, e) => RaiseInterrupt();
     this.playbackThread              = new Thread(this.AudioPlayback)
     {
         IsBackground = true,
         Priority     = ThreadPriority.AboveNormal
     };
     this.playbackThread.Start();
 }
コード例 #2
0
 public static extern ResultCode GpioCfgDmaChannels(DmaChannel primaryChannel, DmaChannel secondaryChannel);
コード例 #3
0
 public static extern ResultCode GpioCfgDmaChannel(DmaChannel dmaChannel);