unagi script syntax 0.5.2

--XNvgdl--
==Tv==
eLXgt@C15x̖߂gݍ킹̂łB߂͏ォ牺
ԂɎs܂Aȑfȃ[vݒ肷邱Ƃo܂B
s 256 łB

==萔̕\L@==
̓ɉL̋LƊeigƂo܂B
0b, %:   2i
0x, $:  16i
(Ȃ): 10i

10i̖ɕƉL̈ɂȂ܂B
M: l * 0x20000

==ϐ̕\L@==
ꕔ̖߂̈ƂĕϐgƂo܂Bϐ̗L͈͂ 
STEP_START  STEP_END ̃[vŁA[v𔲂Ǝg܂B
ϐ͒P̐擪1ŎʂĂ܂B

==ϐƉZq̎g==
ϐWJ͎ɕGȂ̂ŁAAPȂ̂ɂȂĂ܂
܂Błl͂ЊgĂB
ϐ͉L̂悤13̒PŋLڂ܂B3̏ꍇ͕KXy[X
͂łB

[ex0] [ex1] [ex2]
ex0, ex2 - 萔ϐ
ex1 - Zq, Lgpł܂

+  ZpZ
>> _EVtg
<< _Vtg
&  AND, _
|  OR,  _a
^  XOR, rI_a

VtgŎwrbĝݏoƂv]邩Ȃ̂łA
ƂȂ MMC1 ̓}bpŃrbg0ǂł̂łȂɂ܂BK
v܂炨₢킹B

==s󔒂ɂ==
s̋󔒂ƃ^u͖܂̂ŁA[ṽlXgɎgĂB

==G[`FbN==
ȇ͕ÓfƁAROM/RAM C[WTCYƐݒlƖ߂ł̓
ݍ݃TCYr܂B

--XNvg߃t@X--
[hɂĎgp\Ȗ߂قȂ܂B
d: ROM DUMP MODE
r: RAM READ MODE
w: RAM WRITE MODE
f: ROM PROGRAM MODE

------------------------------
(ŝ)
mode: S
Ȃɂs܂B

------------------------------
#
mode: S
RgłȂɂs܂B

------------------------------
MAPPER [num]
mode: df
NES wb_̃}bpԍLڂ܂B

------------------------------
MIRROR [HVA]
mode: d
XN[w肵܂Bw肵Ȃꍇ H Ƃ݂Ȃ܂A
}bp(nrom, unrom Ȃ)Ă̍ڂ͎w肷Kv܂B

------------------------------
CPU_ROMSIZE [bytesize]
mode: df
vOROMC[W̗eʂoCgPʂŋLڂ܂B
l͍őlɂĂ\܂񂪁AǂݍݎԂ܂B
0x4000 w肷 NES wb_܂B

------------------------------
CPU_RAMSIZE [bytesize] 
mode: rw
obNAbvRAMC[W̗eʂoCgPʂŋLڂ܂B

------------------------------
PPU_ROMSIZE [bytesize]
mode: df
LN^ROMC[W̗eʂoCgPʂŋLڂ܂Bw肵Ȃꍇ
LN^RAMƂ݂Ȃ܂B

------------------------------
DUMP_START
mode: S
L̐ݒ肪Ɩ܂B̌ɏL̖߂gpƃG[
ɂȂ܂B

------------------------------
CPU_READ [address] [length]
mode: d
CPUAhXw̒̃f[^ǂݍ݂܂B萔̂݁B
address L͈͂ 0x8000-0xffff.
length L͈͂ 1-0x4000.

------------------------------
CPU_WRITE [address] [ex0] [ex1] [ex2]
mode: S
CPUAhX ex012 vZf[^݂܂Bex0 ݂̂łB
address L͈͂ 0x5000-0xffff.

------------------------------
CPU_RAMRW [address] [length]
mode: rw
R}hC̃[hɂĈقȂ܂B
RAM DUMP:  CPUAhXw̒̃f[^ǂݍ݂܂B萔̂݁B
RAM WRITE: target file ǂݍ݁AwAhXփf[^݂܂B
           ݊AGAǂݍ݁AmFʂ\܂B
address L͈͂ 0x6000-0x7fff.
length L͈͂ 1-0x2000.

------------------------------
PPU_RAMTEST
mode: d
mmc1/3 ̂悤Ƀ\tgɂăLN^̃ RAM  ROM قȂ
ꍇɎgp܂BPPU ̈ɏ݂sA݂
͈Ȍ̖߂𒆒f܂BCPU ̈̓ǂݍ݂Ɏgp
܂B

------------------------------
PPU_READ [address] [length]
mode: d
PPUAhXw̒̃f[^ǂݍ݂܂B萔̂݁B
address L͈͂ 0x0000-0x1fff.
length L͈͂ 0-0x2000.
length 0 ͎ۂɂ̓ANZX܂Aobt@ɕۑ܂B
mmc2/4 ̐ɂ̂ݕKvB

------------------------------
STEP_START [name] [start] [end] [next]
mode: S
[v̊Jnƕϐ錾s܂B[v C łƂ 
for(name = 0; name < end; name += next) ƓłB̐
̂Ŗ[vNȂ͂łB
name  - ϐ, dsB
start - ϐl, 0  0xff ܂ŁB
end   - [vEo, 1  0x100 ܂,  < łB<= ł͂
        ܂B
next  - [vZl, 1  0x100 ܂ŁB

KvƊȑf̂߃[v2܂łłB肪܂炨₢
B

------------------------------
STEP_END
mode: S
[v̕ϐXVƃ[vs܂B[vIꍇ͕ϐj
܂B

------------------------------
DUMP_END
mode: S
XNvg̏I𖾎܂Bȍ~̖߂ǂݍ݂܂B
