int FDD_Install(char **Arguments)
{
Uint8 data;
+ char **args = Arguments;
// Determine Floppy Types (From CMOS)
outb(0x70, 0x10);
gFDD_Devices[0].track[0] = -1;
gFDD_Devices[1].track[1] = -1;
+ if(args) {
+ for(;*args;args++)
+ {
+ if(strcmp(*args, "disable")==0)
+ return MODULE_ERR_NOTNEEDED;
+ }
+ }
+
Log_Log("FDD", "Detected Disk 0: %s and Disk 1: %s", cFDD_TYPES[data>>4], cFDD_TYPES[data&0xF]);
if( data == 0 ) {
LOCK(&glFDD);
for(i=0;i<4;i++) {
Time_RemoveTimer(gFDD_Devices[i].timer);
- FDD_int_StopMotor((void*)i);
+ FDD_int_StopMotor((void *)(Uint)i);
}
RELEASE(&glFDD);
//IRQ_Clear(6);
*/
void FDD_int_TimerCallback(void *Arg)
{
- int disk = (int)Arg;
+ int disk = (Uint)Arg;
ENTER("iarg", disk);
if(gFDD_Devices[disk].motorState == 1)
gFDD_Devices[disk].motorState = 2;
*/
void FDD_int_StopMotor(void *Arg)
{
- Uint8 state, disk = (int)Arg;
+ Uint8 state, disk = (Uint)Arg;
if( IS_LOCKED(&glFDD) ) return ;
ENTER("iDisk", disk);