home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SeeIn AO
/
ALICE-CD.BIN
/
Šj”ƒlƒbƒg�•‚»‚Ì‘¼
/
nv_mini
/
source
/
nvspstr.adv
< prev
next >
Wrap
Text File
|
1998-08-28
|
11KB
|
436 lines
;================================================================================
; NVSYSTEM-mini programmed by ALICE SOFT
;================================================================================
**InitSpStr:
US a01,30:
!a02:SpStrBuffTop!
< a01,0,0xffff,1,1:
MS SysStrBuffTop,ü^ü^ü^:
#SpStrTbl,1:
F1,a02,a01:
MC SysStrBuffTop,a02:{ RND=TRUE:@InitSpStrOut:}
!SpKeyStrTop[a01]:a02!
!a02:a02+1!
!SpDatStrTop[a01]:a02!
< a03,0,0xffff,1,1:
#SpStrTbl,a01+2:
F1,a02,a03:
MC SysStrBuffTop,a02:{ RND=TRUE:@SkipInitSpStr:}
!a02:a02+1!
>
*SkipInitSpStr:
!SpDatStrSize[a01]:a02-SpDatStrTop[a01]!
>
*InitSpStrOut:
!SpKeyStrTop[a01]:NULL!
~ClearSpArray:
UG a01,30:
~0,0:
**RemoveSpStr:
~0,0:
;================================================================================
; CheckSpStr(StrTopX,StrTopY)
**CheckSpStr f01,f02:
US a01,30:
!a01:0!
!a02:f02!
~GsP a01,a02:~~a04: ; a04 ìsé╠ì┼Åëé╠éôéo
ML a03,sStrNum[a04]:
{ a03 =0:@CSPExit:} ; ò╢ÄÜù±é¬ï≤é╚éτâTü[â`é╡é╚éó
{ slDat[a02]\0:@CSPExit:} ; æIæ≡Äêé═âTü[â`é╡é╚éó
*CSPLp:
<@ a01<a03: ; while(ò╢ÄÜù±é╠ì┼îπé▄é┼){
!a11:0xffff!
!a12:0xffff!
!a13:0xffff!
!a14:0xffff!
!a15:0xffff!
!a06:0!
*CSPLpMainLoop:
{ SpKeyStrTop[a06] \ 0:
MF a05,sStrNum[a04],SpKeyStrTop[a06],a01:
{ RND = 0:
ML a08,SpKeyStrTop[a06]: ;
{ a13 = 0xffff:@CSPLpMainLoop0:}
{(a01+a05)> a11:@CSPLpMainLoop1:}
{(a01+a05)< a11:@CSPLpMainLoop0:}
{(a01+a05)= a11:
{ a08 < a14:@CSPLpMainLoop1:}
}
*CSPLpMainLoop0: !a11:a01+a05!
!a12:a02!
!a13:a06!
!a14:a08!
}
*CSPLpMainLoop1:!a06:a06+1!
@CSPLpMainLoop:
}
;-------------------------------------------------------------------------------
*CSPLp2:
{ a13=0xffff:@CSPExit:}
< a18,0,SpStrCount,1,1:
{(SpOff[a18]=a13)*(SpXOff[a18]=a11)*(SpYOff[a18]=a12):@CSPLp3:}
>
~GsP a11 ,a02:~~a16:
~GsP a11+a14-1,a02:~~a17:
!SpTopX[SpStrCount] :sX[a16]!
!SpTopY[SpStrCount] :sY[a16]!
!SpSizeX[SpStrCount]:sX[a17]+sFSize[a17] -sX[a16]!
!SpSizeY[SpStrCount]:sY[a17]+sFSize[a17]+StrYSpace-sY[a16]!
!SpOff[SpStrCount] :a13!
!SpXOff[SpStrCount] :a11!
!SpYOff[SpStrCount] :a12!
< a18,a16,a17,1,1:
!sSpFlag[a18]:TRUE!
>
!SpStrCount:SpStrCount+1!
*CSPLp3:!a01:a11+a14!
@CSPLp:
>
*CSPExit:
UG a01,30:
~0,0:
;**CheckSpStr f01,f02:
; US a01,30:
; NB a01,f01,2:
; ~GsP 0,a02:~~sP:
; ML a03,sStrNum[sP]:
; {(a03\NULL)*(slDat[a02]=0): ;æIæ≡Äêé═âXâLâbâv
; < a04,0,0xffff,1,1:
; { SpKeyStrTop[a04]=NULL:@CheckSpStrOut:}
; ~GsP 0,a02:~~sP:
; !a03:a01!
;*CspStrLp: MF a05,sStrNum[sP],SpKeyStrTop[a04],a03:
; !a05:a05+a03!
; { RND=0:
; ML a06,SpKeyStrTop[a04]:
; ~GsP a01+a05,a02:~~sP:
; ~GsP a01+a05+a06-1,a02:~~a07:
; !SpTopX[SpStrCount]:sX[sP]!
; !SpTopY[SpStrCount]:sY[sP]!
; !SpSizeX[SpStrCount]:sX[a07]+sFSize[a07]-sX[sP]!
; !SpSizeY[SpStrCount]:sY[a07]+sFSize[a07]+StrYSpace-sY[sP]!
; !SpOff[SpStrCount]:a04!
; < a08,a01+a05,a01+a05+a06-1,1,1:
; ~GsP a08,a02:~~sP:
; !sSpFlag[sP]:TRUE!
; >
; !SpStrCount:SpStrCount+1!
; !a03:a05+a06!
; @CspStrLp:
; }
; >
; }
; { SpStrCount\0:ZD 3,SpStrCount:}
;
;*CheckSpStrOut:
; UG a01,30:
; ~0,0:
;
**ClearSpArray:
DF SpTopX ,SsPMax,0:
DF SpTopY ,SsPMax,0:
DF SpSizeX,SsPMax,0:
DF SpSizeY,SsPMax,0:
DF SpOff ,SsPMax,0xffff:
DF SpXOff ,SsPMax,0:
DF SpYOff ,SsPMax,0:
!SpStrCount:0!
~0,0:
**PutSpLine f01,f02,f03:
US a01,30:
NB a01,f01,3:
; B10,a11,a12:
; !a13:4!~SetFSize a13:
; !a04:a01+(a03-a13)/2!
; !a05:a02+a03+StrYSpace-a13!
; T a04,a05:'üú'
; T a11,a12:
; ~SetFSize a03:
< a04,0,a03,1,2:
CF a01+a04,a02+a03+StrYSpace-2,1,1,StrFontColor:
CF a01+a04,a02+a03+StrYSpace-1,1,1,SelStrColor:
>
UG a01,30:
~0,0:
; CF f01,f02,f03,1,StrFontColor:
; CF f01,f02+1,f03,1,SelStrColor:
~0,0:
;================================================================================
**SetSelSpStrBuff f01:
US a01,30:
NB a30,f01,1:
{ SpStrCount\NULL:
< a01,0,SpStrCount-1,1,1:
CC SpTopX[a01],SpTopY[a01],SpSizeX[a01],SpSizeY[a01],
SpTopX[a01]+XSize,SpTopY[a01]+YSize:
CK 1,SpTopX[a01]+XSize,SpTopY[a01]+YSize,SpSizeX[a01],SpSizeY[a01],StrFontColor,128,0,0:
!eX [a01+a30]:SpTopX[a01]!
!eY [a01+a30]:SpTopY[a01]!
!eLx[a01+a30]:SpSizeX[a01]!
!eLy[a01+a30]:SpSizeY[a01]!
!eSx[a01+a30]:SpTopX[a01]+XSize!
!eSy[a01+a30]:SpTopY[a01]+YSize!
!eUx[a01+a30]:SpTopX[a01]!
!eUy[a01+a30]:SpTopY[a01]+YSize!
>
}
UG a01,30:
~0,0:
;================================================================================
**PutSpMsg f01,f02:
US a01,30:
!a01:f01!
!a30:f02!
!a02:SpOff[a01]!
!a04:0!
!a05:0!
< a03,SpDatStrTop[a02],SpDatStrTop[a02]+SpDatStrSize[a02]-1,1,1:
ML a06,a03:
{ a04<a06:!a04:a06!}
!a05:a05+1!
>
!a06:16!
!a11:Msx!!a13:a04*a06+16! {(a11+a13)>XSize:!a11:XSize-a13!}
!a12:Msy!!a14:a05*(a06+StrYSpace)+16!{(a12+a14)>YSize:!a12:YSize-a14!}
{ a30=TRUE:
!a15:sX[PushKeysP]+sFSize[PushKeysP]!
!a16:sY[PushKeysP]+sFSize[PushKeysP]-16!
!a17:16!
!a18:16!
{(a15+a17)<a11:@PutSpMsgSkip1:}
{(a11+a13)<a15:@PutSpMsgSkip1:}
{(a16+a18)<a12:@PutSpMsgSkip1:}
{(a12+a14)<a16:@PutSpMsgSkip1:}
!a30:FALSE!
}
*PutSpMsgSkip1:
CC a11,a12,a13,a14,a11+XSize,a12+YSize:
CK 1,a11+XSize,a12+YSize,a13,a14,SelStrColor,224,0,0:
CB a11+1+XSize,a12+1+YSize,a13-1,a14-1,SelStrColor:
CB a11 +XSize,a12 +YSize,a13-1,a14-1,StrFontColor:
!a07:0!
~SetFSize a06:
~SetFColor StrFontColor:
< a03,SpDatStrTop[a02],SpDatStrTop[a02]+SpDatStrSize[a02]-1,1,1:
T a11+XSize+8,a12+YSize+8+a07:
X a03:
!a07:a07+a06+StrYSpace!
>
CC a11+XSize,a12+YSize,a13,a14,a11,a12:
~GetKey:
<@ Mkd\0:\PushSpMsgGetKey:>
<@ Mkd=0:\PushSpMsgGetKey:>
<@ Mkd\0:\PushSpMsgGetKey:>
CC a11 ,a12+YSize,a13,a14,a11,a12:
~SetFSize StrFontSize:
~SetFColor StrFontColor:
UG a01,30:
~0,0:
*PushSpMsgGetKey:
~GetKey:
{ a30=TRUE:~PutPushKeyWaitSub:}
\0:
;================================================================================
*SpStrTbl:
_SpKeyStrTbl:
_SpStr01:
_SpStr02:
_SpStr03:
_SpStr04:
_SpStr05:
_SpStr06:
_SpStr07:
_SpStr08:
_SpStr09:
_SpStr10:
_SpStr11:
_SpStr12:
_SpStr13:
_SpStr14:
_SpStr15:
_SpStr16:
_SpStr17:
_SpStr18:
_SpStr19:
_SpStr20:
_SpStr21:
_SpStr22:
_SpStr23:
_SpStr24:
_SpStr25:
_SpStr26:
_SpStr27:
_SpStr28:
_SpStr29:
*SpKeyStrTbl:
"éméuéréxérésédélü|éìéëéÄéë" ;SpStr01
"ü`éq" ;SpStr02
"ü`ébéjéq" ;SpStr03
"ü`ébéjé`" ;SpStr04
"ü`é`ébéf" ;SpStr05
"ü`éaébéf" ;SpStr06
"ü`ébébéf" ;SpStr07
"é┬é«é▌" ;SpStr08
"ü`érédékésénéo" ;SpStr09
"ü`édécéq" ;SpStr10
"ü`érédékédéméc" ;SpStr11
"ü`éb" ;SpStr12
"ü`éj" ;SpStr13
"ü`éjéo" ;SpStr14
"ü`é`" ;SpStr15
"ü`éséq" ;SpStr16
"ü`éséb" ;SpStr17
"ü`éfér" ;SpStr18
"ü`éfés" ;SpStr19
"ü`édér" ;SpStr20
"ü`édéc" ;SpStr21
"ü`édéf" ;SpStr22
"ü`éoésénéo" ;SpStr23
"ü`éoédéméc" ;SpStr24
"ü`ébéfébékéq" ;SpStr25
"ü`éféf" ;SpStr26
"âXâvâëâCâgébéf" ;SpStr27
"âtâïâTâCâYébéf" ;SpStr28
"ü`ü`éqédér" ;SpStr29
"ü^ü^ü^" ;End-Code
*SpStr01:
"é`éîéëéâéàéréÅéåéöü@âVâiâèâIâfâRü[â_ü["
"éréxérésédéléRéTÅπé┼ô«ì∞é╖éΘârâWâàâAâï"
"âmâxâïɺîΣâVâiâèâIâvâìâOâëâÇé╠Äûé┼é╖üB"
"âAâèâXé╠è┘éSéTéUôαé╠âAâgâëâNüüâiâNâAé¬"
"é▒é╠âVâXâeâÇé┼ô«ì∞é╡é─éóé▄é╖üB"
"êΩòöé╠ï@ö\é¬Ägùpé┼é½é╚éóûöé═ɺî└é│éΩé─"
"éóéΘé╜é▀éìéëéÄéëé╞é╚é┴é─éóé▄é╖üB"
"ü^ü^ü^"
*SpStr02:
"ëⁿìsé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr03:
"ò╢ÄÜò\Īâoâbâtâ@ôαé╠âfü[â^é≡ò\Īé╡é─é⌐éτüAâLü[ôⁿù═é≡æ╥é┐üA"
"ëⁿìsé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr04:
"ò╢ÄÜò\Īâoâbâtâ@ôαé╠âfü[â^é≡ò\Īé╡é─é⌐éτüAâLü[ôⁿù═é≡æ╥é┐üA"
"âyü[âWé≡âNâèâAé╡é▄é╖üiăé╠âyü[âWé╓Éié▌é▄é╖üjüB"
"ü^ü^ü^"
*SpStr05:
"âXâvâëâCâgébéfé≡ò\Īé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr06:
"öwîiébéfé≡ò\Īé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr07:
"âtâïâTâCâYébéfé≡ò\Īé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr08:
"é┬é«é▌üAéóéóé┴é╖é╦ü[üBéΓé┴é╧üAé┬é«é▌é┴é╖éµüAé┬é«é▌üB"
"ü^ü^ü^"
*SpStr09:
"æIæ≡ÄêèJÄnâRâ}âôâhé┼é╖üBü`érédékédémécé▄é┼é≡æIæ≡Äêé╔é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr10:
"æIæ≡ÄêÆåé╠ü`éqüFâRâ}âôâhé┼é╖üBæIæ≡ÄêÆåé═ü`éqüFé╠ò╧éφéΦé╔"
"é▒éΩé≡Ägùpé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr11:
"æIæ≡ÄêÅIù╣âRâ}âôâhé┼é╖üBò╧ÉöüFæIæ≡îïë╩é╔îïë╩é¬ò╘éΦé▄é╖"
"ü^ü^ü^"
*SpStr12:
"ò╢ÄÜò\Īâoâbâtâ@ôαé╠âfü[â^é≡ò\Īé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr13:
"âLü[æ╥é┐é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr14:
"âLü[æ╥é┐é╡é▄é╖üBü`éjüFé╞êßéñé╠é═üAüuî⌐é╜ò╢Å═é═æ¼é¡üvé┼"
"âRâ}âôâhé¬âXâLâbâvé│éΩéΘé⌐é╟éñé⌐é┼é╖üBéjâRâ}âôâhé═üA"
"âXâLâbâvé│éΩé▄é╖é¬üAéjéoâRâ}âôâhé═é│éΩé▄é╣é±üB"
"ü^ü^ü^"
*SpStr15:
"âyü[âWé≡âNâèâAé╡é▄é╖üBéréxérésédéléRéTé╠âRâ}âôâhé╠é`âR"
"â}âôâhé═üAâLü[æ╥é┐é╡é▄é╖é¬üAéméuéréxérésédélü|éìéëéÄéë"
"é╠ÅΩìçé═üAâLü[æ╥é┐é╡é▄é╣é±üBÆ╩Åφé═ü`éjéoâRâ}âôâhé╞ò╣ùp"
"é╡é─Ägùpé╡é─é¡é╛é│éóüB"
"ü^ü^ü^"
*SpStr16:
"ü`ésébâRâ}âôâhé┼âNâèâAé│éΩé╜ò╢ÄÜâZâïé≡û▀é╡é▄é╖"
"ü^ü^ü^"
*SpStr17:
"ò╢ÄÜâZâïé≡é╟é⌐é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr18:
"âOâëâtâBâbâNâZâïâoâbâtâ@é≡æÇì∞é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr19:
"âOâëâtâBâbâNâZâïâoâbâtâ@é╠ôαùeé≡ëµû╩é╔ö╜ëfé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr20:
"æIæ≡ÄêèJÄnâRâ}âôâhé┼é╖üBê°Éöé═é╗é╠æIæ≡Äêé¬æIé╬éΩé╜é╞é½"
"ë╜ö╘é≡ò╘é╖é⌐üiüüæIæ≡Äêö╘ìåüjé╞éóéñé╠é≡ÆΦï`é╡é▄é╖üBé╚é¿"
"ê°Éöé¬éOé╠ÅΩìçé═ô┴ò╩Åêù¥é┼üAêΩìsûêé╔æIæ≡Äêö╘ìåé¬ü{éPé│"
"éΩé─ìsé½é▄é╖üB"
"ü^ü^ü^"
*SpStr21:
"æIæ≡ÄêÅIù╣âRâ}âôâhé┼é╖üAédérâRâ}âôâhé⌐éτédécé▄é┼é≡æIæ≡"
"Äêé╞é╡é─é▌é╚é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr22:
"æIæ≡Äêé≡Ä└ì█é╔âIü[âvâôé╖éΘâRâ}âôâhé┼é╖üBû▀éΦÆlé═üAéªéτ"
"é╬éΩé╜æIæ≡Äêö╘ìåé┼é╖üB"
"ü^ü^ü^"
*SpStr23:
"âyü[âWö╘ìåé╠É▌ÆΦé≡é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr24:
"âyü[âWé╠ÅIéφéΦé≡Īé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr25:
"ëµû╩é╔ò\Īé│éΩé─éóéΘébéfé≡âNâèâAé╡é▄é╖üB"
"üiâOâëâtâBâbâNâoâbâtâ@ôαé╠âfü[â^é≡âNâèâA"
"é╡é▄é╖üB"
"ü^ü^ü^"
*SpStr26:
"ëµû╩âGâtâFâNâgé≡É▌ÆΦé╡é▄é╖üB"
"ü^ü^ü^"
*SpStr27:
"âQü[âÇÆåé╔é¿é»éΘÉlò¿ôÖüAébéfé╠êΩòöò¬é¬ôºé»é─ò\Īé│éΩéΘ"
"ébéfé╠é▒é╞é┼é╖üB"
"ü^ü^ü^"
*SpStr28:
"éméuéìéëéÄéëé╠ÅΩìçé┼é═üAéUéSéOéÿéSéWéOâTâCâYé╠ébéfé╠Äû"
"é≡âtâïâTâCâYébéfé╞î─é±é┼éóé▄é╖"
"ü^ü^ü^"
*SpStr29:
"è╓Éöé⌐éτé╠û▀éΦÆlé¬éáéΘé▒é╞é≡Īé╡é─éóé▄é╖üBÅ┌é╡é¡é═"
"éréxérésédéléRéTé╠â}âjâàâAâïé≡ÄQÅ╞é╡é─é¡é╛é│éó"
"ü^ü^ü^"