Re: [ES40-developers] Misc Patches
Status: Alpha
Brought to you by:
iamcamiel
From: Camiel V. <iam...@gm...> - 2008-04-29 08:28:01
|
Hi Brian, I've applied the system patch. I've changed it a little so the range check is only performed when CHECK_MEM_RANGES is defined. I've added both defines to the configure_1.m4 script, with default values of false for DUMP_MEMMAP and true for CHECK_MEM_RANGES. I've also updated CDiskController and all its descendants to eliminate the dependence on CPCIDevice. I'll now start on adapting your floppy changes to use CDisk disk images (or real devices). I'll also make it possible to disable the floppy-device entirely for the people that don't need it (probably the majority of users). As for removable media: this is something we should start addressing sometime soon. I'm proposing to handle this in two possible ways: 1) for physical devices (CDiskDevice) we should check with the OS whether a media change has occurred. 2) for non-phisical devices, I'm proposing the introduction of a new Disk Class (CDiskChanger?) that is both a CDisk and a CDiskController. Other disks connect to it, and which disk is active can be selected through the serial port menu. The DiskChanger class itself is a simple wrapper around the selected disk's methods. So you'd have something like this in the config file: disk0.0 = changer { disk 0.0 = {...} disk 0.1 = {...} ... } Camiel. On Tue, Apr 22, 2008 at 3:58 PM, Brian Wheeler <bdw...@in...> wrote: > Here's a few patches for things I've been working on: > > > 1) system.diff > > * if DUMP_MEMMAP is defined, es40 drops out its memory map in the order > that it is searched: > > ES40 Memory Map > Physical Address Size Device/Index > ---------------- -------- ------------------------- > 0000080110000000 100000 sys0(tsunami)/0 > 0000080100000000 8000000 sys0(tsunami)/0 > 00000801fc000080 1 pci0.7(ali)/0 > 00000801fc000000 8 pci0.7(ali)/4100 > 00000801fc000008 8 pci0.7(ali)/4096 > 00000801fc000081 b pci0.7(ali)/4098 > 00000801fc0000c0 10 pci0.7(ali)/4101 > 00000801fc0000d0 10 pci0.7(ali)/4097 > 00000801fc000481 b pci0.7(ali)/4099 > 00000801fc00040b 1 pci0.7(ali)/4102 > 00000801fc0004d6 1 pci0.7(ali)/4103 > 00000801fc0003f0 6 pci0.7(ali)/0 > 00000801fc0003f7 1 pci0.7(ali)/1 > 00000801fe009800 100 pci0.19(ali_usb)/2055 > 00000801fc000061 1 pci0.7(ali)/1 > 00000801fc000070 4 pci0.7(ali)/2 > 00000801fe003800 100 pci0.7(ali)/2055 > 00000801fc000040 4 pci0.7(ali)/6 > 00000801fc000020 2 pci0.7(ali)/7 > 00000801fc0000a0 2 pci0.7(ali)/8 > 00000801fc0004d0 2 pci0.7(ali)/30 > 00000801f8000000 1 pci0.7(ali)/20 > 00000801fc0003bc 4 pci0.7(ali)/27 > 00000801fc000060 1 pci0.7(ali)/0 > 00000801fc000064 1 pci0.7(ali)/1 > 00000801fc0001f0 8 pci0.15(ali_ide)/1 > 00000801fc0003f6 1 pci0.15(ali_ide)/2 > 00000801fc000170 8 pci0.15(ali_ide)/3 > 00000801fc000376 2 pci0.15(ali_ide)/4 > 00000801fc00f000 8 pci0.15(ali_ide)/5 > 00000801fc00f008 8 pci0.15(ali_ide)/6 > 00000801fe007800 100 pci0.15(ali_ide)/2055 > 00000801fc0001f0 8 pci0.15(ali_ide)/2048 > 00000801fc0003f4 4 pci0.15(ali_ide)/2049 > 00000801fc000170 8 pci0.15(ali_ide)/2050 > 00000801fc000374 4 pci0.15(ali_ide)/2051 > 00000801fc00f000 10 pci0.15(ali_ide)/2052 > 00000801fc0003f8 8 serial0(serial)/0 > > * When changing/defining memory regions, a simple bounds check is > performed, which prints out warnings if there appears to be an overlap: > > WARNING: Start address for pci0.15(ali_ide)/2049 (00000801fc0003f4-00000801fc0003f7) > is within memory range of pci0.7(ali)/0 (00000801fc0003f0-00000801fc0003f5). > WARNING: End address for pci0.15(ali_ide)/2049 (00000801fc0003f4-00000801fc0003f7) > is within memory range of pci0.7(ali)/1 (00000801fc0003f7-00000801fc0003f7). > > > 2) floppy.diff > > This covers DMA.* FloppyController.* and PCIDevice.h changes to make the > floppy sort of work. It won't boot from it and I can't figure out why. > It is hardcoded to use disk1of3 from NetBSD 4.0 and is really messy, but > it is a start. > > P00>>>boot dva0 > (boot dva0.0.0.1000.0 -flags A) > Block 001E2000 is not in any zone, call pc aa524 > Block 001E6000 is not in any zone, call pc aa524 > block 0 of dva0.0.0.1000.0 is not a valid boot block > bootstrap failure > P00>>> > > Brian > > ------------------------------------------------------------------------- > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference > Don't miss this year's exciting event. There's still time to save $100. > Use priority code J8TL2D2. > http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > > |