How work original 16bit ATOM IDE interface: use only three ports: - port #F6 for read/write high byte for 16bit ide data - port #F7 for read/write low byte for 16bit ide data - port #F5 controll port (only writeable) Ide interface work in 16bit data mode and ATOM interface must convert between 8bit(byte) Z80 data bus and 16bit(word) IDE data bus. Info about writing data to IDE: 1)As first write data to port #F6 = write high byte of 16bit word to latch. 2)As next step write data to port #F7 = atom hdd interface automatically make 16bit word and send it to IDE (this byte send to IDE data 0-7 + last writed value from port #F6 to IDE data 8-15) additional info: Each writing to port #F7 automatically join low+high byte and send this 16bit word to ide data bus. If high byte is not writed to port #F6 before writing data to this port #F7, then ATOM use last writed value from port #F6. For example if I write in any time byte #AA to port #F6 and as next instrustions I use 3x OUT #F7,#BB then ATOM write to IDE data bus three words #AABB,#AABB,#AABB.... Is possible write repeatedly more different bytes to port #F7, ATOM will accept only last writed value. Info about reading IDE data: 1)As first read data from port #F6 = ATOM yet read 16bit ide data and high byte of 16bit word send to Z80CPU data bus. Low byte of of 16bit ide data are automatically latched (will readable on port #F7) 2)As next step read data to port #F7 = read low byte of 16bit ide data(word). additional info: Each reading from port #F6 automatically read full 16bit word from ide data bus and retun to Z80 data bus only high byte. Each reading from port #F6 change low byte data value for later reading of port #F7.