Previous 199869 Revisions Next

r23469 Wednesday 5th June, 2013 at 20:29:15 UTC by smf
moved where cur_drive is updated & changed pcmcia trampoline definition to 16 bit. (nw)
[src/emu/machine]idectrl.c idectrl.h

trunk/src/emu/machine/idectrl.c
r23468r23469
10961096
10971097void ide_controller_device::ide_controller_write(int bank, offs_t offset, int size, UINT32 data)
10981098{
1099   switch (BANK(bank, offset))
1100   {
1101      case IDE_BANK0_HEAD_NUMBER:
1102         cur_drive = (data & 0x10) >> 4;
1103         break;
1104   }
1105
10991106   ide_device_interface *dev = slot[cur_drive]->dev();
1107   if (dev == NULL)
1108      return;
11001109
11011110   /* logit */
11021111   if (BANK(bank, offset) != IDE_BANK0_DATA)
r23468r23469
12271236
12281237      /* current head */
12291238      case IDE_BANK0_HEAD_NUMBER:
1230         cur_drive = (data & 0x10) >> 4;
12311239         dev->cur_head = data & 0x0f;
12321240         dev->cur_head_reg = data;
12331241         // LBA mode = data & 0x40
r23468r23469
14391447}
14401448
14411449
1442READ32_DEVICE_HANDLER( ide_controller16_pcmcia_r )
1450READ16_DEVICE_HANDLER( ide_controller16_pcmcia_r )
14431451{
14441452   ide_controller_device *ide = (ide_controller_device *) device;
14451453
r23468r23469
14581466}
14591467
14601468
1461WRITE32_DEVICE_HANDLER( ide_controller16_pcmcia_w )
1469WRITE16_DEVICE_HANDLER( ide_controller16_pcmcia_w )
14621470{
14631471   int size;
14641472
trunk/src/emu/machine/idectrl.h
r23468r23469
8282
8383DECLARE_READ32_DEVICE_HANDLER( ide_controller32_r );
8484DECLARE_WRITE32_DEVICE_HANDLER( ide_controller32_w );
85DECLARE_READ32_DEVICE_HANDLER( ide_controller16_pcmcia_r );
86DECLARE_WRITE32_DEVICE_HANDLER( ide_controller16_pcmcia_w );
85DECLARE_READ16_DEVICE_HANDLER( ide_controller16_pcmcia_r );
86DECLARE_WRITE16_DEVICE_HANDLER( ide_controller16_pcmcia_w );
8787DECLARE_READ32_DEVICE_HANDLER( ide_bus_master32_r );
8888DECLARE_WRITE32_DEVICE_HANDLER( ide_bus_master32_w );
8989

Previous 199869 Revisions Next


© 1997-2024 The MAME Team