On (09 Nov 94) [EMAIL PROTECTED] wrote... s > From: Simon Cooke <[EMAIL PROTECTED]> s > Date: Wed, 9 Nov 1994 11:24:14 +0000 (GMT) s > s > > s > > Whay about the interleave and skew? Is that a way to get it s > > faster?
s > To tell the truth, as far as my tests indicate, the problem's with the s > speed of the SAM... NOT! s > To read a sector at the moment, you have to do the equivalent of: [Setup deleted] s > main.loop: s > in a,(status) s > bit 3,a s > jr nz,read.byte s > rla s > ret nc s > jr main.loop s > s > read.byte: s > in a,(data) s > ld (hl),a s > inc hl s > in a,(data) s > ld (hl),a s > inc hl s > jr main.loop s > s > s > And that's effectively it... the place where it slows down is that s > main loop... and I've not even put the error checking in it (which is s > mostly redundant -- you can do it at the end of that loop anyway) Si, What are you doing! replace that last bit thus:- read.byte: ld c,data ld b,0 inir ; reads 256 bytes inir ; reads next 256 bytes echk ; a macro to check for an unrecovered read error ret Once it has been determined that data is ready to be read, then at least one sector is in the buffer waiting! I'm sure I've told you this before! There's no need to check bit 3 on every word read this aint a dumb controller chipset ala bobs HD;-) Somthing like you're check before each read will be fine for getting drive ID data and when reading other variable length data fields during diadnostics ie sector + ECC data etc. but NOT for single or multiple sector-sized reads or writes:-) Hey Si don't I get a prototype board? or at least a pcb layout so I can build my own to begin development of my cp/m+ bios with it? If the prototype inteface is functional then maybe it'd be a good idea to let serious programers buy them at cost so we can get into talking to the HD an produce some standard utils that'll just need port changes to work with the real thing when that is complete:-) Otherwise you'll be the only one fluent at talking low-level IDE I/O and ALL the utility software will be down to you to develop before you can get the multiROM in a sale-able condition! Regards Johnathan. PS re hacking the HD into Masterdos.... Why not hack the RamDrive routines instead and get upto 5 x 780k native partitions on it? PPS If I was BOB I'd page the DISC2 address space between the FDC and the IDE card using spare bits in the internal sam-elite printer strobe port and have an IDE port on the oposite end to the parallel socket! -- |Fidonet: Johnathan Taylor 2:2501/307.9 |Internet: [EMAIL PROTECTED] | | Standard disclaimer: The views of this user are strictly his own.

