После всех этих обновлений OPL перестал компилироваться - ругается на то что есть расхождения в файлах
- ps2sdk/iop/include/atad.h
- open-ps2-loader/modules/iopcore/cdvdman/atad.c
Типа то что объявлено в первом файле - не соответствует тому, что написано во втором файле.
Решить проблему помогает простая замена функций второго файла на их объявление в первом (ata_io_start и ata_device_dma_transfer).
Т.е. надо взять строчку №40 из файла
atad.h Код
int ata_io_start(void *buf, u32 blkcount, u16 feature, u16 nsector, u16 sector, u16 lcyl, u16 hcyl, u16 select, u16 command);
и заменить ею строчку №245 в файле
atad.c Код
int ata_io_start(void *buf, unsigned int blkcount, unsigned short int feature, unsigned short int nsector, unsigned short int sector, unsigned short int lcyl, unsigned short int hcyl, unsigned short int select, unsigned short int command);
Затем взять строчку №49 из файла
atad.h Код
int ata_device_dma_transfer(int device, void *buf, u32 lba, u32 nsectors, int dir);
и заменить ею строчку №530 в файле
atad.c Код
int ata_device_dma_transfer(int device, void *buf, unsigned int lba, unsigned int nsectors, int dir);