
 fobOpeLXg\Cu

void *slLocate((Uint16)xps , (Uint16)yps)
    @\ : eLXg\p̃AhX(JgXN[)Ԃ܂B
	   xps , yps  ʏł̃Zʒu(ʏO`UR)Ŏw肵܂B

void slCurScrn((Uint16)scrn)
    @\ : slLocate() сAset_vbar() ŎgpXN[ݒ肵܂B
	   scrn ɂ͈ȉ̂U̓̂ꂩw肵܂B
	   scnNBG0 , scnNBG1 , scnNBG2 , scnNBG3 , scnRBGA , scnRBGB

void slCurColor((Uint16)Palette)
    @\ : slPrint???() , slDisp???() ŕ\镶̃pbgԍw肵
	   BPalette ɂ O`PT ̂ꂩw肵܂B

void slDispHex((Uint32)val , (void *)dspadd)
    @\ : w肳ꂽϐŴPUiŕ\܂B

void slPrintHex((Uint32)val , (void *)dspadd)
    @\ : w肳ꂽϐŴPUiŕ\܂B
	   ʂ̂O̓Xy[Xɑ܂B

void slPrintFX((FIXED)val , (void *)dspadd)
    @\ : Œ菬_̃f[^_\܂B
	   ʂ̂OƁAʂ̂O̓Xy[Xɑ܂B
	   A͂ꂼT̂POiɂȂ܂B

void slPrintMatrix((MATRIX)mtrx , (void *)dspadd)
    @\ : slPrintFX() gpāA}gNX(RxS)̕\܂B
	   mtrx  CURRENT w肵ꍇA}gNXX^bÑJg}g
	   NX\܂B

Uint32 slHex2Dec((Uint32)val)
    @\ : RQrbg̃oCif[^W܂ł̂a.b.c.f[^ɕϊ܂B
	   Wz悤Ȓl(POOOOOOO(d) = TeTdPOO(h) ȏ)
	   w肵ꍇAŏʂ̒lȂ܂B

void slPrint((char *)string , (void *)dspadd)
    @\ : w肳ꂽ\܂B
	   ̏IR[h mtkk (R[hO) łB

void slExtendScroll((void *)tbl , (void *)dspadd)
    @\ : R}hkꂽXN[}bvuq`lɓWJ܂B
	   gpłt@NVɂ͈ȉ̂̂A sl_macro.h ɓo^
	   Ă܂B

 t@NV :	@\
  End()			kf[^̏I
  LocateA0(adr)		uq`l`Öł̃AhXw
  LocateA1(adr)		uq`l`P̈ł̃AhXw
  LocateB0(adr)		uq`laÖł̃AhXw
  LocateB1(adr)		uq`laP̈ł̃AhXw
  Set(cnt)		w肳ꂽf[^Zbg(̌Ɏf[^)
  Stock(cnt)		XgbNobt@ɃZbgȂf[^Zbg()
  Same(cnt,chr)		LN^𑱂ăZbg
  Inc(cnt,chr)		LN^io[𑝂₵ȂZbg
  Inc2(cnt,chr)		LN^io[Q₵ȂZbg
  Dec(cnt,chr)		LN^io[炵ȂZbg
  Dec2(cnt,chr)		LN^io[Q炵ȂZbg
  Vline(cnt,chr)	LN^cɕׂ
  VlineMinus(cnt,chr)	LN^cɕׂ()
  Skip(offset)		\AhXItZbg炷(ItZbg͂PoCg)
  Skip2(offset)		\AhXItZbg炷(ItZbg͂QoCg)
  Copy(src,cnt)		łɃZbgĂf[^Rs[(Rs[̓AhX)
  RelCopy(src,cnt)	łɃZbgĂf[^Rs[(Rs[͑)
  Fill(cnt,chr)		LN^𑱂ăZbg(|C^͓Ȃ)
			(bot̂c.l.`.gp)
  Block(hcnt,vcnt)	Ac̃Zw肵A̒ɑf[^Zbg܂B
			(|C^̓ubN̉Eׂֈړ)
  BlockInc(hcnt,vcnt,chr) Ac̃Zw肵A̒LN^io[
			₵Ȃ疄߂(|C^̓ubN̉Eׂֈړ)
  BlockInc2(hcnt,vcnt,chr) Ac̃Zw肵A̒LN^io[
			Q₵Ȃ疄߂(|C^̓ubN̉Eׂֈړ)
  One(chr)		ЂƂLN^Zbg܂B
  High(cnt,chr)		ʃoCg̓LN^Zbg܂BJEg͂̃Z
			܂߂ZbgÃ}Ňɂ LChar }N܂B
  BlockFill(hcnt,vcnt,chr) Ac̃Zw肵A̒𓯂LN^io[
			߂܂(|C^̓ubN̉Eׂֈړ)B
  Add(cnt,chr,add)	LN^io[w肳ꂽ₵ȂZbgB
			(l͕tWrbg)
  BlockAdd(hcnt,vcnt,chr,add) Ac̃Zw肵A̒LN^io[𑝂
			ȂZbg(|C^̓ubN̉Eׂֈړ)B
			(l͕tWrbg)
  Loop(cnt)		 Until() ܂ł̊Ԃw肳ꂽ񐔌JԂsB
  Until()		AlXg邱Ƃ͂łȂB

  Char1(c)		PZ̎f[^
  Char2(c1,c2)		QZ̎f[^
   ...
  Char8(c1,c2,c3,c4,c5,c6,c7,c8) WZ̎f[^
  LChar1(c)		High p LN^f[^(ʃoCĝ)
  LChar2(c1,c2)		QZ̉ʃoCgf[^
   ...
  LChar8(c1,c2,c3,c4,c5,c6,c7,c8) WZ̉ʃoCgf[^


 gp)

#define	    SpaceCHR	0x0000
#define	    WhiteCHR	0x00fe

    Uint8 SceneMap_1[] = {
	Fill(Page , Space) ,			/* Py[WXy[Xł߂ */
	Loop(4) ,				/* ̌AUntil() SJԂ */
	    BlockFill(8 , 8 , WhiteCHR) ,	/* WxW̃ubN WhiteCHR ł߂ */
	    Skip(8) ,				/* ubN̎̈ʒuWZ|C^ړ */
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip(8) ,
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip(8) ,
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip2(7 * Line + 16) ,		/* |C^̈ړʂPoCg𒴂Ă̂ Skip2 gp */
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip(8) ,
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip(8) ,
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip(8) ,
	    BlockFill(8 , 8 , WhiteCHR) ,
	    Skip2(7 * Line) ,
	Until() ,
	End()
    } ;

void set_vbar((Uint16)xps)
    @\ : bot̉ғԂ𒲂ׂ邽߂̏c_\܂B͕\ʒułB

void reset_vbar((Uint16)xps)
    @\ : L set_vbar() ŕ\ꂽc_܂B

    Q̊֐ƁArfI֐ slSynch() Ƃgݍ킹 bot̉ғԂ
    ׂ܂B

  )
    while(-1){
	slExecuteEvent() ;	/* Cxg */

	reset_vbar(39) ;	/* c_̏ */
	slSynch() ;		/* rfI҂ */
	set_vbar(39) ;		/* c_̕\ */
    }

    ʕ\n܂̂ slSynch() IłAłuq`lɏc_Zbg
    ܂B slExecuteEvent() ŁACxgsAׂẴCxgI
    ƂŁȀc_uq`lƁÃ^C~O̕\ł͏c_
    ȂȂAc_̌ĂbotғĂԂɂȂ܂B
   : ̊֐͏c̉𑜓xɂZbgLN^̍sω܂B
    𑜓x(QQS܂͂QSOC)̏ꍇA㕔̂RQsA𑜓x(SSW܂
    SWOC C^[X)̏ꍇUSs܂B

void *slLocateNbg((Uint16)xps , (Uint16)yps , (Uint16)scrn)
    @\ : m[}XN[ʂ̕\AhXԂ܂B
	   xps , yps  ʏł̃Zʒu(ʏO`PQV)Ŏw肵܂B
	   scrn  scnNBG0,scnNBG1,scnNBG2,scnNBG3 ̂ꂩw肵܂B

void *slLocatePage((Uint16)xps , (Uint16)yps , (Uint16)page)
    @\ : XN[ʂ̕\AhXԂ܂B
	   xps , yps  ʏł̃Zʒu(ʏO`UR)Ŏw肵܂B
	   page  uq`l̐擪OQOOOPʂŐy[Wio[w肵
	   ܂B

