2 extern unsigned char cdrom_read_mode;
3 extern unsigned char pio_width_warning;
4 extern unsigned char big_scary_write_test_warning;
5 extern unsigned char opt_ignore_smartdrv;
6 extern unsigned char opt_no_irq;
7 extern unsigned char opt_no_pci;
8 extern unsigned char opt_no_isapnp;
9 extern unsigned char opt_no_isa_probe;
10 extern unsigned char opt_irq_mask;
11 extern unsigned char opt_irq_chain;
13 extern char tmp[1024];
14 extern uint16_t ide_info[256];
16 #if TARGET_MSDOS == 32
17 extern unsigned char cdrom_sector[512U*256U];/* ~128KB, enough for 64 CD-ROM sector or 256 512-byte sectors */
19 # if defined(__LARGE__) || defined(__COMPACT__)
20 extern unsigned char cdrom_sector[512U*16U]; /* ~8KB, enough for 4 CD-ROM sector or 16 512-byte sectors */
22 extern unsigned char cdrom_sector[512U*8U]; /* ~4KB, enough for 2 CD-ROM sector or 8 512-byte sectors */
26 void do_ide_controller_hook_irq(struct ide_controller *ide);
27 void do_ide_controller_unhook_irq(struct ide_controller *ide);
28 void do_ide_controller_enable_irq(struct ide_controller *ide,unsigned char en);
29 void do_ide_controller_emergency_halt_irq(struct ide_controller *ide);
31 #if TARGET_MSDOS == 16 && (defined(__COMPACT__) || defined(__SMALL__) || defined(__MEDIUM__))
32 /* chop features out of the Compact memory model build to ensure all code fits inside 64KB */
37 #if TARGET_MSDOS == 16 && (defined(__COMPACT__) || defined(__SMALL__))
38 /* chop features out of the Compact memory model build to ensure all code fits inside 64KB */
45 # define MULTIPLE_MODE_MENU
46 # define PIO_MODE_MENU
49 # define PIO_AUTODETECT