1 /*************************************************************/
2 /* DISPLAY.C ROUTINES */
3 /*************************************************************/
4 void display(char far *);
5 void number_in_msg(XFLOAT,unsigned);
6 void percent_in_msg(unsigned,unsigned); /* AN000 */
7 void string_in_msg(char far *,unsigned); /* AN000 */
8 void volume_in_msg(char far *,unsigned); /* AN000 */
10 /*************************************************************/
11 /* VIDEO.C ROUTINES */
12 /*************************************************************/
13 void clear_screen(unsigned,unsigned,unsigned,unsigned);
14 void init_video_information(void);
15 void reset_video_information(void);
16 void get_video_attribute(void); /* AN006 */
19 /*************************************************************/
20 /* DISKOUT.C ROUTINES */
21 /*************************************************************/
22 void write_info_to_disk(void);
23 char write_master_boot_to_disk(unsigned char);
24 char write_ext_boot_to_disk(char,unsigned char);
27 /*************************************************************/
28 /* PARTINFO.C ROUTINES */
29 /*************************************************************/
30 char find_free_partition(void);
31 char find_partition_type(unsigned char);
32 XFLOAT get_partition_size(unsigned char);
33 char find_active_partition(void);
34 char find_partition_location(unsigned char);
35 char find_free_ext(void);
36 char find_logical_drive(void);
37 char get_num_logical_dos_drives(void);
38 char find_ext_drive(char);
39 char find_previous_drive(char);
41 /*************************************************************/
42 /* MAKEPART.C ROUTINES */
43 /*************************************************************/
44 void make_partition(unsigned,char,unsigned char,char);
45 char make_volume(unsigned,char);
47 /*************************************************************/
48 /* INPUT.C ROUTINES */
49 /*************************************************************/
50 char get_num_input(char,char,unsigned,unsigned);
51 char get_yn_input(char,unsigned,unsigned);
52 char wait_for_ESC(void);
53 unsigned get_large_num_input(unsigned,unsigned,unsigned,char far *,unsigned,char far *);
54 char get_alpha_input(char,char,unsigned,unsigned,char,char);
55 char get_char_input(void);
56 void get_string_input(unsigned,unsigned,char far *);
59 /*************************************************************/
60 /* SPACE.C ROUTINES */
61 /*************************************************************/
62 char find_part_free_space(char);
63 void sort_part_table(char);
64 char find_ext_free_space(void);
65 void sort_ext_table(char);
68 /*************************************************************/
69 /* INT13.C ROUTINES */
70 /*************************************************************/
71 char get_disk_info(void);
72 char read_boot_record(unsigned,unsigned char,unsigned char,unsigned char); /* AC000 */
73 char write_boot_record(unsigned,unsigned char);
74 unsigned verify_tracks(char,char);
75 char get_drive_parameters(unsigned char);
76 void DiskIo(union REGS *,union REGS *, struct SREGS *);
78 /*************************************************************/
79 /* VDISPLAY.C ROUTINES */
80 /*************************************************************/
81 char volume_display(void);
83 /*************************************************************/
84 /* TDISPLAY.C ROUTINES */
85 /*************************************************************/
86 char table_display(void);
87 char table_drive_letter(void);
89 /*************************************************************/
90 /* FDISK.C ROUTINES */
91 /*************************************************************/
92 void main(int,char * []);
93 void load_logical_drive(char,unsigned char);
94 void init_partition_tables(void);
95 char check_valid_environment(void);
96 void reboot_system(void);
97 void display_volume_information(void);
98 void display_partition_information(void);
99 void volume_delete(void);
100 void ext_delete(void);
101 void delete_partition(void);
102 void dos_delete(void);
103 void change_active_partition(void);
104 void volume_create(void);
105 void ext_create_partition(void);
106 void input_dos_create(void);
107 void dos_create_partition(void);
108 void create_partition(void);
109 void do_main_menu(void);
110 void internal_program_error(void);
113 /*************************************************************/
114 /* CONVERT ROUTINES */
115 /*************************************************************/
116 void get_volume_string(char,char *); /* AN000 */
117 unsigned mbytes_to_cylinders(XFLOAT,char); /* AN004 */
118 XFLOAT percent_to_cylinders(unsigned,XFLOAT); /* AN000 */
119 XFLOAT cylinders_to_mbytes(unsigned,char); /* AN004 */
120 unsigned cylinders_to_percent(unsigned,unsigned); /* AN000 */
121 char dos_upper(char); /* AN000 */
122 char check_yn_input(char); /* AN000 */
123 FLAG get_fs_and_vol(char); /* AN000 */
124 FLAG check_format(char); /* AN002 */
126 /*************************************************************/
128 /*************************************************************/
129 char parse_command_line(int,char * []); /* AN000 */
130 void parse_init(void); /* AN000 */
131 void check_disk_validity(void); /* AN000 */
132 void process_switch(void); /* AN000 */
133 void parse(union REGS *, union REGS *); /* AN000 */
134 void Parse_msg(int,int,unsigned char); /* AN010 */
137 /*************************************************************/
138 /* MESSAGES ROUTINES */
139 /*************************************************************/
140 char preload_messages(void); /* AN000 */
141 void display_msg(int,int,int,int *,char,char); /* AN000 AC014 */
142 void sysloadmsg(union REGS *, union REGS *); /* AN000 */
143 void sysdispmsg(union REGS *, union REGS *); /* AN000 */
144 void sysgetmsg(union REGS *, struct SREGS *, union REGS *); /* AN012 */
145 char get_yes_no_values(void); /* AN012 */
148 /*************************************************************/
150 /*************************************************************/
155 int int86x(int, union REGS *, union REGS *, struct SREGS *);
156 int int86(int, union REGS *, union REGS *);
157 int intdos(union REGS *, union REGS *);