|
|
| version 1.3, 2004/08/02 13:38:46 | version 1.5, 2004/08/09 04:47:53 |
|---|---|
| Line 3 | Line 3 |
| #include "pccore.h" | #include "pccore.h" |
| #include "iocore.h" | #include "iocore.h" |
| #include "fddfile.h" | #include "fddfile.h" |
| #include "fdd_2d.h" | |
| #include "fdd_mtr.h" | #include "fdd_mtr.h" |
| Line 12 static BYTE sec_data[4][256]; | Line 13 static BYTE sec_data[4][256]; |
| static BYTE hole = 0; | static BYTE hole = 0; |
| BYTE changesector2d(void) { | static BYTE changesector2d(void) { |
| FDDFILE fdd; | FDDFILE fdd; |
| FILEH fh; | FILEH fh; |
| Line 20 BYTE changesector2d(void) { | Line 21 BYTE changesector2d(void) { |
| long seekp; | long seekp; |
| short drv = fdc.drv; | short drv = fdc.drv; |
| if (fdc.media) { | if (fdc.s.media != DISKTYPE_2D) { |
| return(1); | return(1); |
| } | } |
| fdd = fddfile + drv; | fdd = fddfile + drv; |
| Line 61 BYTE changesector2d(void) { | Line 62 BYTE changesector2d(void) { |
| //********************************************************************** | //********************************************************************** |
| short fdd_crc_2d(void) { | BRESULT fdd2d_crc(FDDFILE fdd) { |
| fdc.crc_dat[0] = fdc.c; | fdc.s.buffer[0] = fdc.c; |
| fdc.crc_dat[1] = fdc.h; | fdc.s.buffer[1] = fdc.h; |
| fdc.crc_dat[2] = fdc.r; | fdc.s.buffer[2] = fdc.r; |
| fdc.crc_dat[3] = 1; | fdc.s.buffer[3] = 1; |
| fdc.crc_dat[4] = 0; // CRC(Lo) | fdc.s.buffer[4] = 0; // CRC(Lo) |
| fdc.crc_dat[5] = 0; // CRC(Hi) | fdc.s.buffer[5] = 0; // CRC(Hi) |
| fdc.rreg = fdc.c; // ??? メルヘンヴェール | fdc.s.bufsize = 6; |
| return(0); | fdc.rreg = fdc.c; // メルヘンヴェール |
| (void)fdd; | |
| return(SUCCESS); | |
| } | } |
| Line 97 BYTE fdd_stat_2d(void) { | Line 100 BYTE fdd_stat_2d(void) { |
| } | } |
| } | } |
| if ((type == 1 || type == 2) && | if ((type == 1 || type == 2) && |
| ((fdc.c >= 40) || (fdc.h > 1) || (fdc.r > 16) || (fdc.media))) { | ((fdc.c >= 40) || (fdc.h > 1) || (fdc.r > 16) || |
| (fdc.s.media != DISKTYPE_2D))) { | |
| ans |= 0x10; // SEEK ERROR / RECORD NOT FOUND | ans |= 0x10; // SEEK ERROR / RECORD NOT FOUND |
| } | } |
| Line 179 BRESULT fdd2d_set(FDDFILE fdd, REG8 drv, | Line 183 BRESULT fdd2d_set(FDDFILE fdd, REG8 drv, |
| if (attr & 0x18) { | if (attr & 0x18) { |
| return(FAILURE); | return(FAILURE); |
| } | } |
| file_cpyname(fdd->fname, fname, NELEMENTS(fdd->fname)); | |
| fdd->type = DISKTYPE_BETA; | fdd->type = DISKTYPE_BETA; |
| fdd->protect = (UINT8)(attr & 1); | fdd->protect = (UINT8)(attr & 1); |
| sec_now[drv] = -1; | sec_now[drv] = -1; |