| 751 | return ide->regs.ide_nsector == 0 ? 256 : ide->regs.ide_nsector; |
| 752 | } |
| 753 | static int dec_nsec (struct ide_hdf *ide, int v) |
| 754 | { |
| 755 | if (ide->lba48 && ide->lba48cmd) { |
| 756 | uae_u16 nsec; |
| 757 | nsec = (ide->regs.ide_nsector2 << 8) | ide->regs.ide_nsector; |
| 758 | nsec -= v; |
| 759 | ide->regs.ide_nsector2 = nsec >> 8; |
| 760 | ide->regs.ide_nsector = nsec & 0xff; |
| 761 | return (ide->regs.ide_nsector2 << 8) | ide->regs.ide_nsector; |
| 762 | } else { |
| 763 | ide->regs.ide_nsector -= v; |
| 764 | return ide->regs.ide_nsector; |
| 765 | } |
| 766 | } |
| 767 | |
| 768 | static void put_lbachs (struct ide_hdf *ide, uae_u64 lba, unsigned int cyl, unsigned int head, unsigned int sec, unsigned int inc) |
| 769 | { |
no outgoing calls
no test coverage detected