1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | // String:concat(str1,str2,result) // String(adrs) function String(a){ this .adrs=a; // EEPROM Address this .set= function (idx,n){ // Set Char var adrs= this .adrs+idx; // EEPROM Address+Index i2cw(0x50|(((adrs>>16)&1)<<2), (adrs&0xff00)>>8,adrs&0xff,n&0xFF); }; this .charAt= function (idx){ // Get Char var c,adrs= this .adrs+idx; // EEPROM Address+Index var d=0x50|(((adrs>>16)&1)<<2); i2cw(d,(adrs&0xff00)>>8,adrs&255); i2cr(d,c); return c; }; } // concat function concat(src1,src2,dst){ var s=0,cnt=0,c; while (s<32768){ c=src1.charAt(s); sleep(10); // Wait if (c==0){ break ;} dst.set(cnt,c); sleep(10); // Wait s=s+1; cnt=cnt+1; } s=0; while (s<32768){ c=src2.charAt(s); sleep(10); // Wait if (c==0){ break ;} dst.set(cnt,c); sleep(10); // Wait s=s+1; cnt=cnt+1; } } // Sample Code var text1= new String(0); var text2= new String(1*2048); var text3= new String(2*2048); concat(text1,text2,text3); |