Re: [ES40-developers] Misc Patches
Status: Alpha
Brought to you by:
iamcamiel
|
From: Camiel V. <iam...@gm...> - 2008-04-29 09:57:20
|
Hello again,
I've changed the floppy stuff to use the CDisk class. To add a
floppy-controller to your emulated system, you should add these lines
to your configuration file:
fdc0=floppy
{
disk0.0={...}
disk0.1={...}
}
Brian, could you check this with the floppy images you have? I've
tried to do this without taking enough time to fully understand the
floppy code, so I might be wrong somewhere...
Camiel.
On Tue, Apr 29, 2008 at 10:27 AM, Camiel Vanderhoeven
<iam...@gm...> wrote:
> 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
> >
> >
>
|