Lines Matching refs:si
1970 UINT di, si, nc; local
1973 for (si = SZDIRE * 2, nc = di = 0; nc < dirb[XDIR_NumName]; si += 2, nc++) {
1974 if ((si % SZDIRE) == 0) si += 2; /* Skip entry type field */
1975 w = ld_word(dirb + si); /* Get a character */
2661 UINT i, ni, si, di; local
2666 p = *path; lfn = dp->obj.fs->lfnbuf; si = di = 0;
2668 w = p[si++]; /* Get a character */
2671 while (p[si] == '/' || p[si] == '\\') si++; /* Skip duplicated separator if exist */
2678 b = (BYTE)p[si++]; /* Get 2nd byte */
2688 *path = &p[si]; /* Return pointer to the next segment */
2710 for (si = 0; lfn[si] == ' ' || lfn[si] == '.'; si++) ; /* Strip leading spaces and dots */
2711 if (si > 0) cf |= NS_LOSS | NS_LFN;
2716 w = lfn[si++]; /* Get an LFN character */
2718 if (w == ' ' || (w == '.' && si != di)) { /* Remove spaces and dots */
2723 if (i >= ni || si == di) { /* Entered extension or end of SFN */
2728 if (si != di) cf |= NS_LOSS | NS_LFN; /* Out of 8.3 format */
2729 if (si > di) break; /* No extension */
2730 si = di; i = 8; ni = 11; /* Enter extension fileld */
2789 UINT ni, si, i;
2795 si = i = 0; ni = 8;
2797 if (p[si] == '.') { /* Is this a dot entry? */
2799 c = (BYTE)p[si++];
2800 if (c != '.' || si >= 3) break;
2804 *path = p + si; /* Return pointer to the next segment */
2810 c = (BYTE)p[si++];
2813 while (p[si] == '/' || p[si] == '\\') si++; /* Skip duplicated separator if exist */
2831 d = (BYTE)p[si++]; /* Get 2nd byte */
2841 *path = p + si; /* Return pointer to the next segment */
4962 UINT si, di; local
4979 for (si = di = 0; si < dj.dir[XDIR_NumLabel]; si++) { /* Extract volume label from 83 entry */
4980 w = ld_word(dj.dir + XDIR_Label + si * 2);
4992 si = di = 0; /* Extract volume label from AM_VOL entry with code comversion */
4995 w = (si < 11) ? dj.dir[si++] : ' ';
4996 if (dbc_1st((BYTE)w) && si < 11 && dbc_2nd(dj.dir[si])) {
4997 w = w << 8 | dj.dir[si++];
5001 label[di++] = dj.dir[si++];
5423 WCHAR ch, si; local
5452 st = si = i = j = szb_case = 0;
5456 ch = ff_wtoupper(si); /* Get an up-case char */
5457 if (ch != si) {
5458 si++; break; /* Store the up-case char if exist */
5460 …for (j = 1; (WCHAR)(si + j) && (WCHAR)(si + j) == ff_wtoupper((WCHAR)(si + j)); j++) ; /* Get run …
5467 ch = si++; /* Fill the short run */
5472 ch = (WCHAR)j; si += j; /* Number of chars to skip */
5478 if (si == 0|| i == szb_buf) { /* Write buffered data when buffer full or end of process */
5483 } while (si);