新しく発言する  EXIT  インデックスへ

パソコンが相手をする「オセロ・ゲーム」勝...


  パソコンが相手をする「オセロ・ゲーム」勝てるか? SECOND 2008/08/23 07:49:16 
  !続き1 SECOND 2008/08/23 07:50:29 
  │└!続き2 SECOND 2008/08/23 07:51:40 
  │ └!続き3 SECOND 2008/08/23 07:52:45 
  │  └!続き4 SECOND 2008/08/23 07:53:45 
  Win98SEの方で「0th33p.dllをロードできない... SECOND 2008/09/13 18:00:37 
  !コンピューターの打つ手を、ゆっくり確認出... SECOND 2008/09/13 18:50:45  (修正1回)
Re: パソコンが相手をする「オセロ・ゲーム」勝てるか?  返事を書く  ノートメニュー
SECOND <jjqdmekgpt> 2008/09/13 18:50:45 ** この記事は1回修正されてます
!コンピューターの打つ手を、ゆっくり確認出来るようにした。

!続「パソコンが相手のオセロ・ゲーム」Ver7.0

! oth34p.dll に更新。98SE での「0th33p.dllを ロードできない」を解消。


!このプログラムは、uBASIC 用の、小山オセロを、十進BASIC に移植したものです。
!対戦する「知能」の部分が、機械語( oth34p.dll ) になっていますので、
!下記から DownLoad し、このプログラムと同じフォルダーに置いて下さい。
!レジストリーは使用せず、汚しません。
!DownLoad の時の警告は、心配要りません、無視してください。

!http://homepage2.nifty.com/neutro/asm/oth34p.dll

!-------------------希望者のみ----------------------
!ソース.asm が入用な方。
!http://homepage2.nifty.com/neutro/asm/oth34p.asm
!
!その他、全ファイルの欲しい方。
!http://homepage2.nifty.com/neutro/asm/othello.htm
!---------------------------------------------------

! 1984/03/10 for N88BASIC   by Yoichi KOYAMA
! modified for UBASIC(98) 1989 by Yuji KIDA
! 1989/10/02 modified     by Yoichi KOYAMA
! modified for UBASIC(AT) 1994 by Yuji KIDA
!
!-------------------------------------------
! modified for 十進BASIC 2008 by バットマン
!
! ** KOYAMA OTHELLO GAME for 十進BASIC **

FUNCTION oth33p(dx,r$)
ASSIGN "oth34p.dll", "start00" ! DOS版の機械語を逆アセンブルして移植した。
END FUNCTION

OPTION CHARACTER byte
SET TEXT BACKGROUND "OPAQUE" ! plot text with background color 0
SET WINDOW -0.8, 13.2, 13,-1
LET xc=(13+1)/(501/7) ! 半角/全角=7/14pix /桁、screen=501x501pix.
LET xc2=xc+xc
LET xc4=xc2+xc2
!----
LET XL=9
LET YY=5.5
LET YC=2
DIM U(2),GT(2)
!
LET CIN=BVAL("1000",16)
LET CCH=BVAL("2000",16)
LET CPL=BVAL("3000",16)
LET CFN=BVAL("4000",16)
LET CMN=BVAL("6000",16)
LET INI=BVAL("8001",16)
LET CCHexe=BVAL("9000",16)
LET LTB=BVAL("a000",16)
LET RAN=BVAL("b000",16)
LET OWT=BVAL("c000",16)
LET r$=r$&REPEAT$(CHR$(0),38)
!
RANDOMIZE

!-----
SUB RANDOM
LET r$=""
FOR j=1 TO 8
LET x=1
LET y=0
FOR i=1 TO 8
IF RND<0.5 THEN LET y=y+x
LET x=x*2
NEXT i
LET r$=r$&CHR$(y)
NEXT j
LET r$=r$&REPEAT$(CHR$(0),38-8)
!-----
CALL printr
CALL sens( RAN)
!-----
END SUB

!-----
SUB set_WT
DATA 1000,100,100,100,1000,-1200,-10, -20, -20,-10, 80,-120, -80, -60
LET r$=""
FOR i=1 TO 14
READ w
IF w<0 THEN LET w=w+BVAL("10000",16)
LET r$=r$&CHR$(MOD(w,256))&CHR$(IP(w/256))
NEXT i
LET r$=r$&REPEAT$(CHR$(0),38-14*2)
!-----
CALL printr
CALL sens( OWT)
!-----
END SUB

SUB SEL(wx,wy,w$, vx,vy,v$, xs,xp,n,r)
LET xe=xs+xp*ABS(n)
SET LINE COLOR "red"
DO WHILE NOT( 0<r AND r<=ABS(n) )
PLOT TEXT,AT vx,vy :v$
PLOT TEXT,AT wx,wy :w$
! 続き1
   └!続き1 SECOND 2008/09/13 18:52:22  (修正1回)
    └!続き2 SECOND 2008/09/13 18:53:47  (修正1回)
     └!続き3 SECOND 2008/09/13 18:55:17  (修正2回)
      └!続き4 SECOND 2008/09/13 18:56:52  (修正1回)
       └DELETED  SECOND  2008/09/13 19:28:19  (削除)

 インデックスへ  EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。