I think it would interleave the registers like this R0, R8, R2, RA, R4, RC, ... etc. I am sure after trying to write and debug a BIOS with a register set like that Hargle would be drinking out of the Windex bottle...
yeah, that would make things really difficult. We'd then be DMAing the data in, and then having to double back through the data to flip all the bits in the right order. It would probably be slower than PIO by the time we were finished.
transistor inverter. Register level backward compatibility would be gone completely but DMA might work.
Ah, here's another issue I think. We still need to do PIO for certain tasks, like the POST Identify Device data. Only sector read/writes use DMA, so we still need the ability to do PIO data in/out. The byte ordering of the PIO data doesn't matter-I'll flip stuff around any way it needs to be, but we must have the ability to do both.
Hey Hargle; do you still have your wire wrap prototype? If you've scrapped it and moved on maybe its time for some experimenting.
Yep. I've pulled a few parts off it, but now that I have a fresh stock of ICs, I can put it all back together, no sweat. I'd be happy to mail it to you if you want to play with it w/o breaking yours.
work? That way you get alternating register set access; on the first IO access you get R0-R7 and on the next you get R8-RF and so on and so forth.
I'm a little DMA dumb, especially on an 8bit machine, but I'd think for 8bit DMA, it's pretty much a requirement that all the data comes in through the same IO port. If you can stack the data up like you just described, I think that would work. That byte ordering would also be excellent for PIO too.
I think that's how that tilmann reh design worked. The schematics were back in the thread somewhere.
That could be done with a new 74LS74 "dead bug" on the circuit board. It would still effect register level backward compatibility though. Also the IDE /DMACK, DMARQ, /CS0, and /CS1 lines are all effected and would have to be qualified for proper operation.
I have no idea what other hardware would need to be used for actual DMA transfers to do the handshaking and actual transfers. Someone way back in the thread mentioned some stuff, but I don't remember who.
I also assume that the DMA lines were some that you didn't remove the gold teeth from?
I'm really happy to explore this some more. I think Mike coming on board will help a lot too. Cards are shipping today.