trunk/src/emu/machine.c
r245313 | r245314 | |
1217 | 1217 | const char *software = image_parent_basename(&device); |
1218 | 1218 | if (software!=NULL && strlen(software)>0) |
1219 | 1219 | { |
1220 | | result.cat('\\').cat(software); |
| 1220 | result.cat(PATH_SEPARATOR).cat(software); |
1221 | 1221 | } |
1222 | 1222 | astring tag(device.tag()); |
1223 | 1223 | tag.del(0, 1).replacechr(':', '_'); |
1224 | | result.cat('\\').cat(tag); |
| 1224 | result.cat(PATH_SEPARATOR).cat(tag); |
1225 | 1225 | } |
1226 | 1226 | return result; |
1227 | 1227 | } |
trunk/src/osd/windows/winfile.c
r245313 | r245314 | |
48 | 48 | |
49 | 49 | file_error osd_open(const char *path, UINT32 openflags, osd_file **file, UINT64 *filesize) |
50 | 50 | { |
51 | | DWORD disposition, access, sharemode; |
52 | 51 | file_error filerr = FILERR_NONE; |
53 | | const TCHAR *src; |
54 | | DWORD upper; |
55 | | TCHAR *t_path; |
56 | | TCHAR *dst; |
57 | 52 | |
58 | 53 | // convert path to TCHAR |
59 | | t_path = tstring_from_utf8(path); |
| 54 | TCHAR *t_path = tstring_from_utf8(path); |
60 | 55 | if (t_path == NULL) |
61 | 56 | { |
62 | 57 | filerr = FILERR_OUT_OF_MEMORY; |
r245313 | r245314 | |
89 | 84 | (*file)->type = WINFILE_FILE; |
90 | 85 | |
91 | 86 | // convert the path into something Windows compatible |
92 | | dst = (*file)->filename; |
93 | | #if defined(SDLMAME_WIN32) || defined(SDLMAME_OS2) |
94 | | for (src = t_path; *src != 0; src++) |
95 | | *dst++ = (*src == '/') ? '\\' : *src; |
96 | | #else |
97 | | for (src = t_path; *src != 0; src++) |
98 | | *dst++ = *src;//(*src == '/') ? '\\' : *src; |
99 | | #endif |
100 | | *dst++ = 0; |
| 87 | { |
| 88 | TCHAR *dst = (*file)->filename; |
| 89 | for (TCHAR const *src = t_path; *src != 0; src++) |
| 90 | *dst++ = *src;//(*src == '/') ? '\\' : *src; |
| 91 | *dst++ = 0; |
| 92 | } |
101 | 93 | |
102 | 94 | // select the file open modes |
| 95 | DWORD disposition, access, sharemode; |
103 | 96 | if (openflags & OPEN_FLAG_WRITE) |
104 | 97 | { |
105 | 98 | disposition = (!is_path_to_physical_drive(path) && (openflags & OPEN_FLAG_CREATE)) ? CREATE_ALWAYS : OPEN_EXISTING; |
r245313 | r245314 | |
149 | 142 | } |
150 | 143 | |
151 | 144 | // get the file size |
| 145 | DWORD upper; |
152 | 146 | *filesize = GetFileSize((*file)->handle, &upper); |
153 | 147 | *filesize |= (UINT64)upper << 32; |
154 | 148 | |