[Oberon] Oberon / Aos disk performance
Pieter Muller
pieter.muller at alumni.ethz.ch
Thu Aug 14 23:35:40 CEST 2003
Dan Parnete wrote:
> Bus 0, device 31, function 1: class/rev 01018A01, vendor/device
> 808624CB, status/cmd 02800007
> Class: Mass storage controller, Sub-class: IDE interface
> Vendor: Intel Corp., Device: Unknown
> IRQ0, INTA
> 8B I/O at 00000000 - 00000007
> 4B I/O at 00000000 - 00000003
> 8B I/O at 00000000 - 00000007
> 4B I/O at 00000000 - 00000003
> 16B I/O at 0000F000 - 0000F00F
This is the IDE controller. Vendor 8086H is Intel, and 24CBH is the
device type.
You could try add code to AosATADisks.Mod to recognize this controller.
Intel controllers are usually backward compatible. Of course you would
be changing a driver, so you can never exclude the possibility of data
loss completely. Make sure your valuable data is backed up and you have
time available to restore the system if required.
1. To add the device, add a "FindDevice(24CBH, 8086H)" in the
InitBusMaster procedure. It should be clear from the context where it
should go.
2. Compile the module and link a new kernel using the first
"AosLinker.Link AOS:AosIDE.Bin" command in Aos.Tool.
3. Use the "Partitions.UpdateBootFile Diskette0#0 Aos ~" command to
write the kernel to a boot floppy for testing. See Partitions.Tool.
4. Copy your boot settings to the floppy using Partitions.GetConfig and
Partitions.SetConfig.
5. Boot from the floppy to test the driver. Since you copied your
BootVol setting, it will only load the kernel from the floppy and then
boot further from the normal boot device (hard disk or CD).
6. Check the kernel log for the bus master message.
I haven't tried this in a while, so I hope nothing important was left out...
Good luck!
-- Pieter
More information about the Oberon
mailing list