MOD ざざん
/* addとsubのTEST
sdim sc_C,2000
sc_C={"MN,&+LDI, int,10
MN,&+DISP
MN,&+ST, int,0x2000
MN,&+LDI, int,20
MN,&+DISP
MN,&+ADD, int,0x2000
MN,&+DISP
MN,&+LDI, int,30
MN,&+DISP
MN,&+ST, int,0x3000
MN,&+LDI, int,50
MN,&+DISP
MN,&+SUB, int,0x3000
MN,&+DISP"}
//*/
;sdim one_code,64,4096,2
;dim line4one_code,4096
;sc_C="abc\ncde,fff\naaa,bbb,ccc"
;sc_C="aaa,bbb,ccc,ddd,eee,fff"
;logmes ""+get_two_youso_code(sc_C,one_code,line4one_code)
#module m_get_two_youso_code
#defcfunc local trim_and_split var p_s,array p_ar,local loc_t_1st,local loc_t_2nd
loc_t_1st=strtrim(p_s,3,' ')
loc_t_2nd=strtrim(loc_t_1st,3,'\t')
; sdim loc_u,256,64
split loc_t_2nd,",",p_ar
return stat
#defcfunc get_two_youso_code var p_src,array p_one_code,array p_line4one_code,local loc_read_line,local loc_code_index,local loc_s,local loc_t_1st,local loc_t_2nd,local loc_u,local loc_l_u,local loc_4cmp_mul2,local loc_4index
sdim p_one_code,64,4096,2
dim p_line4one_code,4096
loc_read_line=0
loc_code_index=0
notesel p_src
repeat notemax
noteget loc_s,loc_read_line
sdim loc_u,256,64
loc_l_u=trim_and_split@m_get_two_youso_code(loc_s,loc_u)
if loc_l_u\2==1:dialog "get_two_youso_code内のerror\nこの行の要素の数が奇数です\n2要素で1単位なので要素の数は奇数にして下さい\nline:"+(loc_read_line+1)+" num:"+loc_l_u,1
loc_4cmp_mul2=2
loc_4index=0
while loc_l_u >= loc_4cmp_mul2
p_one_code.loc_code_index.0=loc_u.loc_4index:loc_4index++
p_one_code.loc_code_index.1=loc_u.loc_4index:loc_4index++
p_line4one_code.loc_code_index=loc_read_line+1
loc_code_index++
loc_4cmp_mul2+=2
wend
loc_read_line++
loop
/* dump
repeat 4096
if p_one_code.cnt.0!=""{
logmes ""+cnt+",0:"+p_one_code.cnt.0
logmes ""+cnt+",1:"+p_one_code.cnt.1
logmes ""+cnt+",line:"+p_line4one_code.cnt
}
loop
//*/
return loc_code_index
#global
|