From: Jim Brain (brain_at_jbrain.com)
Date: 2007-12-12 16:50:25
email@example.com wrote: > Pure curiousity: why didn't you use the SCH I sent you as base? > For every one else: http://www.baltissen.org/images/1541ide.png > Given the additional complexity of the device, I was afraid that it was not exactly a superset of the 8 bit interface. As well, I was afraid that by deleting things from the 16 bit design, I would render the 8-bit idea useless. My task, as I saw it, was to layout the 8 bit interface, and I wanted to make sure I got that done. Finally, the 16 bit design uses more ICs. The 8 bit design was vary frugal with ICs, and I felt that was an elegant design on your part. However, now that I know they are equivalent, I can try to lay it out minus the RAM, ROM, etc. > > Sorry to say, but this is a very bad idea IMO. At this moment I store several parameters, like the size of the disk, the start of the directory and the link to the next sector, as four bytes in a row. Copying them to disk can be done like this: > > ldx #3 > 1 lda LBA0,X > sta IDE_reg,X > dex > bpl 1 > With a shifted address a more complex routine is needed. > > That's why I used this scheme: > A0..3 : basic IDE registers > A4 : choosing CS0 or CS1 > A5 : high/low byte > When I started with the 8 bit design, I could use a lot of the original 16-bits sources as I only had to drop everything conneted with A5. > You are correct, of course, and it's trivial to change it. However, it does make the memory map funky: $00-$1f=IDE registers low byte $20-$3f=IDE registers hi byte Unless someone objects, I will make the change. That will indeed make it 100% compatible with your original design. Message was sent through the cbm-hackers mailing list
Archive generated by hypermail pre-2.1.8.