|
|
| version 1.4, 2004/01/22 01:10:04 | version 1.5, 2005/02/07 14:46:10 |
|---|---|
| Line 7 | Line 7 |
| // 仮にここを使用するBIOS/OS/アプリがあっても大丈夫) | // 仮にここを使用するBIOS/OS/アプリがあっても大丈夫) |
| typedef struct { | typedef struct { |
| BYTE off[2]; | UINT8 off[2]; |
| BYTE seg[2]; | UINT8 seg[2]; |
| } REALPTR; | } REALPTR; |
| typedef struct { | typedef struct { |
| UINT8 drive_no; // 作成したドライブ番号(A:=0) | UINT8 drive_no; // 作成したドライブ番号(A:=0) |
| UINT8 dosver_major; | UINT8 dosver_major; |
| UINT8 dosver_minor; | UINT8 dosver_minor; |
| BYTE sda_off[2]; | UINT8 sda_off[2]; |
| BYTE sda_seg[2]; | UINT8 sda_seg[2]; |
| } IF4DOS; | } IF4DOS; |
| typedef struct { | typedef struct { |
| BYTE es[2]; | UINT8 es[2]; |
| BYTE ds[2]; | UINT8 ds[2]; |
| BYTE di[2]; | UINT8 di[2]; |
| BYTE si[2]; | UINT8 si[2]; |
| BYTE bp[2]; | UINT8 bp[2]; |
| BYTE sp[2]; | UINT8 sp[2]; |
| BYTE bx[2]; | UINT8 bx[2]; |
| BYTE dx[2]; | UINT8 dx[2]; |
| BYTE cx[2]; | UINT8 cx[2]; |
| BYTE ax[2]; | UINT8 ax[2]; |
| BYTE ip[2]; | UINT8 ip[2]; |
| BYTE cs[2]; | UINT8 cs[2]; |
| BYTE flag[2]; | UINT8 flag[2]; |
| } IF4INTR; | } IF4INTR; |
| typedef struct { | typedef struct { |
| BYTE es[2]; | UINT8 es[2]; |
| BYTE ds[2]; | UINT8 ds[2]; |
| BYTE di[2]; | UINT8 di[2]; |
| BYTE si[2]; | UINT8 si[2]; |
| BYTE bp[2]; | UINT8 bp[2]; |
| BYTE sp[2]; | UINT8 sp[2]; |
| UINT8 bl; | UINT8 bl; |
| UINT8 bh; | UINT8 bh; |
| UINT8 dl; | UINT8 dl; |
| Line 50 typedef struct { | Line 50 typedef struct { |
| UINT8 ch; | UINT8 ch; |
| UINT8 al; | UINT8 al; |
| UINT8 ah; | UINT8 ah; |
| BYTE ip[2]; | UINT8 ip[2]; |
| BYTE cs[2]; | UINT8 cs[2]; |
| UINT8 flag_l; | UINT8 flag_l; |
| UINT8 flag_h; | UINT8 flag_h; |
| } IF4INTR8; | } IF4INTR8; |
| Line 71 typedef struct { | Line 71 typedef struct { |
| UINT8 drive_no; | UINT8 drive_no; |
| char srch_mask[11]; | char srch_mask[11]; |
| UINT8 attr_mask; | UINT8 attr_mask; |
| BYTE dir_entry_no[2]; | UINT8 dir_entry_no[2]; |
| BYTE dir_sector[2]; | UINT8 dir_sector[2]; |
| BYTE f1[4]; | UINT8 f1[4]; |
| } ATTRIBUTE_PACKED _SRCHREC, *SRCHREC; // 21bytes (see int214E) | } ATTRIBUTE_PACKED _SRCHREC, *SRCHREC; // 21bytes (see int214E) |
| /* Directory entry for 'found' file */ | /* Directory entry for 'found' file */ |
| typedef struct { | typedef struct { |
| BYTE file_name[11]; | UINT8 file_name[11]; |
| UINT8 file_attr; | UINT8 file_attr; |
| BYTE f1[10]; | UINT8 f1[10]; |
| BYTE file_time[2]; | UINT8 file_time[2]; |
| BYTE file_date[2]; | UINT8 file_date[2]; |
| BYTE start_sector[2]; | UINT8 start_sector[2]; |
| BYTE file_size[4]; | UINT8 file_size[4]; |
| } ATTRIBUTE_PACKED _DIRREC, *DIRREC; | } ATTRIBUTE_PACKED _DIRREC, *DIRREC; |
| /* System File Table entry */ | /* System File Table entry */ |
| typedef struct { | typedef struct { |
| BYTE handle_count[2]; | UINT8 handle_count[2]; |
| BYTE open_mode[2]; | UINT8 open_mode[2]; |
| UINT8 file_attr; | UINT8 file_attr; |
| BYTE dev_info_word[2]; | UINT8 dev_info_word[2]; |
| BYTE dev_drvr_ptr[4]; | UINT8 dev_drvr_ptr[4]; |
| BYTE start_sector[2]; | UINT8 start_sector[2]; |
| BYTE file_time[2]; | UINT8 file_time[2]; |
| BYTE file_date[2]; | UINT8 file_date[2]; |
| BYTE file_size[4]; | UINT8 file_size[4]; |
| BYTE file_pos[4]; | UINT8 file_pos[4]; |
| BYTE rel_sector[2]; | UINT8 rel_sector[2]; |
| BYTE abs_sector[2]; | UINT8 abs_sector[2]; |
| BYTE dir_sector[2]; | UINT8 dir_sector[2]; |
| UINT8 dir_entry_no; | UINT8 dir_entry_no; |
| BYTE file_name[11]; | UINT8 file_name[11]; |
| } ATTRIBUTE_PACKED _SFTREC, *SFTREC; | } ATTRIBUTE_PACKED _SFTREC, *SFTREC; |
| /* Current Directory Structure */ | /* Current Directory Structure */ |
| typedef struct { | typedef struct { |
| char current_path[67]; | char current_path[67]; |
| BYTE flags[2]; | UINT8 flags[2]; |
| BYTE f1[10]; | UINT8 f1[10]; |
| BYTE root_ofs[2]; | UINT8 root_ofs[2]; |
| } ATTRIBUTE_PACKED _CDS3, *CDS3; | } ATTRIBUTE_PACKED _CDS3, *CDS3; |
| typedef struct { | typedef struct { |
| char current_path[67]; | char current_path[67]; |
| BYTE flags[2]; | UINT8 flags[2]; |
| BYTE f1[10]; | UINT8 f1[10]; |
| BYTE root_ofs[2]; | UINT8 root_ofs[2]; |
| BYTE f2[7]; | UINT8 f2[7]; |
| } ATTRIBUTE_PACKED _CDS4, *CDS4; | } ATTRIBUTE_PACKED _CDS4, *CDS4; |
| /* Swappable DOS Area for DOS3 */ | /* Swappable DOS Area for DOS3 */ |
| typedef struct { | typedef struct { |
| BYTE f0[12]; | UINT8 f0[12]; |
| REALPTR current_dta; | REALPTR current_dta; |
| BYTE f1[30]; | UINT8 f1[30]; |
| UINT8 dd; | UINT8 dd; |
| UINT8 mm; | UINT8 mm; |
| BYTE yy_1980[2]; | UINT8 yy_1980[2]; |
| BYTE f2[96]; | UINT8 f2[96]; |
| char file_name[128]; | char file_name[128]; |
| char file_name_2[128]; | char file_name_2[128]; |
| _SRCHREC srchrec; | _SRCHREC srchrec; |
| _DIRREC dirrec; | _DIRREC dirrec; |
| BYTE f3[81]; | UINT8 f3[81]; |
| char fcb_name[11]; | char fcb_name[11]; |
| BYTE f4; | UINT8 f4; |
| char fcb_name_2[11]; | char fcb_name_2[11]; |
| BYTE f5[11]; | UINT8 f5[11]; |
| UINT8 srch_attr; | UINT8 srch_attr; |
| UINT8 open_mode; | UINT8 open_mode; |
| BYTE f6[48]; | UINT8 f6[48]; |
| REALPTR cdsptr; | REALPTR cdsptr; |
| BYTE f7[72]; | UINT8 f7[72]; |
| _SRCHREC rename_srchrec; | _SRCHREC rename_srchrec; |
| _DIRREC rename_dirrec; | _DIRREC rename_dirrec; |
| } ATTRIBUTE_PACKED _SDA3, *SDA3; // (see int215D06) | } ATTRIBUTE_PACKED _SDA3, *SDA3; // (see int215D06) |
| /* Swappable DOS Area for DOS4+ */ | /* Swappable DOS Area for DOS4+ */ |
| typedef struct { | typedef struct { |
| BYTE f0[12]; | UINT8 f0[12]; |
| REALPTR current_dta; | REALPTR current_dta; |
| BYTE f1[32]; | UINT8 f1[32]; |
| BYTE dd; | UINT8 dd; |
| BYTE mm; | UINT8 mm; |
| BYTE yy_1980[2]; | UINT8 yy_1980[2]; |
| BYTE f2[106]; | UINT8 f2[106]; |
| char file_name[128]; | char file_name[128]; |
| char file_name_2[128]; | char file_name_2[128]; |
| _SRCHREC srchrec; | _SRCHREC srchrec; |
| _DIRREC dirrec; | _DIRREC dirrec; |
| BYTE f3[88]; | UINT8 f3[88]; |
| char fcb_name[11]; | char fcb_name[11]; |
| BYTE f4; | UINT8 f4; |
| char fcb_name_2[11]; | char fcb_name_2[11]; |
| BYTE f5[11]; | UINT8 f5[11]; |
| UINT8 srch_attr; | UINT8 srch_attr; |
| UINT8 open_mode; | UINT8 open_mode; |
| BYTE f6[51]; | UINT8 f6[51]; |
| REALPTR cdsptr; | REALPTR cdsptr; |
| BYTE f7[87]; | UINT8 f7[87]; |
| BYTE action_2E[2]; | UINT8 action_2E[2]; |
| BYTE attr_2E[2]; | UINT8 attr_2E[2]; |
| BYTE mode_2E[2]; | UINT8 mode_2E[2]; |
| BYTE f8[29]; | UINT8 f8[29]; |
| _SRCHREC rename_srchrec; | _SRCHREC rename_srchrec; |
| _DIRREC rename_dirrec; | _DIRREC rename_dirrec; |
| } ATTRIBUTE_PACKED _SDA4, *SDA4; // (see int215D06) | } ATTRIBUTE_PACKED _SDA4, *SDA4; // (see int215D06) |