ׂ: WONBE, WonderWitch BASIC Environment
b}jA Ver 0.06
2001N129
Ѓs[f[
얓@
This software is distributed under GNU General Public License
͉?
@ׂ́AWonderWitchŎgpł鏬^BASICC^v^łB
@WonderWitchłׂĂ̋@\ғAVAP[uoRŐڑꂽʂ̒ʐM\tgő삵܂BfobOς݂̃vOsꍇ́AVAP[uʐM\tgKv܂B
@WonderWitch̃eLXgʂŏx̃Xe[gg(cls,locate,print)ƁAŏx̃{^͋@\(wait,scan)AȈՂȃ~jQ[܂B
@WonderSwan Colorgpɂ4FJ[[h\łB
@eXgpWin32œoCi[܂ÁABASIC{̂̓mFpƊĂB
@hLǵAƌ܂ALu₷̂Ă邱Ƃ҂܂B
KvȂ
EJ
@WonderWitch̃J[gbWƃVAP[uB38400bps̖菇ʐM\ȒʐM\tgp\RB
Es
@ׂƎsvOĂWonderWitch̃J[gbŴ
ETransMagicȂǂŃׂ(fonbe.fx)WonderWitchɓ]܂B
ETransMagicȂǂ̐ڑAʐM\tg38400bps̖菇ʐMJn܂
EWonderWitchŃׂs܂
EGgXj[ʂY2܂
EʐM\tgɁAׂ̖O\A"*Ready"Əo܂
Eŏł
Eprint "hello!"^[ƑłWonderWitch̉ʂĂBoĂΐłB
Jς݃vO̎s
EWonderWitchŃׂs܂
EGgXj[ʂŎst@CIA{^܂
J̊Tv
@ʏ̍sԍx[X̃GfB^g܂B
@sԍɈ1s͂ă^[ƁAvOɋL^܂B
@sԍ͂ă^[Ƃ̍s͍폜܂B
@sԍŖ߂͂ƑɎs܂B
@ҏW̓obNXy[Xɂ1폜g܂BʐM\tgzXg̃GfB^COPY&PASTEāAGfB^ŕҏWĂAʐM\tgɓ\tăׂɑƕ֗łBAt[䂪̂ŁAs܂Ƃ߂ē\tƕ܂Bt1sPʂōsĂBvO̓zXgŕҏWĂ炩TransMagicȂǂőMĂ̂LȎiłB
@ł2KoCgȏ̃vO쐬ĂsaveR}hŕۑł܂BlistR}hsĂʐM\tgCOPY&PASTEăzXgɕۑĂB
@śASTART{^ƂłΘb[hɖ߂܂B̌AcontXe[ggŎspł܂B
@Ԍɖ|Ă珈邽߁AԌɖ|łȂꍇ́A͒ɃG[o܂B
̊Tv
@yBASICłB
@̂Tiny BASICɋ߂\Ă܂B
@f[^^́At16bitłB
@萔́A-32767`3276710iA0x0000`0xffff16iŋLqł܂B-32768͕ϐɂ͋Lł܂A\[Xɂ͏܂B(-32767-1̂悤ɏĂ)
@ϐ́AO[oϐƂāAA`Z̃At@xbg啶1̂̂26܂B
@[JϐƂāAa`z̃At@xbg1̂̂26܂B[JϐgosubXe[ggsƂɐV̈悪蓖ĂAreturnXe[ggsƂgosubÖ̗悪߂Ă܂B
@zϐ@(CfbNX)Ƃ`1zgpł܂Bgp\ȃTCÝAvOL̈(48KoCg)̎cTCYɓȂ܂BCfbNX0n܂܂B(: for i=0 to 9:print @(i):next)
@Zq̗D揇ʂ́uPZq > */ > +- > rZq > and,or,xorvƂȂ܂B(rZq́A<>=ŋLq鉉Zqׂ)
@vŹA()gĖIɕύXł܂B
@I[o[t[AA_[t[̃`FbN͂܂B͖܂B[Z̓G[ɂȂ܂B
@Xe[ggȂǂ̃L[[hׂ͂ăAt@xbgœ͂܂B啶gĂɂȂ܂B
@Xe[ggꗗ
ϐ =
@vZĕϐɑ܂BletL[[h̓T|[gĂ܂B
: a=b+c
if then Xe[gg
@0łȂXe[ggs܂B0Ȃ玟̍ssp܂Belse͂܂B
: if (a=0) and (b=1) then goto 200
print [||chr()][,|;]...
@WonderWitch̃eLXgʂ݂̌̃J[\ʒu當\܂B
@̑Oɋ邱Ƃ͂܂B
@chr()́A̒lR[hƌȂĕ\܂B
@R[h͈܂̂ŁAWonderWitch̃LN^[WFl[^ɂ邷ׂĂ̕\ł܂B
@蕶;͉܂B,̓^uXgbvʒu܂ŃJ[\i߂܂B
@print̍Ō;܂,ŏIꍇ͉s܂B
: print "vZ=",chr(34);1+2;chr(34)
locate ,
@WonderWitch̃eLXgʂ݂̌̃J[\ʒuݒ肵܂Bx,y̏ԂłB
: locate 10,10
cls
@WonderWitch̃eLXgʂ܂B
: cls
goto
@̍sԍɔт܂BvZ^goto\łB܂Agoto A*100ƂƁAA1̂100sڂɁB2̂Ƃ200sڂɔт܂B
: goto 100
gosub
@X^bNɌ݈ʒuƃ[JϐςŁA̍sԍɔт܂BgotoƓvZ^gosub\łB
@X^bNforƍ킹8x܂łłB
: gosub 100
return
@gosubX^bNɐςoāAɏ߂B[Jϐ߂B
: return
for ϐ= to
for ϐ= to step
@ϐ̒lωȂnext܂ŌJԂ܂B
@Ō̕ϐ̒lIlɈvAIl+XebvlI[o[t[ꍇ͖[v\܂B̂悤Ȓl͎w肵Ȃ悤ɒӂĂB
: for i=0 to 10 step 2
next
@forXe[gg̈ʒuɖ߂ēJԂ܂BforXe[ggŎꂽꍇ́Anext̎ɓ삪i݂܂BnexťɕϐƃG[ɂȂ܂B
: next
end
@vO̎sI܂B
break
@̈ʒuňꎞIɎs𒆒f܂BcontXe[ggŎspł܂B
rem
'
@RgLq܂B:uăXe[gg𑱂邱Ƃ͂ł܂B
: rem ̓eXgvOłB
: '̎WvZ܂
new
@̃vO܂B
list [sԍ][-][sԍ]
@w͈͂̍sԍ̃vOXg܂BׂďȗƑSsXg܂B
run
run
run
@vOs܂Bɐ悾ĕϐX^bNNA܂B
@run̓̃vO擪Brun ́A̍sԍBrun ͕̃t@Cǂݍłs܂B
: run
: run 100
: run "test.wb"
cont
@breakXe[ggSTART{^ɂu[NɂĒ~ʒusĊJ܂B
save
@t@CƂẵvOۑ܂Bۑ͓̂\ł͂ȂeLXg`łB
@݂WonderWitch̃t@CVXe̐A2KoCgt@Cۑł܂BlistR}hŒ[ɃXg𑗂ĂCOPY&PASTEĕۑĂB
: save "hello.wb"
load
@t@CƂăt@CvOǂݍ݂܂Bǂݍނ̂̓eLXg`ŁAsCRLFLF̂ǂłłBԌɖ|łȂsꍇ͂œǂݍ݂f܂BvO̎sɎgpꍇ͎s͒f܂B
: load "hello.wb"
merge
@̃vOɃt@C̃vO킹܂Bsԍ̍s͓ǂݍ܂D悳܂BԌɖ|łȂsꍇ͂œǂݍ݂f܂BvO̎sɎgpꍇ͎s͒f܂B
: load "merge.wb"
randomize
@̏lw肵܂BgȂƕKŗ܂Bɂ́AVXeϐtickw肷ƍœKłB
: randomize tick
exit
@ׂOSɖ߂܂B
debug [||chr()][,|;]...
@printXe[ggƓłAWonderWitch̉ʂł͂ȂAVA|[gɑ܂BP̂Ŏsꍇɂ͎gȂfobOp̋@\łB
waitvb
@̉VBLANK҂܂B҂ĂԂSTART{^ɂu[NtȂȂ̂ŁAwłl750܂łƐĂ܂B750lw肷ƃG[ɂȂ܂B
: waitvb 75
files
@JgfBNg̃t@CꗗVA|[gɑ܂BP̂Ŏsꍇɂ͎gȂfobOp̋@\łB
play
@̕MMLƂčĐ܂Bgp\ɂɂ́u@playXe[ggLɂ@vQƂĂB
: play "cde"
poke ,
@ŏ̎ItZbgA2Ԗڂ̎lƌȂAVXeϐdefseg̃ZOg1oCg݂̃s܂B
@Win32łł͋@\܂B
@:cseg̃ZOg̓tbVȂ̂pokeł͏߂܂B
call
@ItZbgƌȂAVXeϐdefseg̃ZOgɃ}Vꃌx̃Tu[`R[(FAR)s܂BR[OɃVXeϐAX,BX,CX,DX,SI,DI,DS,ESꂼ̃WX^ɐݒ肳܂B^[̃WX^Ԃ̓VXeϐAX,BX,CX,DX,SI,DI,ESɕۑ܂B(:DS͖߂܂)
@Win32łł͋@\܂B
int
@荞ݔԍƌȂA}Vꃌx̃VXe荞(int)s܂BWonderWitchBIOSĂяoƂł܂BR[OɃVXeϐAX,BX,CX,DX,SI,DI,DS,ESꂼ̃WX^ɐݒ肳܂B^[̃WX^Ԃ̓VXeϐAX,BX,CX,DX,SI,DI,ESɕۑ܂B(:DS͖߂܂)
@Win32łł͋@\܂B
tron
@g[X[hIɂ܂Bg[X[hɓƁAVs̎sn߂邲ƂɁAsԍfobOR\[ɑM܂B
troff
@g[X[hItɂ܂B
colormode
@J[[hݒ肵܂BWonderSwan Colorł̂ݎgpł܂B
@̒l͈ȉ̒ʂłB
0x00 mN[h
0x80 4F[h
0xC0 16F[h (ݒł܂ׂ̋@\͕`ł܂)
0xE0 16FPACKED[h (ݒł܂ׂ̋@\͕`ł܂)
@Win32łł͋@\܂B
color ,
@`悷镶̐Fw肵܂Bŏ̎OiF̃CfbNXA2Ԗڂ̎wiF̃CfbNXłBꂼA0`3̂ݎwł܂B
@sJn̏Ԃcolor 3,0ɑԂłB
@Win32łł͋@\܂B
palette ,,,
@pbgw肵܂Bŏ̎ݒ肷pbg̃CfbNX(0`3)w肵܂B2Ԗڂ4Ԗڂ̎AꂼAR,G,B̒l܂BR,G,B̒l͂ꂼ0`15͈͓̔łB
@Win32łł͋@\܂B
: palette 0,15,0,0
@2Zq
@+ - * / < > = <= >= <> and or xor
@PZq
@- not
@
rnd()
@0玮-1܂ł͈̗̔͂Ԃ܂B
abs()
@̐ΒlԂ܂B
varptr(ϐ)
@w肵ϐ̃ItZbgԂ܂B
@Win32łł͋@\܂B
varseg(ϐ)
@w肵ϐ̃ZOgԂ܂B
@Win32łł͋@\܂B
peek()
@ItZbgƌȂAVXeϐdefseg̃ZOg1oCg̃ǂݏos܂B
@Win32łł͋@\܂B
@VXeϐ (ǂݏ\)
ax,bx,cx,dx,si,di,ds,es
@callintXe[gggpۂɃWX^̒lw肵A^[̃WX^̒lۑ邽߂Ɏgp܂B
defseg
@peekApoke,callXe[ggŎgpZOglێ܂Bldseg̒lƂȂ܂B
@VXeϐ (ǂݏô)
scan
@WonderSwañ{^̏ԂׁA1̐lƂĕԂ܂BSCAN_Ŏn܂VXeϐand邱ƂŁAǂ̃{^Ă邩ǂł܂BSTART{^͎sfɂȂ̂ŁA͈܂B
wait
@WonderSwañ{^܂ő҂ȀԂ1̐lƂĕԂ܂BSCAN_Ŏn܂VXeϐand邱ƂŁAǂ̃{^ꂽł܂BSTART{^͎sfɂȂ̂ŁA͈܂B
scan_a
scan_b
scan_x1
scan_x2
scan_x3
scan_x4
scan_y1
scan_y2
scan_y3
scan_y4
@ꂼ̃{^̃}XNl萔Ԃ܂B
@A{^Ă邩ǂׂɂ́AL̗̂悤ɋLq܂B
: if scan and scna_a then print "A{^Ă"
tick
@VXe^C}[tickԂ܂BA{tickl͕32bitłAœ̂16bit萮ł邱ƂɒӂKvłB͂ݏobit͎̂Ă܂B
dseg
@sDSZOgWX^̒lԂ܂BϐׂvO̒ԌR[hׂ͂ẴZOgɂ܂B
@Win32łł͋@\܂B
cseg
@sCSZOgWX^̒lԂ܂Bׂ̃vO{̂̃ZOgɂ܂B
@Win32łł͋@\܂B
sseg
@sSSZOgWX^̒lԂ܂B}VX^bÑZOgɂ܂B
@Win32łł͋@\܂B
hardarch
@ݎsWonderSwanColorfǂԂ܂BmNWonderSwanȂ0BWonderSwan ColorȂ1ɂȂ܂B
@Win32łł͋@\܂B
@t@Cۑ̊gq
@ׂ̃\[XtB́A".wb"ŏIt@CɂĂĉBloadȂǂ̃R}hł͊gqɊWȂǂݍ߂܂AGgXj[ɕ\̂".wb"ŏIt@CłB
@playXe[ggLɂ@
@sound.ilA/rom0ɓ]ĂĂB̃t@CplayXe[gggpĂo܂Bsound.ilΉoȂŁAvO͎s܂B
@Win32łł́ANWs"eLXgyuTNv"Ɋ܂܂dsakura.dllpMMLĐ邱Ƃł܂B̃\tǵAhttp://www.text2music.com/ł܂Bdsakura.dll͊ϐpath̒ʂfBNgȂǂɒuĂ\܂BKvt@C͂DLL݂̂łBdsakura.dllΉoȂŁAvO͎s܂BAMML̎dlSɓł͂ȂƂɒӂĂBȂAWin32łłplayXe[ggsɃJgfBNg$$$.midƂt@C܂BsIɂ͍폜č\܂B
@zzK
@̃o[WA{\tǵAGNU General Public License (GPL)ɏ]̂Ƃ܂Bڍׂhttp://www.gnu.org/ɂ܂B
@vɁANłAǂȖړIɂgpėǂƂƂłBA{\tgĂ͂܂B܂A\[XR[h͕KJȂȂ܂Bi̒Ɏ^邱Ƃ͉łA{\tg𗘗p҂RɃRs[Ĕzz邱ƂWĂ͂Ȃ܂B
@2000N12݁A\[XR[h͊Ѓs[f[̐얓(autumn@piedey.co.jp)ǗĂ܂BLvȃ\[XR[h̏CtB[hobNĂÃ\[Xc[ɔf܂B
@]k
@ׂ́AƐ얓A20Iւ̊ӂƌʂ̋Cō̂łB܂AɂƂāA}CR/p\RɏoƂA20Iő̃CxgłAő傫Ȗʂ^C^v^BATiny BASICAVTLAGAMEATL/1͑傫Ȉۂ̒ɎĉłBāAA̓vOō肽āAꐶd˂Ă̂A܂łBǁÃgCJ܂BKvƂΎp܂BENIXTOKYOipXg[gFM-7PC-8801ɈڐAƂɂ̓グ邽߂ɐ^̏^C^v^܂BAŏIIɍ\AZu̓Ɋ܂Z-80pAZuJVXeAZASĎ쌾̐E͏Iw}킯łB̎_ŁA炩ɁATiny BASIĈ悤ȌJӖȂ̂łBKvȐ\邽߂ɂ́AAZux̊Js߂łB邱Ƃ͂łǁAӖ͊ɖ̂łBāAオ16bit̎ɈڂƋɁA쌾ĝ͂߂āAo̗ǂ̏ng悤ɂȂ܂BMASM@1.27`, Turbo Pascal 3.0, Turbo C 1.5`2.0, MS-C 6.0`, Visual BASIC 1.0`, JDK 1.02`ȂǂȂǁBAӂ20II鍠ɐUԂƁAEȂNɓꂽ̃VvTiny BASICvoꂽ킯łBAꂱɂƂĂ20Î́AƂC߂č̂łB
@̂悤ȖŁAɂ͂̐㐫܂BBASICŃQ[ƂƁAMSXƂx[}KƂ悤łA͂茾āA̐ɂׂ̓͗łȂƎv܂BMSXɓڂꂽBASIĆA@\BASICłāATiny BASICƂ͂܂オႤ̂łBPC-8801FM-7܂ők鐢łA܂Ȃł傤Bǂ̂ƂAꂪ邽߂ɂ́Ap\Rp\RƌĂOA}CRƌĂAP[XɎ܂Ă炸ȍԂŔĂ܂őkKv܂B܂́AA悤ƂΎ̗vf荞œO̎̃}֕̂ÃׂƌƂɂȂ܂BāÃ}Čɂӂ킵yƂāAWonderWitchƂi̎ɓoꂵƂAsvcȉƎv܂B
@Ƃ킯ŁAׂp҂ɌƂ͈łB̃}ĂB܂ACɓȂƂ́AǂǂĂBDɉĎg邱Ƃۏ邽߂ɁA\[XGPLɂĂ܂B
@ׂvO
f
colordemo.wb
@J[@\̃f (̂WonderSwanColorp)
Q[
ctb.wb
@Q[
janken.wb
@WPQ[
shoot.wb
@V[eBOQ[
star.wb
@STAR TREKQ["STAR WITCH" (star.txtQ)
@vȌ̎Qlɂǂ
eXg
test.wb
@ȒPȃC^v^̓eXg
testcall.wb
@callXe[gg̓eXg
testcont.wb
@contXe[gg̓eXg
testfor.wb
@forXe[gg̓eXg
testgosub.wb
@gosubXe[gg̓eXg
testif.wb
@ifXe[gg̓eXg
testint.wb
@intXe[gg̓eXg
testlocate.wb
@locateXe[gg̓eXg
testlongloop.wb
@STARTL[ɂ钆f̃eXg
testpeekpoke.wb
@peekpokeXe[gg̃eXg
@ύX
2001N129 Ver 0.06
EWonderSwan Color̊JLbgɈڍs
Ecolormode, palette, colorXe[ggAhardarchVXeϐlj
EhLgɗ]klj
2000N1210 Ver 0.05
EHirotaka JOE Ohkubo̍(0.04j4)}[W playgp\ (vsound.il)
E?L[[hdebugƌȂ
Ethenオ10ilȂgotȍȗ
E}V֘A@\̒lj
Etron/troffR}h̒lj(ssԍ̕\)
2000N1112 Ver 0.04
E13Ȃ0x0d܂ލsԍ폜悤ƂƃvOꂽoO
EnTurbo C2.0Visual C++ 1.51ɕύX
E[hx啝ɉP
EGgXj[.wb̂ݕ\
ETvQ[STAR WITCH(star.wb, star.txt)Yt
2000N117 Ver 0.03
EZq̗D揇 PZq > */ > +- > rZq > and,or,xor
ErZq̒l1-1ɕύX
EvvgOKɕύX
Eprint/debugŕƂďo͂ĂoO
EfoȑIlsb^vȂĂnextŃ[vEo悤ɕύX
2000N117 Ver 0.02 scan_XX@\ȂoO
2000N116 Ver 0.01 ŏ̃o[W
@₢킹
Ѓs[f[ http://www.piedey.co.jp/
얓@ autumn@piedey.co.jp
ȏ