mirror of
https://github.com/LIV2/lide.device.git
synced 2025-12-06 00:32:45 +00:00
Fixup channel detection some more...
This commit is contained in:
parent
58d8e9a524
commit
f23a5fc4d3
1
ata.h
1
ata.h
@ -29,6 +29,7 @@
|
||||
#define ata_reg_devHead 0xC00
|
||||
#define ata_reg_status 0xE00
|
||||
#define ata_reg_command 0xE00
|
||||
#define ata_reg_altStatus 0x1C00
|
||||
|
||||
#define drv_sel_secondary (1<<4)
|
||||
|
||||
|
||||
6
driver.c
6
driver.c
@ -244,7 +244,11 @@ struct Library __attribute__((used, saveds)) * init_device(struct ExecBase *SysB
|
||||
UBYTE channels = 2;
|
||||
|
||||
UBYTE *status = cd->cd_BoardAddr + CHANNEL_0 + ata_reg_status;
|
||||
UBYTE *alt_status = cd->cd_BoardAddr + CHANNEL_1; // Alt status register
|
||||
UBYTE *alt_status = cd->cd_BoardAddr + CHANNEL_0 + ata_reg_altStatus;
|
||||
|
||||
UBYTE *drvsel = cd->cd_BoardAddr + CHANNEL_0 + ata_reg_devHead;
|
||||
|
||||
*drvsel = 0xE0;
|
||||
|
||||
// On the AT-Bus 2008 (Clone) the ROM is selected on the lower byte when IDE_CS1 is asserted
|
||||
// Not a problem in single channel mode - the drive registers there only use the upper byte
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user