So I found some document along the lines of "Advent TurboROM theory of operation" in one of the archives, and it says that the code to initialize a RAMdisk (and even boot from, i believe) is entirely in the ROM chip. It also said, that the ramdisk interface only uses four bytes, 0x88-0x8B in the I/O space, with the following map:
88 = Bidirectional data
89 = Sector Count (6 low bits)
8A = Track Count (7 low bits, bit8 sets disk0/disk1)
8B = Status byte (determines ramdisk size)
This seems like it would be an extremely easy way to wire a hard drive into a Kaypro, and I was wondering if I understood the operation correctly:
1. The kaypro sets the track by writing to 0x8A
2. the kaypro sets the sector by writing to 0x89
3. the kaypro then reads (or writes) 0x88 128 consecutive times, reading/writing the entire 128 byte sector. A counter that's internal to the ramdisk increments on each read/write operation, incrementing the address lines of the ramdisk. This "pointer" gets reset to 0 every time the sector or track is set.
Can anyone that owns one of these (or just has used one before) confirm this? It seems like it would be pretty easy to build one of these, and if it natively supports 2 x 1 Megabyte ram drives, it would be pretty convenient.
88 = Bidirectional data
89 = Sector Count (6 low bits)
8A = Track Count (7 low bits, bit8 sets disk0/disk1)
8B = Status byte (determines ramdisk size)
This seems like it would be an extremely easy way to wire a hard drive into a Kaypro, and I was wondering if I understood the operation correctly:
1. The kaypro sets the track by writing to 0x8A
2. the kaypro sets the sector by writing to 0x89
3. the kaypro then reads (or writes) 0x88 128 consecutive times, reading/writing the entire 128 byte sector. A counter that's internal to the ramdisk increments on each read/write operation, incrementing the address lines of the ramdisk. This "pointer" gets reset to 0 every time the sector or track is set.
Can anyone that owns one of these (or just has used one before) confirm this? It seems like it would be pretty easy to build one of these, and if it natively supports 2 x 1 Megabyte ram drives, it would be pretty convenient.