1dram: Memory.MappedMemory @ sysbus 0x0 2 size: 0x80000000 3 4uart: UART.NS16550 @ sysbus 0xa0000000 5 6cpu0: CPU.X86_64 @ sysbus 7 cpuType: "x86_64" 8 lapic: lapic0 9 10cpu1: CPU.X86_64 @ sysbus 11 cpuType: "x86_64" 12 lapic: lapic1 13 14lapic0: IRQControllers.LAPIC @ sysbus new Bus.BusPointRegistration { address: 0xFEE00000; cpu: cpu0 } 15 id: 0x0 16 IRQ -> cpu0@0 17 18lapic1: IRQControllers.LAPIC @ sysbus new Bus.BusPointRegistration { address: 0xFEE00000; cpu: cpu1 } 19 id: 0x1 20 IRQ -> cpu1@0 21 22hpet: Timers.HPET @ sysbus 0xFED00000 23 24pci: Python.PythonPeripheral @ sysbus 0xE0000CF8 25 size: 0x400 26 initable: false 27 script: ''' 28if request.isRead: 29 if addr == 0x0: 30 # ns16550 vendor and device ID 31 request.value = 0x5abc8086 32 elif addr == 0x10: 33 # address to memory-mapped accesses, it should be the same as 'uart' point of registration 34 request.value = 0xa0000000 35else: 36 addr = request.value & 0xFF 37''' 38 39sysbus: 40 init: 41 Tag <0xE0000020 1> "PIC1_CMD" 42 Tag <0xE0000021 1> "PIC1_DATA" 43 Tag <0xE00000A0 1> "PIC2_CMD" 44 Tag <0xE00000A1 1> "PIC2_DATA" 45 Tag <0xE0000040 1> "PIT_CHANNEL0" 46 Tag <0xE0000041 1> "PIT_CHANNEL1" 47 Tag <0xE0000042 1> "PIT_CHANNEL2" 48 Tag <0xE0000043 1> "PIT_CMDREG" 49 Tag <0xE0000CF8 4> "PCI_ADDRESS" 50 Tag <0xE0000CFC 4> "PCI_DATA" 51 Tag <0xE0000070 1> "CMOS_ADDRESS" 52 Tag <0xE0000071 1> "CMOS_DATA" 53