trunk/src/lib/formats/imd_dsk.c
| r19061 | r19062 | |
| 356 | 356 | char h[32]; |
| 357 | 357 | |
| 358 | 358 | io_generic_read(io, h, 0, 31); |
| 359 | | h[31] = 0; |
| 360 | | for(int i=0; i != 31; i++) |
| 361 | | if(h[i] >= '0' && h[i] <= '9')\ |
| 362 | | h[i] = '0'; |
| 359 | if(h[7] == ':') { |
| 360 | h[30] = 0; |
| 361 | for(int i=0; i != 30; i++) |
| 362 | if(h[i] >= '0' && h[i] <= '9') \ |
| 363 | h[i] = '0'; |
| 364 | |
| 365 | fixnum(h+ 9, h+11); |
| 366 | fixnum(h+12, h+14); |
| 367 | fixnum(h+15, h+19); |
| 368 | fixnum(h+20, h+22); |
| 369 | fixnum(h+23, h+25); |
| 370 | fixnum(h+26, h+28); |
| 371 | |
| 372 | if(!strcmp(h, "IMD 0.0: 00/00/0000 00:00:00\015\012")) |
| 373 | return 100; |
| 374 | } else { |
| 375 | h[31] = 0; |
| 376 | for(int i=0; i != 31; i++) |
| 377 | if(h[i] >= '0' && h[i] <= '9') \ |
| 378 | h[i] = '0'; |
| 379 | |
| 380 | fixnum(h+10, h+12); |
| 381 | fixnum(h+13, h+15); |
| 382 | fixnum(h+16, h+20); |
| 383 | fixnum(h+21, h+23); |
| 384 | fixnum(h+24, h+26); |
| 385 | fixnum(h+27, h+29); |
| 386 | |
| 387 | if(!strcmp(h, "IMD 0.00: 00/00/0000 00:00:00\015\012")) |
| 388 | return 100; |
| 389 | } |
| 363 | 390 | |
| 364 | | fixnum(h+10, h+12); |
| 365 | | fixnum(h+13, h+15); |
| 366 | | fixnum(h+16, h+20); |
| 367 | | fixnum(h+21, h+23); |
| 368 | | fixnum(h+24, h+26); |
| 369 | | fixnum(h+27, h+29); |
| 370 | | |
| 371 | | if(!strcmp(h, "IMD 0.00: 00/00/0000 00:00:00\015\012")) |
| 372 | | return 100; |
| 373 | | |
| 374 | 391 | return 0; |
| 375 | 392 | } |
| 376 | 393 | |
| 377 | | // 1.1.1.1.1.1.0.0 - fc |
| 378 | | // 1.1.0.1.0.1.1.1 |
| 379 | | // f77a |
| 380 | | |
| 381 | | // 1.1.1.1.1.1.1.0 - fe |
| 382 | | // 1.1.0.0.0.1.1.1 |
| 383 | | // f57e |
| 384 | | |
| 385 | | // 1.1.1.1.1.0.1.1 - fb |
| 386 | | // 1.1.0.0.0.1.1.1 |
| 387 | | // f56f |
| 388 | | |
| 389 | | // 1.1.1.1.1.0.0.0 - f8 |
| 390 | | // 1.1.0.0.0.1.1.1 |
| 391 | | // f56a |
| 392 | | |
| 393 | 394 | bool imd_format::load(io_generic *io, UINT32 form_factor, floppy_image *image) |
| 394 | 395 | { |
| 395 | 396 | int size = io_generic_size(io); |