============================================================================
y^CgzuU[Wavet@CĐR|[lg
yo ^ zWavePlayV.ZIP
yt@CzWavePlayV.pas
yҖzVRAM̖pt
yzDOS/V@ + Delphi5.0
yzWindows2000/XP/Vista/Windows7
yT|[gzhttp://www14.atwiki.jp/vram/
============================================================================

yTvz

MIDIt@CĐR|[lg邮炢Ȃ̂
Wavet@CĐR|[lg邱Ƃł̂ł͂ȂH
Ղȍln߂R|[lgłB

܂łWavet@CĐ邽߂ɂMCIȂǂ
foCXRg[gKv܂B
ȒPȍĐ͂ł̂́AlXȌʉĐɂ
ss܂B

ƊȒPɉ̍ĐłȂ̂H
ȒPɎł̂TWavePlayVNXłB

Wavet@CǂݍݍĐł邾̂̂ł
dɂāuuU[v𔭐Kv
gIōĐł@\ǉĂ܂B


ygz------------------------------------------------------

vCx[gϐƂĐ錾Ă܂B

    { Private 錾 }
    FWavePlayV : TWavePlayV;

tH[̐CxgȂǂŃNX𐶐܂B
  FWavePlayV := TWavePlayV.Create(Self);

g`쐬܂B
  FWavePlayV.MakeWave(g,ON,OFF);
    g  : HzŎw肵܂B
    ON  : ̒msŎw肵܂B
    OFF : ̒msŎw肵܂B
    
TEh|[gJ܂B
  FWavePlayV.PortOpen();

쐬g`Đ܂B
  FWavePlayV.Play([v̗L);

  [v̗LFTrueƂƍĐJԂ܂B

  ~߂ꍇStop\bhg܂B
  TEh|[gꍇClose\bhłB
  Ȃ݂ɃTEh|[g͂JĂɖ肠܂B
  ɍĐĂ肠܂BĐ̓TEhJ[h̐\ɂ܂B

ȕɊȒPɉƂł̂̃NXłB

yvpeBE\bhz------------------------------------------------------

function LoadFromFile(const FileName : string) : Boolean;
  Wavef[^t@Cǂݍ݂܂B
  f[^TCY傫ĂvłB44Mbyte炢łǂݍ݂܂B
  ǂݍݎԂ̂ƁA܂B
  ĐɓǂݍނƂ͂ł܂B
  
function Play(aLoop : Boolean) :Boolean;
  Đ܂B
  쐬g`f[^܂Wavef[^Đ܂B
  [vĐꍇ͈trueɂ܂B
  
  Đ鎖ɊւĂ͕S͂܂B
  obNOEhōĐ܂̂ŁÃ\bh
  Ɏ̖߂sł܂B

function Stop() : Boolean;
  Đ~܂B
  Đɉ~߂ꍇɎgp܂B

function Reset() : Boolean;
  TEhJ[h܂B
  ɎgpKv͂Ȃ͂ł
  炩̌ŏKvłΎgpĂB

function PortOpen() : Boolean;
  TEhp̃|[gI[v܂B
  ̃TEhJ[hꍇPortNovpeBŎw肷鎖ł܂B
  
function PortClose() : Boolean;
  TEhp̃|[g܂B

function MakeWave(aFrequency,aLengthOn,aLengthOff : Integer) :Boolean;
  uU[p̔g`쐬܂B
  aFrequency : gHzŎw肵܂BȂgwł܂B
  aLengthOn  : uU[ONԂmsŎw肵܂B
  aLengthOff : uU[OFFԂmsŎw肵܂B

property Playing : Boolean read FPlaying;
  ĐԂ擾܂B
  ĐtrueԂ܂B

property Volume : Integer read GetVolume write SetVolume;
  E̍ĐʂꊇŎw肵܂B
  }X^[{[ł͂ȂTEhJ[h̉ʂłB
  }X^[{[Ȍꍇ~[gł͉͏o܂B

property VolumeLeft : Integer read GetVolumeLeft write SetVolumeLeft;
  ̉ʂw肵܂B

property VolumeRight : Integer read GetVolumeRight write SetVolumeRight;
  Ẻʂw肵܂B

property Devices : TWaveOutDevices read FOutDevices;
  gp\ȉ{[hꗗ擾AǗĂ܂B
  ̈ꗗ̒gpTEh{[hPortNoŎw肵Ďgp܂B

  XgNXTWaveOutDevicesItemsNX
  ̂悤ȏ擾ł܂B
    property Name        : string read FName;
      ̖
      
    property MakerID     : Integer read FMakerID;
      hc
      
    property ProductID   : Integer read FProductID;
      v_Nghc
      
    property VerLarge    : Integer read FVerLarge;
      o[Wԍij
      
    property VerSmall    : Integer read FVerSmall;
      o[WԍiQj
      
    property Formats     : Integer read FFormats;
      gp\Ȍ`
      
    property Channels    : Integer read FChannels;
       1:m 2:XeI
       
    property Support     : Integer read FSupport;
      T|[gԍ

property PortNo : Integer read GetPortNo write SetPortNo;
  ĐTEh{[hI܂B
  0DevicesNXCount-1͈̔͂w肵܂B
  -1w肷Windows̕WTEh{[hw肳܂B
  
property OnPlayStop : TNotifyEvent read FOnPlayStop write FOnPlayStop;
  ĐIƂ̃Cxg܂B
  XƉĐꍇȂǂɎgp܂B

yƂz----------------------------------------------------------------

Wavet@C߂̏񌹂MIDIƓlɏȂ
ӊOƋJ܂B
ȏԂɂ܂łɂ́AȂ莞ԂAɉʂɊւĂ
ʂɐݒ肵Ăɓ삵܂łB

xCAĂ݂ƈӊOƎĝ
낢ȏʂŎgĂ܂B

yzzȂǁz------------------------------------------------------------

̃NX̎gp@ɂ͓ɐ͂܂B
VFAEGA^t[\tgނ킸gݍŒĂ܂܂B
܂AvP[Ṽ\[XJĂꍇÃ\[Xtč\܂
ɕsȂǂgpґŉςꍇł̉ό̃\[Xzz
Ė͂܂B
\łΎ̖OڂĂΌhłB

yz--------------------------------------------------------------------

2010/01/09
  J
