byte copy_to[4096]; byte copy_from[4096]; byte cut_active=0; enum {NOCUT, CUT}; void setElementSelectedFlag(dword n, int state) { dword selected_offset = file_mas[n]*304 + buf+32 + 7; ESBYTE[selected_offset] = state; if (n==0) && (strncmp(file_mas[n]*304+buf+72,"..",2)==0) ESBYTE[selected_offset] = false; //do not selec ".." directory if (state==true) selected_count++; if (state==false) selected_count--; } int getElementSelectedFlag(dword n) { dword selected_offset = file_mas[n]*304 + buf+32 + 7; return ESBYTE[selected_offset]; } void Copy(dword pcth, char cut) { byte copy_t[4096]; dword buff_data; dword path_len = 0; dword size_buf = 0; dword copy_buf_offset = 0; if (files.count<=0) return; //no files if (selected_count==0) setElementSelectedFlag(files.cur_y, true); //no element selected by "insert", so we copy current element size_buf = 4; for (i=0; i