Welcome![Sign In][Sign Up]
Location:
Search - TI 55

Search list

[Other Games瑪莉台(老虎機)

Description:

var
  Form1: TForm1;
  MousePos: TPoint;
  bet_x : Integer;
  bet_y : Integer;
  i, j, k, l, r, m, n : integer;// i:大迴圈 J:跑燈迴圈 K:倍數燈 L:倍數燈 M:大小燈  n:比倍迴圈
  left_bai, right_bai : Integer; //左邊倍數..右邊倍數
  Ti, Tj : Cardinal; //迴圈時間 , 押注連續時間
  rb, rd : integer;//加速用定位
  score : Integer;//現有分數
  take_score : Integer;//得分
  bet_ok : Boolean;    //押注完成
  re_bet : Boolean;    //重新押注
  bar_bet, seven_bet, star_bet, Watermelon_bet, bell_bet, Lemon_bet, Orange_bet, apple_bet : Integer;
  bar_bet_full, seven_bet_full, star_bet_full, Watermelon_bet_full, bell_bet_full, Lemon_bet_full, Orange_bet_full, apple_bet_full : Boolean; //下注全滿
  bet_all : Integer;//押注總和
  runing : Boolean; //正在跑燈
  not_take_score : Boolean;//是否已經取回得分
  big_small : Integer;  //大小  大:0  小:1
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  if (not AsphyreDevice1.Initialize()) then
  begin
   Close();
   Exit;
  end;

  Randomize;
  Ti := 451; //毫秒
  score := 5000;
  bet_ok := False;
  runing := False;
  re_bet := True;
  not_take_score := False;
  Tj := 50;
  PlaySound('R_21',hinstance,SND_ASYNC or SND_RESOURCE);

end;

procedure TForm1.AsphyreDevice1Initialize(Sender: TObject;
  var Success: Boolean);
begin
  Success:=AsphyreFonts1.LoadFromASDb(ASDb1);
  if (Success) then
  Success:=AsphyreImages1.LoadFromASDb(ASDB1);
  //if (Success) then SoundSystem1.LoadFromASDb(ASDb1);
  AsphyreTimer1.Enabled:= Success;
end;

procedure TForm1.AsphyreDevice1Render(Sender: TObject);
begin
  AsphyreCanvas1.Draw(AsphyreImages1.Image['23ok1.image'],0,0,0,1); //背景加載
  AsphyreFonts1[2].TextOut(format('%6s',[IntToStr(score)]), 232,56, $FF2425FF); //資金顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%6s',[IntToStr(take_score)]), 66,56, $FF2425FF); //得分顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(bar_bet)]), 18,523, $FF2425FF); //BAR押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(seven_bet)]), 64,523, $FF2425FF); //77押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(star_bet)]), 112,523, $FF2425FF); //双星押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(Watermelon_bet)]), 159,523, $FF2425FF); //西瓜押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(bell_bet)]), 206,523, $FF2425FF); //鈴鐺押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(Lemon_bet)]), 253,523, $FF2425FF); //檸檬押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(Orange_bet)]), 300,523, $FF2425FF); //橘子押注顯示( $FF0400FF 正紅 )
  AsphyreFonts1[2].TextOut(format('%2s',[IntToStr(apple_bet)]), 347,523, $FF2425FF); //蘋果押注顯示( $FF0400FF 正紅 )
  //AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 174,90+i,0,1);
  Demo;
  Form1.FormStyle := fsStayOnTop;
  if (bet_x > 267) and (bet_x < 374) and (bet_y > 555) and (bet_y < 588) then AsphyreCanvas1.Draw(AsphyreImages1.Image['start4.image'], 265,555,0,1);
  if (bet_x > 24) and (bet_x < 83) and (bet_y > 559) and (bet_y < 587) then AsphyreCanvas1.Draw(AsphyreImages1.Image['big2.image'], 24,559,0,1);
  if (bet_x > 89) and (bet_x < 144) and (bet_y > 559) and (bet_y < 587) then AsphyreCanvas1.Draw(AsphyreImages1.Image['small2.image'], 89,559,0,1);
end;

procedure TForm1.AsphyreTimer1Timer(Sender: TObject);
begin
  AsphyreDevice1.Render(0,true);
  AsphyreDevice1.Flip;
end;

procedure TForm1.Demo();     //選擇性顯示
begin
    case j of
      1 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 174,90,0,fxMax);
      2 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 224,90,0,fxMax);
      3 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 276,90,0,fxMax);
      4 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,90,0,fxMax);
      5 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,142,0,fxMax);
      6 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,192,0,fxMax);
      7 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,244,0,fxMax);
      8 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,294,0,fxMax);
      9 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,346,0,fxMax);
      10 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 326,398,0,fxMax);
      11 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 276,398,0,fxMax);
      12 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 224,398,0,fxMax);
      13 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 174,398,0,fxMax);
      14 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 122,398,0,fxMax);
      15 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 71,398,0,fxMax);
      16 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,398,0,fxMax);
      17 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,346,0,fxMax);
      18 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,294,0,fxMax);
      19 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,244,0,fxMax);
      20 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,192,0,fxMax);
      21 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,142,0,fxMax);
      22 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 20,90,0,fxMax);
      23 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 71,90,0,fxMax);
      24 : AsphyreCanvas1.Draw(AsphyreImages1.Image['1.image'], 122,90,0,fxMax);
    end;
    case k of
      1 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-2.image'], 74,454,0,fxMax);
      2 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-2.image'], 121,454,0,fxMax);
      3 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-2.image'], 167,454,0,fxMax);
    end;
    case l of
      1 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-2.image'], 309,454,0,fxMax);
      2 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-2.image'], 261,454,0,fxMax);
      3 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-2.image'], 215,454,0,fxMax);
    end;
    case m of
      1 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-1.image'], 123,285,0,fxMax);
      2 : AsphyreCanvas1.Draw(AsphyreImages1.Image['-1.image'], 244,285,0,fxMax);
    end;
end;


procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if (x > 267) and (x < 374) and (y > 555) and (y < 588) or    //这里是改变鼠标样子的 --開始
     (x > 14) and (x < 55) and (y > 492) and (y < 546) or //--BAR
     (x > 61) and (x < 101) and (y > 492) and (y < 546) or  //--77
     (x > 109) and (x < 149) and (y > 492) and (y < 546) or  // --双星
     (x > 155) and (x < 197) and (y > 492) and (y < 546) or  // --西瓜
     (x > 203) and (x < 243) and (y > 492) and (y < 546) or  //  --鈴鐺
     (x > 249) and (x < 289) and (y > 492) and (y < 546) or  //  --檸檬
     (x > 297) and (x < 337) and (y > 492) and (y < 546) or  //  --橘子
     (x > 344) and (x < 384) and (y > 492) and (y < 546) or  //  --蘋果
     (x > 24) and (x < 83) and (y > 559) and (y < 587) or    //  --押大
     (x > 89) and (x < 144) and (y > 559) and (y < 587) then //  --壓小
     begin
       form1.Cursor := crHandPoint //进入这个区域,鼠标变成手型
     end
  else
    form1.Cursor := crDefault; //离开时,恢复默认鼠标

GetCursorPos(MousePos);
//Form1.Caption:='相對座標'+IntToStr(x)+','+IntToStr(y) + '絕對座標'+IntToStr(MousePos.X)+','+IntToStr(MousePos.Y);
bet_x := x;
bet_y := y;

end;



procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (x > 267) and (x < 374) and (y > 555) and (y < 588) then // --開始
    begin


    end;
  if (x > 14) and (x < 55) and (y > 492) and (y < 546) then  //--BAR 押分
    begin

    end;
  if (x > 109) and (x < 149) and (y > 492) and (y < 546) then  //--77 押分
  begin

  end;
  if (x > 109) and (x < 149) and (y > 492) and (y < 546) then    // --双星
  begin

  end;
  if (x > 155) and (x < 197) and (y > 492) and (y < 546) then     // --西瓜
  begin

  end;
  if (x > 203) and (x < 243) and (y > 492) and (y < 546) then     //  --鈴鐺
  begin

  end;
  if (x > 249) and (x < 289) and (y > 492) and (y < 546) then      //  --檸檬
  begin

  end;
  if (x > 297) and (x < 337) and (y > 492) and (y < 546) then      //  --橘子
  begin

  end;
  if (x > 344) and (x < 384) and (y > 492) and (y < 546) then   //  --蘋果
  begin

  end;
end;


procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (x > 267) and (x < 374) and (y > 555) and (y < 588) then // --開始壓下檢查
     begin
       if (not runing) then
       begin
         if (take_score > 0) then
           begin
             PlaySound('R_1',hinstance,SND_ASYNC or SND_RESOURCE);
             score := take_score + score;
             take_score := 0;
           end
           else
             start_key();
       end;
     end;
  if (x > 14) and (x < 55) and (y > 492) and (y < 546) then  //--BAR 押分
    begin

    end;
  if (x > 61) and (x < 101) and (y > 492) and (y < 546) then  //--77 押分
    begin

    end;
  if (x > 109) and (x < 149) and (y > 492) and (y < 546) then    // --双星
  begin

  end;
  if (x > 155) and (x < 197) and (y > 492) and (y < 546) then     // --西瓜
  begin

  end;
  if (x > 203) and (x < 243) and (y > 492) and (y < 546) then     //  --鈴鐺
  begin

  end;
  if (x > 249) and (x < 289) and (y > 492) and (y < 546) then      //  --檸檬
  begin

  end;
  if (x > 297) and (x < 337) and (y > 492) and (y < 546) then      //  --橘子
  begin

  end;
  if (x > 344) and (x < 384) and (y > 492) and (y < 546) then   //  --蘋果
  begin

  end;
  if (x > 24) and (x < 83) and (y > 559) and (y < 587) then   //  --押大
  begin
    if (take_score >= 1) then
    begin
      big_small := 0;
      r := random(4);
      Timer2.Enabled := True;
    end;
  end;
  if (x > 89) and (x < 144) and (y > 559) and (y < 587) then   //  --押小
  begin
    if (take_score >= 1) then
    begin
      big_small := 1;
      r := random(4);
      Timer2.Enabled := True;
    end;
  end;
  if (x > 201) and (x < 221) and (y > 54) and (y < 74) then  //移動分數
    begin

    end;

end;


procedure TForm1.Timer1Timer(Sender: TObject);    //跑燈
var
  ra : integer;//總步數
begin
  runing := True;
  Timer1.Interval := Ti;
  ra := 72;
  ra := ra + r;
  rb := rb + 1;
  i := i + 1;

  if (rb < 10) then
    begin
      Ti := Ti - 50; //加速
      PlaySound('R_1',hinstance,SND_ASYNC or SND_RESOURCE);
    end;
  if (i > ra-12) then
    begin
      Ti := Ti + 50;//減速
      PlaySound('R_1',hinstance,SND_ASYNC or SND_RESOURCE);
    end;
  j := j + 1;
  if (j >= 25) then j := 1;

  k := k + 1;
  if (k >= 4) then  k := 1;

  l := l + 1;
  if (l >= 4) then l := 1;

  {m := m + 1;
  if (m >= 3) then m := 1;}
  //PlaySound('R_1',hinstance,SND_ASYNC or SND_RESOURCE);
  //SoundSystem1.Play('Unti1.wav', False);
  Form1.Caption := inttostr(Ti) + '-j:' + inttostr(j) + '-r:' + IntToStr(r) + '-ra:' + IntToStr(ra) + '--rb:' + IntToStr(rb) + '__';
  if (i >= ra) then //燈跑完後要做的事
  begin
    Timer1.Enabled := False;
    Ti := 451;
    rb := 0;
    i := j+1;
    take_allscore();
  end;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var
  rc : integer;//總步數
begin
  runing := True;
  Timer2.Interval := Tj;
  rc := 12;
  rc := rc + r;
  rd := rd + 1;
  n := 1 + n;
  if (n >= rc) then //燈跑完後要做的事
  begin
    Timer2.Enabled := False;
    Tj := 50;
    rd := 1;
    n := 0;
    bi_bai_take_allscore();
  end;
 
  if (n > rc-12) then
    begin
      Tj := Tj + 50;//減速
      PlaySound('R_1',hinstance,SND_ASYNC or SND_RESOURCE);
    end;

  m := m + 1;
  if (m >= 3) then m := 1;
end;



procedure TForm1.take_allscore();
begin
  case k of
      1 : left_bai := 40;
      2 : left_bai := 30;
      3 : left_bai := 20;
    end;

  case k of
      1 : right_bai := 10;
      2 : right_bai := 20;
      3 : right_bai := 15;
    end;

  case j of
      1 : begin
          if (bar_bet >= 1) then
          begin
             PlaySound('R_11',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := bar_bet * 100;
          end;
           end;
      2 : begin
          if (apple_bet >= 1) then
          begin
            PlaySound('R_18',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := apple_bet * 5;
          end;
          end;
      3 : begin
          if (Lemon_bet >= 1) then
          begin
            PlaySound('R_16',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := Lemon_bet * 2;
          end;
          end;
      4 : begin
          if (Lemon_bet >= 1) then
          begin
            PlaySound('R_16',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := Lemon_bet * right_bai;
          end;
          end;
      5 : begin
          if (Watermelon_bet >= 1) then
          begin
            PlaySound('R_14',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := Watermelon_bet * left_bai;
          end;
          end;
      6 : begin
          if (Watermelon_bet >= 1) then
          begin
            PlaySound('R_14',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := Watermelon_bet * 2;
          end;
          end;
      7 : begin
            take_score := 0;
          end;
      8 : begin
          if (apple_bet >= 1) then
          begin
            PlaySound('R_18',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := apple_bet * 5;
          end;
          end;
      9 : begin
          if (Orange_bet >= 1) then
          begin
            PlaySound('R_17',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := Orange_bet * 2;
          end;
          end;
      10 : begin
           if (Orange_bet >= 1) then
           begin
            PlaySound('R_17',hinstance,SND_ASYNC or SND_RESOURCE);
            take_score := Orange_bet * right_bai;
           end;
          end;
      11 : begin
           if (bell_bet >= 1) then
           begin
             PlaySound('R_15',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := bell_bet * right_bai;
           end;
           end;
      12 : begin
           if (bell_bet >= 1) then
           begin
             PlaySound('R_15',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := bell_bet * 2;
           end;
           end;
      13 : begin
           if (seven_bet >= 1) then
           begin
             PlaySound('R_12',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := seven_bet * left_bai;
           end;
           end;
      14 : begin
           if (apple_bet >= 1) then
           begin
             PlaySound('R_18',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := apple_bet * 5;
           end;
           end;
      15 : begin
           if (apple_bet >= 1) then
           begin
             PlaySound('R_18',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := apple_bet * 2;
           end;
           end;
      16 : begin
           if (Lemon_bet >= 1) then
           begin
             PlaySound('R_16',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := Lemon_bet * right_bai;
           end;
           end;
      17 : begin
           if (star_bet >= 1) then
           begin
             PlaySound('R_13',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := star_bet * left_bai;
           end;
           end;
      18 : begin
           if (star_bet >= 1) then
           begin
             PlaySound('R_13',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := star_bet * 2;
           end;
           end;
      19 : begin
             take_score := 0;
           end;
      20 : begin
           if (apple_bet >= 1) then
           begin
             PlaySound('R_18',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := apple_bet * 5;
           end;
           end;
      21 : begin
           if (seven_bet >= 1) then
           begin
             PlaySound('R_12',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := seven_bet * 2;
           end;
           end;
      22 : begin
           if (Orange_bet >= 1) then
           begin
             PlaySound('R_17',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := Orange_bet * right_bai;
           end;
           end;
      23 : begin
           if (bell_bet >= 1) then
           begin
             PlaySound('R_11',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := bell_bet * right_bai;
           end;
           end;
      24 : begin
           if (bar_bet >= 1) then
           begin
             PlaySound('R_18',hinstance,SND_ASYNC or SND_RESOURCE);
             take_score := bar_bet * 50;
           end;
           end;
    end;

  runing := False;
  bet_ok := False;;
  re_bet := True;
  bar_bet_full := False;
  seven_bet_full := False;
  star_bet_full := False;
  Watermelon_bet_full := False;
  bell_bet_full := False;
  Lemon_bet_full := False;
  Orange_bet_full := False;
  apple_bet_full := False;
end;

procedure TForm1.bi_bai_take_allscore();
begin
  case m of
      1 : if (big_small = 1) then
          begin
            take_score := take_score * 2;
            PlaySound('R_19',hinstance,SND_ASYNC or SND_RESOURCE);
          end
            else
            begin
            take_score := 0;
            PlaySound('R_20',hinstance,SND_ASYNC or SND_RESOURCE);
            end;
      2 : if (big_small = 0) then
          begin
            take_score := take_score * 2;
            PlaySound('R_19',hinstance,SND_ASYNC or SND_RESOURCE);
          end
            else
            begin
            take_score := 0;
            PlaySound('R_20',hinstance,SND_ASYNC or SND_RESOURCE);
            end;
    end;

  runing := False;
  bet_ok := False;;
  re_bet := True;
  bar_bet_full := False;
  seven_bet_full := False;
  star_bet_full := False;
  Watermelon_bet_full := False;
  bell_bet_full := False;
  Lemon_bet_full := False;
  Orange_bet_full := False;
  apple_bet_full := False;
end;



procedure TForm1.start_key();
begin
  bet_all := bar_bet + seven_bet + star_bet + Watermelon_bet + bell_bet + Lemon_bet + Orange_bet + apple_bet;
  if (not runing) then
     begin
       if (take_score >= 0) then
          begin
            score := take_score + score;
            take_score := 0;
            if (bar_bet >= 1) or (seven_bet >= 1) or (star_bet >= 1) or (Watermelon_bet >= 1) or
               (bell_bet >= 1) or (Lemon_bet >= 1) or (Orange_bet >= 1) or (apple_bet >= 1) then
               Begin
                 if re_bet then
                 begin
                   if (score >= bet_all) then
                   begin
                     score := score - bet_all;
                     bet_ok := True;
                   end
                   else
                   begin
                     bet_ok := False;
                     Exit;
                   end;
                 end;
                 if bet_ok then
                 begin
                   r := random(24);
                   Timer1.Enabled := True;
                 end;
               end;
          end;
     end;
end;




procedure TForm1.FormMouseWheelDown(Sender: TObject; Shift: TShiftState;
  MousePos: TPoint; var Handled: Boolean);
begin
  if (bet_x > 14) and (bet_x < 55) and (bet_y > 492) and (bet_y < 546) then  //--BAR 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;

            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (bar_bet >= 99) then
            begin
              bar_bet_full := True;
            end
            else
            begin
              PlaySound('R_2',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              bar_bet := bar_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 61) and (bet_x < 101) and (bet_y > 492) and (bet_y < 546) then  //--77 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (seven_bet >= 99) then
            begin
              seven_bet_full := True;
            end
            else
            begin
              PlaySound('R_3',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              seven_bet := seven_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 109) and (bet_x < 149) and (bet_y > 492) and (bet_y < 546) then  //--star 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (star_bet >= 99) then
            begin
              star_bet_full := True;
            end
            else
            begin
              PlaySound('R_4',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              star_bet := star_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 155) and (bet_x < 197) and (bet_y > 492) and (bet_y < 546) then  //--西瓜 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (Watermelon_bet >= 99) then
            begin
              watermelon_bet_full := True;
            end
            else
            begin
              PlaySound('R_5',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              watermelon_bet := watermelon_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 203) and (bet_x < 243) and (bet_y > 492) and (bet_y < 546) then  //--鈴鐺 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (bell_bet >= 99) then
            begin
              bell_bet_full := True;
            end
            else
            begin
              PlaySound('R_6',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              bell_bet := bell_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 249) and (bet_x < 289) and (bet_y > 492) and (bet_y < 546) then  //--檸檬 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (lemon_bet >= 99) then
            begin
              lemon_bet_full := True;
            end
            else
            begin
              PlaySound('R_7',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              lemon_bet := lemon_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 297) and (bet_x < 337) and (bet_y > 492) and (bet_y < 546) then  //--橘子 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (orange_bet >= 99) then
            begin
              orange_bet_full := True;
            end
            else
            begin
              PlaySound('R_8',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              orange_bet := orange_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if (bet_x > 344) and (bet_x < 384) and (bet_y > 492) and (bet_y < 546) then  //--蘋果 押分
    begin
      if (not runing) then
      begin
        if (score >= 1) then
        begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;
            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
          begin
            if (apple_bet >= 99) then
            begin
              apple_bet_full := True;
            end
            else
            begin
              PlaySound('R_9',hinstance,SND_ASYNC or SND_RESOURCE);
              score := score - 1;
              apple_bet := apple_bet + 1;
              bet_ok := True;
            end;
          end;
        end;
      end;
    end;
  if bar_bet_full and seven_bet_full and star_bet_full and Watermelon_bet_full and bell_bet_full and Lemon_bet_full and Orange_bet_full and apple_bet_full then
  begin
    start_key();
  end;
end;





procedure TForm1.FormDblClick(Sender: TObject);
begin
  if (not runing) then
      begin
        if (score >= 1) then
        begin
          if (score >= 792) then
          begin
          if re_bet then
          begin
            score := take_score + score;
            take_score := 0;

            bar_bet := 0;
            seven_bet := 0;
            star_bet := 0;
            Watermelon_bet := 0;
            bell_bet := 0;
            Lemon_bet := 0;
            Orange_bet := 0;
            apple_bet := 0;
            re_bet := False;
          end
          else
  &
Platform: | Size: 4438122 | Author: 039917 | Hits:

[DSP programadaptive_filters

Description: TI的DSP C55X的应用程序-TI C55X DSP applications
Platform: | Size: 36864 | Author: 王坚 | Hits:

[DSP programLab19-FFT

Description: dsp中的快速傅立叶变换的算法,基于TI公司的5509这款芯片。-dsp the Fast Fourier Transform algorithm, based on TI's 5509 chip.
Platform: | Size: 31744 | Author: 周阳 | Hits:

[OtherDSP_Real_Time_Digital_Signal_Processing_TMS32055XX

Description: 著名的DSP实时处理书,包含了几乎全部实时处理函数的C实现。可直接用于DSP实时开发。是很实用的资料。-Deal with the well-known real-time DSP book contains almost all real-time processing of the C function realize. Can be used directly in the development of DSP real-time. Is very useful information.
Platform: | Size: 3297280 | Author: 凌虎 | Hits:

[DSP programlectidsp

Description: The line echo canceller (LEC) is designed to provide the maximum attainable transparent voice quality for de-echoing of a PSTN or POTS connection in voice-over-LAN systems with internal delays, or on a codec end of a telecom switch,基于TI 54X/55X平台-The line echo canceller (LEC) is designed to provide the maximum attainable transparent voice quality forde-echoing of a PSTN or POTS connection in voice-over-LAN systems with internal delays, or on a codec end of a telecom switch, based on the TI 54X/55X platform
Platform: | Size: 153600 | Author: 邓建军 | Hits:

[DSP programdtmf_tidsp

Description: Express DSP compliant C55x DTMF detector software is proposed in two versions: one with a 5 ms frame size and one with a 10 ms frame size. The versions are quite similar in behavior. The version with a 10 ms frame size is faster, but the overall quality is higher in the 5 ms version, due to lower time granularity. DTMF算法for TI DSP 54X/55X-Express DSP compliant C55x DTMF detector software is proposed in two versions: one with a 5 ms framesize and one with a 10 ms frame size. The versions are quite similar in behavior. The version with a 10 msframe size is faster, but the overall quality is higher in the 5 ms version, due to lower time granularity. DTMF algorithm for TI DSP 54X/55X
Platform: | Size: 135168 | Author: 邓建军 | Hits:

[DSP programevm5510

Description: ti dsp 5510 的BOOT程序。利用此程序实现将代码写入到FLASH 的功能。-ti dsp 5510 the BOOT process. Use this procedure to write the code to realize the function of FLASH.
Platform: | Size: 34816 | Author: 刘永志 | Hits:

[DSP program5509

Description: TI公司的DSP TMS320VC5509评估板EVM5509和开发板DSK5509的原理图及其说明文档。-TI s DSP TMS320VC5509 evaluation board EVM5509 and development board DSK5509 schematics and documentation.
Platform: | Size: 3576832 | Author: Dayspring | Hits:

[OtherOptimalServices

Description: acm算法设计 描述: 设有n 个顾客同时等待一项服务。顾客i需要的服务时间为ti ,1 < = i < = n 。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是n 个顾客等待服务时间的总和除以n。 对于给定的n个顾客需要的服务时间,编程计算最优服务次序。 输入:第一行是正整数n,表示有n 个顾客。接下来的1行中,有n个正整数,表示n个顾客需要的服务时间。 输出:最小平均等待时间 例输入: 10 56 12 1 99 1000 234 33 55 99 812 例输出: 532.00 -acm algorithm design Description: n has a customer waiting for a service at the same time. I need to service customers time ti, 1 < = i < = n. N how to arrange the order of a customer' s service to make the average waiting time to a minimum? Average waiting time is n-time customers wait for service by dividing the sum of n. N for a given month of the service needs of customers, the best services to the order of the calculation program. Input: the first line is a positive integer n, that there are n customer. 1 the next line, there is a positive integer n, that n of the service needs of customers. Output: the minimum average waiting time for cases of type: 10 56 12 1 99 1000 234 33 55 99 812 cases Output: 532.00
Platform: | Size: 234496 | Author: 张波 | Hits:

[DSP programFIR

Description: 基于ti公司的55x芯片开发,软件平台为ccs,芯片型号5509-Ti-based company' s 55x chip development, software platform for the ccs, chip Model 5509
Platform: | Size: 31744 | Author: 李建立 | Hits:

[DSP program1

Description: 详细介绍了TI 55xDSP Mcbsp的配置和自启动的方法,非常实用。一看即会。-TI 55xDSP Mcbsp described in detail the configuration and self-starting approach is very practical. Shall take a look at.
Platform: | Size: 546816 | Author: | Hits:

[OtherYiLiaoYongYong

Description: 这是医疗电子行业,特别是POCT方面和低功耗方面的绝佳书籍。有了他,医疗设计就有了参考,这是花了好大精力才弄来的中文版呀。各种产品应有尽有。 消费及便携式医疗 3 血压监测仪 4 心率监测仪 4 血液分析仪 5 数字体温计 6 脉搏血氧测定仪 (Pulse Oxymetry) 7 便携式医疗产品 8-16 系统支持产品 10 无线接口、RFID及Tag-it™ 12 低功耗射频产品、ZigBee™ 14 电源管理产品 16 诊断、患者监控及治疗 20 心电图(ECG) 20 脑电图(EEG) 20 血氧量(脉搏血氧测定) 27 通气/呼吸 33 去纤颤器 40 电源管理产品 43 医学成像 47 超声波(Ultrasound) 47 计算体层成像(Computed Tomography,简称CT) 55 核磁共振成像(MRI) 59 数字式X光 65 正电子放射层析成像(PET)扫描仪 70 电源管理产品 74 医疗设备 76 资源 80 增强型产品 80 TI模拟eLab™ 设计中心 81 TI设计工具 82-Good Book
Platform: | Size: 4456448 | Author: 冰舟 | Hits:

[Embeded-SCM DevelopTIchinese_A688

Description: ti的官方资料dsp的芯片适用说明及编程指南,55系列编程者必看-official materials about ti dsps
Platform: | Size: 3420160 | Author: david | Hits:

[OtherDMD-Laser-Projection-TV-System

Description: 通用DLP 投影电视和视频拼接系统 􀁺 DLP 驱动系统支持所有光源:激光, LED, UHP 灯照明, 􀁺 可以支持从所有2xLVDS DMD: SVGA 到1280x800 分辨 率DMD 系统 更新系统即可支持到1080p DMD. 􀁺 DLP 前端系统支持2 路HDMI 输入, 3 路VGA 输入, 1 路 VGA 输出, S-Video, CVBS 输入, YPbPr 输入, 2 路USB 高清视频播放, 1 路高频头模拟电视解码. 􀁺 TI DLP BrilliantColor 优异色彩处理算法 􀁺 系统支持低功率待机功能 0.55” 0.62”, 0.7”DMD 驱动电路板方案 支持各种封装DMD系统和各种输入USB高清播放. -Universal DLP projection TV and video splicing system z DLP drive system supports all light sources: laser, LED, UHP lamp lighting, z can support all 2xLVDS DMD: SVGA resolution of 1280x800 DMD system update the system can support up to 1080p DMD z DLP front-end system supports 2 HDMI inputs, 3-way VGA input, 1 VGA output, S-Video, CVBS input, YPbPr input, 2 USB HD video playback, 1 the LNB analog TV decoder. 魛伜 TI DLP BrilliantColor excellent color processing algorithm 魛伜 system supports low-power standby function 0.55 " 0.62" , 0.7 " DMD driver board supports a variety of packages DMD system and various input USB HD playback.
Platform: | Size: 3115008 | Author: wucow | Hits:

[Software EngineeringVisonFly-D4100-SDK

Description: DLP Discovery 4100 数字微镜(DMD)空间光开关光调制器开发系统 1.全面兼容德州仪器TI DLP D4100 开发系统. 能够支持1920X1080 DMD(DMD微镜为10.6微米,本征分辨率为1920X1080) 数字微镜(DMD)空间光开关光调制器开发系统 2. 1024 X 768 的DMD(4:3)有两种微镜结构,一种是13.68 微米, 对角线长度为0.7 英寸;另一种是10.8 微米的,对角线长度为0.55 英寸;我们系统都能支持所有主流分辨率DMD 3. 支持USB2.0 高速度传输图片和控制信号 4. 开放式控制软件基于Windows XP 全速度USB驱动,在Visual Basic 下编制,开发式接口, 易于高精度光学科研实验 5. 提供丰富的Windows XP 的USB 控制程序和API 开发系统 6. 支持XGA, 1080p 和1920x1200 分辨率单个微镜精确控制 7. 开放式FPGA 架构, 提供示例FPGA 的二次开发选择和客户 定制功能 8. 高速二进和任意灰度制图片显示 输入输出系统触发,支持通 用客户顶GPIO 口设置. 9. 我们能为客户提供全程独特定做和设计服务. 应用: 结构光投影,激光全息,无掩模光刻,高光谱成像,激光光束校形, 3D 测量和3D 打印机技术, 光谱分析. Jefferson_zhao@163.com-DLP DMD Discovery 4100
Platform: | Size: 6450176 | Author: wucow | Hits:

[Software EngineeringDMD-control-board-G4100

Description: 数字微镜DMD空间光调制器控制平台G4100可以实现如下功能:1、兼容德州仪器TI D4100 开发系统。能够支持1920 X 1080分辨率DMD (DMD微镜为10.6微米,本征分辨率为1920X1080);同时还能支持1024 X 768分辨率的DMD(有两种微镜结构,一种是13.68 微米,对角线长度为0.7 英寸;另一种是10.8 微米的,对角线长度为0.55 英寸); 2、支持USB2.0 高速传输图片和控制信号,具有内同步和外同步功能,同步脉冲电平标准为CMOS 3.3V; 3、开放式控制软件基于Windows XP 全速度USB驱动,程序在VS2010下编写,开放式接口, 有利于二次开发; 4、提供丰富的Windows XP 的USB控制程序和API开发系统; 5、支持XGA,1080p 和1920 x 1200 分辨率单个微镜精确控制; 6、开放式FPGA 架构,提供示例FPGA 的二次开发选择和客户定制功能; 7、高速二进制和任意灰度图片显示; 8、对比度:超过2000:1; 9、波段:350nm--2700nm 可见光; 10、微镜二进制翻转频率:播放帧频可设置,目前可做到5K; 11、微镜任意时间锁定。 -DMD digital micromirror spatial light modulator control platform G4100 can achieve the following functions: 1, compatible with Texas Instruments TI D4100 development system. Can support 1920 X 1080 resolution DMD (DMD micromirror 10.6 microns, the intrinsic resolution of 1920X1080) while also supporting a resolution of 1024 X 768 DMD (micromirror structure, there are two, one is 13.68 microns, for diagonal length of 0.7 inches Another is 10.8 microns, the diagonal length of 0.55 inches) 2, support USB2.0 high speed transmission of images and control signals with the synchronization and external synchronization, sync pulse level standards as CMOS 3.3V 3, open Windows XP-based control software full speed USB drive, programming in VS2010, open interfaces, help secondary development 4, provides a wealth of Windows XP' s USB control program and API development system 5, supports XGA, 1080p and 1920 x 1200 resolution single micromirror precise control 6, open FPGA architecture, pr
Platform: | Size: 630784 | Author: 刘明 | Hits:

CodeBus www.codebus.net