Originally Posted by Psygore
Thanks for the info. Yes the 2nd disk of Lotus3 is loaded into the cd buffer, but I think it's unwanted from the coder as the loader still searchs in all the dma buffer for sectors (and he does a checksum of the loaded data to be sure that it's ok).
Yeah, it is only accidental but nothing forces hardware to use all slots.
Btw is there a cd32 hardware reference manual ?
I don't think so.
Some quick notes: B80020 is the most important register, any 1 bit write will "arm" the slot. (OR-operation, zero bits do nothing). Writing also clears interrupt request. B80020 can be read normally, no side-effects.
When hardware needs to fetch new CD sector, it looks for "armed" slot (looks from bit 15 to 0, in decreasing order), if no 1 bits found: overflow interrupt and reading gets aborted. If 1 bit found, reading continues, when finished, bit gets cleared and interrupt is triggered. (Even if there is more one bits remaining)
(Sorry but I am too lazy to write full documentation... It isn't that complex, just "different", command input/output is separate DMA channel from data input)
Schematics won't help. All the magic is inside Akiko chip.