Page 1 of 1

IDE interface for ST question : memory map, emutos

Posted: 28 Aug 2025 23:19
by sporniket
Hello, theses days I am looking at the IDE interfaces for the ST, that are using the CPU bus and a GAL for some signalling, and I would like to know whether I understand correctly, so here are my findings and understanding, could you please confirm or correct me ?

I can only find one instance of resources, at PP's page : Memory MAPPING ?

If I correctly understand the GAL listing : 

Code: Select all

// Addresse bus

/SELP = 1111.0000.00--.----.--0-.---- // IDE CS0 select the Command Block Registers
/SELS = 1111.0000.00--.----.--1-.---- // IDE CS1 select the Control Block Registers ; CS0 XOR CS1 always true at assertion time
/IORD = 1111.0000.00--.----.----.---- // READ strobe
/IORW = 1111.0000.00--.----.----.---- // WRITE strobe

A0 = ----.----.----.----.----.-x--
A1 = ----.----.----.----.----.x---
A2 = ----.----.----.----.---x.----
In other words, it uses address range $F00000--$F03FFF, use address bit 5 to assert either IDE CS0 or CS1 and bits 2 to 4 of the address bus are mapped to IDE A0 to A2 respectively, to select the Command/Control register


Emutos Support ?

None, from what I can read in the IDE driver : https://github.com/emutos/emutos/blob/master/bios/ide.c

Emutos supports only the Falcon IDE controller and (that is mapped to address range 0xF00000--0xFA0000 by the way) the FireBee CF card.

Re: IDE interface for ST question : memory map, emutos

Posted: 29 Aug 2025 07:32
by czietz
sporniket wrote: 28 Aug 2025 23:19 Emutos Support ?
None, from what I can read in the IDE driver : https://github.com/emutos/emutos/blob/master/bios/ide.c
Emutos supports only the Falcon IDE controller and (that is mapped to address range 0xF00000--0xFA0000 by the way) the FireBee CF card.
EmuTOS supports (almost*) all third-party IDE interfaces, since (almost) all are compatible to the Falcon IDE interface. Including the one you found. It is sufficient to map 0xF00000 to 0xF0003F to the IDE interface. I'm sure the Falcon does not use the address range 0xF00000--0xFA0000 for that.

(*) One notable exception is the ATW800/2 VME version. Its IDE interface has a different memory mapping that the Falcon IDE interface.

Re: IDE interface for ST question : memory map, emutos

Posted: 29 Aug 2025 14:20
by sporniket
Thank you for correcting me. :)