ScriptName " String " ScriptAuthor "St" ScriptVersion " 20 " //Beschreibung: String char search // OPCODE_MEMORY_SEARCH_CHAR 0x2F // MaxAnzByte BufAdr Srch_Chr [WPtr_Idx_1=0] // Ergebnis in MaxAnzByte: 0xFFFF:not found, sonst Index SetErrorHandler ( :ErrorAddress ) ; var len: word; // Anzahl Byte´s zu testen, Returnwert ist das Vergleichsresult var b1: buffer[20]; var fromB1Index: word; var chr: byte; var vb_const0:byte; moveconst(vb_const0,0); var vw_const20:word; moveconst(vw_const20,20); : start ; Fill ( b1[0] , vb_const0 , vw_const20 ) ; Moveconst(len,10); Moveconst(chr,65); Moveconst(b1[0],"A"); MemoryCharPos ( len , b1[0] , chr ) ; //len = 0 für Index Fill ( b1[0] , vb_const0 , vw_const20 ) ; Moveconst(len,10); Moveconst(chr,65); Moveconst(b1[2],"A"); MemoryCharPos ( len , b1[0] , chr ) ; //len = 2 für Index Fill ( b1[0] , vb_const0 , vw_const20 ) ; // mit optionalem Parameter moveconst(fromB1Index,1); Moveconst(chr,65); Moveconst(b1[5],"A"); Moveconst(len,5); MemoryCharPos ( len , b1[0] , chr , fromB1Index) ; // len = 0x0005 Fill ( b1[0] , vb_const0 , vw_const20 ) ; // mit optionalem Parameter moveconst(fromB1Index,1); Moveconst(chr,65); Moveconst(b1[5],"D"); Moveconst(len,5); MemoryCharPos ( len , b1[0] , chr , fromB1Index) ; // len = 0xFFFF jump :start ; :ErrorAddress; stop; return;